301
\$\begingroup\$

This is an challenge in which each answer builds on the previous answer. I recommend sorting the thread by "oldest" in order to be sure about the order in which the posts are made.

Note: This has become quite a long-lasting challenge, and posting new answers is fairly difficult. As such, there's now a chat room available for this challenge, in case you want advice on a particular part of a potential answer, have ideas for languages that could be added, or the like. Feel free to drop in if you have anything to ask or say!

The task

The nth program to be submitted must run in n different languages; specifically, all the languages added in previous programs to be submitted, plus one more. The program must output 1 when run in the first language used in answers to this question, 2 when run in the second language, and so on. For example, the first answer could print 1 when run in Python 3, and the second answer could output 1 when run in Python 3 and 2 when run in JavaScript; in this case, the third answer would have to output 1 when run in Python 3, 2 when run in JavaScript, and 3 when run in some other language.

Additional rules

  • Your program must run without erroring out or crashing. Warnings (and other stderr output) are acceptable, but the program must exit normally (e.g. by running off the end of the program, or via a command such as exit that performs normal program termination).

  • The output must be only the integer, but trailing newlines are OK. Other unavoidable stdout output is also allowed. Examples: interpreter name and version in Befunge-93, space after printed string in Zephyr. Some languages provide two methods of printing – with and without trailing space; in this case method without trailing space must be used.

  • Each answer must be no more than 20% or 20 bytes (whichever is larger) longer than the previous answer. (This is to prevent the use of languages like Lenguage spamming up the thread, and to encourage at least a minor amount of golfing.)

  • Using different versions of the same language is allowed (although obviously they'll have to print different numbers, so you'll need to fit a version check into the polyglot). However, you may not use a language feature that returns the language's version number. Repeating the exact same language is, obviously, impossible (as the program would have to deterministically print one of two different numbers).

  • Tricks like excessive comment abuse, despite being banned in some polyglot competitions, are just fine here.

  • You don't have to use the previous answers as a guide to writing your own (you can rewrite the whole program if you like, as long as it complies with the spec); however, basing your answer mostly on a previous answer is allowed and probably the easiest way to make a solution.

  • You cannot submit two answers in a row. Let someone else post in between. This rule applies until victory condition is met.

  • As this challenge requires other competitors to post in the same languages you are, you can only use languages with a free implementation (much as though this were a contest).

  • In the case where a language has more than one interpreter, you can pick any interpreter for any given language so long as all programs which are meant to run successfully in that language do so in that interpreter. (In other words, if a program works in more than one interpreter, future posts can pick either of those interpreters, rather than a post "locking in" a particular choice of interpreter for a language.)

  • If some interpreter gets updated and the program no longer works in the newer version then new answers can either stick to the old version or fix the program to work in the new version.

  • This challenge now uses the new PPCG rules about language choice: you can use a language, or a language interpreter, even if it's newer than the question. However, you may not use a language/interpreter that's newer than the question if a) the language was designed for the purpose of polyglotting or b) the language was inspired by this question. (So newly designed practical programming languages are almost certainly going to be OK, as are unrelated esolangs, but things like A Pear Tree, which was inspired by this question, are banned.) Note that this doesn't change the validity of languages designed for polyglotting that are older than this question.

  • Note that the victory condition (see below) is designed so that breaking the chain (i.e. making it impossible for anyone else to answer after you via the use of a language that is hard to polyglot with further languages) will disqualify you from winning. The aim is to keep going as long as we can, and if you want to win, you'll have to respect that.

Answer format

As all the answers depend on each other, having a consistent answer format is going to be helpful. I recommend formatting your answer something like this (this is an example for the second link in the chain):

2. JavaScript, 40 bytes

(program goes here)

This program prints 1 in Python 3, and 2 in JavaScript.

(if you want to explain the program, the polyglotting techniques, etc., place them here)

Victory condition

Once there have been no new answers for 14 days, the winner will be whoever posted the second newest answer, i.e. the largest polyglot that's been proven not to have broken the chain. Extending the chain after that is still very welcome, though!

The winner is Chance, see answer 194 (TemplAt).

Language list

// This snippet is based on the snippet from hello world thread https://codegolf.stackexchange.com/questions/55422/hello-world
// It was tested only in Google Chrome

// https://stackoverflow.com/a/4673436
if (!String.prototype.format) {
  String.prototype.format = function() {
    var args = arguments;
    return this.replace(/{(\d+)}/g, (match, number) => (typeof args[number] != 'undefined' ? args[number] : match) );
  };
}

var QUESTION_ID = 102370; // from the question url
var ANSWER_FILTER = "!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe";

function answersUrl(index) {
  return "https://api.stackexchange.com/2.2/questions/" +  QUESTION_ID + "/answers?page=" + index + "&pagesize=100&order=desc&sort=creation&site=codegolf&filter=" + ANSWER_FILTER;
}

var answers = [], answer_page = 1;

function getAnswers() {
  jQuery.ajax({
    url: answersUrl(answer_page++),
    method: "get",
    dataType: "jsonp",
    crossDomain: true,
    success: function (data) {
      answers.push.apply(answers, data.items);
      if (data.has_more) { $('#status').text($('#status').text() + '.'); getAnswers(); }
      else process();
    },
    // [Documentation](http://api.jquery.com/jquery.ajax/) states that `error` handler is not called for cross-domain JSONP requests, 
    // but it works here, probably because api.stackexchange.com and codegolf.stackexchange.com are on the same domain.
    error:  function (a,b,c) { 
      $('#status').text( "Failed to load answers: " + b + " " + c );
      console.log( b + " " + c );
    },
  });
}

getAnswers();

// https://stackoverflow.com/questions/6290442/html-input-type-text-onchange-event-not-working/39834997#39834997
// https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/input_event
const input = document.querySelector('input');
input.addEventListener('input', onSearchInput);

function onSearchInput(e)
{
    var table = document.getElementsByTagName("table")[0];
    var str = e.srcElement.value.toLowerCase();
    var num_results = 0;

    if(str == "") // optimization for empty input
    {
        // show all rows
        for(var i = 1, row; row = table.rows[i]; i++)
        {
            row.className = "";
            num_results++;
        }
    }
    else
    {
        for(var i = 1, row; row = table.rows[i]; i++)
        {
            var hidden = row.innerText.toLowerCase().indexOf(str) == -1;
            if(!hidden) num_results++;
            row.className = hidden ? "hidden" : "";
        }
    }
    document.getElementById("results").innerText = "Results: " + num_results;
}


/* Function ParseHeader() extracts answer number, language name and size of polyglot from answer header.
   Argument: `header` - answer header string without markup, eg. "1. Python 3 (8 bytes)" or "59. Tcl, 1324 bytes".
   Retval:  object, eg. {num: 1, language: "Python 3", size: 8} or 
            null if header has wrong format
  
   There are two formats of header, new one with comma and old one with parens.
   Parsing new format only with regexp is hard because:
   - language name may contain commas,                                 eg. "51. Assembly (x64, Linux, AS), 1086 bytes"
   - there may be several sizes, of which the last one should be used, eg. "210. Haskell without MonomorphismRestriction, 10035 9977 bytes"

   There are only several answers with old format header: 1-5, 7, 12-17, 21. All of them have single size and don't have parens in language name,
   so they can be parsed with simple regexp.
   
   Algorithm: Find commas. If there are no commas parse it as old format. Otherwise parse it as new format.
   New format parsing: Let everything after last comma be `sizes`. Check if `sizes` ends with the word "bytes". If not, set size to 0.
   Take the word before "bytes" and convert it to number. Parse the rest of the header (before last comma) with regexp.
*/
function ParseHeader(header)
{
  var a = header.split(',');
  if(a.length > 1) // current format: Number "." Language "," Size+ "bytes"
  {
    // filter(s=>s) removes empty strings from array (handle multiple consecutive spaces)
    var sizes = a[a.length-1].split(" ").filter(s=>s); // " 123 100  bytes " -> ["123", "100", "bytes"]
    var size;
    if(sizes.length < 2 || sizes[sizes.length-1] != "bytes") size = 0;
    else size = +sizes[sizes.length-2];

    a.splice(a.length-1,1); // remove last element
    var match = a.join(',').match(/(\d*)\.(.*)/);
    if (!match) return null;
    return{
            num: +match[1],
            language: match[2].trim(),
            size: size,
          };
  }
  else // old format: Number "." Language "(" Size "bytes" ")"
  {
    var format = /(\d*)\.([^(]*)\((\d*)\s*bytes\)/;
    var match = header.match(format);
    if (!match) return null;
    return{
            num: +match[1],
            language: match[2].trim(),
            size: +match[3]
          };
  }
}

// 1533246057 (number of seconds since UTC 00:00 1 Jan 1970) -> "Aug 2 '18"
// other useful Date functions: toUTCString, getUTCDate, getUTCMonth, getUTCFullYear
function FormatDate(n)
{
  var date = new Date(n*1000); // takes milliseconds
  var md = date.toLocaleDateString("en-US", {timeZone:"UTC", day:"numeric", month:"short"});
  var y  = date.toLocaleDateString("en-US", {timeZone:"UTC", year:"2-digit"});
  return md + " '" + y;
}


var processed = []; // processed answers, it's called `valid` in original snippet

function ProcessAnswer(a)
{
  var body = a.body, header;

  //
  // Extract header from answer body.
  // Try find <h1> header (markdown #). If not found try find <h2> (markdown ##).
  // Extracted header contains only text, all markup is stripped.
  // For 99 language markup is later readded to language name because markup is essential for it.
  //
  var el = document.createElement('html'); // dummy element used for finding header
  el.innerHTML = body;
  var headers = el.getElementsByTagName('h1');
  if(headers.length != 0) header = headers[0].innerText;
  else {
    headers = el.getElementsByTagName('h2');
    if(headers.length != 0) header = headers[0].innerText;
    else { console.log(body); return; } // error: <h1> and <h2> not found
  }

  var info = ParseHeader(header)
  if(!info) { console.log(body); return; } // error: unrecognised header format

  if(info.num == 99 && info.language == "99") info.language = "<i>99</i>";

  processed.push({
    num:         info.num,
    language:    info.language,
    size:        info.size,
    answer_link:   a.share_link,
    user:          a.owner.display_name,
    user_link:     a.owner.link,         // `undefined` if user was deleted
    creation_date: a.creation_date,      // unix epoch (number of seconds since UTC 00:00 1 Jan 1970)
  });
}

function process()
{
  $('#status').remove();

  answers.forEach(ProcessAnswer); // answers -> processed
  
  processed.sort( (a,b)=>(a.num-b.num) ); // sort by answer number, ascending

  processed.forEach(function (a) {
    
    var date = FormatDate(a.creation_date);

    var user = a.user_link ? ('<a href="'+a.user_link+'">'+a.user+'</a>') : a.user; // redundant code, currently the only deleted user is ais523
    if(user == "user62131") user = '<a href="https://chat.stackexchange.com/users/246227/ais523">ais523</a>';

    var style = (a.num == 194) ? "background: #ccf" : ""; // 194 is winner answer

    var row = "<tr style='{0}'><td>{1}</td> <td><a href='{2}'>{3}</a></td> <td>{4}</td> <td>{5}</td> <td>{6}</td></tr>"
              .format(style, a.num, a.answer_link, a.language, a.size, user, date);

    $('#answers').append( row );
  });
}
a {text-decoration:none}
a:visited {color:#00e}

table, td, th { border: 1px solid black; }
td, th { padding-left: 5px; padding-right: 5px; white-space: nowrap; }
tr:hover { background-color: #ff9; }
td:first-child  { text-align:center; } /* # */
td:nth-child(4) { font-style:italic; } /* author */
td:nth-child(5) { text-align:right;  } /* date */

p { margin: 8px 0px }
.hidden { display: none } /* search hides rows */
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>
  <span>Search: </span><input autofocus> &nbsp;<span id="results"></span>
</p>
<table class="answer-list">
  <thead>
    <tr><th>#</th> <th>Language</th> <th>Size (bytes)</th> <th>Author</th> <th>Date</th></tr>
  </thead>
  <tbody id="answers">
  
  </tbody>
</table>
<div id="status">Loading answers...</div>

\$\endgroup\$
28
  • 4
    \$\begingroup\$ For people who can see deleted posts: the Sandbox post was here. \$\endgroup\$
    – user62131
    Dec 6, 2016 at 19:00
  • 6
    \$\begingroup\$ There's no need to copy the previous program, although of course you can use it as a guide; redoing the program from scratch is likely to take longer! There's no need to permalink to answers; sorting by oldest will show all the answers in order already. \$\endgroup\$
    – user62131
    Dec 6, 2016 at 19:44
  • 4
    \$\begingroup\$ @ais523 I think what was meant was that should new answers contain try it links with the new code? \$\endgroup\$
    – Blue
    Dec 6, 2016 at 19:45
  • 7
    \$\begingroup\$ I think we need a script that takes a hex dump of the code and automatically runs it in all the languages... \$\endgroup\$
    – mbomb007
    Dec 7, 2016 at 20:05
  • 5
    \$\begingroup\$ This is the Versatile integer printer posted as a different type of challenge. (Inspiration?) The final answer (currently) would score 0.0127, only beaten by Sp3000's 30 language submission... :) \$\endgroup\$ Dec 17, 2016 at 12:11

451 Answers 451

1 2 3
4
5
16
9
\$\begingroup\$

168. Mornington Crescent, 8714 bytes

#16  "?63(o+?50;+'51;'# #@"/*"r"{\D-v e-'[fa5.q]PkPPX)\( 9 '#CO"14"^ 92*/
#/*0|7//```"`  [>.>.])[-'][(      7 >77*,68*,@'_          7 )(22)S/ \ 5 \7aa*+42@n; 7 999993 1 7 3 1 8 1 1 55 EEEEEδΘΔΔΔΘΔΘλiiipsddpsdoh k zzzzkf kf k zzzzzd kf k zzzzza kf bfz(coding=utf8 1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!
#>c#z#111#y#y#y#_#1111x           -x    xxxxxxxxxxxxxxxxxxxxxxxxx/112\ 
# 36!@ `  e ++++++::@         /"78"oo@    h#115 o# dO           x-----
#comment -[af] tAtAtA TbTbTbRtRtRt-VkVkVkRcRcRcBkBkBkMbMbMbPSPSPSpspspsQhQhQhQrQrQrHnHnHnbqbqbqLzLzLzTcTcTcxxxxx8=,  
#~==++++++  ++++++++++++++++++++++ +++++++++++++++++++++.._+++++++.  
#`<`===============================================================                                             x
#<<<#>>]+-}}[.^+;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]}--<^>++[+++++[>+++++++<-]>._++++._+++._^<]+-+<[<<._>>x>-]^>[  
#{  
#x}  
#2""/*\*  
#=x<R+++++[D>+++++++9999 9 9      L+++<-][PLACET,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@._+>][
#x%+>+=ttt_Z_*.9 999 99 9999 9                     _         _              _
#D>xU/-<+++L_9  
#R+.----._>]| 9 9999
#[#[(+?+?0l0v01k1kMoOMoOMoOMoOMOOx0l0ix0jor0h0h1d111 0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11yx4O6O@MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOotMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l111111^_0   )000011100\\
[ "`e```.1'.0'.6''i]56pq{}26q[puts 59][exit]" ,'_\['];#/s\\/;print"24"; exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>;?\:-._++._++++._#/<?\>3-++._6+---2._#</++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.>!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWW\WWWWwWWWWwWWWWW/WW\wWWWWWWWWwwwwvwWW/WwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                  (([5]{})))\';';print(( eval("1\x2f 2")and(9)or 13<< (65 )>>65or 68)-(0and eval("\"ppp\".bytes.class==Array and(4)or(95==\"ar_\"[2]and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})  ){}{})>)(({})5){}x{( <(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO MU s '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*.*]*.*(<\>]xxxxxxxxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"  
#.;R"12"'  
###;console.log 39; 
#  \\
""""#  \
' ( <><        (         x)>  ){ ({}[( )] )}{\';      a=$(printf \\x00        ) ;b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo $((    (9999999999999999999- 9999999999999998975)/ 256*11+78));;*1*) echo 50;;*) echo 58;;esac;exit;#( ((('))))#\
=begin  
#p            +555!/2+55x%6E2x!<******>**********************828+*+@[*99[?]*]*****|!
;set print "-";print 89;exit#ss       e$P+ + + + + *D* + + +1+ +1E!s
p now 70 dollar off!
p has been selling out worldwide!
[mxf]-main=-[165]-###jxf  
#  
seeeemPaeueewuuweeeeeeeeeeCisajjappppppxf⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡→  
밠밠따빠빠맣박다맣받다맣희맣희うんたんたんたんたんうんうんうんうんうんたんうんうんうんたんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんたんたんうんうんうんうんたんたんうんたんたんたんうんうんうんたんうんうんたんうんうんたんうんうんたんうんたんうんうんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんうんうん  
😊♈💖  
😇♈♈  
😊♉♈  
😇♈♈  
😇♈♉  
😇♈💜  
😊♉♈  
😊📢♈  
😈♈💜  
😊📢♈  
😇♉💞  
😊📢♉⠀⢃⠛⠋  
#-49,A,-1                              #
#-5,A,-1                               #
#6,A,-1                                #
1     ! !
2   !    !
1      !!
1  x*
53  ++-------+
1  x*|$0011 \|
51  +|/1000 /|
1  x*|\ 0011\|
34  +|/01 00/|
15  +|\ 0011\|           ?   ?@       _     !
1   *|@ 0110/|          ?@    ?
1    |      +|            +   *
1   !+-------+---       ?  !  ?
1    !                   ? @ ?
<  <    <<   <  <
< B=  =====  =>8 =
, 8= > B    = =
=  ==  =    = >   8  =
D B+  +=   D  x   xxx x
` `  + =   >  8  = >
 x ~   B  =   =  = = > ~
 B +   =  D+  ~ 8  = >x
x   x  x x      x  xx  x
x   x    x+   xx   x + +  +    +    +
x    x xx     xx                +++   +
x+  +x +x     x + +      +  +
 8=+,  _         +    +   +         +
   +     +                +  +    +
 +             +  +  +      + + +    +
   +    +      +           +
   +    +      +          +    +      +
   +           +            +
   +      +  + +            +
   +       +   +            +
          +    +            +
# +   +                  +
#+     +     ++  +     +     +
#  +      +     +
+#
  *   +
  *+*

   *************************************************+
# +  +
#          +                                       +
   +    + *
         *****+
# +       +
#   +        +
  * *
   +*****
#        +
   ( printout t 164         )
(exit  )  

Yo::=~147
::=  
You can see an x here.<<<<

>{-<<  
>SET x TO 120. [0]{472454523665721469465830106052219449897}
>X x. PPQ-} 
>x--/2  
> =157;y=146--/2 
>main=print y{-ss 

\begin{code}  
{-x   ␉␉␉␉ 
␉
 ␉  



-}
open import IO;main = run         (putStr"159"   ) --s
\end{code}
pppppppppppp
Take Northern Line to Tooting Bec
Take Northern Line to Charing Cross
Take Northern Line to Charing Cross
Take Northern Line to Bank
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Embankment
Take Bakerloo Line to Embankment
7 UP
Take Northern Line to Mornington Crescent
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #"6027"1,_ye do{--}gibe16"124"&#8+*sizeString tnd xfmain=9717
More 91 of this red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1""//*
#include<stdio.h>
#define  x(d) #d
#define u8 "38\0 "//"
char*x="24 10 31 1"
"a c #FFC0FF""B c #0000C0""d c #58007B""e c #0C8302"
"h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""l c #CA007F""n c #330001 ""q c #E60000"
"o c #FF8000""t c #FF00BC""u c #008080"
"A c #0040C0""E c #808000""F c #00C040""G c #008000 ""R c #800000"
"H c #0000AA""I c #00AA00""J c #55FFFF""K c #AAAAAA"
"r c red""g c green""b c blue""c c cyan""m c magenta""y c #FFFF00""x c black""_ c #FFFFFF"
"HHHahtdegggggggyrggggggc"
"IHHaixuEFbGGbggbryAEGRgc"
"JJHajyurbgbgggggggb____o"
"IJHakmyyyyyyyyyyyyyyyyye"
"I__almyyyyyyyyyyyyyyyyye"
"K__anmyyyyyyyyyyyyyy_y_e"
"HH_aqggyyyyyyyyg____m_Je"
"JH_axxxxxxxxxxxxxxxxxxxx"
"K__aaaam___bbbbbBm_bbBab"
"K__________bbbbb___bbxbb";//"
int f(char*a,char*b    ){  puts(a?"124":sizeof(0,u8)-5?u8"67":*u8""?"37": x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77"  );}main(){f(x,x=0);}//<*/
#1""/*/

>main=putStr"128"--}

#1""/*/
#if 0
#endif//* --... ...--
/*/
p=sizeof(" (\");   print'(''72'')';end!" );main(){    puts('??-'&1?"101":"92");return 0;}
#if 0
#endif//* rk:start | print: "69" rk:end                   @,-1,:*b5<>␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋
print 61
#}
disp 49
#{
}{}<>        K yya+-        &  g+$
$'main'3x             A=AgRA;       AC
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>+++.---.\_<!+++++++++++++++++++++++++++++++++++++++++++++++++._++.-.>@
#<<<#>>>  /
reg end="";print(85);reg s#++++++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#xxxxclou"78"<\++++>/<~#class P{function:Main (a:String[]  )~Nil{83->Print(); }}
#endcOmment
#nocOmment   outtext("155"   )
#}pS9^7^8^MUOUOF@0:8:8     \      @,,1'1'<> @125iRE
# |o51~nJ;#:p'34'3         \=#print(   size([[1] [3]][1,:] )[1]==2?158+4:17 )#>say 27#p>>>say 170-3#]#print(47)#]#echo 21#WWWWWWWWWWWWWWWwWWWWWWWWWWWWwv>++++
#8M`|   <esc>dggi2<esc>//  $}<}}<}>}[<<}< <<<<}<<}<<<<}<<<}}}<}}<}}<}}<    }}<}}<}}}<}}<<<<<<<<<<<}}}<}}<}}<}}<}}<}}<}}}<<<<<<<<<<}+++++++++++++++++++++++++++++++++++++++++++++++++._++.._#]~-<~-<~-<<<~-<COprint("65")#`=>ass^_^_#
#9 "25"   +/ppppppp  eeeeee*n*n*n*es*s*s*^ee*n*n*n*e*sss*e*n*n*n*ee<*s 5>1  *e*///\)Q222999686#

Try it online!

Mornington Crescent

Mornington Crescent is an Esoteric language based on the London Underground Stations. All statements are in the form of “Take [NameOfLine] Line to [Station], so you have to match the station to the right line, and figure out which lines to take to get to the station you want to go to. It happens to ignore lines that are not in this format, which is what makes it polyglot-able.

The program is generally initialized so that each station contains a string with the name of the station. When you stop at a station, you swap the value you are carrying with value the station has. You start at the Mornington Crescent station with the value “Mornington Crescent”.

Certain stations have Special Operations that they perform, and the essence of Mornington Crescent is to navigate the London Underground to efficiently arrive at the destinations required to find perform the operations needed to run your program.

I initially had a route that produced 168 by stopping at Seven Sisters, which gives you the integer value of 7, and then mathing my way to the answer. But after inserting it in the polyglot, I realized that Grass could not handle the letter v in Seven Sisters. So I had to take a different approach

It turned out that there was a much more elegant answer waiting at Charing Cross, which will hand you the ascii value of the first letter in the string contained in the station. So it was just a matter of hitting up a station that started with T, and doubling the value at Upminster. I should also note that Bank and Hammer Smith are special stations in this solution. Deposits to Bank are also deposited to Hammer Smith, while retrieving from Hammer Smith does not cause Hammer Smith to lose its value.

Here is the final code, with annotations to describe the process.

//Get “Tooting Bec”

Take Northern Line to Tooting Bec

//Deposit “Tooting Bec”

Take Northern Line to Charing Cross

//Get 84 (value of “T”)

Take Northern Line to Charing Cross

//Deposit 84 in Hammersmith

Take Northern Line to Bank

//Get 84

Take District Line to Hammersmith

//Deposit 84

Take District Line to Upminster

//Get 84

Take District Line to Hammersmith

//Get 168 (84+84)

Take District Line to Upminster

//Deposit 168

Take District Line to Embankment

//Get 168

Take Bakerloo Line to Embankment

//End Program

Take Northern Line to Mornington Crescent

Fission

Fission didn’t like the N in Northern Line in the last leg of the trip, because all the D’s in the District line are starting points for Fission’s IP, heading in the down direction, and the N it led to was an Endline command. So, I moved the first line of Monkeys to just prior to the last line of Mornington Crescent. Embankment had access to the Bakerloo line so I use that instead of District in the second to last line to allow the second tic of the clock before Fission ends. Everythign else was balancing p’s and s’s for Alphuck, adjusting alignments for Cubix, and solving Incident’s tokens.

Test Driver Update

Mornington Crescent had an unusually long execute statement, so I adjusted the alignment of the pass/fail output in the test driver. This might make the output extra wonky on mobile though. Sorry.

\$\endgroup\$
9
+250
\$\begingroup\$

172. Haskell with QuasiQuotes, 8929 bytes

#16  "?63(o+?50;+'51;'# #@"/*"r"{\D-v e-'[fa5.q]PkPPX)\( 9 '#CO"14"^ 92*/
#/*0|7//```"`  [>.>.])[-'][(      7 >77*,68*,@'_          7 )(22)S/ \ 5 \7aa*+42@n; 7 999993 1 7 3 1 8 1 1 55 EEEEEδΘΔΔΔΘΔΘλiiipsddpsdoh k zzzzkf kf k zzzzzd kf k zzzzza kf bfz(coding=utf8 1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!
#>c#z#111#y#y#y#_#1111x           -x    xxxxxxxxxxxxxxxxxxxxxxxxx/112\ 
# 36!@ `  e ++++++::@         /"78"oo@    h#115 o# dO           x-----
#comment -[af] tAtAtA TbTbTbRtRtRt-VkVkVkRcRcRcBkBkBkMbMbMbPSPSPSpspspsQhQhQhQrQrQrHnHnHnbqbqbqLzLzLzTcTcTcxxxxx8=,  
#~==++++++  ++++++++++++++++++++++ +++++++++++++++++++++.._+++++++.  
#`<`===============================================================                                             p
#<<<#>>]+-}}[.^+;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]}--<^>++[+++++[>+++++++<-]>._++++._+++._^<]+-+<[<<._>>x>-]^>[  
#{  
#cs}  
#2""/*\*  
#=x<R+++++[D>+++++++9999 9 9      L+++<-][PLACET,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@._+>][
#x%+>+=ttt_Z_*.9 999 99 9999 9                     _         _              _
#D>xU/-<+++L_9  
#R+.----._>]| 9 9999
#[#[(+?+?0l0v01k1kMoOMoOMoOMoOMOOx0l0ix0jor0h0h1d111 0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11yxMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOotMOo0moo0n0tx0t0moO0fx4O6O@ 0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l111111^_0   )000011100\\
[ "`e```.1'.0'.6''i]56pq\{}26q[puts 59][exit]" ,'_\['];#/s\\/;print"24"; exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>;?\:-._++._++++._#/<?\>3-++._6+---2._#</++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.>!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWW\WWWWwWWWWwWWWWW/WW\wWWWWWWWWwwwwvwWW/WwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                  (([5]{})))\';';print(( eval("1\x2f 2")and(9)or 13<< (65 )>>65or 68)-(0and eval("\"ppp\".bytes.class==Array and(4)or(95==\"ar_\"[2]and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})  ){}{})>)(({})5){}x{( <(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO MU s '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*.*]*.*(<\>]xxxxxxxxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"  
#.;R"12"'  
###;console.log 39; 
#  \\
""""#  \
' ( <><        (         x)>  ){ ({}[( )] )}{\';      a=$(printf \\x00        ) ;b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo $((19629227668178112600/ 118248359446856100));;    *1*)echo 50;;*)echo 58;;esac;exit;#( (((') )))#\
=begin  
#p            +555!/2+55x%6E2x!<******>**********************828+*+@[*99[?]*]*****|!
;set print "-";print 89;exit#ss       e$P+ + + + + *D* + + +1+ +1E!s
p now 70 dollar off!
p has been selling out worldwide!
[mxf]-main=-[165]-###jxf  
#  
seeeemPaeueewuuweeeeeeeeeeCisajjappppppxf⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡→  
밠밠따빠빠맣박다맣받다맣희맣희うんたんたんたんたんうんうんうんうんうんたんうんうんうんたんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんたんたんうんうんうんうんたんたんうんたんたんたんうんうんうんたんうんうんたんうんうんたんうんうんたんうんたんうんうんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんうんうん  
😊♈💖  
😇♈♈  
😊♉♈  
😇♈♈  
😇♈♉  
😇♈💜  
😊♉♈  
😊📢♈  
😈♈💜  
😊📢♈  
😇♉💞  
😊📢♉⠀⢃⠛⠋  
#-49,A,-1                              #
#-5,A,-1                               #
#6,A,-1                                #
1     ! !
2   !    !
1      !!
1  x*
53  ++-------+
1  x*|$0011 \|
51  +|/1000 /|
1  x*|\ 0011\|
34  +|/01 00/|
15  +|\ 0011\|           ?   ?@       _     !
1   *|@ 0110/|          ?@    ?
1    |      +|            +   *
1   !+-------+---       ?  !  ?
1    !                   ? @ ?
<  <    <<   <  <
< B=  =====  =>8 =
, 8= > B    = =
=  ==  =    = >   8  =
D B+  +=   D  x   xxx x
` `  + =   >  8  = >
 x ~   B  =   =  = = > ~
 B +   =  D+  ~ 8  = >x
x   x  x x      x  xx  x
x   x    x+   xx   x + +  +    +    +
x    x xx     xx                +++   +
x+  +x +x     x + +      +  +
 8=+,  _         +    +   +         +
   +     +                +  +    +
 +             +  +  +      + + +    +
   +    +      +           +
   +    +      +          +    +      +
   +           +            +
   +      +  + +            +
   +       +   +            +
          +    +            +
# +   +                  +
#+     +     ++  +     +     +
#  +      +     +
+#
  *   +
  *+*

   *************************************************+
# +  +
#          +                                       +
   +    + *
         *****+
# +       +
#   +        +
  * *
   +*****
#        +
   ( printout t 164         )
(exit  )  
#cepp  
MsgBox(0,"",169                     )
#cs  
Yo::=~147
::=  
You can see an x here.<<<<

>{-<<  
>SET x TO 120. [0]{472454523665721469465830106052219449897}
>X x. PPQ-}
>x--/2  
> =157;y=146--/2 
>main=print y{-ss 

\begin{code}  
{-x   ␉␉␉␉ 
␉
 ␉  



-}
open import IO;main = run         (putStr"159"   ) --s
\end{code}
pppppppppppp
Take Northern Line to Tooting Bec
Take Northern Line to Charing Cross
Take Northern Line to Charing Cross
Take Northern Line to Bank
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Embankment
Take Bakerloo Line to Embankment
7 UP
Take Northern Line to Mornington Crescent
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #"6027"1,_ye do{--}gibe16"124"&#8+*sizeString tnd xfmain=971796lo
More 91 of this red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1""//*
#include<stdio.h>
#define  x(d) #d
#define u8 "38\0 "//"
char*x="24 10 31 1"
"a c #FFC0FF""B c #0000C0""d c #58007B""e c #0C8302"
"h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""l c #CA007F""n c #330001 ""q c #E60000"
"o c #FF8000""t c #FF00BC""u c #008080"
"A c #0040C0""E c #808000""F c #00C040""G c #008000 ""R c #800000"
"H c #0000AA""I c #00AA00""J c #55FFFF""K c #AAAAAA"
"r c red""g c green""b c blue""c c cyan""m c magenta""y c #FFFF00""x c black""_ c #FFFFFF"
"HHHahtdegggggggyrggggggc"
"IHHaixuEFbGGbggbryAEGRgc"
"JJHajyurbgbgggggggb____o"
"IJHakmyyyyyyyyyyyyyyyyye"
"I__almyyyyyyyyyyyyyyyyye"
"K__anmyyyyyyyyyyyyyy_y_e"
"HH_aqggyyyyyyyyg____m_Je"
"JH_axxxxxxxxxxxxxxxxxxxx"
"K__aaaam___bbbbbBm_bbBab"
"K__________bbbbb___bbxbb";//"
int f(char*a,char*b    ){  puts(a?"124":sizeof(0,u8)-5?u8"67":*u8""?"37": x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77"  );}main(){f(x,x=0);}//<*/
#1""/*/

>import Text.Heredoc--WWWWWWWWWWWWWW<<W
>instance Num B where{ fromInteger _=B 170;negate _=B 128;}
>g=[here|here<-"W>W"] --WWWWWWWWWW570rt Unc27<<[w|]
>data B=B{u::Integer}
>main=print$last$172:[u$[-1]!!0|g<"Z>"] --}

#1""/*/
#if 0
#endif//* --... ...--
/*/
p=sizeof(" (\");   print'(''72'')';end!" );main(){    puts('??-'&1?"101":"92");return 0;}
#if 0
#endif//* rk:start | print: "69" rk:end                   @,-1,:*b5<>␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋
print 61
#}
disp 49
#{
}{}<>        K yya+-        &  g+$
$'main'3x             A=AgRA;       AC
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>+++.---.\_<!+++++++++++++++++++++++++++++++++++++++++++++++++._++.-.>@
#<<<#>>>  /
reg end="";print(85);reg s#++++++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#xxxxclou"78"<\++++>/<~#class P{function:Main (a:String[]  )~Nil{83->Print(); }}
#endcOmment
#nocOmment   outtext("155"   )
#ce pS9^7^8^MUOUOF @0:8:8  \ @,,1'1'<> @125iRE
#p|o51~nJ;#:p'34'3         \=#print(   size([[1] [3]][1,:] )[1]==2?158+4:17 )#>say 27#>>>say 170-3#]#print(47)#]#echo 21#>/#   print(171)#s
#8M`|   <esc>dggi2<esc>//  $}<}}<}>} [<<}<<<<<}<<}<<<<}<<<}}}<}}<}}<}}<    }}<}}<}}}<}}<<<<<<<<<<<}}}<}}<}}<}}<}}<}}<}}}<<<<<<<<<<}+++++++++++++++++++++++++++++++++++++++++++++++++._++.._#]~-<~-<~-<<<~-<COprint("65")#`=>ass^_^_#
#9 "25"   +/ppppppp  ggeeee*n*n*n*es^*s*s*ee*n*n*n*e*sss*e*n*n*n*ee<*s 5>1  *e*///\)Q222999686#

VIP score (Versatile Integer Printer): .001754 (to improve, next entry should be no more than 9081 bytes)

Try it online!

Explanation

QuasiQuotes is a language extension that allows you to create sections of your code that are parsed according to user defined rules. These sections look like

[name| expression |]

After reading a bit about QuasiQuotes I came across this "bug" report. Here they detail how QuasiQuotes can break the way that Haskell parses list comprehensions. The example code they provide is

let x = [v| v <- [1,2,3]]

When running Haskell normally this is a list comprehension and is parsed as such, bug when running QuasiQuotes the parser thinks that there is a QuasiQuotation and attempts to parse it failing. Now this is pretty good, but it gets better, as pointed out in this comment by bgamari if we add some cleverly placed comments we can make this into a true ambiguity:

import Text.Heredoc (here)

x :: String
x = [here| here <- ['h','e','r','e']] -- |]

The here QuasiQuotation works as a block string so this code sets x to here normally but sets it to here <- ['h','e','r','e']] -- if QuasiQuotes is enabled. This is the principle we use to separate the QuasiQuotes code from the rest of the Haskell code.

The first thing we do with this code is to minimize it.

import Text.Heredoc
x=[here|here<-"a"] -- |]

This is all that we need for the break to work. Now we just tack on a main function.

import Text.Heredoc
x=[here|here<-"a"] -- |]
main=print$last$172:[128|x<"b"]

Once that is going we combine this with the break we had for NegativeLiterals

import Text.Heredoc
data B=B{u::Integer}
instance Num B where{fromInteger _=B 170;negate _=B 128}
x=[here|here<-"a"] -- |]
main=print$last$172:[u(-1)|x<"b"]

Explanation to be continued ...

\$\endgroup\$
9
\$\begingroup\$

178. CoffeeScript 1.5, 9839 bytes

#16  "?63(o+?50;+'51;'# #@ " /*"r"{\D-v e-'[fa5.q]PkPPX)\( 9 '#CO"14"^ 92                                       7 222222222222222222222222                                                             ##*/
#/*0|7//```"`  [>.>.])[-'][(        7 >77*,68*,@'_        7 )(22)S  / \iiipsddpsdoh#####(#######??   #### ##  ######     ####         ###### # ####  #######     ####         ###### # ####  #######  a5# \7aa*+42@n; 7 999993 1 7 3 1 8 1 1 55 EEEEEδΘΔΔΔΘΔΘλa k zzzzkf kf k zzzzzd kf k zzzzza kf bfz coding=utf8 1P''53'S^'
#>c#z#111#y#y#y#_#1111x             -x    xxxxxxxxxxxxxxxxxxxxxxxxx/112\     ##### #######   # #    #####  #   #   #    ##### ####  ###   #### #  # #####  #    ##### ####  ###   #### #  # #####  #    #
#* 36!@`  e ++++++::@           /"78"oo@    h#115 o# dO 8=,_      x-----x ########    ## ### ###### ######## #### ##### ####### ##### ###    # # #### ### ##### ####### ##### ###    # # #### ### ##### #
#comment -[af] tAtAtA TbTbTbRtRtRtVk-VkVkRcRcRcBkBkBkMbMbMbPSPSPSpspsps    # ##########  ### ## #####  ## #### ## # #####  ## ##### ####   ##### ## # ##  ## ####  ## ##### ####   ##### ## # ##  ## ####
#~==++++++  ++++++++++++++++++++++++ +++++++++++++++++++.._+++++++._       # ????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!                                                           
#[#[===============================================================]]      #
#<<<#QhQhQhQrQrQrHnHnHnbqbqbqLzLzLzqTqTqT                                  #
############################################################################                                         p
 #-]+-}}[.^x+;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]}--<^>++[+++++[>+++++++<-]>x._++++._+++._^<][4O6O@]+-+<[<<._>>x>-]^>[  
#{  
#cs}  
#2""/*\*  
#=x<R+++++[D>+++++++9999 9 9        L+++<-][PLACET,2<- #2FAC,2SUB#1<- #52FAC,2SUB#2<- #32FACREADOUT,2PLEASEGIVEUPFACs]_>@@+.---@._+>][
#x%+>+=ttt_Z_*.9 999 99 9999 9                        _         _               _
#D>xU/-<+++L_9  
#R+.----._>]| 9 9999\[\[yYyYyY
#`<`(+?+?0l0v01k1kMoOMoOMoOMoOMOOx0l0ix0jor0h0h1d111 0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11yxMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOotMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l111111^_0   )000011100\\
[ "`e```.1'.0'.6''i]56pq\{}26q[puts 59][ exit]" ,'_\['];#/s\\/;print"24"; exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>;?\:-._++._++++._#/<?\>3-++._6+---2._#</++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.>!\
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWW\WWWWwWWWWwWWWWW/WW\wWWWWWWWWwwwwvwWW/WwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwx                  (([5]{})))\';';print(( eval("1\x2f 2")and(9)or 13<< (65 )>>65or 68)-(0and eval("\"ppp\".bytes.class==Array and(4)or(95==\"ar_\"[2]and 5-96 or-93)"))^1<<(65)>>62) or"'x"or' {}{}{}{}{}{}{}({}<(((((()()())){}{})  ){}{})>)(({})5){}x{( <(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({;}()<()()()>)wWW ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO MU s '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]* *]* * *(<\>]xxxxxxxxxxxxxxxxxxxxxx)'#\\
__DATA__=1#"'x"  
#.;R"12"' 
###;console.log 39; 
#  \\
""""#  \
' ( <><        (         x)>  ){ ({}[( )] )}{\';     a=$(printf \\x00) ;b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo $((19629227668178112600/ 118248359446856100));;    *1*)echo 50;;*)echo 58;;esac;exit;#( (((') )))#\
=begin  
#p            +555!/2+55x%6E2x !|*****[*[?]828+*+]@[*99[?]*]****|!
;set print "-";print 89;exit#ss        <>
[mxf]-main=-[165]- ###jxf*#p 173#*s     e$P+++++*D*+++1++1E!s
#  
p now 70 dollar off!
p has been selling out worldwide!
seeeemPaeueewuuweeeeeeeeeeCisajjappppppxf⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡→  
밠밠따빠빠맣박다맣받다맣희맣희うんたんたんたんたんうんうんうんうんうんたんうんうんうんたんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんたんたんうんうんうんうんたんたんうんたんたんたんうんうんうんたんうんうんたんうんうんたんうんうんたんうんたんうんうんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんうんうん  
😊♈💖  
😇♈♈  
😊♉♈  
😇♈♈  
😇♈♉  
😇♈💜  
😊♉♈  
😊📢♈  
😈♈💜  
😊📢♈  
😇♉💞  
😊📢♉⠀⢃⠛⠋  
#-49,A,-1                              #
#-5,A,-1                               #
#6,A,-1                                #
1     ! !
2   !    !
1      !!
1  x*
53  ++-------+
1  x*|$0011 \|
51  +|/1000 /|
1  x*|\ 0011\|
34  +|/01 00/|
15  +|\ 0011\|           ?   ?@       _     !
1   *|@ 0110/|          ?@    ?
1    |      +|            +   *
1   !+-------+---       ?  !  ?
1    !            <``=>  ? @ ?
<  <    <<   <  <
< B=  =====  =>8 =
, 8= > B    = =
=  ==  =    = >   8  =
D B+  +=   D  x   xxx x
` `  + =   >  8  = >
 x ~   B  =   =  = = > ~
 B +   =  D+  ~ 8  = >x
x   x  x x      x  xx  x
x   x    x+   xx   x + +  +    +    +
x    x xx     xx                +++   +
x+  +x +x     x + +      +  +
 8=+,  _         +    +   +         +
   +     +                +  +    +
 +             +  +  +      + + +    +
   +    +      +           +
   +    +      +          +    +      +
   +           +            +
   +      +  + +            +
   +       +   +            +
          +    +            +
# +   +                  +
#+     +     ++  +     +     +
#  +      +     +
+#
  *   +
  *+*

#  *************************************************+
# +  +
#          +                                       +
   +    + *
         *****+
# +       +
#   +        +
  * *
   +*****
#        +
   ( printout t 164         )
(exit  )  
#cepp  
MsgBox(0,"",169                     )
#cs  
Yo::=~147
::=  
You can see an x here.<<<<
  
>{-<<<<<  
> 176
>> Output 1
>SET x TO 120. [0]{472454523665721469465830106052219449897}
>X x. PPQ-}
>x--/2  
> =157;y=146--/2 
>main=print y{-sss 
  
\begin{code}  
{-x   ␉␉␉␉ 
␉
 ␉  



-}
open import IO;main = run         (putStr"159"   )
\end{code}
ppppppppppppp
Take Northern Line to Tooting Bec
Take Northern Line to Charing Cross
Take Northern Line to Charing Cross
Take Northern Line to Bank
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Embankment
Take Bakerloo Line to Embankment
7 UP
Take Northern Line to Mornington Crescent
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #"6027"1,_ye do{--}gibe16"124"&#8+*sizeString tnd xfmain=971796los*81''TcTcTc
More 91 of this red down one blue up red down one blue up red up one red right two blue up ssswwwWWWwWWWWWwWWWWWWWwWWWWWWWWW baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1""//*
#include<stdio.h>
#define  x(d) #d
#define u8 "38\0 "//"
char*x="24 10 31 1"
"a c #FFC0FF""B c #0000C0""d c #58007B""e c #0C8302"
"h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""l c #CA007F""n c #330001 ""q c #E60000"
"o c #FF8000""t c #FF00BC""u c #008080"
"A c #0040C0""E c #808000""F c #00C040""G c #008000 ""R c #800000"
"H c #0000AA""I c #00AA00""J c #55FFFF""K c #AAAAAA"
"r c red""g c green""b c blue""c c cyan""m c magenta""y c #FFFF00""x c black""_ c #FFFFFF"
"HHHahtdegggggggyrggggggc"
"IHHaixuEFbGGbggbryAEGRgc"
"JJHajyurbgbgggggggb____o"
"IJHakmyyyyyyyyyyyyyyyyye"
"I__almyyyyyyyyyyyyyyyyye"
"K__anmyyyyyyyyyyyyyy_y_e"
"HH_aqggyyyyyyyyg____m_Je"
"JH_axxxxxxxxxxxxxxxxxxxx"
"K__aaaam___bbbbbBm_bbBab"
"K__________bbbbb___bbxbb";//"
int f(char*a,char*b    ){  puts(a?"124":sizeof(0,u8)-5?u8"67":*u8""?"37": x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77"  );}main(){f(x,x=0);}//<*/
#1""/*/
 
>import Text.Heredoc--WWWWWWWWWWWWWW<<W
>instance Num B where fromInteger _=B 170;negate _=B$x#x
>data B=B{u::Integer};g=[here|here<-"W>W"] --WWWWWWWWWW570rt Unc27<<[w|]
>x=1;y#a=128;x#a=174
>main=print$last$172:[u$[-1]!!0|g<"Z>"] --}

 console.log 178;

#1""/*/
#if 0
#endif//* --... ...--
/*/
p=sizeof(" (\");   print'(''72'')';end!" );main(){    puts('??-'&1?"101":"92");return 0;}
#if 0
#endif//* rk:start | print: "69" rk:end                     @,-1,:*b5<>␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋
print 61
#}
disp 49
#{
}{}<>        K yya+-        &  g+$
$'main'3x             A=AgRA;       AC
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>+++.---.\_<!+++++++++++++++++++++++++++++++++++++++++++++++++._++.-.>@
#<<<#>>>  /
reg end="";print(85);reg s#++++++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#xxxxclou"78"<\++++>/<~#class P{function:Main (a:String[]  )~Nil{83->Print(); }}
#endcOmment
#nocOmment   outtext("155"   )
#ce pS9^7^8^MUOUOF @0:8:8    \ @,,1'1'<> @125iRE
#p|o51~nJ;#:p'34'3           \=#   print(size([[1] [3]][1,:]  )[1]==2?158+4:17 )#>say 27#>>>say 170-3#]#print(47)#]#echo 21#>/#print(171)#s-#print 175#s
#8M`|   <esc>dggi2<esc>//    $}<}}<}>} [<<}<<<<<}<<}<<<<}<<<}}}<}}<}}<}     }<}}<}}<}}}<}}<<<<<<<<<<<}}}<}}<}}<}}<}}<}}<}}}<<<<<<<<<<}+++++++++++++++++++++++++++++++++++++++++++++++++._++.._#]~-<~-<~-<<<~-<COprint("65")#`=>ass^_^_#
#9 "25"   +/ppppppp  ggeeee*n*n*n*es*s^*s*ee*n*n*n*e*sss*e*n*n*n*ee*s<* 5>1  e*///\)Q222999686#

Try it online!

Explanation

While poking around the other day, I noticed CoffeeScript 1.5 added a command line option for literate programming. Literate programming has been a pretty successfully method of adding languages to the polyglot, so I explored it a bit. Literate Coffeescript’s Code indicator is a line starting with some whitespace (tab or space), and the code block must be bounded by some empty lines, much like Literate Haskell. A quick look at the polyglot showed that this syntactic requirement had thus far not been enacted. So the only real difficulty with adding another CoffeeScript answer, was finding a place to put it.

@Potato44 and I went back and forth for a little while about where the best place to put the code, but I ended up putting Literate CoffeeScript console.log 178; immediately after Literate Haskell for a couple reasons. First, our polyglot has done a good job of using logical groupings for languages, so putting the literate languages together seemed nice. Also, I didn’t want to group the two CoffeeScripts because I had to add extra lines, and doing so prior to the Klein line would require me to re-work a couple Klein answers – not to mention hiding the line from all the other scripting languages. Second, placing right after Haskell allowed me to use the blank line at the end of Haskell as the blank line at the beginning of the Coffeescript code block. This was important because the code line and bounding blank lines would be 3 lines to insert, which would throw an error for Retina and require a 4th line to keep things happy.

Others

I had to throw a p at the end of Haskell’s code (commented out) (This broke Curry so the p was placed above the Mornington Crescent) for alphuck since the new CoffeeScript answer required a s. Incident also had to be re-worked, as usual. But this time I ran out of space to put new tokens in the usual places at the top of the polyglot, so I started a new line of incident tokens at the end of this line #R+.----._>]| 9 9999\[\[yYyYyY This space has far lower linguistic density than the space we’d been filling for the last several answers. So hopefully we can keep filling on this line for long while.

Good Luck!

\$\endgroup\$
3
  • \$\begingroup\$ I'm pretty sure towards the top xxxxxxxxxxxxxxxxxxxxxxxxx is still available for incident tokens if I'm not mistaken. Adding there shouldn't cost bytes. \$\endgroup\$
    – Wheat Wizard
    Feb 10, 2018 at 1:02
  • 2
    \$\begingroup\$ This is broken in Curry. There is an easy fix by moving the p from the end of the Haskell to the line above the Mornington Crescent. \$\endgroup\$
    – Potato44
    Feb 10, 2018 at 10:54
  • \$\begingroup\$ Curry should be fixed, The permission to do so is linked in the edit description \$\endgroup\$
    – Potato44
    Feb 11, 2018 at 3:47
9
\$\begingroup\$

184. Wumpus, 9870 bytes

#16  "?63(o+?50;+'51;'  # #@ " /*"r"{\D-v e-'[fa5.q]PkPPX)\( 9 '#CO"14"^ 92                                       7 222222222222222222222222                                                             ##*/
#/*1&7//```"`    [>.>.]       )[-'][(7  >77*,68*,@'_      7 )(22)S    / \iiipsddpsdoh#####(#######??   #### ##  ######     ####         ###### # ####  #######     ####         ###### # ####  #######  a5# \7aa*+42@n; 7 999993 1 7 3 1 8 1 1 55 EEEEEδΘΔΔΔΘΔΘλa k zzzzkf kf k zzzzzd kf k zzzzza kf bfz coding=utf8 p''53'S^'                                                                                                          ! 1>?7ДOq#t#>2/Wr#t#t#q#68#r#t#t#68#q#63#r#t#t#6v#>#</Wr#6}#y/===Wr#7ЯOq#>J7Д/Wr#y<Wr#>5/Wr#t#t#6y#>-=/Wr#6|#>6/Wr122! 1退
#>x#z#111#y#y#y#_#0111118&1&  111/"78"oo@        xxxxxxxxxxxx        /112\     ##### #######   # #    ##### h#115#  o#    ##### ####  ###   #### #  # #####  #    ##### ####  ###   #### #  # #####  #    #
# 36!@`D  e ++++++::@                 L               R.----._      x-----x ########8=,_## ### ###### ######## #### ##### ####### ##### ###    # # #### ### ##### ####### ##### ###    # # #### ### ##### #
#comment -[af] xxxxxxxxxxxx\#184O@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # ##########  ### ## #####  ## #### ## # #####  ## ##### ####   ##### ## # ##  ## ####  ## ##### ####   ##### ## # ##  ## ####
#~==RtRtRtMbMbMbPSPSPS                                                       # ????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!                                                           
#[#[]]QhQhQhQrQrQrHnHnHnbqbqbqLzLzLzQtQtQtTcTcTcRQRQRQ                       #
#<<<#++R++  ++++++++++++++++++++++++++++++++++++++++++U+++.._+++++++._       #
############################################################################## 4O6O@
 #-]+-}}[.^x+;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]}--<^>++[+++++[>+++++++<-]>._ ++++._+++._^<]+-+<[<<._>>>-]^>[<+++++[>++++++++++<-]>@@+.---@._+>][[
#{  
#=  
#*  
#cs  
#2""/*  
#9999 9 9
#9 999 99 9999 9
#9  
# 9 9999
#`<`(+?+?0l0v01k1kMoOMoOMoOMoOMOOx0l0ix0jor0h0h1d111 0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11yxMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOotMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l11110000011100^_)\\
[ "`e```.1'.0'.6''i]56pq\{}26q[puts 59][exit]" ,'_\['];#/s\\/;print"24"; exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>;?\:-._++._++++._#/<?\>3-++._6+---2._#</++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.>!\
' wWWWwWWWWwvwWWwWWWwvwWWWwWWWW\WWWWwWWWWwWWWWW/WW\wWWWWWWWWwwwwvwWW/WwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWW ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO MU ([])  ({}<(((((()()())){}{})){}{})>)(({})){}{(<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)  (<><()>){({}[()])}{  # {((((((\';  a=$(printf \\x00);b=$(echo -n $a|wc -c);case $b[1] in 1*)echo 54;;4*)echo 78;;8*)echo 166;;*1*)echo 50;;*)echo 58;;esac;exit;#)';  print(( eval("1\x2f 2")and(9)or 13<< (65 )>>65or 68)-(0and eval("\"ppp\".bytes.class==Array and(4)or(95==\"ar_\"[2]and 5-96 or-93)"))^1<<(65)>>62) or"'x"or'wWW s'#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]* *]* * *(<\>]xxxxxxxxxxxxxxxxxxxxxxxx)'#\\
__DATA__=1  
#  
###;{a=1}={a:null};console.log a&&39||180
#  \\
""""  
#  
#  \
=begin  
#p :1*23!/5x%6E0 !|*****[[[828+*+@+*99]]]*****|!
;set print'-';print 89;exit#ss
[mxf]-main=-[165]- ###jxf*#p 173#*
p now 70 dollar off!
p has been selling out worldwide!
#PLACET,2<- #2FAC,2SUB#1<- #52FAC,2SUB#2<- #32FACREADOUT,2PLEASEGIVEUPFACs>>>
seeeemPaeue_ewuuweeee_eeeeeeCisajjapp_ppppxf⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀  
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡→  
밠밠따빠빠맣박다맣받다맣희맣희うんたんたんたんたんうんうんうんうんうんたんうんうんうんたんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんたんたんうんうんうんうんたんたんうんたんたんたんうんうんうんたんうんうんたんうんうんたんうんうんたんうんたんうんうんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんうんうん  
😊♈💖  
😇♈♈  
😊♉♈  
😇♈♈  
😇♈♉  
😇♈💜  
😊♉♈  
😊📢♈  
😈♈💜  
😊📢♈  
😇♉💞  
😊📢♉⠀⢃⠛⠋  
#-49,A,-1                              #
#-5,A,-1                               #
#6,A,-1                                #
1     ! !
2   !    !
1      !!
1  x*
53  ++-------+
1  x*|$0011 \|
51  +|/1000 /|
1  x*|\ 0011\|
34  +|/01 00/|
15  +|\ 0011\| R"12"R _* ?   ?@       _     !
1   *|@ 0110/| @  %"18" ?@    ?
1    |      +|            +   *
1   !+-------+---       ?  !  ?
1    !            <``=>  ? @ ?
<  <    <<   <  <
< B=  =====  =>8 =
, 8= > B    = =
=  ==  =    = >   8  =
D B+  +=   D  x   xxx x
` `    =   >  8  = >
 x ~   B  =   =  = = > ~
 B +   =  D+  ~ 8  = >x
x   x  x x      x  xx  x
x   x    x+   xx   x + +  +    +    +    <>
x    x xx     xx                +++   +   e$P+++++*D*+++1++1E!s
x+  +x +x     x + +      +  +
 8=+,  _         +    +   +         +
   +     +                +  +    +
 +             +  +  +      + + +    +
   +    +      +           +
   +    +      +          +    +      +
   +           +            +
   +      +  + +            +
   +       +   +            +
          +    +            +
# +   +                  +
#+     +     ++  +     +     +
#  +      +     +
+#
  *   +
  *+*

#  *************************************************+
# +  +
#          +                                       +
   +    + *
         *****+
# +       +
#   +        +
  * *
   +*****
#        +
 (printout t 164 )
(exit )  
#cepp  
MsgBox (0,"",169     )
#cs  
Yo::=~147
::=  
You can see an x here.<<<<
  
>{-<<<<<  
> 176
>> Output 1
>SET x TO 120. [0]{472454523665721469465830106052219449897}   @,-1,:*b5<>␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋
>X x. PPQ-}
>x--/2  
> =157;y=146--/2 
>main=print y{-ss s
  
\begin{code}  
{-x   ␉␉␉␉ 
␉
 ␉  



-}
open import IO;main = run(putStr"159" )
\end{code}
ppppppppppppp
out &49 &1
out &56 &1
out &50 &1

Take Northern Line to Tooting Bec
Take Northern Line to Charing Cross
Take Northern Line to Charing Cross
Take Northern Line to Bank
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Embankment
Take Bakerloo Line to Embankment
7 UP
Take Northern Line to Mornington Crescent
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #"60"e.0,1,_ye do{--}gibe16"124"#8+*sizeString tnd xfmain=los*81''cagem x=4721en nd ogola=1ay $0C0 00 3cod/|puts_e
More 91 of this
How much is it
red down one blue up red down one blue up red up one red right two blue up sss
baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet
wwWWWwWWWWWwWWWWWWWwWWWWWWWWppppp
When this program starts:
There is a scribe called x
x is to write 179

*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1""//*
#include<stdio.h>
#define  x(d) #d
#define u8 "38\0 "//"
char*x="24 10 31 1"
"a c #FFC0FF""B c #0000C0""d c #58007B""e c #0C8302"
"h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""l c #CA007F""n c #330001 ""q c #E60000"
"o c #FF8000""t c #FF00BC""u c #008080"
"A c #0040C0""E c #808000""F c #00C040""G c #008000 ""R c #800000"
"H c #0000AA""I c #00AA00""J c #55FFFF""K c #AAAAAA"
"r c red""g c green""b c blue""c c cyan""m c magenta""y c #FFFF00""x c black""_ c #FFFFFF"
"HHHahtdegggggggyrggggggc"
"IHHaixuEFbGGbggbryAEGRgc"
"JJHajyurbgbgggggggb____o"
"IJHakmyyyyyyyyyyyyyyyyye"
"I__almyyyyyyyyyyyyyyyyye"
"K__anmyyyyyyyyyyyyyy_y_e"
"HH_aqggyyyyyyyyg____m_Je"
"JH_axxxxxxxxxxxxxxxxxxxx"
"K__aaaam___bbbbbBm_bbBab"
"K__________bbbbb___bbxbb";//"
int f(char*a,char*b ){puts(a?"124":sizeof(0,u8)-5?u8"67":*u8""?"37":x(0'0  "'\"")[9]?"75":'??-'&1? "79":"77");}main(){f(x,x=0);}//<*/
#1""/*/
 
>import Text.Heredoc--WWWWWWWWWWWWWW<<W
>instance Num B where fromInteger _=B 170;negate _=B$x#x
>data B=B{u::Integer};g=[here|here<-"W>W"] --WWWWWWWWWW570rt Unc27<<[w|]
>x=1;y#a=128;x#a=174
>main=print$last$172:[u$[-1]!!0|g<"Z>"] --}
 
 console.log 178;
 
#1""/*/
#if 0
#endif//* --... ...--
/*/
p=sizeof(" (\");print'(''72'')';end!");main(){puts('??-'&1?"101":"92" );return 0;}
#if 0
#endif//* rk:start | print: "69" rk:end
print 61
#}
disp 49
#{
}{}<>        K yya+-        &  g+$
$'main'3x             A=AgRA;       AC
#-3o4o#$$$
#<T>"3"O._</+++++++>/+++<-\>+++.---.\_<!+++++++++++++++++++++++++++++++++++++++++++++++++._++.-.>@
#<<<#>>>  /
reg end="";print(85);reg s#++++++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#xxxxclou"78"<\++++>/<~#class P{function:Main(a:String[])~Nil{83->Print();}}
#endcOmment
#nocOmment outtext("155")
#ce pS9^7^8^MUOUOF @0:8:8      \    @,,1'1'<> @125iRE
#p|o51~nJ;#:p'34'3             \=# print(size([[1] [3]][1,:]   )[1]==2?158+4:17)#>say 27#>>>say 170-3#]#print(47)#]#echo 21#>/#print(171)#s-#print 175#s
#8M`|   <esc>dggi2<esc>//      $}<}}<}>}[<< }<<<<<}<<}<<<<}<<<}}}<}}<}}<}     }<}}<}}<}}}<}}<<<<<<<<<<<}}}<}}<}}<}}<}}<}}<}}}<<<<<<<<<<}+++++++++++++++++++++++++++++++++++++++++++++++++._++.._#]~-<~-<~-<<<~-<COprint("65")#`=>ass^_^_#
#9 "25"   +/pppppppx     eeee*n*n*n*es*s*s*^ee*n*n*n*e*sss*e*n*n*n*ee*s<* 5>1  e*///\)Q222999686#

VIP score: .001584

Verification

Try it online!

Languages that are not in the driver: 7 Japt, 26 05AB1E, 60/156 Moorhens, 83 Objeck, 90 RunR, 94 Emotinomicon, 96 EmojiCoder, 97 Cubically, 104 Paintfuck (origin at top-left), 108/110 Ruby 1.8.7/1.9.3, 119 ImageFuck, 121 Braincopter, 123 Mycelium, 127 Deltaplex, 129 Brainloller, 131 Extended Brainloller, 136 Wierd, 141 Floater, 145 MiLambda, 146 Curry, 153 l33t, 154 cockfuck (perl version), 157 Haskell(Hugs), 161 2L, 163 1L_AOI (-eu flag), 169 AutoIt, 171 Agena, 173 Brat, 177 1l_a, 181 Ropy, 183 Intel 8080

Explanation

Wumpus is a 2D langauge on a triangular grid. Each triangle alternates between pointing upwards and downwards as shown in this image from the languages github.

enter image description here

Each row of the grid corresponds to a line of the source code. Like Alice, Wumpus has the ability to travel diagonally though the code. Because of the layout of the grid when travelling diagonally we visit 2 cells on each row.

In our program the IP starts travelling rightward and as is common in 2D languages there is a stringmode that allows us to pass over the string in the first line. The behavior is interesting when the IP hits the / reflector. This causes the IP to start travelling north-west. The IP then bounces off the top of the playfield to start travelling south-west. The IP continues in this direction until line 5.

The start of line 5 now looks like

#comment -[af] xxxxxxxxxxxx\#184O@xxxxxxxxxxxxxxxxxxxxxxx

The Wumpus code is \#184O@. The \ reflects us from south-westward to eastward. #184 pushes 184. O prints to console. @ ends the program.

Minor changes

Because there is a 1 in the Wumpus code I removed a 1 from just before the Alice on line 3 to avoid breaking Whirl. To keep Cubix aligned I added another x to line 3.

\$\endgroup\$
9
\$\begingroup\$

194. TemplAt, 9480 bytes

"Click 'Run code snippet' for a 'Try it online!' link."; h='https://tio.run/##7L1bbyNNlhj4LHr/wb6EkvqKpHhNUqRIUWQVdSupSiWpdClVlcSPlSSTZErJzKzMpESWSh96xotet8cP9nh2MPas3T3jXew8GNjBYh/W8AALrF@NgX/DN0@LwQL9D3rPORGZTF6kqvq62@sFTInMuJw4EXHixIkTJy7ZVJzeb34Txg87MvVRVzdd5qqOy9q2dqPaKbYxYs8Uzclnc6EQQtXs7qCvGq6zFgozmTHNaGlt8DPXvFYN7ZNqQ3iWMcs2u7bSZ25PcZnqtBRLdZg5cK2By8zO/GQ5xrb75pWWxJR9zegCmKvalq26FL/C2JmhK/1mW5mKyU9laNkQ77AtVf/c/@yyltnvK0bbAcgCY69M21ERvqU6jonJVxkbbqutKaRFAFVszdyvHTyfiiox9hyKqFi6OmRK03FtpeVqpoE0ybCTg7OTo6kUsszenO7sTIdm2cukabCdQet6OirHzmxH0ZVp/CusNnDNPXc6PM9qXdVQWDZVSmWnIwtsw1ZmkqwyW1XaHU1XU9AgLMl6qm6pNsMQ1jFttgdF0ouZYqZRG6dMtTBtcRw5jbbE9FzOnapPNgOEN@2eakAJM9ORsh85FZH1I9oaZaDYIxZ1eqYNfGSzgaO22a1pt4G5DH0US0B6NvzEmoqjFlYQQc5HcG2YtwYwkWtC0zZHrsoM00hSYgRcYfJ@Y5qxsnkMrR3uTYcXWHZ/OmwVGK113Zlty2yRHZvWaDq0xF5p@/PYOZfhHWHTbENrTMXJ7EiBIMpmkvC57GQvaEHrQmdmVw4UrK0yx9AsS3V5JPCKalM0pGa6ZlzzDn5km@1BCzuf21Mhb@ywyA9OqAWpqswSYiKFDhYmDuJgUIITs68Gy@swQ4UGciy1pXW0FmcsdeiqhgNFdlJMg0rcarrO2qoOCcbYWwnmmNi846CmrvRSrVQIGRNzYf1rnWmsZVmMR0EtoEg7mSJTkXrsE8TrPYcNrT5ztD5Euy2z01FV9km1epA81DZDDD4ta6pavm9JBRhD9UijWiAQkDQmUhro5FHo1laAtLYjaOBqfSCs5kYcpiqOhgIVkjiq0SaqWr6oNZkywfLsRoMOD1Uf2ITbUW3qcoQXuqetAkrFb@bora25LvUaVmNHqmKzU1tVY5NidyJLyMzEHFysSIoadX09sn24E4HG5SlSigWNaedOX78IKSxVYUuNMnwrklQObR9ssbulS3RzKQsMYNlRJcYqPzAnfXmpwncoN9Nd@z4EWENAFZ2lTctNK0kLCph0oYBpBZ3oSt5kU5YeyJitT7VFgOU4VBtaA4QPe5OgmrUGto0jyZioyjVUWjeNLtATKmsPDKSHwQoZaIKWCQNBgqk3QDWQvNRGIBeQwqc9DRrNwSYJdCw@HhJBYUQENhYU9fJ1TH1AcJDScZGXgSqQFDHuddgb1lE0HZNAPKLipbZVZ6C7mGZgtLHlYbxT2ynmFYM6rA18fAPZKYCUAoD1@4F@SYUCYGgIk6qKUT/@0z9vd7uAp9ZqgWwT7PqGtc0WjdwKFRaGQ4YMCwJVp2IBXAJz58khgxtF19okIBRjJLKgQlCut@ZAbzMTMrRvNeilPeUGejZ0rparcibng32C9ZVrLk00zrlQ8b7ShIalDChvqnaSPduEVmqpoTDxTLI/cDtFlrS2WcRJfx99uhZ9unipQuFiqdjyUjrdLQPDpZYpCHyRxzjnTW1CUjqu4phaO2SN3J5pZFmyxaRWxbRUIxqZwBFJROxmJJZCKReNlbVKK9XRjHY0sg68WIWMI7Fyq9K60Nbq5ankwSwBzS2iwe6qRlsxKQQihzrFTboP0jwFg8ObpHAF4kyngSTH6FQgGAkzHXbDA8Kk7CBfmsggIIdSjq6qVjSTkmMoJhBubr0xYl5Np3CICq9p9XgkHIkHq04YoKYTFcXOeqqZKLZ0q4eDFhDFcCwYCWzk3RaM1CgZHc0FjTPBmsTXNIqAZCGZeKtGbBWHdJ@PqEvyLofpkygoBYZxF5rsyWo70JFBCEBfdp0Zaaybt5AhlQmHGRAdBmaqdKFpIDGvSI1XhOdEIZNV4ooGYGuqrJhsatAJsLuBTBc8H6gbgOeyHAaw8U4SkD19ZQRYWnxYHXcYpnWgL/VBPIA21FJR5oDwUfmAgpkMqP85oGOjtp1JZvP5yT4208VcO11Lvgch/Sn9aE/Cygc7Ewoa1lFvma4Y3YHSVbkmxpRWS7VcIaigJo4Lomh6vKHApBg8U04vtPRsOm8aRDzVYpwHCnneemIoVFC6CEU/CeqMyhQxVQHN0QaxpI@mcweAm6nMpQ8IMlGAD9IDRfA0AGAydai2Bi5INWDg257W6gHPYukMLhf5IDSdPQQFcwfJnuz4WWNh5OqTbCiV9oOwGA@iSGKLzuKBwRVRVScCqPGDAY9jVpz@HMSmX0QYCAKhqbSSAt77As6@aZhzkAIhfbQIMhnD2wE0sRNUKGHg8tQu6qy@luk3EbQZTgTayH8917WcNRgnNLc3aKaAU9Kn9mjPPTSQWdKuPdJck7ubutkEsexA/0x7OaRbg6Y2nKoQhflteOWEbkAB6zisAiP3xwFwXTTScUBgUvgmAgeiJBLchIL/SgBIQCkgVLTjkCjeAaFyMjJaUSlFXSkFnU5KMAk7rgTTHQlT@XTZNPsohdg5KQao6cG0TzNwriBkPol8Ze5Q58t@0usikdSVqRnRu8ji4mJkLVIFyb64@BRc6@h6iq44uJ6SK0kuhEuhi1IkyIWxF5QCw@qR@wsP8zBWx2Yb4qj0SbOiysXaWq6eUC5k8cziMwaiDiQbQCfxAXgisUoFnbGYVL2Fiqaancnab6J0PmnZmiWI8EK5UbhfUCFHZND6Fk4jbbWMg@zjNOlXbBgFQWlt9aJ25PIic1m/vLtsxy/vIwlMHSsrlSZUCvKL9lNd2xzAcBm7WFlLyvVY7CIHg2SzEslElqPRYlKHjJRY7LtiLK5wakcjKkjt6OVlBIgq6HPR6tmEb5jIxmI@qaAcODCDThiNpO6KkH8zVo/FI5A2FknAFKMSiQBlWkgEhyqNnDlBoMPjl5wwm/F4iNjQtK/xOyP2ISwFEyyefAf4d/NkctrbvwbpylqOjqpI0ubaCHjTyzywTQ9f41pje6SxGjDcQg1gtG37MyOcjRsD0p9JuTWDGdF0ECEoDMcelKvaBAwi7mhDmCBAvx95ihCO36gLbcKE09TV1DmpJhKDjoPTXjU1Vxs64sNKquWMeQD0HnBautKCjj2J7lJil4AQ@Dydnh8TK88gnlaVaFbzpTrCwNJSDKRfWyOtfaA5PSQvaFY4lbA7QFVU2UE3UIlqe6wFY34XKK0ONZfr8MBHJ5hkV3GiMdQaa1zrQmUPNQYslGcDoOHcbMF8RwXNAWP55JFtGzeabRpI5NQ2oAaGL2MbTCGfR15go1ptL7v1MH3nIQeKzQTLAdoGsU4Tt@W0WNowdbNrsmUAQNZMpThj7xloKgGdz4XpJXO0T0SgWtc0RlM8qOJw76COKBdyvvatIGSa4FNXIGvY/EqPAR6o88ne@20YIeR8JgPl93wZ@viVDGCZriMGttgYQJhsdeQbbMn3qtUbTRiUkD/4LBL4yVR5x@TzegUGVCiV6OGfKGmwk/MQ6OdeVNtzzav7NmlIaMoIzjImag/KIPRTUR3ebaCG4algDPVIMYF0psHH7bsDsvO0N1BDaqtnMukSNIxslaXb6k0aBY4Egq4HqnISslJtUsb8ZMKEHHLNAWh1bVXX@pq7R@Yu3UDVZTwse7FotRsjONJUNyTmG2Pxiiapsaw1uhx@e4gDkhNS6ckODre2G0e1092KlB44dlrXmsDBbbXRB8VTVx2JTX/C7FgFZCL9p2v92DTdCm@ua5198RPGNF7y/a3G/t7Gce34HS8EoXG0/kBXsChrS1MAmPyEor1eFbADdmyz72vkjmiIpRySXp2w@eP0VMSuYOxAWPwD4QUM76MVP9UKdVstljS51w8UgKsIiJZ9GsO68ThCkqXfDxSQRUKJ1v6U3fQCSxjo2/knLOBjdPPiH04kMN/JmXtE7hgDxwrU7E6WKfzG7XRw1PaDsxR8nURW18fBOQrm6wSTFnpBlpmoucA@vhXCx9cX5uKbiZoL7OPLc3y4LjEf3VTMPFAfWYGQ4TrGXFxTEXMAfUyrhCm49jGOK1LcQwsfIq@50Q8m8nGXCDcujoxR0VKJCPIAs5w7@nzhwmmgjXTMI1l5Ihaj@HIHS7ZhcrKOIMgvn3EhBIJAi3OsdsodumMUuSCKJOgcfBnEj@eMIOsNpQG9clxaLyQQxZI6CDC5ME6c9xObU0lNbRzsg/N2zeoNEAGDQJf2QoJRfiLehN56S7BTZHkL2qY1CvTluywnfl8T4iTQu3Kc3CSHUDuyJyI5tS1vzWUijndLvs7SuOLGuoZYZsF24YLwFIbefRMUpn3NodXPoGQM@Yr9ZUjyZicTarg0jsmOrYQseTPfvCkFEZHMBrF6beKkeOxqZFJyHrH4KPrX@mzKDuiW9DMBOlOo2Rg@VvSbHfqZA7AmLGcwLOJSEFLlBVr/0bhngqav3hIY2QAIGVBLM5T0MT3QGjCvPJN2jYnCNNXOAJTgNEzS0P0FsGSpSJCdZlN7CBTogkX3nnPA7EFzHtmgt/ZmTF9sgvDuwHZ1tS2e//FnbWiA2ebpKSNS/H1HA@hGvNF5sLVEUvTQz/yWJZirga4pRAZyfQllS8HVBkX3HfNRowbDksmeYvdRvxaNC8yJP9C7HuEzXnJb1Qdt1XvOz4RIPGlg46kNrU81gidOEGk6/EDyKfMgT09TLN1U2oSFT4Q0ddzavF3UIZ8SBDRtkEVfUU7PisfGy2Zub@AO@C@ulH2pXTULv/OpsjbJZJm80pTVtOkoTU19hA9s5XrQNpPWdZcqjUUrPMTtvBOh0SnZ0ZVr7mygcz4BeBVtrdtVbe/5ENhtD3R7mpSkb@nxCKt4mhUjXVl5DKet89@HQLy9Kr7jYTppOv18C0MSi7Sg1yBpcTk8GSCTNkVYXWmOcHLW@3bOwgxJZQXBU2nF45kcjrH@2sd44d2yHk6PAzOlL5Xmp@YL8Zwk86Ysab4An@SGKaqzWJL/Qq@HkUvrK3oy2w44HxTintFz7JoDSjP1ZEtXHGAmVzSHegPNRz@PMTgORi1kq7HrEfYeF8dbAntoNWWcxgJNRNcci/c44XlImk7bocdocEcE/YyTom@Wvm1Shp1e0nfNFwhmy8UVjQf47SsEHF9MwOWaAAOlzIdo1zJv8fugitEzb1T@O3/Q@zS3VF8hqpI6cYbWmpO83foSu@KaOP3Mp@L13FK5LX1uuLDcT04HvpahHU03HZiX4@9jhAAN23H473xWDtJMU4wkGZiD7vnJRKEslhIGtQdaUtG7pl4odtMK/DzY3AO7g@JfPL9W7PliS5a/LLY87cg0ZPF8UN5fp@3rL3ECWaFtXK0KOB8ZbOfJLrHK8XAFYQ6BS9DzK7eTKVLKVJobSR5qALvVu1VG3vMnDCkPUdcbUqwR6dag/GGCUhEcrs317Z@S28rjubW/TiDNoF39UiUCjXutqyCe6XemSVk2I39jCjmT@Xrx1NEH6kCdq@UdNq9U3ITIzbm4c0HRdb4Merp3@I2FyohqLAlzYhqIh8ZEH@qTmDl@Valx8EbfowJG0TXo5F9UcebKOwsUcgsn20fgOELHbMKuMbAmGjdAu@OBcfw45XqW17PN9kQhMeZbJVLxy4rUhM7uqPR9SL/f7pswPzb7oDAYX9H@AilZPvjvBGIKGasZEwaSudn7S9qg0ILiAS2qXTtJtI1/ndDJPjSpJ@BSCaZthuqO8PchSs8Tok3T1L@lZUCWtjXabKwncXvpl1poRskRuxvY2HzhoCmk2XnIcMHHGTHDBOrhbNp9ZP4cNEc9MiWcMa0/MloFDO1fmmTCSE2WIcduee6HGPIYO7WcKqZWH2VHroOaTVVX@GNYWHkMXymVexSfr3UI5ZYWZnAxhy/fjNe/wlOixxoBsbQ2TFB6al8l7yOavdK@Gjje40GgoYnfOdGpNC1GPJDO0qCvG/g7sVQU0IZc04AplavYXRXnJDquYYrQh@Srt8Yxl7h7faWr8rMIj4mOsWkCt73xmdzYOd9IscZ3orQgGV@of5wVoONcqyPHe85F@GrUgvYc9B/FNq@Pt9AC@sVOnUrPXdr5grpn9Mye0VN7NnUO3/dQ9wCOdPkpkscqAeXvKc417vMjeTSey/WcIHV1U9e/hrooD7l0NM35xtlt3KPfhqTfhHekNCFCPL5ox4Mhm4hEY/dDfaenDmBkckzXtNQk@R4C1dHiw3/n25v3DiMOO9dUu803KaD5T3G1pq6yWw2KcOUEV8bnW5OauqngVtJHlHegjPf8GvtUy7S/aPzoKqZrWfRoWPrAoR@y8yY78w2Ya2yHSvo1zKC5fH8IZ1m1azZbPe1LRWqqimto12nPkMO9j85LhTCmmmssuYXBKV0DWtmjFDJBJRh/go@9h8a/wDLO3NpvDmx79GXBMLnq79tb@SoBOh7KXyzQzommIR83QHkbfR5ZqhDruQ9yEynQqCwn1QxoJfKD9p@JvV5CetHC4gNKz1S9qTCBtbRvsV@KDQFkydMCmxogfJ7x4iFBuCvkG8wKo7uDrhP7MuP22qBT4c9chLUuHqviq0mObt4GrM3Q9RVDPOaOyv7K42MLI/lHV0bmkTmVFmugSXXwoL1L1yyH/7JkJzu3eLOL@rNQo/mzX9FkbbXDf7@k6fVNGzfAg0qRbNmq00IzOEpjLiW5CDLMLkjlpM7GwB7s3OLP7iGYp6tMjnjJtwdqV8ENcfsa7o3TndlBEDBPbyf4GsSvB4qjvR6YrjoX5/S2gq9B@Urpaq3diRbwEHrUFbun@GOiU2DQbEPc9jSH9iF7jvkdibMYrdDPRk5b2v3zcI8bRgJ6ktgOypJ7zNs26jvQ1o/xyty8JrVQsTj/oODTXDKgiufces7fgvGYVeF20LcGjnjMz72PpwqCduT@NYU7txpIxeRHEMKsp@jufFtzwJgK@pUYGcfOh7Tu95pudtn7YoaBOgYCD5XwBxhrA8bpI8WFHmA487RAmh1lU3k8YPulsW96eROtF0mu9jgfgTXUHEtqhuY@bqlxXQVmSt4Tq8iVMTxHk97H39Szb8WQPJ1KwbdRHNM5Pv/Eh5MQGxUhTLPFcTMn5Z3pDNOmTjr/4Z0HYGE8lTLA8co17RQjuGhUicdjsRBPhBb/rgFgHhSdqsMTN/zAnsN0zXEJVuuwiwu2dDdcy6zJ96zCpDWJ1escK37o/Mf20KIjccc8@cWSUq8sRZLJyFLk0lhjmYgPrurA6XPBlQnYjkYPXt4xCZih8K276PZqXOYnipwendYDLa8N2uKZQUYc1Dz5uRh@6OoUtxr8h79qi0OMMKV0QM2CkQYIgmd4zb7aM2@f8nxF7jXLUvAQJOIAwaTzIznJzRqDHgNqJT@7aN6ys53TojgRJQ4Mg@eIqx1@KXjjomED9zO7vPF4afy9qSJjP5VXqZapD/oGKPJtt@ek2IlGW5UH9njPIbgQzHBtnM20E2yPtVVc0KUd6DSB103zmo6SYEn@w1/xc2C0D13sD/ayp/OfgRxxu7lMh69aLXMApfaQfFJtU4BEkcggpgZoGoPeqPLwGO7OpgNqwJFJ73gWZcPPaG3WTlhym0XwLDSe@ihrnehS7fj5m4tMvfID66fV//izdOxOEE76LlkqOFKCeSDle2SsYHQeosexESYtDSWeob9JXxOb9G95ewCJFM5kuE/f4zHTtESvoSO2dKLU50Zx1UMU3dTO3jmtPp3OJYZVb@mcFm2ONVB847FXw4EOBt4Yoea9rrIUHXALTvLEZXnIEM@6KeDi53lp2zqeOcIkS0P2mfWQyZIt3EoNPk5IHY@59Ssb3g6fXHAfVnpLbQ5o88FNNpXNVag6S43KepVctto28bjpxfeXw2wmeTlc3a6nHY@ol5fD7zLZt0B1EyaXS0/S2PO2D7bullLVzOfPjjJiknQfKfN9YyAmlu6O9o62T05rp2cn0Ar3nvjZMe2@MpY1yEW0Obpn6nSQF@hia6rzDfLH9wF4NMqWFLaOV1TEYqHgvl8CFbSWktISdwZE00TqLySfl95RA/GzAEKmdTTmcdQejFvYhsBsSDWs/MDC48hMpBVHKonLNJTx2IF8wuDuvDmylEglsQoQKwnE@kpSsYcr@5SHfQ3FvojlcbI9nQuCFPPzu/DjeRXnkuD@d1JvCwbK377eHMvj9SaYR@oNoH6ol2antrd/drw9mQx4jJ4kdSulvNjwzoUz9jRu/PHOkNLZIJEQrV8ViUmUgHvFYEb3jzRV91aFagnh2OrzxMShVH4pNGZMoEwFL3GplzktolEqAeogZazW1H78jjYMFNEbowPo7ngVfSGwI/movYKnJIE5TBdqpPDjVQOxCnJ5Xe@IhLiQ1xEnqP4kvB6HVcMxGhRpSvXAUOWPOg6D/8Co5LmydTZkYjiT6yzJsvDVVZhE9nzYWJmPUWyJE0Ja4mWX/PLiZQ5QpvaVQpNO2hsmjhzAKK0rFp4cF9AHMNFbYx8HJp1v8oSJr1/c4pRG4feWUNO2FKwNnZsyXDwF7o1bhG9v56SC2hlXzUi@B3luYOBABUCBW0S2hzBbAWbrkKzn9xFwkpvi6Ls3VJJV0hFHXX0twWE3mkNWS2yEDuo4OkhKrI2oOF7hQyfbWE13QCdpw/DNL7wh5SRF@5f5JuakwaQw8GTKVxkTTAohrFOZPQoNQ@ltC4bVDzzxEsERZieAM7K@mEwC5bqa4V05s4bGVTKHrDHXHuAWgGpkJolXhDVyJXtuXw8AzrkU4lJN//hP/5xfBHHpgvsXwj3MbIDvj4SvA@5/4sXIMvj@me/Lgu@Pue/7NDbZ7Ol3kb2wfj642Rv48pk0UyeUCd69O1QXv7Wxpd/sHTGHLMDYln1lGGgmlDDIc5oB9NL6wBQ31MYIznMYN@EYT/TiDbAI8BXwB6o3qNFQfqpdj@IZ6LV0GguO09IU7RlWh9z8S0eiPw7wKhBQwtKFfGFFTkMhkzceQjqX2MVNqhxhLLYGMjF0o1mVD80WHj1gktNSdLVSKHPeSC8p3@ekD35BlwA2xCcKFwzS4GkFPwXEVUWy6JISl2OYFAeyiBxBmdY2OauBNhglB4DEMNjwDnaBumkKUgEfG@rQJY1p5E2AmnjlE5qpVH4hjIcoCYg4brywYro7jred4i79QAdNBZtBOkewEwRbk@Yx68X37NK9NOri4hIGjPerOaxrgPsfz7nNhHMWntScvUYjOn0JBtaGPTsxTNyevAOlZdFsOptLy4VYgEMlgQrKi139M6CEzg3CoqVqV6bl1Da3914cHp3MXAdBkJFpsAiLVNfjl8lU4qLuOyJ@uSeJurGTPnm1seORMliq8eI9QoxX8KeLOS@36ZI@kPs53@87mzdFzGQkZ74WMS2XJXdog8ss9nFsOgC4yfcZzuQajd3dX9TXq5dGeCb7z/OuyAmnlpG5wHXp0AU5keliYhH3vF3Mp3j1npPyTrNkpfEFUP4ZHO4fBz98oYN/kd/4Vgdvv3SIzlv6xy1DqQd2UkPdU2meFV1pwAvmlRdkjVdUGYs6zrAVmtmAESwNE3WZvXNQHCjyiXTIbUjejXEOh3RIOHMrE12t4tPMhzv1MGLXH9@zIC4Y6EHpdK0ZuhVnYb3jWP452JRj6ZobjYUMATF9MGsW0nn0ugIfTKlcDJl/wshBnXGYIuNclG4Duq2H@G0PzLuUIU73OhwNgG5HpsXGVrQt1XMdg07FtgaQRQsnZC8GfYDr0ONYxdFCBS0rCYmBnhGvKBd4k4GgRKrfzkeHsVRPHba1Low40VgCRNN3sjy@EULBKw1Ar2rOqwGapayeAnXApsmt44UKw9h6ibzjCnIDKLudH2zUQ4AMkzZja9xyETkzvMt7sOHXWCThU6YZS0RSjM@kxL08tIhMhqgU2@zhljsyfXQ6GqlswXPWfDDvaHY/hbWCYYaz0HPccBvkmm@6nCNAGeVCSWlGWx1G8Rz0Wh3pBOGR2/ObSEyaYXG6IUTcB9GevirEk4WKK4TS@JqNKXlXKvlyblI0lEqpnhPCs2owKYEcT1x7H5ygIkQ7fcVi0QHdteKwFCNv9DJqJBzXjrFkFYfrW2aweJxsGvCgCJizIGiHXBodao/i1WTRdAUaCUMdo42PT5rFLuRUqg5uyiTGltCeuQnaFFoCYyGYo0KSNUIL@gX8rWGJ@EWSKXGh5BJlG6LrDgBqbjTJqW6P5AvQgmrNqk/GZ8sDAoZTtVRaE60xKe1LDPhifY5ABLRzpLg3RwD6itNGQDWU0QC1aattDeTls5eqYahAIOCZPt6bqQyAyexYwrvSNTG@co1yCPMi7orjS1DQyavYtiN3ugnq2lK6TKax8j2oNR8uUa/pCM1mlP5v06l0@S66pFdGadA1Y9XoUq8ix3PL8fiSsRxdMlDbevIELWr3S6DMNVIwQR0CUHJJj5WBn0H5qywZ5SVlPbrUrmSXKQV4YYp8Bwl@cNKpuyXlPr30BJSlBITYXOhElxy6JSWTSsn3UD7sIUvpBPDMHV73QRe1YvZLWjyOZUgtNbAAP6QvT@I0bF6epMl4VxZzgXS3L7rblCrmt8TMBbOcgCJ4zR@w8jhgiV1oDQ94fBFbbl7cA@ofz/gl7tVltMVAdYKTL2ky5usFi5DTKHOFkInya2qAgMMoEBG9CSUWA2Hym9@E5QJj0tNCLmrGn@Yz5XgkL8M0HebX4Wegh6eXJVu6u9xK3jA1GbnoKPnUx/rR9dHR29hllJVYJLx5KMkr0veslGVf91ll2Qc@7Lf5hMPL6VA4vSw/WU2nP3z4ADMO@FxUU1UQH/wTu0hG6hfRVcaqq6vLiUJxOfEs0ggULBbNZmMnLM0uNU2znHYbvmaPblWOhvnn6VPKC6b/8M94mMhfODwPgojQ8LfCKfkwu1xVlOX4SvaZUYailfCTYzI48bcIX5nl82wbP3/7v//tn/3tn9Dfn9H33yvsmn2Cz3WH4T@5P7UDbgXdzc4nvEUGphYVkgtWJJLPRU6@j7D/bJ9FJlefrv6nPzn8GHbD1Wz63IanG/4YLhTD3AkO8OU83024Gl5HsMJ9eJSuVCrgXP1P/yukr74APBgzWoefat7DVRiFq8kKJfkcrhbAIWezkO///bOfhcLVYfhTWJbl8Ij@GuGMjJ/iE/kJY@BIS6tFyTSfeeUdBj5eWFqWs5fj9gw0NzatH9yDfKBdmRmeBCW3z1VMcAM5vgUO7w0uLD77sMWYCkMtftbWns0QfH/Kf5xKwiclusEQPcmhV4VwsZJo8Ox9Xg0HHFMV9n@ZqLvv/0a4UNi7/DJ5oXTqE1S/DMvFlcNnw6/@sHGhPSKGx7TzM2fTYR7VfQ/zOj37FrhQ@IdK5djFv1dN/Ds6wT/zI/59u5hjT@GzCH/0Dx/fi7@LFCKCCWT2s/hbdNdQ@CJ8Ua@/7tGfjX@7Bv41P@Lf/if8e@3i32kL/45f49/pe/x70cG/l5/wjwmeXV9fD8fjx6AaCp79ms8ZfFOphvB5vIvofqcfFmLhZD2evL@/SH0/jJfL4h/0pbLvww93QYnq98nk@vfVePyCSnZRFUVcT9arUExeWvr5fh0Qx9cv1tdTjWq1mqx/X71Yn0wk0j17Fscu@gwSVusXF6HwHTZDBX@W8afl4G9WktLkxXECBuYSuBg56SECGF15j/5Q@MP6h2j8afxpRs/cZORr@fqVeTj@PzwcQoQ2zFyZdqaX6cltEIYso55lRpnRMNM3D@U2OFX4y/TBqWU6w0w3Y2QMWR4NJ1DR//By5bBw@Gw2Av77h6b76tAEpCYgcIcZF/FnOvDsHh6@ArQdKMIV/GmZTGYIZR1mbuA/o6Oopku16Pl9I3YZumDSBxXG/5QcSWUiqUIkotXzBevj5d19tvBRSkQalxeRejmcdi4v01w/YtmVMl2pdn/faGwfbDUaaeSk9aX4s3jyGXwq1fi6eDwNV8tPL9eS2IycA1ONcHr96WU1l0R3IQ5tlYWw9XT8Gz9jlPCsLl6GYMp3fo7f89ubW@4iB7kuz8/9WPxJYxC5KAg@AJqem37CwUDX/D39tw//y/p/dcaiF/UYY9G7@/UofWL4F4vd3d/di99qLBoVnug6/GEA@DHJ3X0VnQR0B66LaKweu7/nYfAbja1zhFXMY71KiceA0G/DPNfLSBl0vMpSVCyrXV4OM5lYuQkhvoFd@UwrNLEy7V1ZauKqGswH5OUYgeRXyuUV4V4tlstF4ZYLhXJ52YfKgEc4AUh1lFYZGb0cjmEROPdHM2hVoWsrI9G22sH7y59aFkzt5FLm82c/qNFoa3ajgeG5z58voSNFcOdKpZSHkEzx82fog5EYTPsOTLFmWoJJnJzOolMGZ359vbBSrRZWwF0oxmJl6WLpjhci2o2X5Bi7X0rXVUfiZYTpViTM97tE5eJqjELvI0tpqczC6@xpFdjXgQ@7uw8TJdlKPhZtjtQYWylEi/GS@Kssxth6urrMxN/FRS6@sry6/KxeHysJ2OHLd0pFvq/cKWs44b8vt8T9j7irT3nyJFeCKhYz5ctQo7FVO6018CJ9SUKhajGGoSQ7QrhSaNmRCzLP5Ev1Cyx3/TISWSs/421UzLNwpCzgkhGQQqxYouqFYQ6odXA/7xBltfiuycvZ3GI6P/yusJ0BnfnzMn4uLi6K2WJ8GaTUcqlUr9cp9PMipbnoDzt1umKokryQC/l6EpWRq2FnGQorr@bCyyGL9gWtZlgbl1ZtNHctQmBPcVgTV8EdVde9OzdvTVtv32ptFbAf7dc2t08T2XVAmd2pbSayJ2cbYRm9@bGfonPoP96ubR2eQYKj/e3ayfbzvTfbZ0cQ7sC4B8SCT/9IUQdqQ70dDG7R31Dps6k5ytWVYlkNCz7Dzo@/@vmPv/rvfvyLP/7xL37@41/82a9/@Wc/h@9fwfeP@fOP/20pj7@//uU/@59//Nd/AYH/Hr7/Dr7/x69/@S9@xr/k/xv4/p@BsL8R3wAc/wIpAdsf/fqXf/KXv/7lP/mX8P1X4vsvp78//un/xv//L/GHzr/48U//Bn@E5@d//OMf/smPf/gHP/7hL378w38IyP/@r3@F/3/y13//736F///Lv/n7v/4f/v6P/idy/Dl3/D//6t/y37/7g5//3R/@87/7g18@8PvzR39/@RXhv/w9hHx9Ob8Gz9fU61tDfvmTyvPbUGOcCzHYn/3jH//FPwLO/VPu@@/BB/9@1C98jx8Tp4laMj4O/AVjn9OgCGWeffZBAeX/iKEQzD5PYqPQjBf661/@87/E4AnYfxTEkJFnYZcQ2M/tFwD7r/2CBWF/8eOvfvbjX/7DH3/15z/@6o9QoCVXSolaIil/Ya4DgPmvgEPAwtfAAaC8jqvbi2wxlAXH4jqaIEJy/MMHIOkiuECvXg7lc@ALyVVyy@iGhDBDWeZz5DjO/OE7DK2UwIdGgTgMIXEeFYeojTirVCrx0LACcQQKXkwzZNUizmZxKlABvJiIp0k0iqBfsuEGYYGUlfgxayxXhjxhHAOqhIFhgTDoWJKzUrxY2YIMK8MthrgQeTz0AZ4fKtViZVhFdD9QEQBHfAOyBKgKlm5Y/QH8FcIJ8KHh1g9QlGIlHq8WIaRCVaXcEg3KU85T5ajucUb1xnDG0Cb29Blj30lyUeKzMSAlE9D4Gx9DPyWbxFOIv4wvi@rQv@ek7zKmh3YaEn14GI9/isGUXgAA3mQSd0LBN5nE0jyD6CFHFads4RHnGIBycWG88QNolI2H4tS@cfJA/lCGr/usVwMeRIfVWVpaAtd6VcpJh6DUM/t6zXEVGxcKSKNZY1KhJGEwbixRl45I7V/eWoZfGf63F2lzKCfHcmgpgkN5hHl5JOM5c8UMU@m9qlFdlqnkcYILhcfhXNWk1R7QEVdYLBSlS6RjNIVULdBgQq@c7oY5BH0wIUkJuVDiRlMxw3xnrq1VfpBXVkPwJP8A768WNylDM@A7jVLYu5Cg1bvkOvU0cIK6UQhVq2LFismh6sn2KSQ4PWRyNpNioETeraxmV/Ir@WyuUMivZuWVQmmlkC/mQEIVMvlsVi6trJSKpdV7KNAz6OeJteVmfr36D2Y@/80/mPeZH4qfUPUtG6bY0dHr5H2oOkwm01kqckXOr5ZHFSgIBYWqpElxfXl0lwSlE5sndEmbo@5wHw4ULXSXRFZdgA8LLYTYAgTBBzCjvZ6JReS9w7JYTcO3A/AVNUnOAzPEQpfADBxbyAp8QthuT0DYPJG5M18YOzPoPMXzLgeAHlrBYPu4adE12anJN8dtqK3QujiXUQ2FaOXhAmhaD@HN2xf10Hraj52PabPH35e1aZugof50mA3FuOZRWxreuddy/ahdBS/Vcfqa23sA4szq4ykY1f69YdjuN6GAaHjkABvwY@umOQ9glZ0dPVDLV/75OVzCowN0AH6893z3NPA83a5t7oYKbOPwYGvqkRdAeba/vXPqe1d5rJc076N4t72/P@0VD5xlLLL8aiIB4hF@8JmgDz1TS997IHLq4XFTTWUSMgwDjZF6l0zeN1W8W/2E3x4/7OimI0ciXbUP4xz0ZBmYHXfQdk0dJlRLmc0MrjKkP@OEqKFm8yO2BGKxBDNDtp6vFsJSXipWCpksDD10qX3HKIcLMEe8KNUrQ5ZjxYu6FXZWyqVc6BVu@SrJ/OiC5oR2YQbTxwu98SC4G7LVNsxmbg06ldHEl@cMLPZgIDwwCJ221u2BaLw1fQCYWIaaisLg@60fwKEGP@7jAS7Pg8JmYvRZ8NCtbxfyDT7Mt/wIiXGO@4bpzJC3wEzDj7MWOkVBTe9UYnicrYmvIaBzZaAB8HO29NIAFcR2KRTCRTWtwzKhFBnKsqVivljKZYuJYqm4koeJZT4hZxPyanG1BBySkYtyoZgvyYniSim3AkIbYvOl1VAYBJvWSadhTJIliZ6a0cJrP9fx/lQz1auGwtzQAIoAvoUurPgBgyKTcsXLDIOEUgj3zy4PKxK@5zGDb1GUpZCksBYL7@xsZnZ2JGkDPWgV3MxIUhs9@WIms7ohSSrFbMLAkoVEPfRtF1C3lSQNPZu1nR3EcIWebBFxSNI1j@Ee3fOsApiBnlyOlGNJ@uijywByk5eoSKlc7slkNjYlacCLh0ceAa7GfStU2G30YAQm2uExmxAnSc@9RBkgg3TM4URWu159azVJ2uOeWg1RvKDK53mlXqKnRh9IZIMPOF@SuuDo2jDhl6QmOJH/JakFrtZIgbA@uPAgo@EqkjTi9cCaSNKQoJXWtQQ6nwiHfKA8u7tKz22rXf4Z2fzZgqg9iNKGg@2d5vPnzW63aY9q28@PKerFi13lajSwm92mSNhswMfEVBB13R9Nf1SMajQUfX7US4gypqIao4ZKJWwoH6Fk4tPFjPqNFxj1AqLmrSIJhPDpA3ATPxt9eG4oTR7lfSiKnsNmUyojy2LX6USJcZUEPZosdofiMKo8BSV@RVpDeWp2QPUaFGPJ/NNBUSqsSmvL8JSeSjlwDqOZSIYxKXIpSTGQjE@l1by0Fnn6NBl5Ij9l0mpJWpNWV6VY@R7Vi2jsrhMdJoaVDASk0@vYj7HnwRO0GaGKnKpDN7Wr4g6OVjJ5PvFZXz8HODx0igfwDgZ9tsFuSXTgdnxvR3KjsgFyIlM28FC3it6lYXgYqrYVV4FJycbdYG1NwN6Xu5ULRPAZf9aT0nn1XKqzYL751QyU6sxoZVfX1y8@10Ejq8jlURhGkWyxPAzTiYvVlXIUJgCxiqN@5HrZZx0taYuNSoZraEvOoH@RWSzIibtkI3mvK467JK9m1y4GSxdJub64mPncXZfeV6U6Zo@KG/0FzX0g0MoQ5pGMi8BwR/sA8WwtyV9OIRcLsRRuDG@YnQZdQM8@BCTdOKFVhjFWV0HRkEvZsgAJWRXR6BKL4ptl@A6VaCSymo1EYpEyQC1CsGhN4havuSWQtNDcpSwojWVbdQegfGTK9145/SJwhbUgh8L3oTbeO7pSCoXvQvd39@tVb2x/yUYjJZ70vE8Y68Zh7pKm5QhcyFgkVzJVfcZqlVr3uFYWoLVNmmEAR13yg0/J9OK3LnrE16vf8@dlFZcBIZ8QJw8tDabX49V0tVq9DEmSFJY8m3W0mId5CU7efwjTtXFs864zMOjo@NorJJiyxrWTi3rshwNNvyvmklXSe6PQH@7D8fU0LqqlqmmiVuuQVptDYcMUTrR6utA9oqCa5yWcBKnMOil9v/p98ftXZ4dnhzvsWWatuFbkpKDl/2eJhByRI0DaZzDqacfbobD12czLPxgvyuE1K5JbieQm1KrLijj3G0VOiF6gjf8iV69fwASnHgNfpZJ9KueL8ZU1eTUWruL5w@xquEoO6HbJXLge5ghWVlkMPGRfzsrhalqEy6tyLOwkuQ/S5MNOKFx89eEzTE7Fmy@1LLnSaVGqpfv1e/iv3l/A/O2epnH39I8/afi55wDwj@C@hz/GnwBcEGYcX/8huc7/1@ln85CXWSoAxcMfKlVo2O8b3zfCoXApUo2nI/gWZ7FPQcyMUCFaNuhPdZbx7/txwDLocMu@D7zryyxflRlTl9Pp9GXsdRb0mVKpUCyEQ7@Z/aSXYQ63vFBjEX4DC9ej6HXm3gGXyMQrtHDqvbyQ3Do53HwJM1xQpFQDXyXINg8PUhiFb7sbn1Bq6api6yPxursRQqH@dbp5hC/EPts6ojTndDaNQmmGLXJZ2muvibdNJG6YnMqxbCaTT2dW0nKeycW1zOpatsAUEDoOnkUXriVMyqham6Y14lpvdDNGiRdqCINx@xpMWRx1jT0/2qcUdEx9eWFr@9UhOzzYf5fyQnn46e7eCTs53Dk9rx1vQz1ebZ8wqXbC9k4kdr53unt4dspqB@8YRB/XDk73tk8QQTqE8grXOjjBfJWQrTsjJ@2OLNUhvXAi2DFb16o7Ga7YlpLGCwUngw18xYCKN3NPhg8MmPe1gyrnSW0BZoKDFr4EuHWttNt2CA/FaS22gMP1wrJq485RqZdxVll@8PZTxs4vstbKQWSVtTIHRm59lekZ8cf0lX7umC0uLl4aki/tg9XwNd5gEG6nhrBxmfbeby9ECytsGfTc7EpsHHNweLSQ8XwL58enC7Ifd7y1kPU9ezsLOd@zDb4V37dzvrWQ930btZcLhXGyg82FVd@3tb25UPR9wKQLpTHOg60FORPyiHVjau0Feo1SdGdvf5stA1CsPBGLNg90TAUDIaIDw@E3FCDJ2fLybc/Et8DD7Gc0Bd1WvwTtgU9ALaBWcoF0rSfYsmnBT1/tAzAkox3OUXpdlt1tJQRWvFoDRpDQXWgBK7SAFQL4BTwbi3BsscKyMQbRCx2@lhvltwQlmHTm0Am47xy2jrpBFZghQXd10ElISKGKt56FFu4FymiH7EId2t5JoDKUVLKlWAyPTx2c7e/zzCzIwrSjEkEy8khzcJoWYIMqwi9WHUJ54/BmobZAWi0IDQLfzBa6n2jN0HRrIimgngsLLUAwSd0bRU8wVLYSuLCIeNHDt2UDMESDOwMufm4sGm1hXbuq26ICxZCY24c7vIa4NFlhk60cY5gpUYqi@Ybvz5@Z57t0J732pNeIcNwCOS8Wx8dLWkHYGIYteAf2CIIOJ1PKBeSYeBxSQ3UoLlCvBSA6fPlZZq@UVcgoE2FPnlA51sFXilAWmC5OObIkgiACQTAiHyLzi7ZIxY0tpJdxEwB/rTESEccRfr9fc@TfwwCSdbqgU63q90K/ORcM1XHLUwJZRHXa2NbgzmUb4EfxCJycYE3oJgnmRcoFjMR5RYKpCdaB4CmZ2tAM4FzVHstEjxWgM1LrH2zxFuKXjlA4D6Aag9xbowYDYfEEuy8x@sJC01aV67IHBfKQoIBvkWmiSAgO93i64y1Ktsz7C7Ilpv6alHs7ax4f8dTADoLTiKw4a@G8IqpLgdUx0Ax@gQz7bwXQc5bkyOJxAeFzmQDbnoRLJjncvceXX6jE9nQtFr@5FiiWH6zF9ldW47erBQxrYxaBWoCIjwLeOEDTz2RrZuehgLGQUFBtfhoKGEDHvAR9fALBV6SHIXecPvnt6WGQXpvuytBvoQW5VOBJJr2tSW970ovdF0IUBlOC7Ar7zJrokgvgwvPCrAiONpeVkwk7k14yO1SY6qXp@BKY5wA8h6KSgyEDzgpjlCApB@8iV/r4PowKq@009g62TydjEV/KaYiC9/CV0JRHbBJMFAjjnSh6Yn6Joh0kAtc3o0c8jwTRs3Fyerxde5WA8sXY@rgHTOsA8CN6wkQN7r0cINRQWzAetxMselJjyzH2BEuWYMIygJ6vzkI3HRVQPZhje2BlKasMB/H9kz0pjD0yNCcrKcqiMfb58hKG1Mwqk/vW51w/Z6zm2myUW0Vll@PxdRAh5T0Bc8C7Jlc2EBLYU8EbL@ZmdpXJsBU7x1y1Bxr3MGPP4qd63ePYRsOid6rRMmlS5pTpreIoW8QdEDAuTqo2j2uRNDYiH2AodmMIw@GcbFtx0s@RPSnWU7B4Wdrqt5blSxrtZFmSvCzrlOlsGX4jzHswXQpNnVylqzRMy7UUPNwpIg8ttJscYZAdCnF7SuBGpaiJbyFwY2t0EwbKlEYD75NrNKKOqnfw1cQDuwVDPqrLjgDDD8ameCR1JHRMRgryoP40GdHW8DAmXgQIo84UQnpDcoXub4tSjqGQXzLHVS0qVaAYaBPDV3QGM8S3zAf90Kx4SCpQ4tia0Ip3FOwPHrKLiUtwOI6B00vMCQbxPBvqs@mcOJ9t5sThXWfzkniHd@fEXQ3680oAguGBGHH8bk6MYR7OS8DvkBlH1C8CBLwIErhej8bmNz30q8kWD1wCRPQ/tQequNFm7zDAgqBcCg4MtHV4SwWmbWl4t/M0Iv8AMKSMDmOBs8g@W8XGnKQ4LU2bRu9hEojoMB1dX8yGa/iS9@F3crYYSwQQBjDiJXV9RX8IJwsghRLOQRLmb@NmnqXT8VEjC07jHadP4VF6ow3Tu3EC03oEHmPHsNj4HvAC3oLkx/jMPKfLjdGtzTIOhaMtHptfnrgv6iForxJyLEjQ3zb75Ldmnwzkj33yJ2VdYReT5ajHA/41CBjX0evgPykjr9STucW@qcZBrlHV6wfYF@/1CGTDz/NPZuujERLI5ymvKoQeA75SSCCuIKJvkC/UfOK08bzU4/FnucKSsp@GS7xxbyCreqDwIbyJoNHAKzwbDbq7rdFAy1KjIfEcaODFAS846IrOxuNSoKU2TIqNSklFSkjJZO1kc28vqRlSgl@PW5Ec17TVBl7BJCXaMFGqSCSwGgjTU3WrIontVorDKLX0cB61QB5QwS9nQkA8F3qDevBuzi9n1wpWyfyKKplTmY3vC/yK3I4pNzwa/VhONr94y8tok@6Gwsu2bFVDQcMv/hXvt8VLFCbO7qNJXxSB5@uQpc/BGxN4kejRwDDR1nj1AL1FuMLI2id5d4lIM1d/iN6Oph5EMOZUzn3SEb0uhNG9Um1V6FlkHkpJ4zsFRcFSoqYBfvcUNH4Vw3hAm7xfRJQ34dkmHTRjThV1LFhMCyt/IeH1I9AAR6YFv/4VJOD2LyEBN15DgkGeqAM33kGCKTrCIa4jARddSAJPYG9pfP9hXxlq/QEaboKH3IUmNy4WDvlYExr1KXJS@nGKIkRKx4tkowJvLC6tSVB1hy4/mb4ABeHn3YESq4dmhSzd2IvFDKgO85DOvVUllvgdNFJAEUPR7IjSQNqExCSuhFBaea0Ok88A73giBtXnqTCTWz0REdQk4acfj1eBO1QqE9MLpAhMHnhhxgm4lSn4Wi5S7mNrvgoybrEgFFfc5pQbt0s@WPAgBk9Ri4UemUn9/2aeFGyS/0KnSv/fT4pmpj6/56nMI1OYb56t/A6nBf9Vof@vCv1PUOh/Z9r8Ayr5NMrZHj@lrn9RDf929Ytk3giGDbt7g6a37E/Rw35HisDqN@kBXqkv5Md0gS@Pzx6abHBY/4mjdOg36dN24XzHrNVqp33ZPn5e69Z6teN34N/I7MfPr1Y2tm43nm@0a1tb3RfdzQP1dbG2sm@9fFt897zz6aMK2vvu4Yv3n3Sr1Qu9PbZuz9Wj25xadGqDwce93ZG7u3HW3zzJv1u9zWzr@c6G@nFLd7Zenb59efo8fxK//fji6MWnfqbvHHUySqmf231VeLM5OjdC@RvtrL2zrx32T9rbZ9n@/pb2bie@mdk/Kb2WM/vbt@9zm7fxfCa9Z708fH58dtXcfq8f7@2/a29@NJXCx@tbay/dLnU2r47fhA5zr@Xdj4eH3e1s6flu@narY7Uz2V3dzl@9PT7aOHu323upbPd38melt1ejo0Lv9esb9yDeXTkvDF45K3Gj9vp19qXx/OZm@zjUVMxTO6eem69l6/b2yCz1V9WXB7vd/mtbNtKH@Tfxk/7p7db2hv5xdZg7e3f@@nbl5N3g1esX7w8z2slJc1spWM129uTqdCXU6uf24jdn22dF5Xn7/HX/Zm83/24r/aqnHtTaR/r18@7ue/PkaH@vlnMGhry/eaO/e967enW9tbmnm0fXulFbSef10/a7w8PQ2QutuaXuvnVe1K5679L5jeuVd/G29fz06lPv@sXGydlhMTs8GmXMTee4udsZbh0XssV0S/94/KljvpLPXscLN1cvstq72ic3lPs0ypf29Xdq33gRb3XfDz/q6fiZLG@@3/v07t3J7o3drBlnH9/sHF/Zr9rGoXOYOX7x8lVTvy66V9Z74@REbmWeq9ev4hklNDzbdaCN1FMlv3ra339tDbfMj8d7753Cp/jN@XVO3bo@flP7eJxp3hrWW8Pe1/qbmfahUntjutuD4fNW6ebselff/3jovAu92pbz@R2z42x03qyU3qafxzvXz99uyCfDzIFx3Fkp2AdvXp9r2nbv7dmn41Z@541V7LtG9/Wns/52fHt/2PukFjNN/eTdtRE6y58cH2VvjZda393ZPX5VcA8z@2@O2rsjufZalW@N1c1RfmtoF3LnW2/td9e7hpV@p30cHGXUm3j7neWuvNaandYbrdV/GTp50Ts7OHpzu5cv2M/7hrZxVMwc7O9uHnTbKy9He68G2/vNq/bzvbfqW@u0cJ3d3jgvbL09ybmn1y/dUuumnzsqxk/1vts9i4deDHqD1aNz@@Ob4fuVWr@p5o71d@ZoVe5vvrCywze17cNP3esjyzyQd7Kj9Nm@ea1nPp3eftp1CrVRvDg8c/umeyoP8/LrUO72k@W@sF68PjnceHH4/oWyomnnytXJm3Ymd1ZMaz07t1coPJe3dzr9j/2SKn/aepVTcv1e3Nm/Trc322dvzq/1q/7L/lUrVCw5rY299wPF3G5m5cy7jc52Xt3f2D@V1bPuy5OVrYPM0dv20dnH4Wl78@3g7M2hltm@elHa7668PX5Tern6/tQ5Vc7Nty/tg9CwmDMduVDK3@ZOSsXDnn2SO78que9fXhU29POm/GIv21d3NPttcVS8tj71bru3J2qm2X2@9VE57myDJD07yij5wfXB8CSUe3Pav1m1NuLvrlsv3xqyXjzXVtOnH69K173ey9ut1sp57dNHJf/8Si2d7KSb@k7@efx48/XRVXfr/FNxpZ3Z2H@jvB1u99x3ode72tZV6fz6cDiSX@@cjPq1jKHnb07O8zen5sbJ@e5JsfeqaXeau1c9kA390dnV7eBmV13tDW@LL3tXb5TM/tvipuGsHGVCL9S9fvv49OXbWryTVUvuzeG7A@u8eD7Mvyqa5yXzsKi9rHWeD18fdrYzq5Z2fjo82@6lNza1fhFkypF@Zm8evt59f/7CyoSyRmHj06aZX/0Yvxm@K5ynj@L7g3et02z/3LZ332r2ztubo7cvT2p78b3m6PnRtXL4bjt/crC56byI72gFdbSbu3Vqmzm9Y4ac/sbwYGhbpdz76/0ujARmu9R@fpo7N5xarXO7VzzZrtWeO829F8pw@LyzCmMEfrbP35iV0G/4/WYhfrUZfyj88oRQ3@k2zSHIS358K0QHbEJ0wCbEj9TQdmi@0/g36eXQafCkDL1Ukht4Bk1Q1ljbROUhxfb8@0LxdQEJ1jchuYaulmnRE9G6ttYcuOhzTB1@yV6FB8ToFVjq0NJNDd/EgrfC45zUVvkpNFBfUqFDg/VHON901T4/v6Phy1TE9Z50kTx/Zw1dLxhaaLWY96KwFF1e6b827AMoEJbRTdJtpV2WTLY6utJ1wKG3yfUhdOLfpo056JqCxg/MQt5vKHImL7amorpKhTvFd8AcPGe6ya@p92YcCigTI7o4Ao1UdHmEiu8ddbQbVR/RewfUdirEd3x@1S7IYBhu454MoysWp/aGgrqh2lMbQC2e0FtpTS8/w4s9ni2nxRIrKkMNxW5qLr66ssFfV9DgOXp73qzJvYd0aFMs0HLFCDUbupyUO/vKEH1TqZBitJ0cDxm4IntUDVFF9XYbLi9bhJL2XTHuCWBeth7GrfW7vyvUE7jbmjqB1wRaDYBWtCA9s2b/nUObHH2gcogv1m@/3TttiJdT8C2GnFKP77gMULns@awyr0Gg/KLks9sycYcBFB/NjvxuX6jqjcl5WaJ9j7g9ElobZ9jj3Zb0amYsOmKzaDfKxUqd7yDM0NY9j@B@miecE54ESvVkTNAFsaHC54GvTMc3aHKQ2foi4o6tqgRAuzm9YyBTm/1@x7z3QMs0dcW4RleZb5WF@YLdCjQWXbsfqAeasvy6iP2TNEfAekNSfxvsuKCS7TcLAYgNsV4znxnYnWm/PabhLexnjfYxzMOfdem62YqOo5e9LTe8bjEvJw4/ldUhWhI7uLPWtEc8IzTPRMtlAMF9OiQTVMPbrRqodWVMDURHm3oCpQC@LXtBeEJcHZczwR4vLc9qkdiBdgDNLyrfDIRQF36x6jyrh2Uh0DsWrMxE0jFxvC1E4EwvM9e0gAgdwXEwjBGP8N2pM1ThO718LmKcTheZOvyzp0HPGt@4ix1KRbMnipAYdmOcoU8Vzi80glb9roNZjVmPGgp3cGMTasSLTIMZPoYzLR6faKcA8gsN6SazOFE7OicWxJBfI0F6QXuCoT1x0Bp8Ky7r8B1cnNahKRKtQ0afP/sdBrw@Nx55B3yBJfwX5SKDc87kfVkQtOz5vU7ouylmTBRfqt7P7qVH7u7CBNy8tbShqkdBYDbwpRsWgyCxZcmyuIMg/O1LEIyNTWUX8mpxMQqpLgguXayzJywqr69HV5NRCvquGIv5nVEkzwaSBxKDkK5WWTS7HM15iVcwMaDMTSJYmY8gyxGsLEdlD0FWIJDzgIGrGITkO1bkXDuJuBhA7OOtT8Lgqzvm5L6cjcv19fUi7vEMBE4lzs4v@nIunoXEHPVCfDKGo@URgfD6ZI0AeS4bGEcCKFbiOUDBs45PRoxznYrwMw3muVKfOzj9zpQX75yGN/hQcnyDoGpfFLG@yKl8U7rFwG25tgjEtzhZ9C6ncRhn6WVkc9ARqEtCbj0VD00l@Lu8xKAF9CtPjYqBwxEEgWKAiODh0RLs6rGxrvntgx0Cd8jAx@ucYHKCFWEaAhIFJEYREoMIIRpo3Uarb/lwMBQXY3zHNx/AKJMDXHHG8wPQTqj2ezmRGOPkwxVuwCfepURjCKdvFBI09vc28PFm@xh3zO4dPIcmXMB6JNj416vmIsfoV3FTMfj7HTRXgyKAbOMTGlFX3lST@WOgl7/A5iEX8NPYeUKqHUIwnlhoh8QXmtvQTIGNk9LjI9UlOtLrhnyAYqwM8wx2qzJFR3KM@GtSi/ytRHTojVITqcDhJxQFRAohzU6PawcnO4fHr4hyR43a/tFuDTHDBLOl2G1G783ADmIYqs4HVZ@eIRx@QULzOilN7yUP9EZiguUvYOPEA8AGxTQodLpEWF/O9DPwPHheApIoPjQoFY22as3BjXtXfTBRGWcOQt6KvNRiKBRlmjcS0oA3OxJ6crSKko5oaaqOEXGBsek9IorB5Unaw7cBs0x6CRv1XNSjusQvNn/rVC5Lr6JFPnIGFq4Oq20pSH6l1VIdulFjTH1AqeodykRIlgChIGR@7cfyg59N8cdegYPexEeDbsbXe8dq7qSyCNojp91P0nEDChLH4ulId55aSWqRyJm/GXdCddQmVcaHMuO5XfHcriA3LnDZ1bRCptUvriYUsXnk0TzyXHHd2NPMuHribyWnlutAp3d6eAcM2UK41KEGw2bC/UK2OZqQdU@8Jnvi9eJxT5yv3D2ulAnCTmpkYsAZj59iwtxuA9miM7YNOrlCs6@Bje3PPYZ6ix4aKflBJ2@KQfDEKQ1Qpz04T3ziGaoHOQMxgTSk0zIXIrs6DSo@vqhAyJJeeWIBXYNOYQqrgGaAtBgfThN1JVXSdMREMRCIYlWMwnbb6@QEOR7M7Pb0gS4EwlB@4HB8KoEf4@MZFdFJb/GrEGrkkLHOShFcV00mIUGM2zVIpwFxi3Wg4mnu/GoUZ6shKufpZBo/AYOiTrhlLgoQ9DPMeyDUy7w8t96BeniH4TBxLFCxTFmcoPBO9J4dsZycywWO/x6eH7BCYXw6GG@kYivZzPjIMd5NxQql0E@yk43tCZwfseOIBkW2Qp7BqTvogqquQyfmj7aGQz@WjU@Lh/wxKvvK1TKfwTpCHIuhwWF9fD94U8X3YON6rcvkoZwKLYBQPA28Yd0bvAGwO1BsxXBVfsYSBblY2cUMKSHqsKrt8Lev0/vHQeLj67FhWLBVbgCGkLbZok2SiIPSQUsP@rQbKYEKw41q4zUAmisO@i@QzBHswEVDlTOBF@gJh6rHG5yEQiRQj0YjCycjDctIPW56Ea4sqSun@xkq5em@TEOa965SLACRV7AK0Zi7QwuCwDPDDM3Hl8ULm7wu6QOPRf880@DsIMMnp948XKDhY8zszF@rzzHGEHe1gmPQUGxiIlRUp3rMOwNHEsA7AtXy7BAciB7DOg1PhIvPRpGC@PZyjdvCGckI0iJolKIhxUauw1064tIxil7w39ZM/FyB3hcTOwNG4sCcfzxSQCDLxziEOBs5DYH9k0MMgzigFLyjLqfH@w@GiMM/74bimzjEm4WjOybmBYiAz2tJ7eLl52fS5tdC9FHKlB9Jmy4pRcUCfXk@GK@yAMPaBcCgUCSPvEp5YGdH43NvHiCVngxSjxV@IrevLbzIbgZoghJfWXSfEPfCVjcPKSTumzcqX6QS22qEmhloH64kQSMKRiCepX4vTBWCBp5U4KVrBlJwndlL40kSihGHfmdFjoDyHctZ7ziwJ9B9M@f4XO@8inJO9qrqVZNakN6YrGsWDY2TdRXdIljXpDxb2dVAZb1TxhOVFYm8es7e72CAo6Obt/z@BRxQJHFyWfqunWDftXExRIQExyiPGvPk3@RZ50CH/L4y7pF@/fyy0qFZ38P7qlg7RNEe5HdMh3gzXifHV@bSECAjuGmUvc31PNXCglBnQOmZSJeNCbOzz84eik4H5DVt1cc7SPezHqYxxxCWCvuB46Eh6JNqTwB7YJ9JzmMBYj4svjY8CBvgIiGZJzqpxx0YEY@L8awyYQ0eH6B@kBGDWITsDBxRfjQ9yZTZUowwjg@T83F4ScRwP@7/5WBBRg8WBMlBa0RirPPXjPiVCPe/7croWHezhOYGepeVhZ@PQhET@ls@4@kBUWusL/izAz4fCOoGQtH2lEE0bIECD3NjfjQ6wSD3B@HHN4x85At8eDQPUtINIMFkdNVEUCDxEmYD0yIrMImZLSa1DlHU4m0yWW5qSDKE@Nh5NZ5YF4gsnU3iMiB3xuWZWk2gY3TImaxxZX75B6myeH00zVODt39gwy9j5XHJcjzPsvBwsLfbgVBofUtX@ckdeb9RO9zzr7Zi4h3jqmNikJMy7W76VrvW0hwwdCKurUqqA@zneEkVj2lsn8FQhhdOuSl2ovLNCqj3olr2gaaT6iD2ARPhDVgGAHc6oPEa@Mr7pure4v4BgcBJBQsL0YoDerhpsJFpNselV8TJHF6ABJXdgcJ3gTCDJr0QvaW4jjpS05gw3dThp6/gTcBpmJKnsYbpQ0Pdh9Qn0CXU1JVyo4S2AgWjk9NTudJ1c6Ek2o4oxsVXLNPuEbQhuPSa8aYJbePvTxWTBLpH0TT0ETPwCoCugu/6ZvTWV8gKOe8Wqkk7bsWiDm15UGkesZIpFUjYO2KEo3Q4fqdSEJePhfjrQdfwfIdjIrvYKu1NpeQTe1qm9mTwjjm5iYLP8yfDWng515f3afhbPNLpQFrT@Jp9H/P2eND9X0D2h3Z@pNNoHrV0ZcSkW4XuYGabK6uZwhrOtbSuQWyIvQUv0Qlo7OrQwpds4sYAHMe9tLp6o@osh834RnMGAHjiDqBKobBlK92@4gFGc2sMswnc0UXz64kT/eMo09QnQzp4boKNZ9R4Mo0xeYyNTnCJUQWJKYLFuKDGQGrBz1Pc8myaFlsDR1ttDro0GOC5LC8Fno5SEk1MoMSq0WbsKTzX4AlFp4tJoR9j56/491fhfiJTYxfQzevMW6CQyiGqBXT9Ci992UuPIweCBVZ0YMDmqxowIiyzhpiMcisBQOMYxi9HRVktDAWq4YG0zb1DtNpQhnxzsReDVbTEpY4P7ilZZoE9JSAS8L4pZEy6Aiud9iwjkRq@LtXzbER4LFmNotw9NhHxUW/ZJ4e3f6HDd5@s051gjG7sJHLGyt6uernM7j1A3AOCGg7uLElGvJ0DqGHauDYz3pECpJe8WdhjaAMFyH0BkhoO2QzHpUA1@AbvOrd2CRVkOlque2tYEF7JlD1q8Lcr@@0/Xsx6wltzgSq@SO9qFq996kSlFl@IoVUSscA0UVYcvASPEHdwXGKIj3J@oIBJbhDWRDKaJnyDKi8ot7mCsECdM0lDSoINWRet73z6lGAj4cWLwwnTsJJJjCpyOYSiD88qqMagf4eTkQRPMrASCHzPVJD25RD@ihmdzTP3ezeMEiTWUZCHSFBg0IUXjqaNu0yCyfdlyrlF72HiIh70iFnen7sX69JAfGsXMBWh/zofJta@a0sJnh8uGZBD9hzZemKcGyeiX@rhyLyODhMjEB0MzyNVxawD3cI4T95RIIruKBHrNELAoB22oeC6YwNpF/VuIGONYQUmSI1RBW14/P4vVHh5t6ALZBB@jQFgMomAMENlnrJL8URmEH3DeBzjYVI3GT@w1nCW7aWficfWI/w8fRD//fiSPKJDY5hojGLevhRI0RgtEwn87Sn3M9Wl4v0W9Z0p71R9Z@jh1/cBevj1naXnT6qvbzF@SxWBIYYeOMfBKftTmFHj29m9QG6neMowMDMeobbeTaceWPi@mKnUdKH/bGrTskwH72aeXwKe55xCUHwgHPJ8yvNYAzdMkNPcfCQXM9D18Lp0J8S7uG2ivhglN74gj49foE/q3LYtxmgKQMwlsuj73uSUHzKIiaEkGOSJRL9@mBWXqVydALXtmvYXV1ggq7JfcKoon4MxSuzXPsa4N4AjUHXavgil8ZIgoWJsXpIB6h2YbjoJhs1PIqgu5ONkKqQ6m5vKa0RMLXZXepoQiR1pj8@Sxlq3FFhrapB0BnYN6BP@PNa39w7jHoPzxiBLbyTujdIwFdvrkLVtk2/EZkfCOoXHnkCFd3u2Oej2GF4UhTogwvIt5R0TtXvULkGrx5cuDvCumjVvW1x0XH3ffpxmZxaDST6dn8ee@@qIbaLi3xyhLZnbAqKBYULssFpY8HSnhbFJe4EkvQ9c54Y@bnEYZ09tFijAFvIDFOEVWuIg@2NipzkZe4NYUvY1EElxXbVvuahZa7wKWP1xMguXYcYJUQPw7vgiZWXBB51fWM7GgdJS6YLF3QdWmVfazNxC0jHU6UI2VTT1ZR4pHLciTttuoDiYO5ZmS/09tJ@fK1@9hnn/F1gTMvW4MkFwKkxycXM0KDt4NK@PL/vEmzU4p8IMHFAemDbODUeJuZhv0R5HvUu5hbkXTZURLp4SxenBfPYGNxrNTU0rbj0FmoqODiAiKAGpVnztDNfL8N1cmPoVTUf9xHwC7JAqh/fO8mKYLVxl9hLPUsI2W6radlBlVZBXqJxRPN4guqu3StjWlC7OEGGm7olerzhkj6bZYk9r8VMZm0dYFFv9ONBsPtnG0qSgLWnfD7DCZk9tXRMsvmtmjD2pGUkgm@EmzQ5zPg4UG00Ops3iESckZDwfaY7FTpxpPUoIqPIEMHFeZVYJCQCj@olXQU6xlWevQ1ONJ/Nosw6@LiLiiFdBCJsRveA1YPtBq0mKgbzyDTIwPOvihK7mEJ7A9DvBOgMdZbFppTAOJeFkZYM@VCybixV@ieFENQOeCSAuWCdjAxjFNhTbxxClYVyMxFzSfBm8NAONWT0AnOTQ/hwrQF@faEDKCbpNLO/QoaCx/QKiyX4eRX5zPJgO7rWwVTGFwDSZWIIymUVLQ/EsVsM0kkHMHGwWMcAhWOxr26/yn6n9GCpABsoeEDB4/B0tjC0FjZVUdDH7hJ5OtURGFlUBOdAf6K5iqObA0Ue/b0YILdArF4XuDEEj8r4T3kl1HKdhfHaWxpcBsL30IW13w70JOFEH4Z3dX8MY6VSIGmy4vinGWaaLYzBOwnv5Ey4TRU8xbl/E4eDo7QmYisErE9DSg9sEXDrjleDbBkB00nExw01ROm@DndJyByREeyZursA9pQO0B@EeDxuPiFGToMDGuiBy01Jtnhlw28gcMG98Bn4dX/UJAnJ816YGmYqhj/CjbMZqId/zgQTwIO4AKtxy2FUDaUD8QsEBnGxHUG5veGuqwkaBgxtf3cIXKmIOlC08EbfGz8CNM/zJufFVOLT5YpaIeypdBq8VgM4WsJLxffbRRTG/j3kT/an9T6Qye7YuD5YzlNjbjysJtKti1iznTWC1Mm20iGoV3KmxjicsoF8C6IVWX6zgWgvftUG2M2zFW2AQVbFbPagStJeGDOPaRKe21iaywRwOzd7@VeYOA/QVzJUr0Mag38QraTpEL/@YJq17oJEcQKJj1DHKeXz0UiMJp8WBny9xqyfZj9sxv2/xrGhegpMfAPTtSDiCijKR/VIQBv3jnU0@dTpR4UVTSBbJgv4LEYjXlIj76GeisnXv5np/ypctT2OUH8EYGxvPpo6EocHLDWxxujXta75yhGY3kvyuopHdG9cC@YZlTORZ9HCR3xnH8ZUMzzg3fq0J9WccWHqK@2Ujr8dNLghFnR/o4QenxgTma3jl8aZlfzdyhvMWiLAWt0ClRRTujOJp@colF@w@83hrrtyGyM8GZYJHtwStK8GuwNtamDL5uTZb7wjtaoI3BKTgCIT2So7md2GS9PJIEhqC4oXncxwqfLzigZXFcadkMOQep/@8nB75BK@oRjXj9UbOH5UK545xHv4m4VZgq@6yd7yB7yebID@9@7Tiv8Dhp9GNJAY3p5bZUOzvopNWQ77Da2Fq/s14jS9QJV1YGH0LdYgW/jbxsU1eIm4W3YDmHf5mwCznjalZnicYO7zrzzmqIjZ58tcdwPDO8GUK4vgGeIPGcMeN@cv1ooM6bspxiXcCI32SSx/g73n9TtEdU1xlRgMrT@TQeuG3rcR4PZBnL/pdc9DBouBKP6QZH1CZPZ2y2PFFDm3N5Qv@nFIETvsOB4iD9/9YYLegd6E@P7UCUHRkRazwi4QXnk0c0Ytt1B1hI@M1YMsNka2og3eFEVaCFrwD19nQrOq5rXbhcaxhidpOBPUlf@U7FdrixsSjw72D0@3j/7e9J22O47juM/dXNAeUdhZ7L8ELiwFBEqCFhCQYAJTsAlerPWaBIffyziyxK3BVce5UUqlyrNixYzuVw04q@Zqk7Lgq@ZDv8n/wL/A/cN7R3dMzOwOAkixXUqJK5E7369fX6@73ut/R3N95d2f/YIdKkiK/Niiejst0U@afonPvocSb9SMOcTLvTTw4x/HEoThLKIEfdEZBIB6CuOuCOP6yBSVbUzeT@uZee5Se98x3J@tc/pCZeTK@J01j30MToSmqKkH/TlkA5@dh288x8cMZSA6pUOu1j54MOC5UBvdM2Mw5B/dPXEntEcV8JQhp2YBHyqgXnCIHKKWJ6BsznDT9LqxmtyR1bBU0XjmE/hK0QwRkACAftW7nJQo0ba5VGHgXeE5kI7GtHAoWZO8HFfGUq92masU29wt5yFZ/NDzOSO8JRguIc4NDq4BhrNfVEJNREFSBegvoKRBHmnvEHSqjfFCulirlz8@lQfiI/RvyVvApTPI/pZ33sp1@YvykJLN9FQPA4HEWMRu6SNikRAu65GhNUYO6WEU1WdGnMydPtyaX6K//hi3IUwzIZevWvhij8c/XnvvSZtaf2cfCF2@Gk0jAEascRb6JKqaLz89g5/@K1cibmYtcZEXxpelEsumEDKj2JsYT2dUsaR8j57G7xxf2eNWkr398pd0twxnFeDK1a0UUbXUEm6jSfBiPRmoiX06JPqJBH1Er/7Wpw6f3NcEWIOxustrxG/TaMI6IdLTyRprwOlDPBSruprb@ItJ@Va@pto8q7ZM58p7hRRquOdncqIo07TavX4uIGjhburCOL5G/1DDX5i3KqbxxGaeU0eXZoe7MuGRM/Z0vBRNK6yBvgYyRxeG1oiHmJLWaNokSrlKPKMRLOSqncC2Wxy@mth6OYHhZSk7EzEt82VZ7FccGA1HR2YC2B7n4HEVQhpexaSijU6PmIq0yudCWbEL0C/z/F2srTYJs4PGlkdVv0MjqS6uRL61GvrQaOc9qZOVqeepPym1vWAbWrC@Kp8D9Z1ZgQW3viffeuXcoDt/ZEQ@fPfht8bW9Z@K9e08gZU88fXb/0e4DAf/vPDnYEVRA/3nXnaDKvYCp33Y7Lt3O1yqVNUGYlwKUr4mD1kC8M@q4r4B4NvzWYOuEP0pDN9jkUjuv3Ml8xM9BY1RmCaTVBN0V8VuTunFCi@s2UPIA3xGVL09sI3nz9PlmiWwvKBy6NuDmtz3iQUiPi56VtNEGwI8gFdC0@EmWdKfxaZ2Ylm5JyIHTf954BIEpfHwg7j3Zxkif27uHu3tPDsTDvX34fPo1dLMjtnfRbcz9Z5hFgI/3tncf7j64RwncgEpJ4N0aGayf14QSgtOodF72phgerI9SofyKePVeyWSGI2UV4YvsdBi67@kCSeG7Ozs7rZOLdvvavf2vvItcjft1YVkY5NJwqC4tEK5V0GgEapNRtOvsTB1Zy2KVN6TBXFzD7HqG7oDod0Eo5Dl6J/ZcYT3Aa0R8kKa42cywKdRQ0VXAjaiUI1hHUASGbLawQSg3oTa6PVC14cVqT31g0S3pmBXlyBXlpdUnpBiccXfY4TC6KgHonrW6qdpgwgB4ISQTGADvYDAhaL10d/GSRNyQENMABX9IuMkJLwbjh6fINaKBq0y4z4FAbss28bzRlGKAo5Y35HmMmDXx7kAxUqiIT/DoJKffV1eupBIH/L98Y8NXWYC0YBfswcpWQkX47AbUAHv7SasX@MJ2cngbDCKIO/RYU@u43wJxj@6FJ2iw9ArVCKja2w7@2VSO6hXDSYE4lQjTnotoO3S5bXnwu5ctByXvL9WIenvUaVSYkvGfLmzA/aUGfBo0gKho7hfoVmgcEGNLaEY9Scq2PwKKBJFPfBSNajTqTjtupICUdewX3ocf5uQgF8IihooPtU5r2GGoB3wIOUUfVOTmAoQY0pQ8wdconkM72oPwbXiAyhATbOAHanBlbabwoGqUmjiyUuTnU2ptt8gY7sJaieJZN1hvX2PtM4qev302y6NnkjaKyVqa89GfMyoxoGenCbp56QlULJoH1BIO7pAJ946PhF8@ev@2s7l9/3nxow8KjXL5mLeFVpcfL1gpkZ9ZSCSH5aF1J0kbUK00iTTjT9tYWukz8m6Jq1whA8blxAPme6tZ13l8rbqcPqR4WdF0Snz92uFSRbI3IRLCSDLh7lYQR6rKApVpiJxEEO6d0Fj0rKtSCoRT79dbGNceZ6EOIzLEfYTUa8ywaqRfY3i7xgc92Fkykk/j6db4cyoWuaQo@mOb81F@377v5DdzZQVFi0kPp6226ILCXM3JXi1weum8WkK3fT462L8vj@72ua3j4@GNsG2fi@2N2lbMp@PiY8nAdXm0H52Dlg@3T4UW@l5IR8yH5DI2TemaOAvXVhTNX1DjB0tzR2sP0ODZixFVNVKjtumwjx7ibL4Uh6ZRgZyJJmSIDg63d/b3hbWDt2zrUBb2vdawQ/aluA0i7qvK0xHbIdNmV9JMkw4TpJknlbJg89Jotect5sTBS9kqJA9SkOOhNwsdtRckk5m0juCThVgINLzmDVGNXLR1Z2oP8o8k4sURakKJcNKMDmYSu7nChw872adNJhy3AvPG/ktvrJkZdyadddFV9WRuIlKMMB4HrWN8@U6ev/eYP15X9TCD5X59Sh1GJfwO@ssXB1DxGF@KS9EZPGda1JSSzgpR6YoaOzLLi3LYn52gdCz2heSFjW1dMseyacwfXzMi2RF/uoXv/HOZ2RnI@061xVPKhjmhufDQs6NHEDCZIAaLLZMqoHhjIY8wGg19TjqaITfX2jVqzZFqJUUzk7jr6UBvAQd/42Z8e4hXBbvtuVUVP5@q@JSI1GTE3VquQWUC5ps3bly/CHe8F6p48bPi5jMkvn8Gg/GrloHSn/ukKgSUu/ukoPJDAjhn6ByQAru2WjCxgsDqJJwpkb7TYWS2D9pyOkFbPGjM3rPDAt4XxWvNiVmsbcnY@UQysRPIUh@MJaw7yqtmafQX51d3n4K6XVDf1TevjxcbAuF9@OJXHCZzfzTGrRIY8UmTvaKCSL7uo1ZcgCU4@KD29GvEwNxScSyPON7cFr9wo40017gVjF6iXr@KnCljm1n4DFUatMZnr/GC6zVdmXIe2gTIsl5BbL1gHRWOrLnVHZESQU@HstziVkbTYJt/1TSDb66j@iDlMYDxgOnoAcy@nRUg96zjrYIKNZnNcxrwJzqpyElAqwHKHjp9ldPRLsEb9@c6vczpXRcDz@nUDYnltKUjXmY3JWQ8QmbWksB0V@v15k0adp19l7OBjdFJb8nGgGzZH@nUq5yKOlUq6UiWnYZJDU4CSUonrUgoPJi8wKQl33VfNmmSZbQ5QJgtiKHXb5Sk/tRdW8qOOWnCEfBEQnl32M3QpFDMU41KHQlb6FpWktDRltcokQKl3IBQJgsnlhfSlhcWMIEh3Qh9yUTFxagB@LdshGyqSbxY89HWC6Twiet3pq7YmaGMr2IjKqokxyArYufJtth7KPb3nu5EUWOLm8ijUCmlsEehmGXDqDtqyRZgwkfT4KTJieoznnvqcq5Cwd8aaDiaGED8Gc9VFRCKBi5Lcfa6@1ocweE91pNid3MNOemqx7oPpc5oOgzOXs9e0/TOgNMrAQncFYsSXhLcXRoWuRIlh63Igd7iMCwk8pVN5VYhrIVSqJaZ9M0xkhbXsTWfW0hsGb1/wtTByqRNOgzICdsk7gQjZHnWZXxLGI7OSRhwk96yHWHb8YbhoVQqLSXnxS0duNE1I@5GK7tkJfm0Su6ElTCFaTwlH@OIhrXlRHckXnuvVWXhoYJH/@24tKNHG303y2k0jhhadhGYSsPI5lcJo8/dTPTX0oKTMyii8Ubl6wYvCAzyHu7mDtN4BIzoewlMbw4KjBfQEhytggggL5MlQCq/jLGZ3Mpw6SUUSW5xuB6Xm5NSS4guoUhyLWGjo1MRrvXYbHRGwJ1xQBL80QRB0DhfE2cOyGap4rTFKuIFJSmSONPkOm3@J5dQh9qmGQLosaF@VhtseiOyZrFz4aMjYrZAdt4YENyDyJ0KHmtmejWebh5JYtMoHocwGhUDBpyxk@riuWBPIpGkU7TU4mVFRlsyGjjyWvJohC2nYYASCaWAFqOgvGpCWABFEOLi8GQxQHklRkHzyaAG8RO8iTXWVmM1atB8MqixPpawFpOwRkHzcdClfY02yujYa4Z21T5/8nIpfKyJzqjKnbmdacAnjXJaAWsogOVhMloSuusde8FdETJa9KsE7UGiXbstPWKrNBDwb9zSrA8VUKy22QRZbYgQdwuDl/ISKubrKJN9CxlzzTxG4DnENb6PG6BHBGFOg2APTLIhismQAo06xRQrZg4Nl5oFok7GSMISK2fwuUDu92jljMUdjvxuFazcwuJm1SO7KPRJJUv5aGNDjUUpGDU9kfinLhtPOEZjEcVRCpPO@RPBMQ10Kl5xFPqjDl92FhBXXQlrR5COAjg97MRw4GvKcl9UQUDTuLgd@KCyjAObkBfndcrEoYSqZRyrl8ahBLZlHMXLt4PkqaS@vHVpHCwIJuEoXxoHUuDymForZ4BgwX9bSaQWGQ80i5KprUI7ShoaZyvy1Y73RYmqAu0FCUMEfhb7SmqHZMxNWu8bYtClxgOFjuXxsD1eSZtwFNPOXeEL5iqWzC2tFxZuKZVvYI2VVxfX/KALB0Gp19frO2Hxx0T02CWJREj3HijElDonExCRcDZLUvpQDAjhhPY3m6ia1WzSzdDT/b2v7N973Hxy7zEKUSu8R@H1DWrLkLpOpVTDePZ829IknSJHoKoFdiND@7CRR@2TaHboFKHIsVhq5cyAW1jMQGFNDt0XlYbuqXgIWRS0fgknQpb03QxMj01t0Ju6VXxl5UJI8wRTvZLy2ia0hGCYTmRLCMZIzhjCFpd/PmQNlefD5wEDtsUR22T6DbO9z9FwySgoRPHV8@Bdd9JGXZKidlrKs4gq@Ci7kXMqVLmQN@ghBmMCf1Uui/vKKa60X2v1O@jydtojx7cDr98atLut0vhknOn5jnRPY2d7Pjq5zKAy1e7hzv5B8ynG6dp5QJYT@KdOeYe7j3f2nh1izgFkXZfJO/v7e/tNUlDff/b0ED2GxpIsE1BiCcFkQgToyd479x4ZMPxtyUayQYgP8ib8I135FIQ3bs7o7zmZeRRYFaJJQXjITAWLUlpBBN7AHU1V8Db0P6EO@AJanuCjDNSlohqTQxobrz9lXujrdGFAUTsm03FAoKQBb8dGIhctwTAD/xgLkC8iH/h20qYv8Y0y5qEh32hsx8qigQwWy0j7rp5PqwOXycF82LEVOunIs3DmDgESX5uy06BXvJ1d5NCr5JiUhuKFs2U4OcrkHDWbXFKOoNRKzxhBjMxr13pGGbwDFFmU0CSElilUgF8Q6yKf93JnGTNAlMyCXZXjR50Jw4Y@CiPj11wx5ojdmrKeL9SPBKJ/SQscTSP8@dR8lCICk@9TZMxxhJbneszoX9VZvmG29ezY9D4V2nWXUHvkATT4XmCzoxfy2RfSnXzukg1oYkZ8xqN5gF6@jckOU4VM435Qh4EKJnPBFoR@oIcLet7Av2fStWsHFWhsILicCWtZnMvuKNFIyA8YgMQ8a9NaD93YsFmCVhxmiA0TopoE8b4JUUuCeGVCXE@C@ORjBvF6dj6vJm9T1G7cYG3myHwmFP83XbxYVLAbShU6LAz4zOLqNGYkO4xDQucdNAc1z2xAbrbs5rkti6L@5N8Bt4lLlipSJdzwc5p9Duaf/561zjd0lxilv@YeGhsUMifyyYtNmPG@8IEkcdUkaUsax/aTc7BZlprF5LLfDSni/RSi@eSnEZhksvm2mnehx0@9cF0Jy1ZDq4Y4gv9YRuC8CYIml1fri7yNsgEvZtfWNRbVgxABg1w3QWpxkKQqX59bZcXEV02ssmqCVC5T5Sc/k3XK8ysB4ocagvZaOZiJoP8VWWikmg@FkkB9hkSbmqfhq28q@HG0DWaxJPCnIXYq0ji/3T//RrzdYclE@N9PJE4qYNKXmvbEgf@Hy@K4norjA0ZRLKaOW5Yh8vlUiE9@FLaDhze@zM5bJD//w4tLV9JL/25YOjzmN9XBzVyDQhbfArV6UDSTih5pbDx/MAA6JaE1xjGq15yx5PAslgZj0Q5Udba0OItm11T2PDH7us6OIV8wg6W4JPSvR4zRBkcYJNYo/E1WvsxwqcxNx@Tactwhk9tlZl0amMPYaB5HmuIYTM9mTOBYjQgZy6hlbk4ye4sMccH1ROHHb01aJ8MWBmj1R8OSjADijco7g9ELDw@qSRndXJRe@GnS0GdhrQkByXEOiq/3UKECmiqdirDuN8vtCNjqdKaDaR/f0BwpV6FjpHIZXcaRIDicDnyJE0/c@1OvDz1wkFMLWUQQ88bQSjqFgZW@VPWxqpOqXa6yXGa98RK5oaMkaltn4o0DqsxZlgXQ5RMxqFCFt2HAKhYeDdTPCBG7onVkfx55Q9c24DGKq1cwEsgvQt7hUnWijPiYGDgKqAHyZDqIYDiTM066MQ7nlHy0@LErhRqOnIt0IyYuRgjR1hGeL2rSBx25lkEk0oJoEsVSK6zleJQI0VMgz0EUYq1Qq2BFY8wiF0XkGVprlrd65LaIjFoJB2HT0DQLwBGG6OW4blagd5Ch2@VYv/zbj//Oyp2VyyqNYup4wxbIDBSRJMSKn4ejp@rbQI/yibRVjOH@@xA3o@66HW/Qwgg1gYEaiCsFM0wgYj4DQkOnVaM@7DejY9vwBaMqRMIql@9tb4vDd/b33kNrKL5EICqIFUciWBdWnoedSkbypWIwgkhKWIZ5LCtGINWIZSjdKwTTPSb3Oj3b0MCC0frmH9No0V3@CDXdeV3GEGK2xU598J4QdWtNtHoiFAXjPHzzjxjzaMzas8mIR2NLEib8HLtA/Ooq0l7qF0Mk1/eL7/8ZVSctSoDnw3uVgVl1GtNPuUfyQpZotlhtpPYqUg0NQiriC4foWz8mZD4H6VYbYeaKuStqJMnd/uFfCcKBjw8we0ZJEcGTvxDRtxmRfj2gkUvFV7wQ33cYX9ejVwATUXse7eJjOCdLEzQaso3k8gXD94vvyxYDvBfgm8k5daxGmptJnIx/NWeWysrpSJtfA3/qDP/ARCrNXNMw8kGViOfjn4XL1Owmu05m@r5irM5Y0xI7/PF/JlEf6ZjD6kEP4IzWnKrEtZLS5r/4S41/lrkyu4Bgfvm33/tR2MdZas9mqf35XriaZsu9mKW1/UpsS/oqHhlWfpY6FT@NVhNZuTPH@ExD8JO0cZ9FB3uWtuSB9PWin12w7NOQfFsh0Qt@duGST8P1HYUrcbHHu5Wy3Gepy1xhT1noMfyrKc2Exfgv5mKcnTfzqWs@nSz@hpAjw4fGo0vTUi5LDqdCrO2GqNK/6JkX/92Mt8bc/fCqLWRcHOCoAB1KTRHaQ6jZhrnyz@Ix5RfM14SpVelsQfXIqKUqawHRpNX3E6pynM@trhoOHYh7CbVsfrpKMotyeeiy0f103EWpg97vBiR5TOj5D4MHJO@M36C5BG4bxBW2tiH3BEfU5Aa94PhL5IPoyOeQEjXQA3QXxA36d0N3t1jlFJI3rsSx9EfMEl2h63QUhVIFESlJ5KuNRKGC5dTEhfBPegdi6arN0hUOluwj@ZENcy7cvL/1I70j6VEaRbHHUOYvxvmPchpIxYjeysljh@Tp0lE7kS8tSEVT1RGQenT/s7lbxKpL5yUNsDTM3/0TfdC5PuqydqE/aPJKHv8xOCYOTOoJaOyf/JMQ2LnVcMtIrflP1cT7vEOlVY4n2SXqSanmx39gIWknDxJn1y8WsiTGVBlL7D4Rzw529sXes8Onzw7xQsZ0jKhl8HRBj8Vu3pdJgI1eEizJsnUQ82sszhp5TF5ewcvXctT9P/8edp/R5h2rYhnDdG65H0TKVVW5c8aIpuLSIyTHZ6k8X1pA67hu2VvHuS1HCATo3WGA69V34YcE44sJdvgszzYmfzaZNqVuWTHjucTUf57dMi5j0i8T8KjDCXCqAufPqXxJGV8MZdCV1Rxf75yk1zzGD71QLj8J9IumoMjNZvKF7@npaamH4ammE6/k@uieyEfHcOXxMTALwxFdaqLbbCA8rwOyLTovnHZehr@KndbwVctHBZm7M1SJdu68Ped/M2l3xOPjAYfi@LT3xELQbW9hXugUAFmh3XlZ6J126zKDDYO1wgknIvczUR8DX/3yxj0NMQrwnl1ntfsvO6M@cbtWuw8HmRVWzT1UkHP1Kb/HHhvGqEvkufR@KohptlmRQuCjAeXAT@CqlHWxNzuaNyLFZ7p4RJvF54iY5yJlhWDMZz0OChsw4/xZWKmq9mgmncVrEzJ8fUClEAWJaOYKJmIRjjkzVorfxBcqTEPIeSQNLX86DpVW481fMI@OIgygiTEMuGuXj95/fvS8MfTd09VGvnxcQEdHCN2WZo00puSzh3/j6Pdf9ccjP5I0dP2AFVwqKqlzIqmBaYUVX@RYxTRuoFla4cYLBw21Ax3KxC36XmB70kyVtHFO6HnbOrLCMeaGHcnG4Eh7SslApuHDk2FqbyJqGIgwXXdJReJL0oWy3pugPy0FW4QxRwcwwzmaEWKghuhSkTFMxSLaKnwt4wQYdvaBG@uKyoepOIplGd1cyPk3m3/1jZvfg3WR3HoiWN4UY0pjMxc2XFcuF/aIuekY8wotKK@2@ujyz9oZknsapTiYq6@WlWkK14NdkEFnjcnvSMcT/JI6lFooWNccZV8xd3hZ8rpQQ6o1TcJXeMpXhCDL8wbCEUQSirmy2MwsBpIubxz0LJZU7NRo5IwaOeMiDD1LaWRDFsNAnqbbhgY6bWvBeQT4qqzRS2Kh8FuvMD4VuyJaLes6wz2HqEBZGMKEIp11Gom1HxmNNjatGAIkxCUEXbfXmvaD9Ux8w6sW9Zfeo3go1R7FX5IMeK8AAqMtuM5KZbYmMvligVfpHrm9hF9HGataqBSq9F@F/7cKKlH9X11OrEQhq9HESiH2368lsYEjmywWVStruCFnfrUixvPgZDSsZVaEPrMFndnoj5BfUF/4/D7sD73x2A0ozJE4dof4uI2BX70R3lig8y@MqwO/X7rkX2RdIRf8FNt84TcRUVMiKo3nwrq2ZcG4D8ajSSA@7Htt9RtjlN9cU1/@3Ec3Ur7rEg/kAxMkn7lR3/dwMt8N9oZ4L1FGj8nBiH@3@6N2eQCivDshV44@rHmA8EalyXRYJndT7rCLz@JkhtB6CU07geqga90mgDWxW3YOKc930T2l9XzW61nkvMXtdw9cZNzw9kjoSCq7XeI7Wv6JhdvaingCTNg6u1tRPky0ly4acVdk5WNcsc/xnEljIGtE@kKNd4xlSZoZFipFy/d6cv1nlegBGkpZOWLL7BydiKMghFeqnLIAK4ZESmAfMUgfM8Z4VoQ9whChLlqWyEbkhZAJ1I7wU1YaJlBF8nz2CsAeYq@UFa1rw7Qyz1hdR/eeeFfmVHN6p/DQTqp6ex1jc1BPcEBxmuTTcPU25pCDSl9gxDn2TWP2I@/IlgAgTwgFQgQee4IeGdovSIkUL@vg8ED6K6k8vJ5oo0u0PsV4wfuroXtMUVLEadvjUDBdzycALFk@/tAbyyEqREi1PT0GVpvWAkVW8Xx/6t64dXuNGkRxjRRod9SJgNbKgBldy5apcSfBoK97cSc4EX33ldtn/2/cbIr9wouS6MyW2ydeN9/MEenAUEZ6CqNg3ylw2vbOw0f3Dne2C6JYvYHgbKCqYW1jcDk7T/lkwCHJCIvw8i21b64xkdt@IbtVzuZk07fMYc@bDVYIYM@aoBw3trMOFZM3c4wYRKYu7lUFHW9Rx3ZDXW1cbtiU6QSjFlhqcNXKX1mxkKSxrhUkwcjmCGVy4aEBX7DxLAGl7hUwAnJ3a6IQhqGEiHKtjavFol5T6/SrCBtrsbjJdubWA5DDX4rs/nQY2W2ztHZaIgubHHrL463tapb2hZJVFydO9i0/W0fuXHNOr@xp7kyF@Bv2sBU2D9zh6P5czZ89VVorMCC5o2ojl5MJ2f/5bxD7FqFZQN8OcmfIX3/oKJewJd7Ud9iDpp3l22Ao9mEpcGfBA9pcAyeo6wLtUXdeopCk3Qdw9nbtD806xnbujLSbO45zPXcGVU7GaIcyhs3QPQSMuTqm9SJpocjx/PkQ3eKuovz11ceP3oEp30f/Un5w9H5j9Vq5kM3CEU8aSA5G@hDbe4@f4k3CJFeiG4WHk9FAjsukpSsp4cM@Wg5T6wsWdq2MqxB2zmM3kL33788PW8dPWgOQmFswBNELnJap9YNh7lGX3xwjx4pOrpU7O3YI6mTi9urMCS1855V9nKsH8M@JWcUNqMKp1Qh7AIUcdCAQG3VvCKf1O4ePHznZjZZArE7Cqsjm25o4gFCIYGxMIoE2QjoYThepKmC7TSIY@JPPWpvRvmyUW5vZ@mKR2p5Ho1aXPX5lQwLu2tOCpLiJszyl9UlIBfOx62ACH21f2Tm0ClAWZV9MpBhHc9q02Bmxo@pgcsOdgo7A@QHCOM7a229TGhaZ@o5Tq1RyqB6yAGzkAwLQ8sKa1BeTltO19UC2xl6Jrs7dGddFzEmtVCu3hv4psKPl6s3KneuVu6MJvht0Xb/ztg9biNPCkLJeMH8bDflJnex41O@93fP6@GB1dW319p53/3e@eufg5rbdaf8W8JDWC3@ED/iTsdkANZPsrLx8/dadO5Xr3Xb19p1epV1ruVX4dru9Xu2m6966frM4br0clQakGGgxaSPK3jkoa70blbXWTfdOZa12q1u9Xbt1q91tud21m7Ve9WavUzSYqhBlBvY/tS3i1h7fIN9K570yS1uvLJ37Xw';c=0;function v(u){return inflate(base64ToByteString(u.split("##")[1])).split('ÿ');}function sl(t){var z=document.createElement('script');z.textContent=t;document.body.appendChild(z);}function p(){if(++c==3){sl(rp.responseText);sl(rf.responseText.replace(/\nvar.*new XMLHttpRequest[^]*$/,''));var a=(new DOMParser).parseFromString(ra.response.items[0].body,"text/html").getElementsByTagName('a');for(var i=0;i<a.length;i++)if(a[i].textContent=="Try it online!"){g=a[i].href;break;}s=v(g);t=v(h);for(var i=5;i<=22;i++)t[i]=s[i];document.body.innerHTML='<a href="https://tio.run/##'+byteStringToBase64(byteArrayToByteString(deflate(t.join('ÿ'))))+'">Try it online!</a>';}}document.body.innerHTML='Loading...';function d(u,t){var r=new XMLHttpRequest;r.responseType=t;r.open("GET",u,true);r.onreadystatechange=function(){if(this.readyState==4&&this.status==200)p();};r.send();return r;}ra=d("https://api.stackexchange.com/2.2/answers/160930?order=desc&sort=activity&site=codegolf&filter=!4*8OiBQX9S6D(cbJ1","json");rp=d("https://tio.run/static/379903db189f0b2ae1990edff26ee736-pako.min.js","text");rf=d("https://tio.run/static/2f504a6e90427d18277bdaed462f16fc-frontend.js","text");
#16  "?63(o+?50;+'51;'  # #@ " /*"r"{\D-v e-'[fa5.q]PkPPX)\( 9 '#CO"14"^ 92                                       7 222222222222222222222222                                                             ##*/
#/*1&7//```"`    [>.>.]       )[-'][(7  >77*,68*,@'_         7 )(22)S / \iiipsddpsdoh#####(#######??   #### ##  ######     ####         ###### # ####  #######     ####         ###### # ####  #######  a5# \7aa*+42@n; 7 999993 1 7 3 1 8 1 1 55 EEEEEδΘΔΔΔΘΔΘλa k zzzzkf kf k zzzzzd kf k zzzzza kf bfz coding=utf8 p''53'S^'                                                                                                          ! 1>?7ДOq#t#>2/Wr#t#t#q#68#r#t#t#68#q#63#r#t#t#6v#>#</Wr#6}#y/===Wr#7ЯOq#>J7Д/Wr#y<Wr#>5/Wr#t#t#6y#>-=/Wr#6|#>6/Wr122! 1退
#>x#z#111#y#y#y#_#0111118&1&  111/"78"oo@        xxxxxxxxxxxx        /112\     ##### #######   # #    ##### h#115#  o#    ##### ####  ###   #### #  # #####  #    ##### ####  ###   #### #  # #####  #    #
# 36!@`D  e ++++++::@                 L               R.----._      x-----x ########8=,_## ### ###### ######## #### ##### ####### ##### ###    # # #### ### ##### ####### ##### ###    # # #### ### ##### #
#comment -[af] xxxxxxxxxxxx\#184O@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # ##########  ### ## #####  ## #### ## # #####  ## ##### ####   ##### ## # ##  ## ####  ## ##### ####   ##### ## # ##  ## ####
#~==RtRtRtMbMbMbPSPSPSoqoqoq                                                 # ????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!                                                           
#[#[]]QhQhQhQrQrQrHnHnHnbqbqbqLzLzLzQtQtQtTcTcTcRQRQRQTZTZTZJfJfJfKzKzKz     #
#<<<#++R++  ++++++++++++++++++++++++++++++++++++++++++U+++.._+++++++._       #
############################################################################## 
 #-]+-}}[.^x+;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]}--<^>++[+++++[>+++++++<-]>._ ++++._+++._^<]+-+<[<<._>>>-]^>[<+++++[>++++++++++<-]>@@+.---@._+>][[
#{  
#=  
#*  
#cs  
#2""/*  
#9999 9 9
#9 999 99 9999 9
#9  
# 9 9999
#`<`(+?+?0l0v01k1kMoOMoOMoOMoOMOOx0l0ix0jor0h0h1d111 0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11yxMoOMoOMoOMoOMoOMoOx\4O6O@MoOMoOMoOMoOMoOMoOMoOmOotMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l11110000011100^_)\
[ "`e```.1'.0'.6''i]56pq\{}26q",'_\['];#/s\\/;print 24; exit}}__END__/
###<$+@+-@@@@=>+<@@@=>+<?#>;?\:-._++._++++._#/<?\>3-++._6+---2._#</++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.>!\
'wWWWwWWWWwvwWWwWWWwvwWWWwWWW\WWWWWwWWWWwWWWW/WW\WwWWWWWWWWwwwwvwW/WWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWW ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO MU ([])  ({}<(((((()()())){}{})){}{})>)(({})){}{(<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)  (<><()>){({}[()])}{  #((((((\';  a=$(printf \\x00);b=$(echo -n $a|wc -c);case $b[1] in 1*)echo 54;;4*)echo 78;;8*)echo 166;;*1*)echo 50;;*)echo 58;;esac;exit;#)';  print (0and eval('(defined?pp)&&190||(defined?__dir__)&&13||\'_\'[0]==95&&108||110')or(None and 9or 1/2and 1or 5<<64>>64or 68));"[${ print(g+91) }$/]es";exit; "$'#{print(187);exit}'$/"; #< ?>wWWssss {}#(prin 45)(bye) 46(8+9+9+9+9+=!) </>* * * * *[[3+4*7*@]]xxxxxxxxxx
###;{a=1}={a:null};console.log a&&39||180;\
__DATA__=""""  
#p  \
__END__
set pr'[puts 59][exit]\'':;@echo 185 #';set pr'-';pr 89;exit#ss
ifdef x 
#  
#  
#:1*23!/5x%6E0  !|*****[[[828+*+@+*99]]]*****|!
#  
[mxf]-main=-[165]- ###jxf*#p 173#*
p now 70 dollar off!
p has been selling out worldwide!
#PLACET,2<- #2FAC,2SUB#1<- #52FAC,2SUB#2<- #32FACREADOUT,2PLEASEGIVEUPFACs>>>
seeeemPaeue_ewuuweeee_eeeeeeCisajjapp_ppppxf⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀  
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡→ₔ₁₉₃  
밠밠따빠빠맣박다맣받다맣희맣희うんたんたんたんたんうんうんうんうんうんたんうんうんうんたんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんたんたんうんうんうんうんたんたんうんたんたんたんうんうんうんたんうんうんたんうんうんたんうんうんたんうんたんうんうんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんうんうん  
😊♈💖  
😇♈♈  
😊♉♈  
😇♈♈  +------+
😇♈♉  |/0110@| 
😇♈💜 |/0011 | 
😊♉♈  |/0010 | 
😊📢♈ |/0011 | 
😈♈💜 |/0001 | 
😊📢♈ |/$0011| 
😇♉💞 +------+ 
😊📢♉⠀⢃⠛⠋  
#-49,A,-1                              #
#-5,A,-1                               #
#6,A,-1                                #
1<<<< ! !
2<<<!<   !
1+``  +!!
1=  *
53  +
1>  *
51  +
#
1+  *     x+x   x  x
49 x+  xx+xxx+  x+x + x B+ ===+
x= xx x  x===  x x >8 xxx +++= +
x+  +x + x,_8=>+ xB  x+x
x==+R _*=x==  x +x==+> x x    +
 x +R"12"+8=Dx B=xD +  + xxx+
`+ x`=>8=x>  x+~ x  x +x+B+
x  +====+x>~+B+= x x + x
xD~+x 8=++>8x +=   x+    +,_   +
15 + x   x  + +  xx   +  ?   ?@  %"18"_     !
1  + x   + x ++  xx   + ?@    ?
1 \+* x    +  +  x    +   +   *
1   ! x  +x   +       + ?  !  ?
1    ! x xx --... ...--  ? @ ?
x +   ++ xx  ++ ++     +
 +xxxxx  +     +
  
#  +
+ *   +
#  + *
  ***************************************<>***********+
  +  +$$$
  <>"3"O._+ rk:start | print: "69" rk:end e$P+++++*D*+++1++1E!s
   +   + *
$'main' *****+
 -+3o4o# +
   ++       +
 * *
  +*****
#       +
 (printout t 164 )
(exit )  
#cepp  
MsgBox (0,"",169     )
#cs  
Yo::=~147
::=  
You can see an x here.<<<<
  
>{-<<<<<  
> 176
>> Output 1
>SET x TO 120. [0]{472454523665721469465830106052219449897}   @,-1,:*b5<>␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋
>X x. PPQ-}
>x--/2  
> =157;y=146--/2 
>main=print y{-ss s
  
\begin{code}  
{-x   ␉␉␉␉ 
␉
 ␉  



-}
open import IO;main = run(putStr"159" )
\end{code}
pppppppppppp
out &49 &1
out &56 &1
out &50 &1
Take Northern Line to Tooting Bec
<attache>

Print[194]
Exit[]
</attache>
Take Northern Line to Charing Cross
Take Northern Line to Charing Cross
Take Northern Line to Bank
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Embankment
Take Bakerloo Line to Embankment
7 UP
Take Northern Line to Mornington Crescent
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #e.0,1,_ _ye{--}besizeString xflos1''gem x=4721en nd ogola=1$0C0 cod/|puts_e25y $"3"91/2 <5>6#"5"8=6028=+ codefn;#6or [9]=x 3 8[]p#s4;93
More 91 of this
How much is it
red down one blue up red down one blue up red up one red right two blue up sss
baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet
wwWWWwWWWWWwWWWWWWW wWWWWWWWWpppppp
When this program starts:
There is a scribe called x
x is to write 179

*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1""//*
#include<stdio.h>
#define  x(a) #a
#define u8 "38\0 "//"
char*x="24 10 31 1"
"a c #FFC0FF""B c #0000C0""d c #58007B""e c #0C8302"
"h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""l c #CA007F""n c #330001 ""q c #E60000"
"o c #FF8000""t c #FF00BC""u c #008080"
"A c #0040C0""E c #808000""F c #00C040""G c #008000 ""R c #800000"
"H c #0000AA""I c #00AA00""J c #55FFFF""K c #AAAAAA"
"r c red""g c green""b c blue""c c cyan""m c magenta""y c #FFFF00""x c black""_ c #FFFFFF"
"HHHahtdegggggggyrggggggc"
"IHHaixuEFbGGbggbryAEGRgc"
"JJHajyurbgbgggggggb____o"
"IJHakmyyyyyyyyyyyyyyyyye"
"I__almyyyyyyyyyyyyyyyyye"
"K__anmyyyyyyyyyyyyyy_y_e"
"HH_aqggyyyyyyyyg____m_Je"
"JH_axxxxxxxxxxxxxxxxxxxx"
"K__aaaam___bbbbbBm_bbBab"
"K__________bbbbb___bbxbb";//"
int f(char*a,char*b ){puts(a?"124":sizeof(0,u8)-5?u8"67":*u8""?"37":x(0'0  "'\"")[9]?"75":'??-'&1? "79":"77");}main(){f(x,x=0);}//<*/
#1""/*/
 
>import Text.Heredoc--WWWWWWWWWWWWWW<<W
>instance Num B where fromInteger _=B 170;negate _=B$x#x
>data B=B{u::Integer};g=[here|here<-"W>W"] --WWWWWWWWWW570rt Unc27<<[|]
>x=1;y#a=128;x#a = 174;(!  )=seq
>main|let p!_=0=print$sum[0!61,{-_-}last$172:[u$[-1]!!0|g<"Z>"]] --}  
 
 
 console.log 178;
 
#1""/*/
#if 0
#fi`le. :-write(186). end_of_file. `
#endif//*
/*/
#if 0
p;
select 192;
#endif
p=sizeof(" (\");print'(''72'')';end!");main(){puts('??-'&1?"101":"92" );return 0;}
#if 0
#endif//*
print 61
#}
disp 49
#{
}{}<>        K yya+-        &  g+$
 /._++.._#<!._++.-.>@ A=AgRA;       AC
#   /
 \?     -/!+++++++++++++++++++++++++++++++++++++++++++++++++<>^+++++<\>+R++.-.
endif
#<<<#/<+>/>>>\
"""#";  print(85)
#<   ~#class C{function:Main(a:String[])~Nil{83->Print();}}#+</.---.>/
#endcOmment
#nocOmment outtext("155")
#ce pS9^7^8^MUOUOF @0:8:8      \    @,,1'1'<> @125iRE
#p|o51~nJ;#:p'34'3             \=# print(size([[1] [3]][1,:])[1]==2?158+4:17)#>say 27#>>say 170-3#]#print(47 )#]#echo 21#>/#print(171)#s-#print 175#s
#8M`|  <esc>dggi2<esc>//       $}<}}<}>}[<< }<<<<<}<<}<<<<}</<<}}}<}}<}}<}    }<}}<}}<}}}<}}<<<<<<<<<<<}}}<}}<}}<}}<}}<}}<}}}<<<<<<<<<<}]~-<~-<~-<<<~-<<COprint("65")#`=>ass^_^_#
#9'>+/' 25       xpppppppeeee*n*n*n*es*s*s*^ee*n*n*n*e*sss*e*n*n*n*ee*s<* 5>1  e*///\)Q222999686#

VIP score (Versatile Integer Printer): .001298 (to improve, next entry should be no more than 9624 bytes)

Run the code snippet for a TIO link.

Warning: TIO link hangs Firefox 54, works fine in Chrome 66.

TemplAt code is:

<attache>



Print[194]

Exit[]

</attache>

Retina had some spacing requirements with this answer, particularly with the empty brackets on the exit statement, hence the blank line in the middle. The P in the print statement also affected Alphuck, so I decided to place the code prior to Mornington Crescent, and to remove one of the many preceding p’s in this location. Retina’s line requirements in this space also asked for an extra line prior to the TemplAt code, so I chose to move the first line of Mornington Crescent into this line. Finially, Cubix sized up to the next cube on this answer and is now prone to break if code is added to the top third-ish of the polyglot as the IP both wrapping and redirecting down. But what else is new. :)

Good Luck!

\$\endgroup\$
9
\$\begingroup\$

195. ZL, 9540 bytes

"Click 'Run code snippet' for a 'Try it online!' link."; h='https://tio.run/##7L1bbyNNlhj4LHr/wb6EkvqKpHhNUqRIUWQVdSupSiWpdClVlcSPlSSTZErJTFZmUiJLpQ8940Wv2@MHezw7GHvW7p7xLnYeDOxgsQ9reIAF1q/GwL/hm6fFYIH@B73nnIi88CJV1dfdXi9gSmTG5cSJiBMnTpw4ccmmYvd@85swftiRqY@7uukwR7Ud1ra0G9VKsY0xe6Zodj6bC4UQqmZ1h33VcOy1UJjJjGlGS2uDnznmtWpon1QLwrOMDSyzayl95vQUh6l2SxmoNjOHzmDoMLMzP1mOse2@eaUlMWVfM7oA5qjWwFIdil9h7MzQlX6zrUzF5KcyHFgQb7MtVf/c/@ywltnvK0bbBsgCY69My1YRvqXatonJVxkbbautKaRFAFUszdyvHTyfiiox9hyKqAx0dcSUpu1YSsvRTANpkmEnB2cnR1MpZJm9Od3ZmQ7NspdJ02A7w9b1dFSOnVm2oivT@FdYbeiYe850eJ7VuqqhsGyqlMpORxbYhqXMJFlllqq0O5qupqBBWJL1VH2gWgxDWMe02B4USS9miplGzU@ZamHaoh85jbbE9FzOmapPNgOEN62eakAJM9ORshc5FZH1ItoaZaBYYxa1e6YFfGSxoa222a1ptYG5DH0cS0B6NvrEmoqtFlYQQc5DcG2YtwYwkWNC0zbHjsoM00hSYgRcYfJ@Y5qxsnkMrR3uTYcXWHZ/OmwVGK113Zlty2yRHZuD8XRoib3S9uexcy7DO8Km2YbWmIqT2ZECQZTNJOFz2cle0ILWhc7MrmwoWFtltqENBqrDI4FXVIuiITXTNeOad/Ajy2wPW9j5nJ4KeWOHRX6wQy1IVWUDISZS6GBh4iAOBiU4MftqsLw2M1RoIHugtrSO1uKMpY4c1bChyHaKaVCJW03XWVvVIYGPvZVgtonN6wc1daWXaqVCyJiYC@tf60xjrcGA8SioBRRpJ1NkKlKPfYJ4vWez0aDPbK0P0U7L7HRUlX1SBz1IHmqbIQaf1mCqWp5vSQUYQ3VJow5AICBpTKQ00Mml0K2lAGktW9DA0fpAWM2J2ExVbA0FKiSxVaNNVB14otZkygTLsxsNOjxUfWgRblu1qMsRXuielgooFa@Zo7eW5jjUa1iNHamKxU4tVY1Nit2JLCEzE3NwsCIpatT19cj24U4EGpenSCkDaEwrd/r6RUhhqQpbapThW5Gkcmj7YIvdLV2im0tZYICBFVVirPIDs9OXlyp8R3Iz3bXuQ4A1BFTRWdocOGklOYACJh0oYFpBJ7qSN9nUQA9kzNan2iLAchyqDa0Bwoe9SVDNWkPLwpHEJ6pyDZXWTaML9ITKWkMD6WGwQgaaoGXCQJBg6g1QDSQvtRHIBaTwaU@DRrOxSQIdi4@HRFAYEYGNBUXdfG1THxIcpLQd5GWgCiRFjHsd9oZ1FE3HJBCPqHipLdUe6g6mGRptbHkY79R2irnFoA5rAR/fQHYKIKUAYP1@oF9SoQAYGsKkqmLUj//0z9vdLuCptVog2wS7vmFts0Ujt0KFheGQIcOCQNWpWACXwNx5csjgRtG1NgkIxRiLLKgQlOutOdTbzIQMrVsNemlPuYGeDZ2r5aicyflgn2B95ZpLE41zLlS8rzShYSkDypuqnWTPNqGVWmooTDyT7A@dTpElB9ssYqe/jz5diz5dvFShcLFUbHkpne6WgeFSyxQEvshjnPOmNiEpbUexTa0dGoydnmlkWbLFpFbFHKhGNDKBI5KIWM1ILIVSLhora5VWqqMZ7WhkHXixChlHYuVWpXWhrdXLU8mDWQKaW0SD3VWNtmJSCEQOdYqbdB@keQoGhzdJ4QrEmXYDSY7RqUAwEmY67IYHhEnZQb40kUFADqVsXVUH0UxKjqGYQLi59caIeTWdwiEqvKbV45FwJB6sOmGAmk5UFDvrqWai2NIHPRy0gCiGPYCRwELebcFIjZLR1hzQOBOsSXxNowhIFpKJt2rEUnFI9/iIuiTvcpg@iYJSYPC70GRPVtuBjgxCAPqyY89IY928hQypTDjMgOgwMFOlC00DiXlFarwiPCcKmawSVzQAW1NlxWRTg06A3Q1kuuD5QN0APJflMICNd5KA7OkrY8DS4sOq32GY1oG@1AfxANpQS0WZA8JH5QMKZjKk/meDjo3adiaZzecn@9hMF3OsdC35HoT0p/SjPQkrH@xMKGhYR71lumJ0h0pX5ZoYU1otdeAIQQU1sR0QRdPjDQUmxeCZsnuhpWfTedMg4qoWfh4o5HnriaFQQekiFP0kqDMqU8RUBTRHC8SSPp7OHQBupjKXPiDIRAE@SA8UwdUAgMnUkdoaOiDVgIFve1qrBzyLpTO4XOSD0HT2EBTMHSR7suNljYWRq0@yoVTaC8JiPIgiiS06iwcGV0RVnQigxg8GPI5ZsftzEJteEWEgCISm0koKeO8LOPumYc5BCoT00CLIZAxvB9DETlChhIHLVbuos3paptdE0GY4EWgj//UcZ2CvwTihOb1hMwWckj61xnvOoYHMknasseaY3N3UzSaIZRv6Z9rNId0aNrXRVIUozGvDKzt0AwpYx2YVGLk/DoHropGODQKTwjcROBAlkeAmFPxXAkACSgGhoh2bRPEOCJWTsdGKSinqSinodFKCSdhxJZjuSJjKo8um2UcpxM5JMUBND6Z9moFzBSHzSeQrc4c6T/aTXheJpK5MzYjeRRYXFyNrkSpI9sXFp@BaR9dTdMXB9ZRcSXIhXApdlCJBLoy9oBQYVo/cX7iYR7E6NtsIR6VP2iCqXKyt5eoJ5UIWzyw@YyDqQLIBdBIfgCcSq1TQGYtJ1VuoaKrZmaz9Jkrnk5alDQQRXig3CvcLKuSIDFp/gNNISy3jIPs4TfoVC0ZBUFpbvagVubzIXNYv7y7b8cv7SAJTx8pKpQmVgvyi/VTXMocwXMYuVtaScj0Wu8jBINmsRDKR5Wi0mNQhIyUW@64Yiyuc2tGIClI7enkZAaIK@ly0ehbhGyWysZhHKigHDsygE0Yjqbsi5N@M1WPxCKSNRRIwxahEIkCZFhLBpkojZ04Q6PD4JSfMZjweIjY0rWv8zoh9CEvBBIsn3wH@3TyZnPb2r0G6spatoyqStLg2At70Mg9s08PTuNbYHmmsBgy3UAMYbdvezAhn48aQ9GdSbs1gRjQdRAgKw7EH5ao2AYOIO9oIJgjQ78euIoTjN@pCmzDhNHU1dU6qicSg4@C0V03N1YaO@LCSatk@D4DeA86BrrSgY0@iu5TYJSAEPk@n58fEyjOIp1UlmtV8qY4wsLQUA@nX1khrH2p2D8kLmhVOJawOUBVVdtANVKLaHmvBmN8FSqsjzeE6PPDRCSbZVexoDLXGGte6UNlDjQEL5doAaDg3WzDfUUFzwFg@eWTbxo1mmQYSObUNqIHhy9gGU8jnkRfYqFbby249TN95yIFiM8FygLZBrNPEbdktljZM3eyabBkAkDVTKc7YewaaSkDnc2B6yWztExGo1jWN8RQPqjjc26gjyoWcp30rCJkm@NQVyBo2v9I@wAN1Ptl7vw0jhJzPZKD8ri9DH6@SASzTdcTAFvMBhMlWR77BlnyvDnrjCYMS8gefRQI/mSrvmHxer8CACqUSPfwTJQ12ch4C/dyNaruueXXfJg0JTRnBWcZE7UEZhH4qqsO7DdQwPBWMoS4pJpDONLjfvjsgO097QzWktnomky5Bw8hWWbqt3qRR4Egg6HqgKichK9UiZcxLJkzIIcccglbXVnWtrzl7ZO7SDVRd/GHZjUWrnY/gSFOdkJhv@OIVTVK@rDW6HH57hAOSHVLpyQ4Ot7YbR7XT3YqUHtpWWteawMFttdEHxVNXbYlNf8LsWAVkIv2na/3YNJ0Kb65rnX3xE8Y0bvL9rcb@3sZx7fgdLwShsbX@UFewKGtLUwCY/ISi3V4VsAN2LLPvaeS2aIilHJJenbD54/RUxK5g7FBY/APhBQzvoxU/1Qp1Wy2WNLnXCxSAqwiIln0aw7rxOEKSpd8LFJBFQonW/pTVdANLGOjZ@Scs4D66efEPJxKY7@TMPSK3jaE9CNTsTpYp/MbpdHDU9oKzFHydRFbX/eAcBfN1gkkLvSDLTNRcYA/fCuHj6wtz8c1EzQX28OU5PlyXmI9uKmYeqIesQMhwHWMurqmIOYAeplXCFFz78OOKFPfQwofIa270g4k83CXCjYsjPipaKhFBLmCWc0efL1zYDbSR@jySlSdiMYovd7BkGyYn6wiC/PIZF0IgCLQ4e9BOOSPHR5ELokiCzsGXQbx4zgiy3lAa0Cv90rohgSiW1EGAyQU/cd5LbE4lNTU/2APn7ZrVGyAChoEu7YYEo7xEvAnd9ZZgp8jyFrTMwTjQl@@ynPh9TYiTQO/KcXKTHELtyJqI5NQeuGsuE3G8W/J1lsYVN9Y1xDILtgsXhKcw9O6boDDtazatfgYlY8hT7C9Dkjs7mVDDJT8m61sJWfJmvnlTCiIimQ1i9drESbHvamRSch6xeCj61/psyg7olvQzATpTqNkYPlb0mx36mQOwJixnMCziUhBS5QVa/9G4Z4Kmr94SGNkACBlQSzOU9DE90BowrzyTdo2JwjTVzhCU4DRM0tD9BbBkqUiQnWZTewgU6IJFd59zwKxhcx7ZoLf2ZkxfbILwztBydLUtnv/xZ21ogNnm6SljUvw9RwPoRrzRebC1RFL00M/8liWYq6GuKUQGcn0JZUvB1QZF9xzzUaMGw5LJnmL1Ub8WjQvMiT/Qux7hM15yS9WHbdV9zs@ESDxpYOOpDa1PNYInThBpOvxA8inzIE9PUyzdVNqEhU@ENNVvbd4u6ohPCQKaNsiiryina8Vj/rKZ0xs6Q/6LK2VfaldtgN/5VFmbZLJMXmnKatq0laamPsIHlnI9bJvJwXWXKo1FKzzE7bwTodEp2dGVa@5soHM@AXgVLa3bVS33@RDYbQ90e5qUpG/p8QiruJoVI11ZeQynpfPfh0DcvSqe42E6aTr9fAtDEou0oNcgaXE5PBkgkzZFWF1pjnFy1vt2zsIMSWUFwVNpxeOZHI6x3tqHv/A@GDycHgdmSl8qzU/NF@I5SeZNWdJ8AT7JDVNUZ7Ek/4VeDyOX1lf0ZLYdcD4oxF2jp@@aA0oz9WRLV2xgJkc0h3oDzUc/jzE4DkYtZCvf9Qh7@8Vxl8AeWk3x0wxAE9E1e8B7nPA8JE2n7dA@GtwRQT9@UvTN0rdNyrDdS3qu@QLBbDm4ovEAv32FgOOLCbhcE2CglPkQ7VrmLX4fVDF65o3Kf@cPep/mluorRFVSJ87QWnOSt1tfYldcE6ef@VS8nlsqp6XPDReW@8npwNcytK3ppg3zcvx9jBCgYds2/53PykGaaYqRJANz0D0/mSjUgKWEQe2BllT0rqkXit20Aj8PNvfQ6qD4F8@vFXue2JLlL4stVzsyDVk8H5T312nr@kucQFZoC1erAs5HBtt5skuscjxcQZhD4BL0/MrtZIqUMpXmRpKHGsBq9W6Vsfv8CUPKQ9R1h5TBmHRrUP4wQakIDsfi@vZPyW3l8dzaXyeQZtCufqkSgca91lUQz/Q706Qsm5G/MYWcyXy9eOroQ3WoztXyDptXKm5C5OZc3Lmg6DpfBj3dO/zGQmVENZaEOTENxENjogf1Scwcv6rUOHij71EBo@gadPIvqjhz5d0AFPIBTraPwHGEjtmEXWM4mGjcAO2Oh8bx45TrDdyebbYnCokx3yqRil9WpCZ0dlul70P6/XbfhPmx2QeFwfiK9hdIyfLBfycQU4ivZkwYSOZm7y1pg0ILige0qHZtJ9E2/nVCJ/vQpJ6ASyWYthmqM8bfhyg9T4g2TVP/lpYBWdrWaLOxnsTtpV9qoRklR@xuYL75wkZTSLPzkOGCjzNihgnUw9m088j8OWiOemRKOGNaf2S0ChjavzTJhJGaLEO21XLdDzHkMXZqOVVMrT7KjlwHNZuqrvDHqLDyGL5SKvcoPk/rEMotLczgYg5fvvHXv8JTomcwBmJpbZig9NS@St5HNHulfTW03ceDQCMTv3OiU2lajHgg3UCDvm7g78RSUUAbckwDplSOYnVVnJPouIYpQh@Sr@4ax1zi7vWVrsrPIjwmOnzTBG574zM53znfSLHGd6K0IBlfqH@cFaDjXKtj233ORfhq3IL2HPYfxTavj7fQAvrFTp1Kz13a@YK6Z/TMntFTexZ1Ds/3UPcAjnT4KZLHKgHl7yn2Ne7zI3nkz@V6dpC6uqnrX0NdlIdcOprmfOPsNu7Rb0PSb8I7VpoQIR5ftOPBkE1EorH7ob7TU4cwMtmmYw7UJPkeAtXR4sN/59ub9w4jNjvXVKvNNymg@U9xtKauslsNinBlB1fG51uTmrqp4FbSR5R3oIz7/Br7VMu0vmj86CqmMxjQozHQhzb9kJ032ZlvwFxjO1TSr2EGzeH7QzjLql2z2eppXypSU1UcQ7tOu4Yc7n10XiqEMdVcY8ktDE7pGtDKGqeQCSrB@BN87D00/gWWcebWfnNoWeMvC4bJVX/P3spXCdDxUP5igXZONA35uAHK3ejzyFKFWM99kJtIgUZlOalmQCuRH7T/TOz1EtKLFhYfUHqm6k2FCaylfYv9UmwIIEueFtjUAOHzjBcPCcJdId9gVhjdHXbt2JcZt9cGnQp/5iKsdfFYFV9NsnXzNmBthq6vGOIxd1T2Vh4fWxjJP7oykkqL9c6kOnzQtqVrA5v/smQnOxfL7AL@LNR4/kxXNE9b7fDfL2l1fdPCze6gPiRblmq30OSNkpdLRC5uDLMLEjipMx/YhZ1b/Nn9AvP0ksnRLfn2QO0quPltX8N9cLo9O@AB5umtA1@D@PVQsbXXQ9NR5@Kc3kLwNShfKV2ttTvRAi5Cl7pipxR/THQADJptiNueZtOeY9cxv9NwFqPV@NnIaau6d/btcSNIQCcSWz9Zco@5W0Q9B9r1MV6Zm9ekxikW4h8UcppDxlLxnFvP@dstHrMg3A77g6EtHvNz7@MJgqDNuH9N4fatBhIw@REELuspujPfrhwwnIIuJUZB3/mQhv1e080ue1/MMFC9QLihwv0AY23AmHykONADDHuexkczoWwqj4dpvzTOTS9loqUiyVUc@yOwhppjSc3QnMetMo6jwKzIfWIVueKFZ2bS@/ibevatGJKn8@m0/1il@LaKYzrX550AsRNi4yKEaZY4fman3DOeYdrkSedB3PMBLIynVIY4fjmmlWIEF40q8XgsFuKJcAWgawCYC0Wn7PAEDj/AZzNdsx2C1Trs4oIt3Y3WMmvyPaswaU1i9TrHih86D7I9GtARuWOe/GJJqVeWIslkZClyaayxTMQDV3XoDXPBlQnYjkYPXl6fBMxQ@FZedLs1LvMTRnaPTu@B1tcG7fHMIKMOaqL8nAw/hHWKWw/@w1@1xaFGmGLaoHbBaAQEwTO9Zl/tmbdPeb4i99pgoOChSMQBwkvnR3SSmzUGvQrUTH6W0bxlZzunRXFCShwgBs8RV0O8UvDGRUMH7m92eOPx0nh7VUXGXiq3Ui1TH/YNUOzbTs9OsRONti4PLX8PIrgQzHAsnN20E2yPtVVc4KUd6TSh103zmo6WYEn@w1/xc2G0L13sF3azp/OggRxx@7lMh7FaLXMIpXaRfFItU4BEkcggyoZoKgPmVnl4DHdr04E14Mike1yLsuFntjZrJyy5zSJ4NhpPgZS1TnSpdvz8zUWmXvmB9dPqf/xZOnYnCCd9lywVbCnBXJDyPTJWMDoP0X5shElLI4ln6G3a18Sm/VveHkAihTMZ7tt3ecw0B6LX0JFbOmHqcaO4@iGKbmpn99xWn07rEsOqt3RuizbLGiji8RisYUMHA2@MUPNeV1mKDrlFJ3nisDxkiGffFHDx8720jR3PIGGSpRH7zHrIZMkWbq0GHyekjsfe@pUNd8dPLrgvK72lNoe0GeEmm8rmKlSdpUZlvUouS22bePz04vvLUTaTvBytbtfTtkvUy8vRd5nsW6C6CZPNpSdp7HnbB1t3S6lq5vNnWxkzSbqPlPk@MhATS3dHe0fbJ6e107MTaIV7V/zsmFZf8WUNchFtlu6ZOh3sBbpYmmp/g/zxfAAejbIlha3jlRWxWCi4D5hABa2lpLTEnQHRNJH6C8nnpbfVQPwsgJBpHY25HLUHwwC2ITAbUg0rPxzg8WQm0oojlsRlGsp47EAeYXC33hxZSqSSWAWIlQRifSWp2MOVfcrDvoZiX8TyONmezgVBinn5XXjxvIpzSXD/O6n3AAbK377eHMvj9SaYR@oNoF6om2antrd/drw9mQx4jJ4kdSulvNgAz4Uz9jRuDHLPlNJZIZEQrWEViUmUgHvFYEb3kTRV51aFagnh2OrzxMShVH4p5DMmUKaCl7rUy5wW0SiVAHWQMlZran9@RxsFiuiO0QF0d7yKnhDYkTzUbsFTksAcpgs2Uvhxq4FYBbncrndEQlzI64gdVH8Sbo/DquEYDco2pXpgqPJGHZvBf2BUcl3ZOhsxMZzJdZZkWfjqKkw0ex5srMzHKLbECSEt8bJLXnnxcgcoU/tKoYkp7RUTRxBglNaVAZ4kF9AHMBlcYx@HJp13coWJp1/c4rRH4feYUNO2FKwNnaMyHDwV7o5bhG9v56SC2hlXzUi@B3luaOBABUCBW0W2RzCjAWbrkKzn9xNwkpviKLw7VJKV0hZHXz0twWY3mk1WTGyEDuo4OkhKrI2oOF7pQyfdWE23QSdpw/DNL8Ah5SRF@5n5puakwaQw8GTKUxkTTAohrF2ZPRoNQ@ltC4bVDzzxEsERZjuAM7K@mEwC5bqa4V5Bs4bGVrJCrTHHGuKWgGpkJolbhDVyJXtOXw8Azrkk4lJN//hP/5xfDHHpgPsXwj3KbIDvj4SvA@5/4sbIMvj@mefLgu@Pue/7NDbZ7Gl4kb2whj64@Rv48pk0UyeUCe49PFQXr7Wxpd/sHTGbLMLYln1lFGgmlDDIc5oB9NL6wBQ31MYIznPwm9DHE714AywCfAX8geoNajSUn2rVo3gmei2dxoLj1DVFe4jVETcH0xHpj0O8GgSUsHQhX1iR01DI5I2LkM4pdnHTKkcYi62BTAzdaIPKh2YLjyIwyW4puloplDlvpJeU73PSB6@gSwAb4hOFCwZp8PSClwLiqiJZdEmJyzFMigNZRI6gTGubnNVAG4ySA0BiGGy4B71A3TQFqYCPDXXkkMY0didATbwCCk1ZKr8gxkWUBEQcN15gMd0d/W2ouGs/0EFTwWaQzhHsBMHWpHnMevE9u3Qujbq4yIQB4/1qDusa4P7Hc2434ZyFJzdnr9WITl@KgbVhz04ME7cr70BpWTSbzubSciEW4FBJoILyYlf/DCihc4OwaKnalTmwa5vbey8Oj05mrocgyMg0WIRFquvxy2QqcVH3HBGv3JNE3dhJn7za2HFJGSyVv5iPEP6K/nQx5@U2XdIHcj/n@39n86aImYzkzNcipuWz5A5teJnF7semA4CbfN/hTK7R2N39RX29emmEZ7L/PO/KnHBqGZkLXJc2XZgTmS4mFnHP3dV8ilfx2Sn3dEtW8i@E8s7kcL8f/PAFD97Ffv4tD@7@6RCdv/SOX4ZSD@yshrqn0jwruuKAF8wtL8gat6gyFtXPsBWa2ZARLA0TdZm9g1AcMPKIdMhtSO4NcjaHtEk4cysTXbXi0cyDO3UxYtf3710QFw70oHS61gzdirOx7vEs71xsyh7omhONhQwBMX1QaxbSfvT6Ag9MqVyMmHfiyEadcZQiA16Ubge6rYf47Q/MvaQhTvc8HA2BbkfmgPlWtC3VdR2DTsW2hpBFCydkL4Z9gOvQ41jF0UIFLSsJiYGeEbcoF3izgaBEqt/OR0exVE8dtbUujDjRWAJE03ey7N8QoeAVB6BXNefVAM1Sg54CdcCmya3jBQuj2HqJvH4FuT2R3c4PNuohQIZJm7E1brmInBnuZT7Y8GsskvAo04wlIinGZ1Linh5aVCZDVIpt9nALHpk@Oh2NVLbguWs@mHc0q5/CWsEww1noOW7ADXLNN13WEaCMcqGkNKOtjqJ4LnqtjnSC8Mjt@U0kJs2wON0YIu6HaE9fHeLKQsURQsm/dmNK3pVKnpybFA2lUqpnh/DsGkxKIMcTx9oHJ6gI0U5fGbDokO5esVmKkTd6GTUStmPFWLKKw/UtM1g8TjYNeFAEzFkQtEMujQ65R/Gqsmi6Ao2EobbRxscnbcAu5FSqDm7KJMaW0J65CdoUWgJjIZijQpI1Qgv6BfytYYn4xZIpccHkEmUbousPAGpuNMmpbo/kC9CCas2qT/yz5gEBw6laKq2J1piU9iUGfLE@RyAC2jlS3J0jAH3F6SOgGspogNq01LYG8vLZS9UwVCAQ8Ewf79FUhsBkVizhXvGa8K9goxzCvIi74jgTFHTyarbtyJ1ugrq2lC6Taax8D2rNh0vUazpCsxmn/9t0Kl2@iy7plXEadM1YNbrUq8jx3HI8vmQsR5cM1LaePEGL2v0SKHONFExQRwCUXNJjZeBnUP4qS0Z5SVmPLrUr2WVKAV6YIt9Bgh/sdOpuSblPLz0BZSkBIRYXOtElm25NyaRS8j2UD3vIUjoBPHOH13/Qxa2Y/ZIWj2MZUksNLMAP6cuTOA2blydpMt6VxVwg3e2L7jalinktMXPhLCegCF7zBqw8DlhiV1rDBfYvZsvNi3tA/eMZv8S9u4y2HKh2cPIlTcZ8vWARchplrhAyUX5tDRBwFAUiojehxGIgTH7zm7BcYEx6WshFzfjTfKYcj@RlmKbD/Dr8DPTw9LJkSXeXW8kbpiYjFx0ln/pYP7o@Onobu4yyEouENw8leUX6npWy7Os@qyz7wIf9Np9weDkdCqeX5Ser6fSHDx9gxgGfi2qqCuKDf2IXyUj9IrrKWHV1dTlRKC4nnkUagYLFotls7ISl2aWmaQO73Yav2aNblqNh/nn6lPKC6T/8Mx4m8hcO14MgIjT8rXBKPswuVxVlOb6SfWaUoWgl/OSYDE78LcJXZvk828bP3/7vf/tnf/sn9Pdn9P33Crtmn@Bz3WH4T@5P7YBbQXez8wlvlYGpRYXkwiASyeciJ99H2H@2zyKTq09X/9OfHH4MO@FqNn1uwdMJfwwXimHuBAf4cq7vJlwNryNY4T48TlcqFXCu/qf/FdJXXwAejBmvw0817@IqjMPVZIWSfA5XC@CQs1nI9//@2c9C4eoo/Cksy3J4TH@NcEbGT/GJ/IQxcKSl1aJkms/c8o4CHzcsLcvZS789A82NTesF9yAfaFdmhidBye1xFRPcQI5vgcN7hAuLzz5sMabCUIuftbVnMwTfn/Ifp5LwSYluMEJPcuRWIVysJBo8e49XwwHHVIW9Xybq7vm/ES4Udi/DTF4onfoE1S/DcnHl8Nnoqz/ML7RLxLBPOy9zNh3mUt3zMLfTs2@BC4V/qFSOHfx71cS/oxP8Y6Of8gHUT@GzCH/0Dx/Pi7@LFCKCCWT2s/hbdNdQ@CJ8Ua@/7tGfhX@7Bv41P@Lf/if8e@3g32kL/45f49/pe/xjM5UJhdfX18Px@DGohoJnv@ZzBt9UqiF8Lu8iut/ph60cFg6fhVg4WY8n7@8vUt@P4uWy@Aelqez58MNdUKz6fTK5/n01Hr@g4l1URTnXk/UqlJUXmX6@XwfE8fWL9fVUo1qtJuvfVy/WJxOJdM@exbGfPoOE1frFRSh8h21RwZ9l/GnZ@JuVpDR5cbCA0bkELkZOeogARvfgoz8U/rD@IRp/Gn@a0TM3Gflavn5lHvr/h4cjiNBGmSvTyvQyPbkNEpFl1LPMODMeZfrmodwGpwp/mT44tUxnlOlmjIwhy@PRBKqH//uHpvPq0ARsJqR0RhkHEWc68OweHr4CfB3I@wr@tEwmM4JCjjI38J/RUVDTFVv0/L4RuwxdMOmDCqN/So6kMpFUIRLR6vnC4OPl3X228FFKRBqXF5F6OZy2Ly/TXDti2ZUyXbB2f99obB9sNRpp5KP1pfizePIZfCrV@Lp4PA1Xy08v15LYfpz/Uo1wev3pZTWXRHchDo2UhbD1dPwbPz5KeFYXL0Mw4Ts/x@/57c0td5GDXJfn514s/qQxiFwUBB8ATc9NP@FgoGn@nv7bh/9l/b86Y9GLeoyx6N39epQ@MfyLxe7u7@7FbzUWjQpPdB3@MAD8mOTuvopOAroD10U0Vo/d3/Mw@I3G1jnCKuaxXqXEPiB02DDP9TJSBg2vshQVi2qXl6NMJlZuQohnXlc@0/pMrEw7V5aauKYGswF5OUYg@ZVyeUW4V4vlclG45UKhXF72oDLgEU4AUm2lVUZGL4djWATO/dEM2lToEstItK128Dbzp4MBTOzkUubzZy@o0WhrVqOB4bnPny@hI0Vw30qllIeQTPHzZ@iDkRhM@g5MsWJagimcnM6iUwZnfn29sFKtFlbAXSjGYmXpYumOFyLajZfkGLtfStdVW@JlhMlWJMx3u0Tl4mqMQu8jS2mpzMLr7GkV2NeGD7u7DxMl2Uo@Fm2O1RhbKUSL8ZL4qyzG2Hq6uszE38VFLr6yvLr8rF73RyLs8OU7pSLfV@6UNZzu35db4jZI3PenPHmSK0EVi5nyZajR2Kqd1hp4rb4koTQdMIahJDtCuE44sCIXZJzJl@oXWO76ZSSyVn7G26iYZ@FIWcAlIyCFWLFE1QvDDFDr4I7fEQpp8V2Tl7O5xXR@9F1hOwMa8@dl/FxcXBSzxfgySKnlUqler1Po50VKc9Efdep04VAleSEX8vUkqiJXo84yFFZezYWXQwPaFbSaYW1cWLXQ2LUIgT3FZk1cA7dVXXdv4Lw1Lb19q7VVwH60X9vcPk1k1wFldqe2mcienG2EZfTmfT9F59B/vF3bOjyDBEf727WT7ed7b7bPjiDchgEPiAWf/pGiDtWGejsc3qK/odJnU7OVqytlMGgM4DPq/Pirn//4q//ux7/44x//4uc//sWf/fqXf/Zz@P4VfP@YP//435by@PvrX/6z//nHf/0XEPjv4fvv4Pt//PqX/@Jn/Ev@v4Hv/xkI@xvxDcDxL5ASsP3Rr3/5J3/561/@k38J338lvv9y@vvjn/5v/P//En/o/Isf//Rv8Ed4fv7HP/7hn/z4h3/w4x/@4sc//IeA/O//@lf4/yd//ff/7lf4/7/8m7//6//h7//ofyLHn3PH//Ov/i3//bs/@Pnf/eE//7s/@OUDvz9/9PeXXxH@y99DyNeX82vwfE29vjXklz@pPL8NNfxciMH@7B//@C/@EXDun3Lffw8@@PeifuF5vJg4TdOScT/wF4x9ToMilHn22QMFlP8jhkIw@zyJjUIzbuivf/nP/xKDJ2D/URBDRp6FXUJgL7dfAOy/9goWhP3Fj7/62Y9/@Q9//NWf//irP0KBllwpJWqJpPwFgw4A5r8CDgELXwMHgPI6rm0vssVQFhyL62iACMnxDx@ApIvgAoV6OZTPgS8kV8ktoxsSwvxkmc@Q4zjvh@8otFICH5oE4jCExHlUHKI24qxSqcRDowrEESh4Mc2IVYs4CcI5QAXwYiKeJtEogn7JRhuEBVJW4sessVwZ8YRxDKgSBoYFwqBjSc5K8WJlCzKsjLYY4kLk8dAHeH6oVIuVURXR/UBFABzxDcgSoCpYulH1B/BXCCfAh0ZbP0BRipV4vFqEkApVlXJLNChPOU@Vo7rHGdUbwxlDi9jTZ4x9J8lFic/FgJRMQONv3Id@ShaJpxB/GV8W1aF/10nfZUwP7TQi@vAwHv8Ugym9AAC8ySTug4JvMomleQbRI44qTtnCI84xAOXiwnTjBdAoGw/FqX3j5IH8oQxf91mvBjyIDquztLQErvWqlJMOQaln1vWa7SgWLhOQRrPGpEJJwmDcVqIuHZHav7y1DL8y/G8v0tZQTo7l0FIEh/IIc/NIxnPmihmm0rtVo7osU8njBBcK@@Fc1aS1HtARV1gsFKUrpWM0d1QHoMGEXtndDXME@mBCkhJyocRNpmJq@c5cW6v8IK@shuBJ/iHeZi3uVYZmwDccpbB3IUGrd8l16mngBHWjEKpWxXoVk0PVk@1TSHB6yORsJsVAibxbWc2u5Ffy2VyhkF/NyiuF0kohX8yBhCpk8tmsXFpZKRVLq/dQoGfQzxNry838evUfzHz@m38w7zM/FD@h6ls2SrGjo9fJ@1B1lEyms1TkipxfLY8rUBAKClVJk@L68vguCUonNk/okrZG3eEuHCha6C6JrLoAHxZaCLEFCIIPYEZrPRNLyHuHZbGWhu8K4OtpkpwHZoiFLoEZOLbQIPAJYbs9AWHzRObOfMF3ZtB5iidiDgA9tILB9nHLomOyU5NvjdtQW6F1cXKjGgrRusMF0LQewnu4L@qh9bQXOx/TZo@/PWvTMkFD/ekwG4pxzaO2NLyBr@V4UbsKXrFj9zWn9wDE2aCPR0pU6/eGYbvfhAKi2ZEDbMCPpZvmPIBVdnb0QC1feSfscAGPjtgB@PHe893TwPN0u7a5GyqwjcODralHXgDl2f72zqnnXeWxbtK8h@Ld9v7@tFc8cJaxyPKriQSIR/jBZ4I@9Ewtfe@CyKmHx001lUnIMAw0xupdMnnfVPGm9RN@l/yoo5u2HIl01T6Mc9CTZXw/V9fUYTa1lNnM4AJD@jPOhhpqNj9mSyATSzAtZOv5aiEs5aVipZDJwrhD99t3jHK4ABPEi1K9MmI5VryoD8L2SrmUk@PHA9W0o/JqbDVTyrcs1axsDIuOE3qF28BKMj/OoNmhXZjX9PHSbzws7oQstQ1znFuDTmo08QU7wwF7MBAeGIROS@v2QGDemh4ATDdDTUVh8P3WD@BQgx/n8QCH50FhMzH6LHjo1rMWeWYg5tmDhBw5x73EdI7IXXSmQcleC52i@Kb3LjE8BtfEVxXQ0S3QC/hZXHqxgArCvBQK4UKb1mGZUIrMZ9lSMV8s5bLFRLFUXMnDdDOfkLMJebW4WgK@ychFuVDMl@REcaWUWwFRDrH50mooDOJO66TTMFLJkkRPzWjh1aDreMeqmepVQ2FufgD1AN9UF1a8gGGRSbniZQbSSXhLu@3QxtplmJXjCyEz@LpFWQpJCmux8M7OZmZnR5I20IMGw82MJLXRky9mMqsbkqRSzCaMOVlJMnkaiAIwh3symY1NSRpyBHiiEXD30LddQO1YkjT0bNZ2djCjK/RkEQFguOYx3KO7nlUAM9CTy5F6LUkfPXSIvMazWqGybqMHc0UUOzxmE@Ik6blbokwGUBxzOIFi161urSZJe9xTqyGKF1T3PC/sS/TU6AOJLPAB90tSFxxdS1UNSWqCE/uAJLXA1RorENYHFx6CNBxFksacSEgmSRoRtNK6lkAbFOGQD5Rnd1fpOW21yz9jiz9bELUHUdpouL3TfP682e02rXFt@/kxRb14satcjYdWs9sUCZsN@JiYCqKu@@Ppj4pRjYaiz496CVHGVFRj3FCphA3lI5RMfLqYUb/xAqNeQNS8FRmBED59AG7iZ6MPzw2lyaPcD0XRc9RsSmXk2xD2n1HZGQ9UNPqgr6@0LLNMv6wfjd1lyvcY3InSmx1QisfuUJhGF/tPJbmUl9YWFXBkV6Q1FMpmJ8IiSfnpsCgVVqW1ZXhKT6UcOEfRTCTDGPzELlbrT6VVSCo9fZqULmT0lcC3uirFeHaookDmnegoMarIEJhOr2Ovx34KT9CIhDpzqo6c1K6Ke0BayeT5xGd9/Rzg8BQoHuE7GPbZBrslQYMb@t09zY3KBkiVTNnAo@MqepdG4VGo2lYcBSY2G3fDtTUBe1/uVi4QwWf8WU9K59Vzqc6C@eZXM1CqM6OVXV1fv/hcB62uIpfHYRiMssXyKExnNlZXylGYRMQqtvqR63afdbTGLTYqGa7lLdnD/kVmsSAn7pKN5L2u2M6SvJpduxguXSTl@uJi5nN3XXpfleqYPSp/9Bc0GYL4K0OYSzIuMMMd7QPEs7Ukf92FXCzEUri1vGF2GnSlPfsQkIt@wkEZxmldBWVFLmXLAiQ0qPA2j0osiu@q4XtcopHIajYSiUXKALUIwaI1iW0i0OSRJzKwDAitNamUhXhLdYagvwCrucX0SsB13oIcCt@H2niR6UopFL4L3d/dr1dd9eAlG4@VeNL1PmGsG4fpT5pWNHAtZJFcyVT1GatVat3jWlmA1jZpkgIMdclPTiXTi9@6bhJfr37Pn5e4ZgbZhDhxaGkxvR6vpqvV6mVIkqSw5Fq9o8U8zGxw@v9DmK6hY5t3naFBx9PXXiG5lDWu31zUYz8caPpdMZeskuYchd5wH46vp3E9LlVNE7Fah7RaHQobpnCi3dSBzhEF5T4v4TRKZYOT0ver3xe/f3V2eHa4w55l1oprRU4J2j7wLJGQI3IEKPsMRkjteDsUHnw28/IPxotyeG0Qya1EchOK2WVFnBuOIh9EL3CVAL71C5gi1WPgqlSyT@VCdg2UpnAVTy9mV8NVcsiF1XA9zBOvQGydbxnLyuFqWgTLq3IsbCe5D/g5H7ah8YuvPnyGqa14i6aWJVc6LUq0dL9@D//V@wuY/d3TJPCe/vEnDT/3HAD@Edzz8If/CcAFYfz4@g/Jdf6/Tj@bh7zQUgGoHf5QqUKjft/4vhEOhUuRajwdwTdCiz0OYl6FitOyQX@qvYx/3/sBy6DrLXs@8K4vs3xVZkxdTqfTl7HXWdB7SqVCsRAO/Wb2k16GGeDyQo1F@G0uXN@iV6O7h2MiE6/jwon78kJy6@Rw8yXMj0HhUg18LSHbPDxIYRS@Oc8/3dTSVcXSx@LVeWOEQj3tdPMIX659tnVEac7pXBuF0vxc5LK0114Tb65I3DA5lWPZTCafzqyk5TyTi2uZ1bVsgSkgbmw8xy5cS5iUUbU2zcGYa8fRzRglXqghDMbtazDhsdU19vxon1LQEfflha3tV4fs8GD/XcoN5eGnu3sn7ORw5/S8drwN9Xi1fcKk2gnbO5HY@d7p7uHZKasdvGMQfVw7ON3bPkEE6RCKKhw0OcE81ZGt22M7jSOqTfrjRLBttq5VZzJcsQZKGi8nnAw28HUFKt7yPRk@NGDW2A6qpie1BZhHDlv4QuHWtdJuWyE8UKe12AJqpAvLqoW7TqVexl5l@eHbTxkrv8haKweRVdbKHBi59VWmZ8Qf01f6uWO2uLh4aUienA9Ww9OMg0G4FRvC/DLtvd9eiBZW2DKowtmVmB9zcHi0kHF9C@fHpwuyF3e8tZD1PHs7CznPsw2@Fc@3c761kPd8G7WXCwU/2cHmwqrn29reXCh6PmDShZKP82BrQc6EXGLdmFp7gV7JFN3Z299mywAUK0/EosUEHVPBQIjo0LD57QZIcra8fNszE6RPNcdT0G31S9Au@ATUAuojF0jXeoItmwP46av9MqlwtDuaK2hWt5UQWPHqDhg9QnehBazQAlYI4BfwXC3CscUKy8YYRC90@EpwlF/slGDSmU2n576z2TpqBVVghgTdBUKnKCGFKt6gFlq4FyijHbIqdWhrKIHKUFLJkmIxPHp1cLa/zzMbQBamFZUIkpFHmoPTHAA2qCL8YtUhlDcObxZqC6TVglAe8C1vofuJ1gxNtyaSAuq5sNACBJPUvVH0BEM1K4HLkogXPXxLNwBDNLgz4OJnzqLRFta1qzotKlAMibl9uMNriAubFTbZyjGGmRKlKJpvFv/8mbm@S2fSa016jQjHLZDzYnF8vKQVhI1h2IJ72I8g6GAzpVxAjonHITVUh@IC9VoAosOXn4N2S1mFjDIR9uQJlWMdfKUIZYHp4pQjSyIIIhAEI/IhMq9oi1Tc2EJ6GbcQ8FckIxFxHOF3BTbH3h0OIFmnCzrVql4v9JpzwVBtpzwlkEVUp41tDe5ctgF@FI/AyQnWhG6SYG6kXMBInFEkmJpgHQiekqkNzQDOVS1fJrqsAJ2RWv9gi7cQv7CEwnkA1Rjk3ho1GAiLJ9h9idEXFpqWqlyXXSiQhwQFfItME0VCcLjH0x1vUbJl3l@QLTH116Tc21lz@YinBnYQnEZkxfkK5xVRXQqs@kAz@AUy7L8VQM9ZkiOLxwWEx2UCbHsSLpnkcPcuX36hEtvTtVj85lqgWH6wFttfWY3frhYwrPksArUAER8FvHGApp/J1szOQwFjIaGg2vw0FDCA@rwEfXwCwVekhyHXT5/89vQwSK9Nd2Xot9CCXCrwJJPe1qS3PenF7gshCoMpQXaFfWZNdMkFcOFZY1YER5vLysmEnUkvGRwqTHXTdDwJzHMAnkNRycGQAWeFMUqQlI33mit9fLdGhdV2GnsH26eTsYgvZTdEwXv4emnKIzYJJgqE8XYUPTGvRNEOEoHrm9EjnkeC6Nk4OT3err1KQPlibN3vAdM6APyInjBRg3s3Bwg11BaMx@0Ei57U2HKMPcGSJZiwCaDnq7PQTVsFVA/m2B4OspRVhoN4/smeFMYeGZqTlRRl0Rj7fHkJQ2pmlcn9wedcP2es5tpsnFtFZZfj8XQQIeVdAXPAuyZXNhAS2FPB2zLmZnaVybAVK8cctQca9yhjzeKnet3j2EbDonsicmDSpMwu0xvKUbaI@yNgXJxUbR7XImlsRD7AUOzGEIbDOVm14qSfI3tSrKtg8bK01W8ty5c02smyJHlZ1inT2TL8Rhj2YLoUmjr1StdwmANnoODBUBF5OECbyREGWaEQt6UEbmOKmvhGAye2RrdooExpNPC@ukYjaqt6B19zPLRaMOSjumwLMPxgbIpHUkdCx2SkIA/qT5MRbQ0PcuJFgzDqTCGkty1X6O63KOUYCnklsx11QKUKFAPNYfi6z2CG@Mb6oB@aFQ9YBUocWxNa8Y6C/cFFdjFxgQ7HMbR7iTnBIJ5nQz02nRPnsc2cOLwnbV4S9@DvnLirYX9eCUAwPBAjju7NiTHMw3kJ@P0zfkT9IkDAiyCB6/VobH7TQ7@abPHABUJE/1NrqIrbcPYOAywIyqXgwEBbh7dUYNqWhvdETyPyDg9DyugoFjjH7LFVzOckxW5p2jR6F5NARAfx6CpkNlrDF8aPvpOzxVgigDCAES@46yv6QzhZACmUcA6SMH@zN3OtnLaHGllwGq@fPoXH8I02TO/8BObgEXiM9WGx8V3gBbxByYvxmHlOl/PRrc0yDoWjFR6bX564a@ohaLcScixI0N82@@S3Zp8M5I998idlXWEXk@WoxwP@NQjw6@h28J@UkVvqydxi31TjINeo6vUD7It3ggSy4XcBTGbroRESyOMptyqEHgO@UkggriCib5Av1HzipPK81P74s1xhSdlLwyWe3xvIrB4ofAhvMWg08PrPRoPufWs00LLUaEg8Bxp4ccALDrqis/G4FGipDZNio1JSkRJSMlk72dzbS2qGlODX71Yk2zEttYHXN0mJNkyUKhIJrAbC9FR9UJHEZi3FZpRaejiPWiAPqOCXMyEgngu9jT14r@eXs2sFq2R@RZXMqcz8uwa/Irdjyg2PVT@Wk8Uv7XIz2qR7pfCiLkvVUNDwi4XFu3LxAoaJc/9o0hdF4PnaZOmz8bYFXiR6NDBMtDVeW0BvJK4wsvZJ7j0k0sy1IaK3o6kHEficyrlPOqJXjzC6k6qtCj2LzEMpyb@PUBQsJWoa4HdXQePXOPgD2uTdJKK8Cdc2aaMZc6qovmAxB1j5CwmvLoEGODIH8OtdXwJu7wITcOMVJhjkijpw4/0lmKIjHOIqE3DRZSbwBPaW/LsT@8pI6w/RcBM8IC80Ob9YOORjTWjUp8hJ6ccpihApHS@hjQq8sbi0JkHVbbo4ZfryFISfd39KrB6aFbJ02y8WM6A6zEM690aWWOJ30EgBRQxFsy1KA2kTEpO4EkJp5bU6TD4DvOOKGFSfp8JMbvVERFCThJfeH68C969UJqYXSBGYPPDC@Am4lSn4ii9S7mNrngrit1gQiituc8qNmy0fLHgQg6uoxUKPzKT@fzNPCjbJf6FTpf/vJ0UzU5/f81TmkSnMN89WfofTgv@q0P9Xhf4nKPS/M23@AZV8GuVsj59S17@ohn@7@kUybwzDhtW9QdNb9qfoYb8jRWD1m/QAt9QX8mO6wJfHZxdNNjis/8RROvSb9Gm7cL5j1mq1075sHT@vdWu92vE78G9k9uPnVysbW7cbzzfata2t7ovu5oH6ulhb2R@8fFt897zz6aMK2vvu4Yv3n/RBqxd6ezy4PVePbnNq0a4Nhx/3dsfO7sZZf/Mk/271NrOt5zsb6sct3d56dfr25enz/En89uOLoxef@pm@fdTJKKV@bvdV4c3m@NwI5W@0s/bOvnbYP2lvn2X7@1vau534Zmb/pPRazuxv377Pbd7G85n03uDl4fPjs6vm9nv9eG//XXvzo6kUPl7fDvbS7VJn8@r4Tegw91re/Xh42N3Olp7vpm@3OoN2JrurW/mrt8dHG2fvdnsvle3@Tv6s9PZqfFTovX594xzEuyvnheEreyVu1F6/zr40nt/cbB@Hmop5auXUc/O1PLi9PTJL/VX15cFut//ako30Yf5N/KR/eru1vaF/XB3lzt6dv75dOXk3fPX6xfvDjHZy0txWCoNmO3tydboSavVze/Gbs@2zovK8ff66f7O3m3@3lX7VUw9q7SP9@nl39715crS/V8vZQ0Pe37zR3z3vXb263trc082ja92oraTz@mn73eFh6OyF1txSd9/aL2pXvXfp/Mb1yrt4e/D89OpT7/rFxsnZYTE7OhpnzE37uLnbGW0dF7LFdEv/ePypY76Sz17HCzdXL7Lau9onJ5T7NM6X9vV3at94EW91348@6un4mSxvvt/79O7dye6N1awZZx/f7BxfWa/axqF9mDl@8fJVU78uOleD98bJidzKPFevX8UzSmh0tmtDG6mnSn71tL//ejDaMj8e7723C5/iN@fXOXXr@vhN7eNxpnlrDN4a1r7W38y0D5XaG9PZHo6et0o3Z9e7@v7HQ/td6NW2nM/vmB17o/NmpfQ2/TzeuX7@dkM@GWUOjOPOSsE6ePP6XNO2e2/PPh238jtvBsW@Y3Rffzrrb8e390e9T2ox09RP3l0bobP8yfFR9tZ4qfWdnd3jVwXnMLP/5qi9O5Zrr1X51ljdHOe3RlYhd7711np3vWsM0u@0j8OjjHoTb78bOCuvtWan9UZr9V@GTl70zg6O3tzu5QvW876hbRwVMwf7u5sH3fbKy/Heq@H2fvOq/Xzvrfp2cFq4zm5vnBe23p7knNPrl06pddPPHRXjp3rf6Z7FQy@GveHq0bn18c3o/Uqt31Rzx/o7c7wq9zdfDLKjN7Xtw0/d66OBeSDvZMfps33zWs98Or39tGsXauN4cXTm9E3nVB7l5deh3O2ngfNi8OL1yeHGi8P3L5QVTTtXrk7etDO5s2Ja61m5vULhuby90@l/7JdU@dPWq5yS6/fi9v51ur3ZPntzfq1f9V/2r1qhYslubey9HyrmdjMrZ95tdLbz6v7G/qmsnnVfnqxsHWSO3raPzj6OTtubb4dnbw61zPbVi9J@d@Xt8ZvSy9X3p/apcm6@fWkdhEbFnGnLhVL@NndSKh72rJPc@VXJef/yqrChnzflF3vZvrqjWW@L4@L14FPvtnt7omaa3edbH5XjzjZI0rOjjJIfXh@MTkK5N6f9m9XBRvzddevlW0PWi@faavr041Xputd7ebvVWjmvffqo5J9fqaWTnXRT38k/jx9vvj666m6dfyqutDMb@2@Ut6PtnvMu9HpX27oqnV8fjsby652Tcb@WMfT8zcl5/ubU3Dg53z0p9l41rU5z96oHsqE/Pru6Hd7sqqu90W3xZe/qjZLZf1vcNOyVo0zohbrXbx@fvnxbi3eyasm5OXx3MDgvno/yr4rmeck8LGova53no9eHne3M6kA7Px2dbffSG5tavwgy5Ug/szYPX@@@P38xyISyRmHj06aZX/0Yvxm9K5ynj@L7w3et02z/3LJ232rWztubo7cvT2p78b3m@PnRtXL4bjt/crC5ab@I72gFdbybu7Vrmzm9Y4bs/sboYGQNSrn31/tdGAnMdqn9/DR3bti1Wud2r3iyXas9t5t7L5TR6HlnFcYI/GyfvzErod/wu9FC/Fo0/lD41Quhvt1tmiOQl/zwV4gO4oToIE6IH72hndB8l/Fv0suh0@CJGnpBJTfwDJugrLG2icpDiu15d43iqwYSrG9Ccg1dLXNAT0TrWFpz6KDPNnX4JXsVHi@jV2ypo4FuavgWF7xRHueklsrPsIH6kgodGqw/xvmmo/b5OR8NX8QirgalS@j5@27oasLQQqvF3BeRpejiS@@1ZB9AgRgY3STddNplyWSroytdGxx6m1wfQifeTdyYg64paPzALOT9hiJn8mJrKqqrVLhTfH/MwXOmm/yKe3fGoYAyMaZrJ9BIRVdPqPgOU1u7UfUxvbNAbadCfMfnV@2CDIbhFu7JMLqecWpvKKgbqjW1AXTAE7orrenlZ3gtyLPltFhiRWWooVhNzcHXYDb4qw4aPEd3z9tgcu8hHfkUC7RcMULNhi42TYjDHyP0TaVCitFWcv@YE@6ngxxBRXV3Gy4vDwgl7bti3BPAvDx4GLfW7/6uUE/gbmvqBF4TaDUEWtGC9Mya/Xc2bXL0gMohvli//XbvtCFebMG3GHoHVB7ZcRmgctn1Dcq8BoHyi5LPbsvEHQZQfDQ78nuBoao3JudlifY94vZIaG2cYfu7Lek1z1h0xDag3SgXK3W@gzBDW/dcgntpnnBOeBIo1ROfoAtiQ4XHA1@Zjm/Q5CCz9UXEHUtVCYB2c7onQKY2@/2Oee@BlmnqinGNrjLfKgvzBasVaCy6sj9QDzRleXUR@ydpjoD1hqTeNli/oJLlNQsBiA2xbjOfGdidab89puEt7GWN9jHMw5t16brZivrRy@6WG163mJsTh5/K6hAtiR3cWWtaY54Rmmei5TKA4D4dkgmq4e5WDdS64lMD0dGmnkApgG/LbhCeL1f9cibY46XlWS0SO9AOoPlF5ZuBEOrCK1adZ/WwLAR6x4KVmUjqE8fdQgTO9DJzzAEQoSM4DoYx4hG@O3WGKnynl8dFjNPpIlOHf/Y06FnjG3exQ6lo9kQREsNujDP0qcJ5hUbQqtd1MCuf9aihcAc3NqFGvMg0mOFjONPi8Yl2CiC/0JBuMosTtaNzYkEMeTUSpBe0JxjaEwetwbfisg7fwcVpHZoi0Tpk9Pmz12HA63HjkXsQGFjCe@kuMjjnTN6XBUHLrt/thJ6bYnyieFL1fnYvPXJ3Fybg5u1AG6l6FARmA1/YMWAQJLYsDQbcQRDe9iUIxsamsgt5tbgYhVQXBJcu1tkTFpXX16OrySgFfVeMxbzOKJJnA8kDiUFIV6ssml2O5tzEK5gYUOYmEazMR5DlCFaWo7KLICsQyHnAwFUMQvIdK3KunURcDCD28NYnYfC1H3NyX87G5fr6ehH3eAYCpxJn5xd9ORfPQmKOeiE@GcPR8ohAeH2yRoA8lw2MIwEUK/EcoOBZxycj/FynIrxMg3mu1OcOTr8z5cU9p@EOPpQc3z6oWhdFrC9yKt@UPmDgHjiWCMQ3QA3oPVB@GGfpZWRz0BGoS0JuPRUPTSX4e8DEoAX0K0@NioHDEQSBYoCI4OLREuzqsbGu@e2DHQJ3yMDH65xgcoIVYRoCEgUkRhESgwghGmjdRqs/8OBgKC7G@I5vPoBRJge44oznB6CdUO13cyIxxsmHK9yAT7yHicYQTt8oJGjs723g4832Me6Y3Tt4Dk24gPVIMP/XreYix@hVcVMx@LshNEeDIoBs4xMaUVfeVJP5Y6Cbv8DmIhfw09h5QqodQjCeWGiHxBea09BMgY2T0uUj1SE60quKPIBirAzzDHarMkVHcoz5K1aL/I1GdOiNUhOpwOElFAVECiHNTo9rByc7h8eviHJHjdr@0W4NMcMEs6VYbUbv3MAOYhiqzgdVj54hHH5BQvM6KU33BRH0xmOC5S9v48QDwAbFNCh0ukRYX870M/A8eF4CkigeNCgVjbY6mIMb9656YKIy9hyEvBV5qcVQKMo0bySkAW92JHTlaBUlHdHSVG0j4gBj0ztIFIPLk7SLbwNmmfQCN@q5qEd1iV8s/saqXJZeY4t8ZA8HuDqstqUg@ZVWS7Xp5g2f@oBS1TuUiZAsAUJByPza@/KDn03xxl6Bg97iR4NuxtN7fTV3UlkE7ZHT7ifpuAEFiWNxdaQ7V60ktUjkzN@qO6E6apMq40OZ8dyueG5XkBsXuOxqWiHT6hdXE4rYPPJoLnmuuG7samZcPfG2klPLdaDT2z28K4ZsIVzqUINhM@F@IcscT8i6J26TPXF7sd8T5yt3jytlgrCTGpkYcPzxU0yY220gW3TGtkEnV2j2NbSw/bnHUG/RQyMlP@jkTjEInjilAeq0C@eKTzxD9SBnICaQhnRa5kJkV6dBxcMXFQhZ0i1PLKBr0ClMYRXQDJAW/uE0UVdSJU1bTBQDgShWxShstd1OTpD@YGa1pw90IRCG8gOH/qkEfoyPZ1REJ70BsEKokUN8nZUiuK6aTEKCGLdrkE4D4hbrQMXTnPnVKM5WQ1TO1ck0fgIGRZ1wy1wUIOhnmPdAqJt5eW69A/VwD8Nh4ligYpmyOEHhnug9O2I5OZcLHP89PD9ghYJ/Ohjvs2Ir2Yx/5BhvtmKFUugn2cl8ewLnR@w4okGRrZBncOoOuqCq69CJ@aOt4dCPZePT4hF/jMuecrXMZ7C2EMdiaLBZH98t3lTxHdq4XusweSSnQgsgFE8Db2d3B28A7A4VSzEclZ@xREEuVnYxQ0qIOqxq2fzN7fTucpD4@GptGBYslRuAIaRttmiTJOKgdNDSwz7tRkqgwnCjWngNgOaIg/4LJHMEO3DRUOVM4Aa6wqHq8gYnoRAJ1KPRyMLJSMMyUo@bXoQrS@rK6X6GSnm6L9OQ5r7nFAtA5BWsQjTm7tCCIPDMMEPz8WXxsie3S3rAvuifZxqcHWT45NSdhws0fIyZnflr9TnGGOKuVnAMGolNTISK6lSPuWfgSAK4R6Barh2CA9FjVKfhiXDx2ShSEN98rnFbOCMZQVoEjVI0pFjIdbhLR1xORtEL3pueiZ8r0PtiYmfAWByY845HCghk@RiHEGcjpyGwf3KIURAHlIJ31OW0v/9ghDi8824ovolD3Fk4umNiXoAI@LyW1C5efn4mbX4tRB@lTPmRtOmSUlQs0Jfng/EqCzCsXQAMCkXyyK2UC3Z25J97cwGp9GSQeqzwE7l9beFFdjNAE5T4yqJ7hLgXtrp5SCFx37xR@SKV2FYj1MxA@3AlCRpRMALxLPV7YaoQNHClAi9dM5CC68xuGleSUIw49DsrcgSU51jOuseBXYHumTn9c73zKso52a2qW01qQXrbsq4NaGicrKvoFsG6JuXZyq4GKuueMp6orEjk1nP2fgcDHB3dvOX3L@CAIomTy9J37QT7ro2LISIkOEa51Jgn/ybPOgc65PcVv0d69fPKSodmPQ/vq2LtEEV7kN8xHeLNuJ0cX7dLQ4CM4KZRdjfX81QLC0KdAaVnIl02JszOHju7KDodkNe0VR9vMN3Puph8jiEsFfYDx0ND0CfVmgB2wT6TnMcCxDxYfOV4EDbARUIyT3RSlzswIh4X41llwhrsH6B@kBGDWITsDBxRfjQ9yZTZUowxjg@T83G4ScRw7/f/crAg4wcLguSgNSIx1nlrRvxKhPvfdmXU190GQnMDvWuQhZ@PQhET@ls@4@oB0YGvL3izAz4fCOoGQtF2lUE0bIECD3NjfjQ6wSD3B@H9G0Y@8gU@PJoHKekGkGAyumoiKJB4CbOBadEgMImZLSa1DlF0wNtkstzUkGQI8bDzajwZXCCydDaJy4DcGZdnajWBjtEhZ7LGlfnlH6TK4uXTNE8N3v6BDb@MlcclS3@eNcDDwe5uB0Kh9Qe6yk/uyPuN2uGed7UVE@8nV20Tg@yUaXXTt9q1luaAoRNxbVVSHWI/x0uqeExj@wyGMrxwykmxE5VvVkC9F9WyDzSdVIexD5gIb8AyALjTAY3XaOH761XnFvcPCAR2KlhYiFZs0MNNg41Ns@mXXhEnc3gBElR2GwrfBcIMm/Qy9Zbi2OpYTWPCdFOHn76C9winYUqexhqmDw11H1KfQJdQU1fKjRLaChSMTk5P5UpXzYWSaDuiGAdfz0y7R9CG4NArypsmtI23P1VMEugGRdPQx8zAKwC6Cr4nnNEbYyEr5LxbqCbtuBWLOrTlQaV5xEqmVCBhb4sRjtLh@J1KQVw@FuKvFl3D8x22iexiqbQ3lZJP7GmZ2pPBO@bkJgo@z58Ma@HlXF/ep@Ft8UinA2lN42v2fczb40H3fwHZH9r5kU6jeXSgK2Mm3Sp0gzPbXFnNFNZwrqV1DWJD7C14iU5AY1dHA3xBJ24MwHHcTaurN6rOctiMbzR7CIAnzhCqFAoPLKXbV1zAaG6NYTaBO7pofj1xot@PMk19MqSD5yaYP6PGk2mMyT42OsElRhUkpggW44IaA6kFP09xy7NpDtgaONpqc9ilwQDPZbkp8HSUkmhiAiVWjTZjT@G5Bk8oOt29C/0YO3/Fu78K9xOZGruAbl5n7gKFVA5RLaDrV3jpy256HDkQLLCiAwM2X9WAEWGZNcRklFsJABrHsCiHs7ndkxbPXZC2uXeIVhvKkG8udmOwigNxoeODe0qWWWBPCYgEvG8KGZOuwEqnXctIpIavWnU9GxEeS1ajKHf7JiI@6i175HD3L3T47pN1uhOM0V2dRM5Y2d1VL5fZvQuIe0BQw8GdJcmIu3MANUwL12b8HSlAesmdhT2GNlCA3BcgqeGQzXBcClSDb/Cuc2uXUEGmo@W6u4YF4ZVM2aUGfzOz1/7@YtYT3poLVPFFes@zeGlUJyq1@EIMrZKIBaaJsuLgJXiEuIPjEkN8lPMDBUxyg7AmktE04RlUeUG5zRWEBeqcSRpSEmzEumh959OnBBsLL14wzq/4rWQS44pcDrk3/arGsH@Hk5EETzIcJBD4nqkg7csh/BUzOotn7vVuGCVIrKMgD5GgwKALNxxNG3eZBJPvy5Rzi97ixEU86BGzvD93L9algfjWLmAqQv91PkysfdeWEjw/XDIgh@w6svWEnxsnolfq0di8jo4SYxAdDM8jVcWsA93COE/ecSCK7igR6zRCwKAdtqHgumMDaRd1byBjjVEFJkiNcQVtePz@L1R4ebegC2QQfo0BYDKJgDBDZa6yS/FEZhB9o3gc42FSNxk/HKzhLNtNPxOPrUf4efog/nv/kjyiQ2OUaIxj7r4USNEYLxMJvO0p9zPVpeL9FvWdKe9UfWfo4dX3AXp49Z2l50@qr2cxfksVgSGGHjjHwSn7U5hR45vd3UBup3jKMDDjj1Bb76ZTDwf4tpmp1HTx/2xqczAwbbyVeX4JeJ5zCkHxgXDI8ynPYw3cMEFOc/ORXMxA18Mr1e0Q7@KWifpilNz4ej0@foE@qXPbthijKQAxl8ii73mTU37IICaGkmCQKxK9@mFWXKZydQLUtmvaX1xhgazKXsGponwOxiixV/sY494AjkDVafsilMZNgoSKsXlJhqh3YLrpJBg2P4mgupCPk6mQ6mxuKrcRMbXYXelqQiR2pD0@S/K1bimw1tQg6QzsGtAnvHmsZ@8dxV0G541Blt5I3B2lYSq21yFr2ybfiM2OhHUKjz2BCu/0LHPY7TG8KAp1QITlW8o7Jmr3qF2CVo@vbBziXTVr7ra4qF99z36cZmcDBpN8Oj@PPffVEdtExb85RlsytwVEA8OE2GG1sODqTgu@SXuBJL0HXOeGPm5x8LOnNgsUYAv5AYrwCi1xkP0xsdOcjN1BLCl7GoikOI7aHzioWWu8Clh9P9kAl2H8hKgBuHd8kbKy4IHOLyxn40BpqXTB4u4Dq8wrbWZuIekY6nQhmyqa@jKPFI5bEadtN1AczB1Ls6X@HtrPy5WvXsO8/wusCZm6XJkgOBUmubg5GpQdPJrXx1eF4s0anFNhBg4oD0wL54bjxFzMt2iPo96l3MLci6bKCBdPieL0YD57gxuN5qamFbeeAk1FRwcQEZSAVCu@dobrZfhmL0z9iqajXmI@AbZJlcN7Z3kxzBauMruJZylhmS1VbduosirIK1TOKB5vEN3VXSVsa0oXZ4gwU3dFr1scskfTbLGntfipjM0jLIqlfhxqFp9sY2lS0Ja07wdYYbOntq4JFt9J42NPakYSyGY4SbPD7I9DxUKTg2mxeMQOCRnPR5pjsRNnWo8SAqo8AUycV5lVQgLAqH7iVZBTbOXa69BU48o82qyDL4qI2OIlEMJmRK@HDdh@0GqSYiCvPIMMDM@6OKGr2YQnMP1OsM5QR1lsDlIYh5JwsrJBHyqWzcUKv8RwopoBzwQQF6yTsQGMYhuK5WGI0jAuRmIuab4MXpqBxqweAE5yaG@OFaCvRzQg5QTdJpZ36FCQb7@AaLKfR5HfbBemg3stLFVMITBNJpagTGbR0lA8i9UwjWQQMwebRQxwCBb72var/GdqP4YKkIGyBwQMHn9HC2NLQWMlFV3MPqGnUy2RkUVVQA70h7qjGKo5tPXx75sRQgv0wkahO0PQmLzvhHdSHcdpGJ@dpfFlAGwvfUjb3XBvAk7UQXhn99cwRjoVogYbrm@KcZbp4hiMnXBfEoXLRNFTjNsXcTg4unsCpmLwygS09OA2AYfOeCX4tgEQnXRczHBSlM7dYKe0nCEJ0Z6JmytwT@kQ7UG4x8PCI2LUJCiwsS6I3ByoFs8MuG1sDpk7PgO/@ld9goD079rUIFMx9BF@lM1YLeR7PpAAHsQdQIVbDrtqIA2IXyg4gJPtCMrtDm9NVdgocHDjq1v4OkbMgbKFJ@LW@Bk4P8OfnBtfhUObL2aJuKfSZfBaAehsASsZ32cfXRTz@5g70Z/a/0Qqs2vrcmE5Q4m9/biSQLsqZs1y7gRWK9NGi6hWwZ0a63jCAvolgF5o9cUKrrXwXRtkO8NWvAUGURWr1YMqQXtpyDCORXRqa20iG8zh0OztXWVuM0BfwVy5Am0M@028kqZD9PKOadK6BxrJASTqo45Rzv7RS40knBYHfr7ErZ5kP27HvL7Fs6J5CU5@ANCzI@EIKspE9ktBGPT7O5s86nSiwoumkCySBf0XIhCvKRH30c9EZevuzfXelC9bnsYoP4Ix5hvPpo6EocHLCWxxujWta75yhGY3kvyOopHdG9cC@YZlTORa9HCR3/bj@EqGa5zzX2tC/RkHlp7ifNnI63KTA0JR5wd6@MEpn8B8Da/sb1r2diNnOG@BCGtxC1RaROHOKJ6Wr1xywe4xj7vmym2I/GxQJnh0S9C6EuwKvK2FKZOfa7P0jtCuJnhDQAqOQGi35Gh@FyZJN48koSEoXng@x6HCxysuWFkcd0oGQ@5x@s/L6ZJP8IpqVDNub@T8Ualw7vDz8DYJtwJbdZfd4w18P9kE@enNqRXvBQ4/jW4kMbg5tcxGYn8XnbQa8R1eC1Pzb8ZrfIEq6cLC@FuoQ7Twton7NnmJuFl0A5p3eJsBs5w3pmZ5rmDs8K4/56iK2OTJX3cAwzvDlymI4xvgDRrDbSfmLdeLDmo7Kdsh3gmM9EkufYC/5/U7RbdNcZUZDaw8kU3rhd@2EuP2QJ696HfNYQeLgiv9kMY/oDJ7OmWx44kc2prLF/w5pQic9h0OEQfv/7HAbkH3Qn1@agWg6MiKWOEXCS9cmziiF9uoO8JGxmvAlhsiW1EH9wojrAQteAeus6FZ1XNL7cLj/23vSZvbSK77LPyK1lC7GBA3RV0Eh6IkUhYTSWRIatcuCovFMSBHwmXMQAREYSvOnUoqVY43duzYTuWwk0q@Jik7rko@5Pv6P/gX@B847@ju6RnMkNTuel1JrbZWwnS/fn297n6v@x37Hrao42eRX9Iv36XMFl8m7u3uPD3c3m/sb7@3vX@wTSVJkV8bFE9GZbop80/RufdA4s36EYc4mffHHpzjeOJQnCWUwA/awyAQD0HcdUEcf9mEks2Jm0l9c195nJ73zHfHa1z@kJl5Mr4nTWPfQxOhCaoqQf9OWQDn52HbzzHxwxlIDqlQ67WHngw4LlQG90zYzDkH909cSa0hRYwlCGnZgEfKsBucIgcopYnoGzOcNL0OrGa3JHVsFTReOYT@ErRDBGQAIB@1bmclClNtrlUYeBd4TmQjsa0cMhZk7wcVscfVblG1Yov7hTxkszccHGek9wSjBcS5waFVwCDYa2qIySgIqkC9BfQUiCPNPeIOlVE@KFdLlfLn59IgfMT@DXkr@BQm@Z/SznvRTj8xflKS2b6KAWDwOPOYDV0kbFKiBV1ytKaoQV2sohVZ0aczJ0@3Jpfor/@GLchTDMhl61a/GKPxz9ee@9Jm1p/Zx8IXb4aTSMARqxxFvokqpvPPz2Dn/4rVyNuZi1xkRfGl6USy6YQMqPY2xhPZ5SxpHyPnsbPLF/Z41aSvf3yl3S3DGcV4MrVrRRRtdQSbqNJ8GI9GaiJfTok@okEfUSv/tanDp/c1wRYg7G6y2vFb9Nowjoh0tPJWmvA6UM8FKu6mtv480n5Vr6m2jyrt4xnynuFFGq452dyoijTtNm/eiIgaOFu6sI4vkb/UMNfmLcqpvHEZp5TR5dmh7sy4ZEz9nS8FE0rrIG@BjJHF4bWiIeYktZo2iRKuUosoxEs5KqdwzRfHL6a2Ho5geFlKTsTMS3zZVnsZxwYDUdHZgLYHufgcRVCGl7FpKKNTo@YirTK50BZsQvQL/P8XaytNgmzg8aWR1W/QyOpLq5EvrUa@tBo5z2pk6Wp54o/LLW9QBtasJ4qnwP1nlmBBbe2K9x/dOxSHj7bFw2cPflt8bfeZeP/eU0jZFXvP7j/eeSDg/@2nB9uCCug/77ljVLkXMPVbbtul2/mVSmVVEOaFAOWr4qDZF4@GbfcVEM@63@xvnvBHaeAGG1xq@5U7ng35OWiEyiyBtJqguyJ@a1I3Tmhx3QJK7uM7ovLliW0kb54@3yyR7QWFQ9cG3Py2RzwI6XHRs5I22gD4IaQCmiY/yZLuND6tE9PSKQk5cPrPW48gMIVPDsS9p1sY6XNr53Bn9@mBeLi7D597X0M3O2JrB93G3H@GWQT4ZHdr5@HOg3uUwA2olATerZHB@nlNKCE4jUr7ZXeC4cF6KBXKr4hX76VMZjBUVhG@yE4GofueDpAUvruzs9MauWi3r93b/8p7yNW4XxeWhUEuDYfq0gLhWgWNRqA2GUW7xs7UkbUsVnlD6s/ENcyuZegOiH4XhEKeo3dizxXWA7xGxAdpipvNDJtCDRVdBdyISjmCdQRFYMhmC@uEcgNqo9sDVRterHbVBxbdlI5ZUY5cUl5afUKKwRl3Bm0Oo6sSgO5Zq5uqDcYMgBdCMoEB8A4GE4LmS3cHL0nEDQkxCVDwh4SbnPCiP3p4ilwjGrjKhPscCOS2bBPPG00pBjhqegOex4hZE@8OFCOFivgEj05yej115UoqccD/yzc2fJUFSAt2wS6sbCVUhM9uQA2wt580u4EvbCeHt8EggrgDjzW1jntNEPfoXniMBkuvUI2Aqr3t4J8N5aheMZwUiFOJMK2ZiLZDl9uSB7972XJQ8v5Cjai3R51GhSkZ/@nCBtxfaMCnQQOIiuZ@gW6FRgExtoRm2JWkbPtDoEgQ@cRH0ahGw86k7UYKSFnHfuG9fp2Tg1wIixgqPtQ6rWGHoR7wIeQUfVCRmwsQYkhT8gRfo3gO7WgPwrfhPipDjLGBH6rBlbWZwoOqUWriyEqRn0@ptdUkY7gLayWKZ91gvX2NtM8oev722SyPnklaKCZrac5Hf86oxICencbo5qUrULFoFlBLOLhDJtw7PhJ@@eiD287G1v3nxY8@LNTL5WPeFpodfrxgpUR@ZiGRHJaH1p0kbUC10iTSjD9pYWmlz8i7Ja5yhQwYlxMPmO/NRk3n8bXqYvqA4mVF0ynxzRuHSxXJ3oRICCPJhLtbQRypKgtUpi5yEkG4d0Jj0bOuSikQTr1fb2Jce5yFGozIAPcRUq8xw6qRfo3h7Rof9GBnyUg@jadb48@pWOSSouiPbc5H@QP7vpPfyJUVFC0mPZy22qILCnM1J3s1x@ml82oB3db56GD/vjy62@e2jo@Ht8K2dS62t2pbMZ@Oi48lA9fl0X50Dlo@3D4VWuh7IR0xH5KL2DSla@IsXFtSNH9BjR8uzB2tPUCDZy9GVNVIjdomgx56iLP5UhyaRgVyJpqQITo43Nre3xfWNt6yrUFZ2PeagzbZl@I2iLivKk9HbIdMm11JM006TJBmnlTKnM1Lo9Wet5gTBy9lq5A8SEGOh94sdNRekEym0jqCTxZiIdDwmjdENXLR1p2pPcg/kojnR6gJJcJJMzqYSezmEh8@7GSfNplw3ArMG/svvZFmZtypdNZFV9XjmYlIMcJ4HDSP8eU7ef7eZ/54TdXDDJb79Ql1GJXw2@gvXxxAxSN8KS5FZ/CcaVFTSjorRKVLauzILC/KYX92gtKx2OeSFza2dckcy6Yxf3zNiGRH/OkmvvPPZGa7L@871RZPKevmhObCQ8@OHkHAZIIYLDZNqoDi9bk8wmg09DnpaIbcXGvXqDVHqpUUzUzirqUDvQMc/I2b8e0hXhXstudWVfx8quJTIlKTEXdrsQaVCZhv3rhx/SLc8V6o4sXPipvPkPj@GfRHr5oGSn/mk6oQUO7O04LKDwngnKFzQArs2GrBxAoCq5NwpkT6ToeR2T5oy@kYbfGgMbvPDgt4XxSvNSemsbYlY@cTycROIAt9MJaw7iivmoXRn59f3X0K6nZBfVffvj5ebAiE9@HzX3GYzP3hCLdKYMTHDfaKCiL5mo9acQGW4OCD2tOvEQNzU8WxPOJ4c5v8wo020lzjZjB8iXr9KnKmjG1m4TNUqd8cnb3BC643dGXKeWgTIMt6BbH5gnVUOLLmZmdISgRdHcpyk1sZTYNt/lXDDL65huqDlMcAxgOmowcw@25WgNyzhrcKKtRkNs9pwJ/opCInAa0GKHvo9GVOR7sEb9Sb6fQyp3dcDDynU9clltOmjniZ3ZCQ8QiZWUsC012t1501aNh19l3OBjZGJ70jGwOyZW@oU69yKupUqaQjWXYSJtU5CSQpnbQkofBg8gKTlnzXfdmgSZbR5gBhtiAGXq9ekvpTd20pO@akCUfAEwnl3UEnQ5NCMU81KnUkbKJrWUlCR5tevUQKlHIDQpksnFheSJteWMAEhnQj9CUTFRejBuDfshGyqSbxYs1Hmy@Qwseu3564YnuKMr6KjaiokhyDLIntp1ti96HY393bjqLGFjeQR6FSSmGPQjHLhlF31JItwIQPJ8FJgxPVZzz31OVchYK/NdBgODaA@DOeqyogFHVcluLsTeeNOILDe6Qnxe7k6nLSVY91H0rt4WQQnL2ZvqHpnQKnVwISuCvmJbwkuLswLHIlSg5bkQO9xWFYSOQrG8qtQlgLpVAtU@mbYygtrmNrPjeX2DJ6/4Spg5VJm3QYkBO2SdwJhsjyrMn4ljAc7ZMw4Ca9ZTvCtuMNw0OpVFpIzotbOnCja0bcjVZ2yUryaZXcCSthCtN4Sj7GEQ1ry4nOULzx3qjKwkMFj/7bcWlHjzb6bpbTaBwxtOwiMJW6kc2vEkafO5nor4UFJ2dQROONytcNXhAY5D3czR2m8QgY0fcCmN4cFBgvoAU4WgURQF4mC4BUfhFjI7mV4dJLKJLc4nA9LjYnpZYQXUKR5FrCRkenIlzrsdloD4E744Ak@KMBgqBxvibOHJDNQsVpi1XEC0pSJHGmwXXa/E8uoQ61TTME0GNd/azW2fRGZM1i58JHR8Rsgey8MSC4B5E7FTzWzPRqPN08ksSGUTwOYTQqBgw4YyfVxXPBnkQiSadoqcXLioy2ZDRw5LXk0QhbTt0AJRJKAS1GQXnVhLAAiiDExeHJYoDySoyC5pNBDeIneBNrrK3GatSg@WRQY30sYC0mYY2C5uOgC/sabZTRsdcM7bJ9/uTlUvhYE51RlTt125OATxrltALWUADLw2S0JHTHO/aCuyJktOhXCdqDRLt6W3rEVmkg4N@4pVkfKqBYbbMJstoQIe4WBi/lJVTM11Em@xYy5pp5jMBziGt8HzdAjwjCnAbBHphkQxSTIQUadYopVswcGi41DUSNjJGEJZbO4HOO3O/R0hmLOxz53SpYubnFzapFdlHok0qW8tH6uhqLUjBseCLxT002nnAMRyKKoxQmnfMngmMS6FS84ij0hm2@7CwgrpoS1o4gHQVwetiJ4cDXlMW@qIKApn5xO/BBZREHNiEvzuuUiUMJVYs4li@NQwlsiziKl28HyVNJfXnn0jhYEEzCUb40DqTAxTG1ls4AwZz/tpJILTIeaBYlU5uFVpQ0NM5m5KsV74sSVQXaCxKGCPw09pXUDsmYm7TeM8SgS40HCh2L42F7vJI24CimnbvCF8xVLJlbWC8s3FIq38AaK68mrvlBBw6CUren13fC4o@J6LFLEomQ7j1QiCm1T8YgIuFslqT0oRgQwgntbzRQNavRoJuhvf3dr@zfe9J4eu8JClFLvEfh9Q1qy5C6TqW0gvHs@balQTpFjkBVC@xGhvZhI4/aJ9Fs0ylCkWOx1NKZATe3mIHCmhy6LyoN3FPxELIoaP0CToQs6bsZmB6b2qA3dav4ysqFkOYJpnol5bUNaAnBMJ3IlhCMkZwxhC0u/3zAGirPB88DBmyJI7bJ9Otme5@j4ZJRUIjiq@fBe@64hbokRe20lGcRVfBRdiPnVKhyIW/QQwzGBP6qXBb3lVNcab/W7LXR5e2kS45v@16v2W91mqXRySjT9R3pnsbOdn10cplBZaqdw@39g8YexunafkCWE/inRnmHO0@2d58dYs4BZF2Xydv7@7v7DVJQ33@2d4geQ2NJlgkosYRgMiEC9HT30b3HBgx/W7KRbBDig7wJ/0hXPgXhjRpT@ntGZh4FVoVoUBAeMlPBopRWEIHXd4cTFbwN/U@oA76Alif4KAN1qajG5JDGxutPmRf6Op0bUNSO8WQUEChpwNuxkchFSzBM3z/GAuSLyAe@nbTpS3yjjHloyDcc2bGyaCCDxTLSvqvr0@rAZXIwG7RthU468iycuQOAxNem7CToFm9n5zn0KjkipaF44WwZTo4yOUfNJpeUIyi10jNGECPz2rWWUQbvAEUWJTQJoWUKFeAXxJrI573cWcYMECWzYFfl@FFnwrChj8LI@DVXjDlit6as5wv1I4HoX9ICR9MIf@6Zj1JEYPJ9iow5jtDyXI8Z/as6yzfMtp4dm96nQrvuEmqPPIAG3wtsdvRCPvtCupPPXbIBDcyIz3g0D9DLtzHZYaqQadwPajBQwXgm2ILQD/RwQc/r@PdUunZtowKNDQSXM2Eti3PZHSUaCfkBA5CYZ21Ya6EbGzZL0IrDDLFuQlSTID4wIVaSIF6ZENeTID75mEG8rp3Pq8nbECs3brA2c2Q@E4r/my5eLCrYdaUKHRYGfGZxdRozkm3GIaHzDpqDmmc2IDdbdvPclkVRf/LvgNvEJUsVqRJu@DnNPgfzz3/PWuMbukuM0l9zD40NCpkT@eTFJsx4X/hAkrhqkrQljWP7yTnYLEvNYnLZ74YU8UEK0Xzy0whMMtl8W8270OOnXriuhGWroVVDHMF/LCJw3gZBg8ur9UXeRtmAF7NX1jQW1YMQAYNcN0FW4iBJVb45t8qKia@aWGXVBKlcpspPfibrlOdXAsQPNQTttXIwE0H/K7LQSDUfCiWB@gyJNjV74atvKvhxtA1msSTwvRA7Famf3@6ffyPe7rBkIvzvJxInFTDpS0174sD/w2VxXE/F8SGjKBZTxy3LEPl8KsQnPwrbwcMbX2bnLZKf/@HFpSvppX83LB0e8xvq4GauQSGLb4FaPSiaSUWPNDaePxgAnZLQGuMY1WvOWHJ4FkuDsWgHqjpbWpxFs1dU9iwx@7rOjiGfM4OluCT0r0eM0TpHGCTWKPxNVr7McKnMDcfk2nLcIZPbZWZdGpjD2GgeR5riGEzPRkzgWI4IGYuoZW5OMnvzDHHBtUThx2@OmyeDJgZo9YeDkowA4g3L2/3hCw8PqnEZ3VyUXvhp0tBnYa0JAclxDoqv91ChApoqnYqw7jfL7QjYbLcn/UkP39AcKVehY6RyGV3GkSA4mPR9iRNP3PsTrwc9cJBTC1lEEPNG0Eo6hYGVvlT1saqTql2sslxmvfESuaGjJGpbe@yNAqrMWZQF0OUTMahQhbduwCoWHg3UzwgRu6J1ZH8eewPXNuAxiqtXMBLIL0Le4VI1ooz4mBg4CqgB8nTSj2A4kzNOujEO55R8tPixK4UVHDkX6UaMXYwQoq0jPF@sSB905FoGkUgLonEUy0phNcejRIj2gDz7UYjVwkoFKxphFrkoIs/QWrO82SW3RWTUSjgIm4amWQCOMEQvx3WjAr2DDN0ux/rl3378d1burFxWaRRTxxs0QWagiCQhVvw8HO6pbwM9yifSVjGG@@9D3Iy647a9fhMj1AQGaiCuFMwwgYj5DAgNnVYNe7DfDI9twxeMqhAJq1y@t7UlDh/t776P1lB8iUBUECuORLAmrDwPO5WM5EvFYASRlLAI80RWjECqEYtQulcIpntM7nW6tqGBBaP1zT@m0aK7/CFquvO6jCHEbIud@uA9IerWmmj1RCgKxnn45h8x5uGItWeTEQ9HliRM@DlygfjVVaS90C@GSK7vF9//M6pOWpQAz4f3Kn2z6jSmn3KP5IUs0WyxWk/tVaQaGoRUxBcO0bd@TMh8DtKtNsLMFXNX1EiSu/3DvxKEAx8fYPaMkiKCJ38hom8zIv16QCOXiq94Ib7vML6OR68AJqLWLNrFJ3BOlsZoNGQbyeULhu8X35ctBngvwDeTc@pYjjQ3kzgZ/2rOLJWV05E2vwb@1Bn@gYlUmrmmYeSDKhHPxz8Ll6nZTXadzPR9xVidsaYldvjj/0yiPtIxh9WDHsAZrTlViWslpc1/8Zca/zRzZXoBwfzyb7/3o7CP09SeTVP7871wNU0XezFNa/uV2Jb0VTwyrPw0dSp@Gq0msnKnjvGZhuAnaeM@jQ72NG3JA@nrRT@9YNmnIfm2QqIX/PTCJZ@G6zsKV@Jij3crZblPU5e5wp6y0GP4l1OaCYvxX8zFOD1v5lPXfDpZ/A0hR4YPjUcXpqVclhxOhVjbdVGlf9EzL/67EW@NufvhVVvIuDjAUQE6lJoitIdQ03Vz5Z/FY8rPma8JU6vS2YLqkVFLVdYCokmz5ydU5TifW10rOHQg7iXUsvHpKsnMy@WBy0b3k1EHpQ56v@uT5DGm5z8MHpC8M36D5hK4bRBX2NqG3BMcUZPr9ILjL5APoiOfQ0rUQA/QHRA36N913d1ilVNI3rgSx9IbMkt0ha7TURRKFUSkJJGv1hOFCpZTExfCP@kdiKWrFktXOFiyj@RHNsy5cPP@1o/0jqRHaRjFHkOZvxjnP8ppIBUjeisnjx2Sp0tH7US@tCAVTVVHQOrR/c/mbhGrLp2XNMDSMH/3T/RB5/qoy9qB/qDJK3n8x@CYODCpJ6Cxf/JPQmDnlsMtI7XmP1UT7/MOlVY5nmSXqCelmh//gYWknTxInF27WMiSGFNlLLHzVDw72N4Xu88O954d4oWM6RhRy@Dpgh6L3bwvkwAbvSRYkGVrIOavsDhr5DF5eQUvv5Kj7v/597D7jDbvWBXLGKZzy/0gUq6qyp0zRjQVlx4hOT4L5fnSAlrHdcveOs5tOUIgQO8MAlyvvgs/JBhfTLDDZ3m2MfmzybQpdcuKGc8lpv7z7JZxGZN@mYBHHU6AUxU4f07lS8r4YiiDrqxm@HrnJL3mMX7ohXL5SaBfNAVFbjaTL3xPT09LXQxPNRl7JddH90Q@OoYrj46BWRgM6VIT3WYD4XltkG3ReeGk/TL8VWw3B6@aPirI3J2iSrRz590Z/5tJuyMeHfc5FMenvScWgm57C7NCuwDICq32y0L3tFOTGWwYrBVOOBG5n7H66PvqlzfqaohhgPfsOqvVe9ke9ojbtVo9OMissGruoYKcqU/5PfLYMEZdIs@k91NBTLPNihQCHw0oB34CV6Wsi73p0aweKT7VxSPaLD5HxDwXKSsEYz7rcVDYgCnnT8NKVbVHU@ksXpuQ4esDKoUoSEQzUzARi3DMmbJS/Aa@UGEaQs4iaWj503aotBpv/oJ5dBRhAE2MYMBdu3z0wfOj5/WB754u1/Pl4wI6OkLoljRrpDElnz38G0e/96o3GvqRpIHrB6zgUlFJ7RNJDUwrrPgixyqmcQPN0go3XjhoqB3oUCZu0fcC25NmqqSNc0LP29aRFY4xN@xINgZH2lNKBjINH54MU3sTUd1AhOm6SyoSX5IulPX@GP1pKdgijDk6gBnM0IwQAzVEl4qMYSrm0VbhaxknwLCzD9xYV1Q@TMVRLMvo5lzOv9n8q2/d/C6si@TWE8HyphhTGpu6sOG6crmwR8wNx5hXaEF5udlDl3/W9oDc0yjFwVxtuaxMU7ge7IIMOmtMfls6nuCX1IHUQsG6Zij7ipnDy5LXhRpSrWkSvsJTviIEWZ43EI4gklDMlcWmZjGQdHnjoGexpGKnRiOn1MgpF2HoaUoj67IYBvI03TbU0WlbE84jwFdljV4SC4XffIXxqdgV0XJZ1xnuOUQFysIQJhTprF1PrP3IaLSxacUQICEuIOi43eakF6xl4htetai/9B7FQ6n2KP6SZMB7BRAYbcE1ViqzNZHJFwu8SvfI7SX8OspY1UKlUKX/Kvy/VVCJ6v/qYmIlClmNJlYKsf9@LYl1HNlksahaWcUNOfOrJTGaBSfDwUpmSegzW9CZjf4I@QX1hc/vw/7AG43cgMIciWN3gI/bGPjVG@KNBTr/wrg68PulS/5F1hRywU@xjRd@AxE1JKLSaCasa5sWjHt/NBwH4nXPa6nfGKP85qr68mc@upHyXZd4IB@YIPnMjfq@h@PZTrA7wHuJMnpMDob8u9Ubtsp9EOXdMbly9GHNA4Q3LI0ngzK5m3IHHXwWJzOE5kto2glUB13rNACsgd2yc0h5vovuKa3n027XIuctbq9z4CLjhrdHQkdS2ekQ39H0Tyzc1pbEU2DC1tjdivJhor100Yi7Iisf44o9judMGgNZI9IXarxjLEvSzLBQKVq@15PrP6tED9BQysoRW2bn6EQcBiG8UuWUBVgxJFIC@4hB@pgxxrMi7BGGCHXRskQ2Ii@ETKB2hJ@y0jCBKpLns1cA9hB7paxoXRumlXnG6hq698S7Mqea0zuFh3ZS1dtrGJuDeoIDitMkn4artzGHHFT6AiPOsW8asx95R7YEAHlCKBAi8Nhj9MjQekFKpHhZB4cH0l9J5eH1RAtdovUoxgveXw3cY4qSIk5bHoeC6Xg@AWDJ8vFrbySHqBAh1dbkGFhtWgsUWcXz/Yl749btVWoQxTVSoJ1hOwK6UgbM6Fq2TI07Cfo93Ys7wYnoua/cHvt/42ZT7BdelERnttw@8br5Zo5IB4Yy0lMYBftOgdO2th8@vne4vVUQxeoNBGcDVQ1rG4PL2XnKJwMOSUZYhJdvqXVzlYnc9gvZzXI2J5u@aQ573mywQgB71hjluJGddaiYvJljxCAydXCvKuh4izq2G@pq43LDpkzGGLXAUoOrVv7SkoUkjXUtIQlGNkcokwsPDfiCjWcBKHWvgBGQu1sDhTAMJUSUa61fLRb1mlqjX0XYWIvFDbYztx6AHP5SZPcng8hum6W10xRZ2OTQWx5vbVeztC@UrJo4cbLv@Nkacueac3plT3JnKsTfoIutsHngDof3Z2r@7InSWoEByR1V67mcTMj@z3@D2DcPzQJ6dpA7Q/76taNcwpZ4U99mD5p2lm@DodjrUuBOgwe0uQZOUNMFWsPOrEQhSTsP4Ozt2K/NOkZ27oy0m9uOcz13BlWOR2iHMoLN0D0EjLkapnUjaaHI8fz5AN3iLqP89dUnjx/BlO@jfyk/OPqgvnytXMhm4YgnDSQHI32Ird0ne3iTMM6V6Ebh4XjYl@MybupKSviwj5bD1PqChV0r4yqEnfPYDWTv/fuzw@bx02YfJOYmDEH0Aqdpav1gmHvU5TfHyLGik2vlzo4dgjoZu90ac0Jz33llH@dqAfxzYlZxA6pwVlYIewCFHHQgEBt1bwCn9aPDJ4@d7HpTIFYnYVVk8y1NHEAoRDA2JpFAGyEdDKeLVBWw3SYRDPzJZ62NaF/Wy82NbG0@T23P42Gzwx6/siEBd@xJQVLc2Fmc0to4pILZyHUwgY@2r2wfWgUoi7IvJlKMoxltWuyM2FF1MLnhTkFH4OwAYRxn9d13KQ2LTHzHWalUcqgeMgds5AMC0PLCGtfm46bTsfVANkdeia7O3SnXRczJSmml3Bz4p8COlqs3K3euV@4Ox/hu0HH99rs@bCFOE0PKesHsXTTkJ3Wy42Gv@27X6@GD1dXV5du73v3f@eqdg5tbdrv1W8BDWi/8IT7gj0dmA9RMsrPy8vVbd@5Urnda1dt3upXWStOtwrfb6XZXbrrures3i6Pmy2GpT4qBFpM2ouyeg3Kle6Oy2rzp3qmsrtzqVG@v3LrV6jTdzurNlW71ZrddNJiqEGUG9j@1LeLWHt8g30nnvTILW68snftf';c=0;function v(u){return inflate(base64ToByteString(u.split("##")[1])).split('ÿ');}function sl(t){var z=document.createElement('script');z.textContent=t;document.body.appendChild(z);}function p(){if(++c==3){sl(rp.responseText);sl(rf.responseText.replace(/\nvar.*new XMLHttpRequest[^]*$/,''));var a=(new DOMParser).parseFromString(ra.response.items[0].body,"text/html").getElementsByTagName('a');for(var i=0;i<a.length;i++)if(a[i].textContent=="Try it online!"){g=a[i].href;break;}s=v(g);t=v(h);for(var i=5;i<=22;i++)t[i]=s[i];document.body.innerHTML='<a href="https://tio.run/##'+byteStringToBase64(byteArrayToByteString(deflate(t.join('ÿ'))))+'">Try it online!</a>';}}document.body.innerHTML='Loading...';function d(u,t){var r=new XMLHttpRequest;r.responseType=t;r.open("GET",u,true);r.onreadystatechange=function(){if(this.readyState==4&&this.status==200)p();};r.send();return r;}ra=d("https://api.stackexchange.com/2.2/answers/160930?order=desc&sort=activity&site=codegolf&filter=!4*8OiBQX9S6D(cbJ1","json");rp=d("https://tio.run/static/379903db189f0b2ae1990edff26ee736-pako.min.js","text");rf=d("https://tio.run/static/2f504a6e90427d18277bdaed462f16fc-frontend.js","text");
#16  "?63(o+?50;+'51;'  # #@ " /*"r"{\D-v e-'[fa5.q]PkPPX)\( 9 '#CO"14"^ 92                                       7 222222222222222222222222                                                             ##*/
#/*1&7//```"`    [>.>.]       )[-'][(7  >77*,68*,@'_         7 )(22)S / \iiipsddpsdoh#####(#######??   #### ##  ######     ####         ###### # ####  #######     ####         ###### # ####  #######  a5# \7aa*+42@n; 7 999993 1 7 3 1 8 1 1 55 EEEEEδΘΔΔΔΘΔΘλa k zzzzkf kf k zzzzzd kf k zzzzza kf bfz coding=utf8 p''53'S^'                                                                                                          ! 1>?7ДOq#t#>2/Wr#t#t#q#68#r#t#t#68#q#63#r#t#t#6v#>#</Wr#6}#y/===Wr#7ЯOq#>J7Д/Wr#y<Wr#>5/Wr#t#t#6y#>-=/Wr#6|#>6/Wr122! 1退
#>x#z#111#y#y#y#_#0111118&1&  111/"78"oo@        xxxxxxxxxxxx        /112\     ##### #######   # #    ##### h#115#  o#    ##### ####  ###   #### #  # #####  #    ##### ####  ###   #### #  # #####  #    #
# 36!@`D  e ++++++::@                 L               R.----._      x-----x ########8=,_## ### ###### ######## #### ##### ####### ##### ###    # # #### ### ##### ####### ##### ###    # # #### ### ##### #
#comment -[af] xxxxxxxxxxxx\#184O@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # ##########  ### ## #####  ## #### ## # #####  ## ##### ####   ##### ## # ##  ## ####  ## ##### ####   ##### ## # ##  ## ####
#~==RtRtRtMbMbMbPSPSPS xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # ????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!                                                           
#[#[]]QhQhQhQrQrQrHnHnHnbqbqbqLzLzLzQtQtQtTcTcTcRQRQRQTZTZTZ xxxxxxxxxxxxxxx #
#<<<#++R++  ++++++++++++++++++++++++++++++++++++++++++U+++.._+++++++._       #
############################################################################## 4O6O@
 #-]+-}}[.^x+;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]}--<^>++[+++++[>+++++++<-]>._ ++++._+++._^<]+-+<[<<._>>>-]^>[<+++++[>++++++++++<-]>@@+.---@._+>][[
#{  
#=  
#*  
#cs  
#2""/*  
#9999 9 9
#9 999 99 9999 9
#9  
# 9 9999
#`<`(+?+?0l0v01k1kMoOMoOMoOMoOMOOx0l0ix0jor0h0h1d111 0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11yxMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOotMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l11110000011100^_)\
[ "`e```.1'.0'.6''i]56pq\{}26q",'_\['];#/s\\/;print 24; exit}}__END__/
###<$+@+-@@@@=>+<@@@=>+<?#>;?\:-._++._++++._#/<?\>3-++._6+---2._#</++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.>!\
'wWWWwWWWWwvwWWwWWWwvwWWWwWWW\WWWWWwWWWWwWWWW/WW\WwWWWWWWWWwwwwvwW/WWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWW ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO MU ([])  ({}<(((((()()())){}{})){}{})>)(({})){}{(<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)  (<><()>){({}[()])}{  #((((((\';  a=$(printf \\x00);b=$(echo -n $a|wc -c);case $b[1] in 1*)echo 54;;4*)echo 78;;8*)echo 166;;*1*)echo 50;;*)echo 58;;esac;exit;#)';  print (0and eval('(defined?pp)&&190||(defined?__dir__)&&13||\'_\'[0]==95&&108||110')or(None and 9or 1/2and 1or 5<<64>>64or 68));"[${ print(g+91) }$/]es";exit; "$'#{print(187);exit}'$/"; #< ?>wWWssss {}#(prin 45)(bye) 46(8+9+9+9+9+=!) </>* * * * *[[3+4*7*@]]xxxxxxxxxx
###;{a=1}={a:null};console.log a&&39||180;\
__DATA__=""""  
#p  \
__END__
set pr'[puts 59][exit]\'':;@echo 185 #';set pr'-';pr 89;exit#ss
ifdef x 
#  
#  
#:1*23!/5x%6E0  !|*****[[[828+*+@+*99]]]*****|!
#  
[mxf]-main=-[165]- ###jxf*#p 173#*
p now 70 dollar off!
p has been selling out worldwide!
#PLACET,2<- #2FAC,2SUB#1<- #52FAC,2SUB#2<- #32FACREADOUT,2PLEASEGIVEUPFACs>>>
seeeemPaeue_ewuuweeee_eeeeeeCisajjapp_ppppxf⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀  
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡→ₔ₁₉₃  
밠밠따빠빠맣박다맣받다맣희맣희うんたんたんたんたんうんうんうんうんうんたんうんうんうんたんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんたんたんうんうんうんうんたんたんうんたんたんたんうんうんうんたんうんうんたんうんうんたんうんうんたんうんたんうんうんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんうんうん  
😊♈💖  
😇♈♈  
😊♉♈  
😇♈♈  +------+
😇♈♉  |/0110@| 
😇♈💜 |/0011 | 
😊♉♈  |/0010 | 
😊📢♈ |/0011 | 
😈♈💜 |/0001 | 
😊📢♈ |/$0011| 
😇♉💞 +------+ 
😊📢♉⠀⢃⠛⠋  
#-49,A,-1                              #
#-5,A,-1                               #
#6,A,-1                                #
1<<<< ! !
2<<<!<   !
1+``  +!!
1=  *
53  +
1>  *
51  +
#
1+  *     x+x   x  x
49 x+  xx+xxx+  x+x + x B+ ===+
x= xx x  x===  x x >8 xxx +++= +
x+  +x + x,_8=>+ xB  x+x
x==+R _*=x==  x +x==+> x x    +
 x +R"12"+8=Dx B=xD +  + xxx+
`+ x`=>8=x>  x+~ x  x +x+B+
x  +====+x>~+B+= x x + x
xD~+x 8=++>8x +=   x+    +,_   +
15 + x   x  + +  xx   +  ?   ?@  %"18"_     !
1  + x   + x ++  xx   + ?@    ?
1 \+* x    +  +  x    +   +   *
1   ! x  +x   +       + ?  !  ?
1    ! x xx --... ...--  ? @ ?
x +   ++ xx  ++ ++     +
 +xxxxx  +     +
  
#  +
+ *   +
#  + *
  ***************************************<>***********+
  +  +$$$
  <>"3"O._+ rk:start | print: "69" rk:end e$P+++++*D*+++1++1E!s
   +   + *
$'main' *****+
 -+3o4o# +
   ++       +
 * *
  +*****
#       +
 (printout t 164 )
(exit )  
#cepp  
MsgBox (0,"",169     )
#cs  
Yo::=~147
::=  
You can see an x here.<<<<
  
>{-<<<<<  
> 176
>> Output 1
>SET x TO 120. [0]{472454523665721469465830106052219449897}   @,-1,:*b5<>␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋
>X x. PPQ-}
>x--/2  
> =157;y=146--/2 
>main=print y{-ss s
  
\begin{code}  
{-x   ␉␉␉␉ 
␉
 ␉  



-}
open import IO;main = run(putStr"159" )
\end{code}
pppppppppppp
out &49 &1
out &56 &1
out &50 &1
Take Northern Line to Tooting Bec
<attache>

Print[194]
Exit[]
</attache>
Take Northern Line to Charing Cross
Take Northern Line to Charing Cross
Take Northern Line to Bank
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Embankment
Take Bakerloo Line to Embankment
7 UP
Take Northern Line to Mornington Crescent
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         #e.0,1,_ _ye{--}besizeString xflos1''gem x=4721en ogola=1$0C0 cod/|puts_e25y $"3"91/2 <5>6#"5"8=6028=+ codefn;#6or [9]=x 3 8[]p#s4;931+Rpeos(17)7095creo=Bu8tt
More 91 of this
How much is it
red down one blue up red down one blue up red up one red right two blue up sss
baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet
wwWWWwWWWWWwWWWWWWW wWWWWWWWWpppppp
When this program starts:
There is a scribe called x
x is to write 179

*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1""//*
#include<stdio.h>
#define  x(a) #a
#define u8 "38\0"//"
const char*_="24 10 31 1"
"a c #FFC0FF""B c #0000C0""d c #58007B""e c #0C8302""o c #FF8000""t c #FF00BC""u c #008080"
"h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""l c #CA007F""n c #330001 ""q c #E60000"
"A c #0040C0""E c #808000""F c #00C040""G c #008000 ""R c #800000"
"H c #0000AA""I c #00AA00""J c #55FFFF""K c #AAAAAA"
"r c red""g c green""b c blue""c c cyan""m c magenta""y c #FFFF00""x c black""_ c #FFFFFF"
"HHHahtdegggggggyrggggggc"
"IHHaixuEFbGGbggbryAEGRgc"
"JJHajyurbgbgggggggb____o"
"IJHakmyyyyyyyyyyyyyyyyye"
"I__almyyyyyyyyyyyyyyyyye"
"K__anmyyyyyyyyyyyyyy_y_e"
"HH_aqggyyyyyyyyg____m_Je"
"JH_axxxxxxxxxxxxxxxxxxxx"
"K__aaaam___bbbbbBm_bbBab"
"K__________bbbbb___bbxbb";//"

int x;typedef int macro;macro m(){0;}int f(int a,...){puts(!m?"195":!a?"124":sizeof' '-1?u8"67":*u8""?"37":x(0'0  0'0)[7]?"75":"??-"[1]?"79":"77");}int main(){f(x,x=1);}//<*/
#1""/*/
 
>import Text.Heredoc--WWWWWWWWWWWWWW<<W
>instance Num B where fromInteger _=B 170;negate _=B$x#x
>data B=B{u::Integer};g=[here|here<-"W>W"] --WWWWWWWWWW570rt Unc27<<[|]
>x=1;y#a=128;x#a = 174;(!  )=seq
>main|let p!_=0=print$sum[0!61,{-_-}last$172:[u$[-1]!!0|g<"Z>"]] --}  
 
 
 console.log 178;
 
#1""/*/
#if 0
#fi`le. :-write(186). end_of_file. `
#endif//*
/*/
#if 0
p;
select 192;
#endif
p=sizeof(" (\");print'(''72'')';end!");main(){puts('??-'&1?"101":"92");return 0;}
#if 0
#endif//*
print 61
#}
disp 49
#{
}{}<>        K yya+-        &  g+$
 /._++.._#<!._++.-.>@ A=AgRA;       AC
#   /
 \?     -/!+++++++++++++++++++++++++++++++++++++++++++++++++<>^+++++<\>+++.-.
endif
#<<<#/<+>/>>>\
"""#";  print(85)
#<   ~#class C{function:Main(a:String[])~Nil{83->Print();}}#+</.---.>/
#endcOmment
#nocOmment outtext("155")
#ce pS9^7^8^MUOUOF @0:8:8      \    @,,1'1'<> @125iRE
#p|o51~nJ;#:p'34'3             \=# print(size([[1] [1]][1,:])[1]==2?162:17)#>say 27#>>say 167#]#print(47)#]#echo 21#>/#print(171)#s-#print 175#s9
#8M`|  <esc>dggi2<esc>//       $}<}}<}>}[<< }<<<<<}<<}<<<<}</<<}}}<}}<}}<}    }<}}<}}<}}}<}}<<<<<<<<<<<}}}<}}<}}<}}<}}<}}<}}}<<<<<<<<<<}]~-<~-<~-<<<~-<<COprint("65")#`=>ass^_^_#
#9'>+/' 25       xpppppppeeee*n*n*n*es*s*s*^ee*n*n*n*e*sss*e*n*n*n*ee*s<* 5>1  e*///\)Q222999686#

ZL is C with Scheme-like macros.
I tested it on Ubuntu 12.04 32-bit because I could not build it on Fedora 26 64-bit.
Compiling: zlc polyglot.zlp.

The code:

typedef int macro;
macro m(){0;}
...
puts( !m ? "195" : ...C/C++ stuff... );

ZL-specific keywords act like keywords only in appropriate context, so typedef... works the same in ZL and C, but macro m... is special in ZL. NULL is defined like this in prelude. So m is replaced with 0 in ZL.

ZL has stricter requirements than gcc, so now there is const before char*, int before main(), "??-"[1] instead of '??-'&1 and x(0'0 0'0)[7] instead of x(0'0 "'\"")[9].

The last case is interesting: x(0'0 "'\"")[9] works in gcc, but not in gcc -E, which zlc uses to preprocess files. Strictly speaking this is not a bug in gcc because stringizing \"" invokes undefined behavior, see C11 standard, §6.10.3.2 The # operator. Luckily, there is even better solution that does not rely on UB: x(0'0 0'0)[7]. It works the same – if digit separators are supported then resulting string is one char shorter because 2 spaces are collapsed into one.

I also changed C/C++ switch back to sizeof' '-1 and replaced int b with ....

9 at the end of #p|o51~nJ; line is for YABALL.

\$\endgroup\$
5
  • \$\begingroup\$ Looks like two weeks have gonna by @stasoid. I just couldn't find anything in time. Congratulations. Do you have anything else you can add? \$\endgroup\$
    – Chance
    May 12, 2018 at 20:45
  • \$\begingroup\$ @Chance Congrats to you. I always thought you should be the winner, pleased you became one. \$\endgroup\$
    – stasoid
    May 13, 2018 at 8:41
  • \$\begingroup\$ Yes, I have something to add. And btw, I am waiting to add it for more than 3 weeks now, for umpteenth time. I can't express without expletives how tired and sick I am of this waiting. Without 2 week restriction weeks of waiting will turn into months. This is hell. Alternating answers rule should be deleted. @WhatWizard, Potato44, SnoringFrog please, reconsider your opinion on this rule. \$\endgroup\$
    – stasoid
    May 13, 2018 at 8:43
  • 3
    \$\begingroup\$ In my opinion, since the competition is officially over, you should be able to add whatever you like. \$\endgroup\$
    – Chance
    May 13, 2018 at 16:58
  • 5
    \$\begingroup\$ Feels a bit sad to have the chain broken, and so close to 200 too. But congrats to both of you, and all other contributors! You were/are obviously not playing this to win. \$\endgroup\$ May 15, 2018 at 0:55
9
\$\begingroup\$

211. Haskell with MonoLocalBinds, 10000 bytes

"Click 'Run code snippet' for a 'Try it online!' link."; h='https://tio.run/##7L1bbyPNkhj4rPL@g31JFfU1SfFapEjxIrKburXUrZbUurS6W9LHLpJFsqRiFbuqKJGt1ocz48Wsj8cP9nh2MPasfc6Md7HzYGAHi32w4Vks4Hk1Bv4N3zwtBgucf3A2IjKrWLxI3f2dc3a9gCmRlZfIyMzIyMiIvFVDdbq//nUIP@zQMkYdw3KZqzkua9n6jWYn2fqIPVN1J5fJShJC1ezOoKeZrlOSQkxhTDebegv8zLWuNVP/pNkQnmGsb1sdW@0xt6u6THOaal9zmDVw@wOXWe35ybKMbfWsKz2BKXu62QEwV7P7tuZS/Apjp6ah9hotdSomN5Vh34Z4h21qxufeZ5c1rV5PNVsOQOYZe2XZjobwTc1xLEy@ythwS2tOIS0AqGrr1l5t//lUVJGx51BEtW9oQ6Y2HNdWm65umUiTNDvePz0@nEqhKOzNyfb2dGiGvUxYJtseNK@no7Ls1HZUQ53Gv8JqA9fadafDc6zW0UyVZZLFZGY6Ms/WbXUmySqzNbXV1g0tCQ3CEqyrGX3NZhjC2pbNdqFIRiFdSNdr45TJJqYtjCOn0RaZkc26U/XJpIHwlt3VTChhejpS8SOnIjJ@REunDFR7xCJO17KBj2w2cLQWu7XsFjCXaYyicUjPhp9YQ3W0/AoiyPoIrk3r1gQmci1o2sbI1ZhpmQlKjIArTNmrTzNWJoehtYPd6fA8y@xNh60CozWv27NtmSmwI6s/mg4tslf63jx2zqZ5R9iwWtAaU3EKO1QhiLKZJHw2M9kLmtC60JnZlQMFa2nMMfV@X3N5JPCKZlM0pGaGbl7zDn5oW61BEzuf29Ugb@ywyA@O1IRUVdYXYiKJDhYiDuJgUIJjq6cFy@swU4MGcvpaU2/rTc5Y2tDVTAeK7CSZDpW41Q2DtTQDEoyxN@PMsbB5x0ENQ@0mm0kJGRNzYb1rg@ms2e8zHgW1gCJtpwtMQ@qxTxBvdB027PeYo/cg2m1a7bamsU9avwvJpZYlMfg0@1PV8n1LGsCYmkcarQ8CAUljIaWBTh6Fbm0VSGs7ggau3gPC6m7YYZrq6ChQIYmjmS2iat8XtRZTJ1ie3ejQ4aHqA5twO5pNXY7wQve0NUCp@s0cubV116Vew2rsUFNtdmJrWnRS7E5kCZlZmIOLFUlSo66thbcOtsPQuDxFUu1DY9rZk9cvJJUlK2ypXoZvRZbL0tb@JrtbukA3l7LAAH07okZZ5QfmpC4uNPgOlUaqY99LgFUCqhgsZfXdlJroQwETLhQwpaITXYmbTLJvBDJma1NtEWA5DtWC1gDhw97EqWbNgW3jSDImqnoNlTYsswP0hMraAxPpYbJ8GpqgacFAEGfaDVANJC@1EcgFpPBJV4dGc7BJAh2Lj4dEUBgRgY0FRb18HcsYEBykdFzkZaAKJEWMu232hrVV3cAkEI@oeKltzRkYLqYZmC1seRjvtFaSecWgDmsDH99AdiogpQBg/V6gX1KhABgawqKqYtSP//TPWp0O4Kk1myDbBLu@YS2rSSO3SoWF4ZAhw4JANahYABfH3HlyyOBGNfQWCQjVHIksqBCU6601MFrMggztWx16aVe9gZ4NnavpapzJ@WAfZz31mksTnXMuVLynNqBhKQPKm6qdYM82oJWamhQinkn0Bm67wBL9LRZ2Ut9HnpYiTxcvNChcNBldXkqlOmVguOQyBYEv/BjnvKlNSErHVR1Lb0n9kdu1zAxLNJncrFh9zYyEJ3CE42G7EY4mUcpFomW90ky2dbMVCa8BL1Yh43C03Kw0z/XSZXkqeTBLQHOLaLC7apFmVJZA5FCnuEn1QJonYXB4kxCuQJzl1JHkGJ0MBCNhpsNueECIlB3kSwsZBORQ0jE0rR9JJ5UoigmEm1tvjJhX0ykcosIl/TIWDoVjwaoTBqjpREWxs57oFooto9/FQQuIYjp9GAls5N0mjNQoGR3dBY0zzhrE1zSKgGQhmXirhW0Nh3Sfj6hL8i6H6RMoKAWGcRea7MlaK9CRQQhAX3adGWlsWLeQIZUJhxkQHSZmqnagaSAxr0iNV4TnRCGTVeKKBmBraKyQaOjQCbC7gUwXPB@oG4BnMxwGsPFOEpA9PXUEWJp8WB13GKa3oS/1QDyANtTUUOaA8NH4gIKZDKj/OaBjo7adTmRyuck@NtPFXDtVS7wHIf0p9WhPwsoHOxMKGtbWbpmhmp2B2tG4JsbUZlPru0JQQU0cF0TR9HhDgQkxeCadrrT0bDpvGkQ81WKcBwp53npiKFRRughFPwHqjMZUYaqA5miDWDJG07kDwM1U5vIHBJkowAf5gSJ4GgAwmTbUmgMXpBow8G1Xb3aBZ7F0JpeLfBCazh6CgrmDZE@0/ayxMEr1SUZKpvwgLMaDKBLYorN4YHBFVNWJAGr8YMDjmFWnNwex5RcRBoJAaDKlJoH3voCzZ5nWHKRASB8tgkzG8HYATewYFUoYuDy1izqrr2X6TQRthoZAC/mv67p9pwTjhO52B40kcErqxB7tugcmMkvKtUe6a3F3w7AaIJYd6J8pL4dUc9DQh1MVojC/Da8c6QYUsLbDKjByfxwA10XCbQcEJoVvIHAgSibBTSj4rwyABJQEQkXaDonibRAqxyOzGZGT1JWS0OnkOJOx48pg7siYyqfLhtVDKcTOSDFATQ/MPt1EW0HIfBL56tyhzpf9pNeFw8krSzcjd@HFxcVwKVwFyb64@BRca@h6iq4YuJ6SK0EuhEuii1LEyYWx55QCwy7D9@ce5mH0EpttiKPSJ70fUc9LpexlXD1XxDODzyiIOpBsAJ3AB@AJRysVdEajcvUWKppstCdrv4HS@bhp631BhBfqjcr9ggpZIoPe66MZaWtlHGQfp0mvYsMoCEprsxuxwxfn6YvLi7uLVuziPhzH1NGyWmlApSC/SC/Zsa0BDJfR85VSQrmMRs@zMEg2KuF0eDkSKSQMyEiNRr8rRGMqp3YkrIHUjlxchIGogj7nza5N@IbxTDTqkwrKgQMz6ISRcPKuAPk3opfRWBjSRsNxMDEq4TBQpolEcKjSyJkTBDo4eskJsxGLScSGln2N3xmxD2FJMLB48m3g343jSbO3dw3SlTUdA1WRhM21EfCmlnlgix6@xlViu6SxmjDcQg1gtG35lhFa4@aA9GdSbq1gRmQOIgSF4diDclWfgEHEbX0IBgL0@5GnCOH4jbrQBhiclqElz0g1kRl0HDR7teRcbeiQDyvJpjPmAdB7wNk31CZ07El0FzK7AITA56nU/JhoeQbxtKpEVs2X6ggDS1M1kX4tnbT2ge50kbygWaEpYbeBqqiyg26gEdV2WRPG/A5QWhvqLtfhgY@OMcmO6kSiqDXWuNaFyh5qDFgobw6AhnOrCfaOBpoDxnLjkW2ZN7ptmUjk5BagBoYvYxtMIZ9HXmCjWm03s/kwfechB4rNBCsB2gaxThO36TRZyrQMq2OxZQBA1kwmOWPvmjhVAjqfC@Ylc/RPRKBaxzJHUzyo4XDvoI6o5LO@9q0iZIrgk1cga9j8So8BHqjz8e77LRghlFw6DeX3fGn6@JUMYJmuIwY22RhATNkayDfYku@1fnc0MaGE/MGtSOAnS@Mdk9v1KgyoUCrRwz9R0mAn5yHQz72olueaV/ct0pBwKiNoZUzUHpRB6KeiOrzbQA1DU8EY6pFiAulMg4/bFwXXRWpCbvmGU6Lds1w19SbZdRj@SKgvJHQmO6nwYjiVSOCvTFEsU2WplnaTQiklMINUPukONElrdi0mX4DuEgSSQYR2QQlPQCU0m9Q8P5mYnJZcawD6Yksz9J7u7tJEmmGiUjQe8L1YnA8cIzjUNVcSlsxYcONk11iKmx0OvzXEoc6RNHqy/YPNrfph7WSnIqcGjp0y9Ab0jZZW74FKa2iOzKY/IXakATKR/tO1cWRZboUzwrXBvvgJYRov@d5mfW93/ah29I4XgtA4em9gqFiU0tIUACY/pmivvwZmGNu21fN1fUc0xFIWSa9NrCag4StiVzB2INYSAuF5DO/h@kCyKXWaTZawuNcPFICrCIhrBjQ6dmIxhKQ1BD9QQBYIJa4jJO2GF1jEQH8FYWJufYxuXvzDiQTmOyV9j8gdc@D0AzW7UxQKv3HbbdQH/OAMBV8nsBMZ4@AsBfMViMm5f0GWmai5wD6@FcLHVy7m4puJmgvs48txfLjiMR/dVMw8UB9ZnpDhCslcXFMRcwB9TKuEKbiqMo4rUNxDSyoir7nRDybycRcJNy67jFHRIowI8gAznDt6fEnEqePs65hHMspELEbxhRSWaIHZs4YgyC@fcYkFgkA/dPqtpDt0xyiyQRQJ0Gb4AosfzxlBMepqHXrluLReSCCKJQwQYEp@nDjnJ7amklr6ONgH5@2aMeogAgaBLu2FBKP8RLwJvZWcYKfI8Ba0rf4o0JfvMpz4PV2Ik0DvynJykxxCvcueiOTU7nurORNxvFvyFZz6FZ8GrIsFHGwXLghPYFDfs0AV29MdWlcNSkbJNxkuJNmzeyYUfHkckxnPP7LEzfyJUzmIiGQ2iNVrC83tsaueTio5xOKj6F0bsynboLXSzwToTKFmY/hY0Wu06WcOQEnMycGwiItMSJUXuK6A04YW2BDaLYHR7AIhA2rpppo6ogfOM8wrz@SMyURhGlp7AOp1Csw/dH8BLFEsEGS70dAfAgW6YNG959xKHg3AxMkkV5KKZ0/hDCXYVHy642T3gACh/3ZnptnYRFO4A9uFVOL5n37WgiaZbbCuOiIjw3fUgZLELe0H208kRQ/9zG9rgrkaGLpKhCHXl1A2VVzZUA3fMR816jQskeiqdg91edHcwK74A/3tEc7jJbc1Y9DSvOf8TEqMiDw5ncdMvceac6AJdmrmkWdG1pthqS0iA7exdI0S2djYvBm0Ibc2AsosCKOHMpozQcjGK3Jud@AO@C8uwn2pGfU@fh8iwgRsOqc2FC1lOWpD1x5pdlu9HrSsRP@6Q5XGouXnwI7r38D5rETbUK@5s47O@QTgVbT1TkezvedDYLddMBvI3knd0uMRzvBUK0bKsvoYTtvgvw@BeNtgfMfDdNIN@vmKhvYZilikCZ0ESYsr7YkAmfQpwhpqY4R2X/fbOQszJJ0V5EylGYulszjI@ssq4zX9fv/h9DgyU/picX5qvsbPSTLPZknxtf0En/OiOovV/i90chi69J5qJDKtgPNBKe7Np45dc0BpEiDRNFQHmMkVzaHdQPPRz2MMjqNRE9lq7HqEvcfF8VbXHlqoEb1U9OSmZegOdmfjIak5Pbc9zhN3WdDPOCn6ZgnbIjXY6SZ813xJYDVdXCV5gNG@QrLxBQpcAgpwTtJ6iGhN6xa/DyoXXetG47/zB7dPc0v1FTIqYRBL6M25ArTV/BKn4ko7/cyn4/XccrlNY264WA@YNAW@lpcd3bAcsMnx9zFSgHbtOPx3PhcHqaarZoKmrYPu@clEofosKabpHmhL1ehYRr7QSanw82CDD@w2Sn7x/FqJ50ssRfmyxPL0IMtUxPNBUX@dsq@/xAk0t23jGljA@cg4O09sibWThysI9gMubM@v3Ha6QCmTKT5B8lAD2M3urTrynj9hNHmIut5o0h@RXg1qHiYoFsDh2lzX/im5rTyeW@vrRNIM2tUvVSLQuNeGBoMX/c40KcuklW9MoaTTXy@g2sZAG2hz5dNB40rDrY2PWBtfX6i0qMaSmEpMAfFwItGH@iSsxq8qNY7b6HtUwKiGDp38i9rNXHnXB128j4b2ITgO0TGbsGMO@hONO2GtmUePU67b93q21ZooJMZ8q0QqfFmHmlDXHY2@D6n2Wz0LbGOrB2qD@RXtL5DSrAf/nUBMIWNFY2JyZG72/kI56LKgekCL6tdOAufFv07oZB4y6Am4WEyZuqm5I/x9iNLzhGjDsoxvaRmQpS2dtjAbCdy0@qUWmlFzxJ4JNp66cHAapNF@aNKCjzPCuATqod3sPmIpB6eiHrEGZ6bVHxmtApPsX7IvYaSmWSHHbnruhxiSJj@UZCG5@ig7ci3UamiGyh/D/Mpj@IrJ7KP4fK1DqLe0KIMLOXzpZryqFpoSPf0REEtvgW3S1XoaeR9R6tXW1cDxHg8CDS38zolOpmgh4oF0fR36uom/E8tEAW3ItUywplzV7mhojhi4MipCH5Kv3vrGXOLu9tSOxk84PCY6xrMSuJmOG3Fj5/z5iRLf39KEZHz5/3FWgI5zrY0c7zkX4atRE9pz0PvyrNpUH2/i7OcXO3UyNXdZ5wvqntm1umZX69rUOXzfQ90DONLlZ1MeqwSUv6s617h7kOTR2JrrOkHqGpZhfA11UR5y6WhZ8ydmt3DnfwuSfhPekdqACPH44owdDNlEJBq7H@o7XW0AI5NjuVZfS5DvIVADJ3v47/y55t2DsMPOdM1u8a0PoI5D1nrD0NitDkW4coLrzvMnkhqGpeIG1UeUd6CM9/yaqammZX9x3qOjWm6/T4963xg49EMzugk6pzGvuttU0q9hBt3lu044y2odq9Hs6l8qUkNTXVO/TnlzONz7qF0qhDHVXGeJTQxOGjrQyh4lkQkqwfhjfOw@NP4FlnDm1n5jYNujLwuGyRV/f6qVrxCg46H8xeLsnGga8nFblbd96JFlCrGW@yA3kQKNynJCS4NWojw4AzSxg0xIL1pUfEDpmao3FSawjvYtU5diMwBN4umBDQ0QPm/y4iFBuCPkG1iFkZ1Bx4l@mXG7LdCp8GcuwloHD2vxlSTHsG4DE83Q9VVTPOaOyv6q42NLILlH10CSKbHWmdAGD85uGXrf4b8s0c7MxTK7eD8LNZpv6YrmaWltvkyBri9pdj3Lxm30oEIkmrbmNHHGG6Uvl4pc5JhWB6RwwmBjYA92bhVm9wvM000mR7jE232to@K2uj0dd9gZzuygB5intw58DeLXA9XRXw8sV5uLc3oLwdegfKV29ObORCt4CD3qij1Y/DHRCTBotiFuu7pDu5k9x/yOw9mMVuNnI6cn1f1TdY9PhAT0IrGplCV2mbf51HfgtD7Gq3PzmtQ6xUL8g4JOd2nCVDzn1nP@dovHZhFuB73@wBGP@bn38GxCcOa4d03hzq0OUjDxEYQu66qGO392OTB5CvqUGAnHzoe07Pe6YXXY@0KagfoFAg6V7gcYax3G5UPVhR5gzmFWyv8r1y1xbiLBlRrnIzCClmUJ3dTdx@dhXFcFO8h7YoW4qoVnb1J7@Jt89q0YEifzqbL3qMSHIX3UNMCy@RLU4bsvQGgbXx5avrDsAkOlZQ7cBJ5XfGyIyD86RJTYsJAP8ACLvN56dRr1WKHTbfK9jF/QxBwNLLqBY4zGrgcX@@dwmI7ntB8WsrMpPNNgU2urA8M9whW9r0lX6/cNnNkAmb5pzTNhDkcwxHyTHQSjxKC3qTVxJfCryrBvvQL1DMatPkjV3pGGS/dTguThxJh0z2qqBtCsNZsd3@dzREdY/cNOTlzs0YUw3RYnLZ2kd5w5RPuZ6eiTdxSGhfBA1gCVKteyk4zgIhE1FotGJZ4IF6Y6JoB5UHSgFA@b8bOqDgPedQlWb7Pzc7Z0NyylS8o9qzC5JLPLS44VP3T0aWvYp9OgRzz5@ZJ6WVkKJxLhpfCFWWLpsA@uGSCe54KrE7BtnR68vGMSMFPlu9bR7dW4zA/TOV06qAqmSAtMmlOTZhrRPOJHwvh5wxPc@fI3f9kS53c7GlS2p4OKBATB4@tWT@tat095viJ3YDwVz/8iDhhNDX4aLbFRYyDmwfbhx3atW3a6fVIQhwHFWXnwHHLd2C8Fb1ycfcOt/C5vPF4af1u2yNhP5VUKhMqgZ4K12XK7TpId67RLf2CPN8WCC8FM10aTuxVnu6yl4YYDOnxBs0yGZV3TKSosyd/8JT8CSUcwxNZ4L3s6@hzIEU9aKHTusNm0BlBqD8knzbYESASJDGPrAOdvGYpbCo/iwQQ6mwkcmfBOJlI2/HjiRu2YJbZYGK8BwANPZb0dWaodPX9znr6s/MB6Ke0//SwVvROEk79LFPOOHGceSPkeGSsYnYPocWyYyUtDmWfon0/RhbC45e0BJFI5k@ERFY/HLKsveg2dLqfD1D43iltOIuimdvaOKPboYDoxrHZLRxRp97aJogJPfJsOdDDwRgk173WVpciATzMmjl2WgwzxmKcKLn6UnU5s4HE7TLI0ZJ9ZF5ks0cRTBODjhDTwhGevsu5tQcsGNwqmNrXGgDbH3GSSmWyFqrNUr6xVyWVrLQtPWp9/fzHMpBMXw9Wty5TjEfXiYvhdOvMWqG7ZkOpJCnve1v7m3VKymv782VFHTJbvw2W@sRHExNLd4e7h1vFJ7eT0GFrh3hM/25bdU8eyBrmIzgV0LYPOsANdbF1zvkH@@D4Aj0TYksrW8HaWaFQKbkwnUEFrOSEvcWdANE2k/kLyeekdLRA/CyBkWltnHkftwiCFbQjMhlTDyg/6eBKfibTiNDFxmY4yHjuQTxjcPjpHlhKpZFYBYiWAWF9JKvZwZZ/ysK@h2BexPE62p3NBkGJ@fud@PK/iXBLc/1bq3YeB8jevN8fyeL0J5pF6A6gf6qXZru3unR5tTSYDHqMnSd1KMSdOZHDhjD2Nz1B6x6fpWJxIiFO0FZnJlIB7xWBGV@80NPdWg2oJ4djs8cTEoVR@WRozJlCmgvcXXZY5LSIRKgHqIGWs1tSBkbY@DBTRG6MD6O54FX0hsC37qL2CJ2WBOUR3ySTx41UDsQpyeV3vkIS4kNdhJ6j@xL0eh1XDMRqsP0r1wFDljzoOg//AqOS5MpdsyMRwplyyBMvA19DMDlTYg42W@RjFljgh5CVedtkvL95jAmVqXak0U0J7F8WZGBilDbWPlyYI6H3L1Urs48Cio32eMPH1i1u0w1V@ZQ81bVPF2tCRQdPFCxC8cYvw7W4fV1A746oZyfcgzw1MHKgAKHCBDij5Nt511CZZz6/i4CS3xK0P3lBJU@eOOOXtawkOu9EdmlrHRmijjmOApMTaiIrj7VV0qJPVDAd0khYM3/yuJ1JOkrTBnu@yT5hMDgFPJn2VMc5kCWGdyuwtADCU3jZhWP3AEy8RHGF2AjjDa4uJBFCuo5vebUslXAGgqdESc@0B7lOphmeSeEUokSvRdXtGAHDOfSgXWurHf/pn/A6UCxfcPxfuYXodfH8ofG1w/xMvRlHA9898XwZ8f8R936ewyWYvfhDZC8PwwdMIwJfP5Jk6oUzwrpyiuvitjS39ZveQObRMgW3ZU4eBZkIJgzynm0AvvQdMcUNtjOA8h3ETjvFEzt8AiwBfAX@geoMaDeWn2ZcRPP5fSqWw4DiXkqQt7NqQr1HQbQAfB3gLDihhqXwuv6KkoJCJGw8hHcnt4CZqjjAaLYFMlG70fuVDo4lnY5jsgBGnVfJlzhupJfX7rPzBL@gSwErcUDhnkAaP0/gpIK4qkkWW1JgSxaQ4kIWVMMq0lsVZDbTBCDkAJIrBpnfyENRNS5AK@NjUhi5pTCPPAGrgbWc4t6rxu5A8RAlAxHHjXS3T3XG8LRqPkQQ6aDLYDPIZgh0jWEmex6zn37ML98K8FHf2MGC8X85hXRPc/3jORT6cs/CQ8uwNMpHp@1@wNuzZsWnh9vltKC2LZFKZbErJRwMcKgtUUF7s6p8BJXRuEBZNTb@y@k5tY2v3xcHh8cxNKAQZngYLs3B1LXaRSMbPL31H2C/3JFHXt1PHr9a3PVIGSzXeYYIQ420m08Wcl9t0SR/I/YzvR5/NmyJmMlLSX4uY1nQT27QLaxb7ODYVANzg22Fnco1E7@7PL9eqF2ZoJvvP826HCiWXkbnAdeHQ3VDh6WJiEXe9XfYneOukk/SOW2Xk8d1n/iEx7h8HP3yXiX@H5fhCE28/v0QHgseHhpMP7PSHuidTPCu6zYMXzCsvyBqvqAoWdZxhU5rZJRQsDRN1mb1uU5x484l0wOeQvMsSHQ7pkHDms0x0q5BPMx/uxMOIXX98xYi4W6MLpTP0hnQrjoF75wX9I@BJp2/obiQqmQJi@uTgLKTz6E0dPphaOR8y/wicgzrjMElzzBG6COv2UuIXnTDvPpIYXWlyOAC6HVp9Np5F29Q81xHoVGxzwOccNfZi0AO4Nj2ONBwtNNCyEpAY6Bn2inKOl3gISiR7rVxkGE12tWFL78CIE4nGQTR9pyjjy1BUvM0D9KrGvBrgtFS/q0IdsGmya3iXyDC6ViTvuIJ8tpPdzg82LyVAhkkb0RKfuQifmt69VdjwJRaO@5RpROPhJOOWlLiSinY60ERUkm10cV8oTX202zqpbMErBvhg3tbtXhJrBcMMZ6HnuCs8yDXfdC9NgDLquZrUzZY2jOAVAKVLpBOEh2/PbsJReYbF6XIccRVKa/qWHE8Wqq4QSuMbZqbkXbHoy7lJ0VAs4jUCeJgSjBLI8di198AJKkKk3VP7LDKga4YclmTkjVxEzLjj2lGWqOJwfctMFovRnAY8KAJsFgRtk0un@xwieCtfJFWBRsJQx2zh45PeZ@dKMnkJbsokypZwPnMDtCmcCYxKYKNCkhKhBf0C/kpYIn6HalLcpbpE2Up00wdAzY0mOYXLCSBfgBZUa1Z9ErghYSxgOFWLxZJojUlpX2TAF2tzBCKgnSPFPRsB6CtOwwHVUEYD1IattXSQl89eaqapAYGAZ3p4Zaw6ACazo3HvNuP4@LZByiHEi7gjjtdBQSdvIdwK3xk4S7@UKtPUWPke1JoPF6jXtIVmM0r9t6lkqnwXWTIqoxTomtFqZKlbUWLZ5VhsyVyOLJmobT15gjNq90ugzNWTYKAOASixZETLwM@g/FWWzPKSuhZZalUyy5QCvGAi30GCH5xU8m5JvU8tPQFlKQ4hNhc6kSWHLghKJ5PKPZQPe8hSKg48c4c33dAdxZj9kh6LYRmSS3UswA@pi@MYDZsXxymavCsLWyDV6YnuNqWK@S0xc7cyJ6AILvkDVg4HLLFVsu4Bj@8gzM6Le0D94xm/xA3ljPbBaE7Q@JInY75esAg5jTJXCJkIv6EJCDiMABHRG1ejURAmv/51SMkzJj/NZyNW7GkuXY6FcwqY6WBfh56BHp5alm357mIzccO0dib/MXGutpMfLw@vDw/fRi8irMjCoY0DWVmRv8drpL/us8oyD3zYT/@EQsspKZRaVp6splIfPnwAiwM@59VkFcQH/0TPE@HL88gqY9XV1eV4vrAcfxauB4oVjWQy0WOm6yl2ofedVgu@VpcuFI@E@OfpU8oLzH/4ZzxM5C8cngdBRGjoG@Fu1FyIXayq6nJsJfPMLCcz6czf/LvF@/jdYX3tb36vl9IW8XGAj5/fv0L3sZL7bnHxu/X1lZU4EJK7D98fvqvVaiub8dzhee7pSiK9uPYf/4/FxUxmLZNavHQc5TJ8fv1WzqRX5OTf/EX48PB13XGAEEX8ZJkCTvwtwFdhuRy7Zp/gc91m@E/uT62AW0V3o/0Jb2UCe6VCwiYczmXDx9@H5zfbIlOqT1f/8x8ffAy5oWomdWbD0w19DOULIe4EB/iynu8mVA2tIVj@PjRKVSoVcK7@5/8V0ldfAB6MGa3BTzXn4cqPQtVEhZJ8DlXz4FAyGcj3//rZz6RQdRj6FFIUJTSivzq64VN4ojxh6EjJqwXZsp7hlef4GQY@41qkFCVz4bVnoLmxaf3gLuCGdmVWIMxvd5@rmOAGcnwtXBV@tvDzt//73/7p3/4x/f0pff8D3qSdX3z2YZMxDUZg/JRKz2baYW/Kf5RMwCfp944QehOiZqFCJV7npfJZOBRwTNHB/2WCJL7/G@GkkHcdLMqhy4nGuAgphZWDZ8Ov/rBxoT3ahsYk9TNn02FeY/ge5skC9i1wUuiHSuXIxb9XDfw7dPCPDX/KB9nhKXwW4Y/@4eN78XeRQkQwgcx@Fn8D6SuFzkPnl5c7Jv597NKfjX@Nj/i39wn/Prr4d9LEv6OP@HfyCf/YTG2k0NraWigWOwKVUTDt13xO4ZtM1oXPZ96QFPqtftjKQf7gmQR94jKWuL8/T34/jJXL4h@UqbLvww93QbEu7xOJte@rsdg5Fe@8Ksq5lrisQll5kenn@zVAHFs7X1tL1qvVauLy@@r52mQike7Zsxh21GeQsHp5fi6F7rAtKlJoGZ9NRwplZDlFns8o02GQLkoh1G@LXM0t8gB6CwT6pNCHuw@R2NPY07SRvkkr18r1K@tg/H9wMIQIfZi@sux0N91VWiAkWVo7TY/So2G6Zx0oLXBq8JfugVNPt4fpTtpMm4oyGk6gevi/d2C5rw4swGZBSneYdhFxug3PzsHBK8DXhryv4E9Pp9NDKOQwfQP/aQNFNl0wR8/v69E7@Hy4/3BxfyGdM/mDBppBUgkn0@FkPhzWL3P5/kc5Hq5fnIcvy6GUc3GR4joTy6yU6YbB@/t6fWt/s15PIRetLcWexRLP4FOpxtbE42moWn56UUpg63HuS9ZDqbWnF9VsAt35GDRRBsLWUrFv/IxRwrO6eCGBGXh2ht@z25tb7iIHuS4w/KzOo@GboiDyUhB8bm5T8xFMOBgooL@j/9bBf1n/r05Z5Pwyyljk7n4tQp8o/kWjd/d39@K3Go1EhCeyBn8YAH5McndfRScB3YHrPBK9jN7f8zD4jUTXOMIq5rFWpcRjQOivIZ7rRbjMGBhMEbHWdnExTKej5QaE@LPu6mdatomWaUPLUgOX2sBIUJajBJJbKZdXhHu1UC4XhFvJ58vlZR8qDR7hBCDNUZtl5PRyqB/FMnD@j6RxroXucQ1HWlobL/R/2u@DwacU058/@0H1eku363UMz37@fAFdKYz7WSrFHISkC58/Q0cMR8EY3LfESmoRTDsllRmj76qO6rp2BMz9@EUYt9k5F@EoxmfSaQTG9Cy3tpZfqVbzK@DOF6LRsrzEN8NEOrGiEr1fSsm8GmCmhUMiSimsRin0PozxLLTGnlaBwx38sLv7EFGbreSikcZIi/oBSrHIQ9hKPlKIFcVfZTHKUtVlJv7Oz7OxleXV5WeXl@PRC8VE@U6tKPeVO7WEUwf35aa4RBU3tapPnmSLQJZCunwh1eubtZNaHd9GgcvSIIYZBpLAkXDJsW@Hz2meJ1e8PMeKXF6Ew6XyM96uhRwLhcsCLhEG0cUKRapvCIxJvY272YeAFfFKoZKynMkupnLD7/JbaTCClvFzfn5eyBRiyyDXlovFy8tLCl2jFOe9YfuSLtKqJM6VfO4ygarL1bC9HOozZTUbWpb6tLloNc1auD5r45zZIgRCk7IGLqU7mmF4d9beWrbRutVb2qIUOtyrbWydxDNrgDKzXduIZ45P10MKenNjP0Vn0X@0Vds8OIUEh3tbteOt57tvtk4PIRxvuIRP71DVBlpdux0MbtFf1@izoTvq1ZXa79f78Bm2f/zlH/z4y//uxz//ox///A9@/PM//dUv/vQP4PuX8P0j/vyjf1vM4e@vfvHP/ucf//WfQ@B/gO@/h@@/@9Uv/sXP@Jf8fw3f/zMQ9tfiG4DjXwlw/eGvfvHHf/GrX/yTfwnffyW@/3L6@@Of/G/8/z@KP3T@@Y9/8tf4Izx/8Ec//v4f//j7v/fj7//8x9//h9BEf/9Xv8T/P/6rv//3v8T//@Xf/P1f/Q9//4f/Ezn@jDv@73/1b/nv3/3eH/zd7//zv/u9Xzzw@weP/v7iK8J/8TsI@fpyfg2er6nXt4b84ieV5zehxjgX4AHgun/847/4R8C3f8J9/z344N@P@rnv8WNiZM8lYuPAnzP2OQV6U/rZZx8UUP6PGArB7PMkNgpNe6G/@sU//wsMnoD9R0EMaWUWdgmB/dx@DrD/2i9YEPbnP/7yZz/@xT/88Zd/9uMv/xAlWWKlGK/FE8oXpoQAMPcVcAiY/xo4AFTWcHV8kS1KGXAsruEUhqTEPnwAki6Cq8LYspTLgi90eVnFz8V5qnqRuqjyzyX4k6kqhiRTFymMT6ZQc1eqlBKKEAN5rYDds8wnHGI4zwDfobRSBB9OQcRgmInxqBhErcdYpVKJScMKxBEoeDHNkFULaFyhbVEBvJiIp4nXC6C5suE6YYGUldgRqy9XhjxhDAOqhIFhgTDoSFYycqxQ2YQMK8NNhrgQeUz6AM8PlWqhMqwiuh@oCIAjtg5ZAlQFSzes/gD@CuEEeGm4@QMUpVCJxaoFCKlQVSm3eJ3yVHJUOap7jFG9MRwMXXg8fcbYd7JSkLmNB4RnAhp/Y2PopzTV8RTiL2LLojr07znpu4zpoVWHRB8exuOfYjClFwCAN5HAfVfwTSSwNM8geshRxShbeMQ4BqBcTEwV@QE0yMekGLVvjDyQP5Th6z5r1YAH0WF1lpaWwLVWlbPyAZgLzL4uOa5q47IE6UElJueLMgbjNhZt6ZAMiuXNZfhV4H9rkbaicnIsS0thHPPDzMsjEctaK1aISu9VjeqyTCWPEZwUGodzHZbWlkD5XGFRKUK3tUfJKtX6fXi@cjrr1hD0zLgsx5U8nz2OotEKke@sUqnyg7KyKsGT/AO8KF5cWQ7NgC8PS2JfRIJW7xJr1C/BCXpJXqpWxfoYU6Tq8dYJJDg5YEomnWSgnN6trGZWciu5TDafz61mlJV8cSWfK2RBnuXTuUxGKa6sFAvF1Xsq0jOQC/HSciO3Vv0HM5//5h/M@8wPxY9UfcuGSZa4l6rDRCKVoRJXlNxqeVSBclCQVCWNi6vho7sEbouULmgb1h3u@IFiSXcJZNMF@DBpQWILEAQfQIsrA0wsV@8elMW6Hb6Cg6/dyUoOGCEqXQAjcGxSf@ojYbs9AWHzROHOXH7sTKPzBI@E7UMW0Aom28Mtkq7FTiy@FW9da0pr4jBTVZJoneMcaHop4RX355fSWsqPnY9po8tfTLdhW6DG/nSYddW85lGbOj/G4kftqHjPlNPT3e4DEKf9Hh6w0ezfGYatXgMKiPOZHGAdfmzDsuYBrLLTwwdq@co/YooLhnTGFMCPdp/vnASeJ1u1jR0pz9YP9jenHjkBlGN7W9snvneVx3pJcz6Kd1t7e9Ne8UBTZJHlVuNxEI/wg884feiZXPreA1GSj9yuDmNTao0tNclGRIszB90e33Z6Uamqw7Y5ACava5X183LosloAKbOymlvNp4ur0F33B70BUoKdDgqsM7Dd0VvpFe4UKyr8xIPuSDtgs/Twonq85MCVbK0F9sutSYc5Gvi6qUGfPRgIDwxCp613upD7reUBSA1VZfD91g@k14If9/EAl@dBYTMxxhxwXBvT2ywtJWluK1Ms5ArFbKYQLxQLKzkw7XJxJRNXVgurxXRcSSsFJV/IFZV4YaWYXQFpCLG54qoUAqmht1MpEPaKLNNTN5t4mewa3sprJbtVKcRnBmCExfcohlQ/AJpDzhYu0pBOlnAXLNMrizK@qTSN7wEFhCprstD29kZ6e1uW19GDU3kbaVluoSdXSKdX12VZo5gNENgZWbZ4GogCMJd70un1DVkecAR4HlaWu@jZyqMeKss6ejZq29uYzxV6MpgewK55DPcYnmcVwEz0ZLOkyMryRx8dwNV4RitU0i30YJ4Ys81jNiBOlp975UmnAcMRh@MYdry61mqyvMs9tRrGvKCK53hRX6KnRh9ZtsEDPCjLHXB0bDC2ZbkBTuREWW6CqzlSIQwv7sWjk6aryvKIEwhJJMtDglab1zKoUSIcs9nZ2VG7bkvr8M/I5s8mFA1i9OFga7vx/Hmj02nYo9rW8yOMefFiR70aDexGpyGSNerwsSANxFz3RtMfKONuva4ac2NeQow5FVMf1TUsW139CGUSnw5m0qu/gJgXEDNvbYRjg08PQBv4We/Bc11tUIz3oRh6DhsNuYw86o76Gs6gYJeh3UTlYEhPbdpWGV2gd7PFcCQcH50rl/FPZYphPcYi0bt0@R5B2hF6CQlKRVBy7kbnw0r6ErRtpYyTO5HF3lMZhJxcWlSfRobozssl0LdX5GgJX@BitcMsnFCeDgpyflUuLcNTfipnwTmMpMNpxuAner56@VReRSTy06cJGcoCXgBRIaG8WkSExVUY@8v3QA8XhqLGwNXq9UjkVlOvo1FeJ/7SJ3Z2dha94zuodKqjW25HhvFhhZeG6dHyJyj8NKYWnhYdNF3L5vg6QIFPT9MlqiRkX6DsWSoVXUOJhDIEnh9odjrJSgn@vhOlkI8mccN13WrX6c0D7IM3hX12NuOa9aNaeIYHJ@jQpLfDhjRipySdoO5I71NkeAi9ga8golO0YJTw2zDohUEaaJJFSaoKZepEG7rJHQ13uzTLImxTddXk9sDECifxRUlu@S5xlring7l4bhGPw@otplaq4FJbLEJATI3eUhnq1WqlXulpvb47AluC1NmqnxgGMrbOOCQegfB2gdcr61C0dNnE2x809C4NQ0Op2oLSgGm2fjcolQD2vtypnGPiz/izlpCr8mUicf75ElTPSro8CqkVZ9CgWwJYugG6cb48hDBldaVsQIn52Y0l2sGllrusUWl8PyxfV2AQWWqzDMuvlClR5TyTLsYzCgwbMJxAAHxX42kIUS4XFyNGxLW2TKhJulTCCgEpyAtPNRrLLBuRlsXUtQQRBlgW@gNuoo/GDKZoSuyaQLqsr8e7EUBxpKkGTxtNsOxKtBykViRajixGK472sdyuRL4HLZc06c8Gzo8u1itprlMvOYPeeXoxr8TvEvXEvaE67pKymimdD5bOE1jo9OfOmvweyAX0updA/Q5O38IYWYYwj3f5qDoeF8dh/TKoOoYG1FWKmbIAkfqiB0VkFsE3afFtSZFweDUTDkfDZYBahGDqiNE76jdh6M3hJ9CHYVyGTlzMQLytuQNQAUG6zJSA2w15RQrdSy3d6bOVohS6k@7v7teqnob1ko1GaizheZ8w1omBBZmi5aZkPcQWyZVIVp@xWqXWOaqVBWhtg@y8lMQu@GG3RGrxWxe1YmvV7/nzApczIRuJE4dWfVNrsWrqQpJlOSR7qxGRQi7K7csfQnSXJdu4a2O/0y2z9ApppZaO6Yr588voD/u6cVfIJqpkeQBT3N@HYlA33M9QTRGlmge0jUAKmZZw4gS1C10cpFQuJ6MZqrH@cfH71e8L3786PTg92GbP0qVCqcDJcMEtw7gSVsJgdj4D9Ug/2pJC/c9WTvnBfFEOlfrh7Eo4O6HYXlTEOe8IMkHkHJdv4Ht5DgbmZRRclYryVFkt6Y5YXYmUnEFfs6NPlXymlEkr0ZBzj4dQM6sheir51dBliKNcWY2Cm9YFMkqomhLByiqmSnAfcG8u5BQ/hzLpghQqvPrwmTHv3b96hlyplCjs0v3aPfxX78/BsL4n@/qe/vEnBT/3HID@MYHnocf4MwE3hhnHX/6QWOP/a/SzccBLLuehIUIfoLM7zvf17@shKVQMg2EQxvfY889QmKyo5C6b9Kc5y/j3/Thg2XGcZd8H3mWoM8tVFQZqcSp1EX2dAYW4WMwX8iHp17Of1DJY2MsLNRbm10Xx4QQvi/QPOoUn3saFkyLLC4nN44ONl1snOJ5oJr5NlW0c7CcxCl/4OT6p1jQ01TZG4o2fI4TCYehk45BZYMVsHlKaMzqjSKE09yFyWdptlcRrceI3TElmcc0sl0qvpJQcUwql9Gopk2cqyCEH7yQQriVMyqhaG1Z/xM2YyEaUEi/UEAbj9nQwJh2txJ4f7lEKuq5geWFz69UBO9jfe5f0Qnn4yc7uMTs@2D45qx1tQT1ebR0zuXbMdo9ldrZ7snNwesJq@@8YRB/V9k92t44RQUpCGYZqFSeYb1OwNWfkpFDncsiwmAh2rOa15k6Gq3ZfTeHtp5PBJr4LRcM3CEyGD0ywyFtBm@W4tsAVGIbo1VbLlvBwpN5kC2iwLCxrNu4glrtpZ5XlBm8/pe3cImuu7IdXWTO9b2bXVpmRFn/MWOllj9ji4uKFKfsDQLAavskUDMJt9RA2LtPu@62FSH6FLYOhlFmJjmP2Dw4X0p5v4ezoZEHx4442FzK@Z3d7Iet7tsC34vu2zzYXcr5vvfZyIT9Otr@xsOr7Nrc2Fgq@D5h0oTjGub@5oKQlj1g3oPQs0PveItu7e1tsGYCi5YlYnJFCx1QwECIyMB1@UwXZiMvLt10rThp3YzQF3dK@BO2BT0AtoKZ0jnS9jLNlqw8/oIMBMCSTfBVYtTvNuMCKNwXByCLdSQtYoQWsEMAv4BlphGOLFZaJMoheaPPl@wi/OS7O5FOHTkJ@57A11GWrwAxxunqITsRCCk28@FFauBcoI22atWvTNl8CBbuCybYcjeIxuv3TvT2eGYwNtmVHZIJk5JHn4LT6gA2qCL9YdQjljcObhdoCabUgtAp8OaV0P9Ga0nRrIimgngsLTUAwSd0b1Ygz1KriuDaMeNHDt@cDMESDOw0ufn4wEmliXTua26QCRZGYWwfbvIa4ulxhk60cZZgpUYqi@cb/z5@Z57twJ732pNcMc9wCOS8Wx8dLWkHYKIYteAc3CYIOqVPKBeSYWAxSQ3UoLlCvBSA6fPmZdq@UVcgoHWZPnlA51sBXDFMWmC5GObIEgiACQTAiHyLzi7ZIxY0upJZx3wd/szsSEccRfhlpY@TfxwGSdbqgU63q90K/ORdMMOHKUwJZRLVb2Nbgzmbq4EfxCJwcZw3oJnHmRSp5jET7KM60OGtD8JRMresmcK5mj2WixwrQGan19zd5C/HLZyicB1CNQe6VqMFAWDzB7kuMvrDQsMGQLXtQIA8JCvgWmSaChOBwj6c72qRky7y/IFti6q9Jubtd8viIpwZ2EJxGZMX7AjiviOpSYHUMNINfIMP@WwH0nCU5slhMQPhcJsC2JuESCQ537/HlFyqxNV2LxW@uBYrlB2ux9ZXV@M1qAcPamEWgFiDiI4A3BtD0M9mamXkoYCwkFFSbn4YCBtAxL0Efn0DwFelhyB2nT3x7ehikS9NdGfottCCXCjzJpLc56W1NerH7QojKwCbIrLDPrIEuJQ8uPDfOCuBocVk5mbA96aXpkwrTvDRtXwLzHIDnUFRyMGTAWWGMEiTp4IsT1B6@vqfCatv13f2tk8lYxJd06qLgXdcyDcojOgkmCoTxTgQ9Ub9EkTYSgeubkUOeR5zoWT8@OdqqvYpD@aJsbdwDpnUA@BE9YaIG914OEGpqTRiPW3EWOa6x5Sh7giWLMzFZgJ6vzsKwHA1QPZhja9DPUFZpDuL7J3tSCHukNCcrOcIiUfb54gKG1PQqU3r9z9le1lzNttgou4rKLsfj6yBCynsCZp93Ta5sIGSL35JXmpvZVTrNVuwsc7UuaNzDtD2Ln@p1j2MbDYve6da@RUaZU2Z4mBhli7gLBMbFSdXmcS2SxkbkAwzFbgxhOJzTfFuM9HNkT4r1FCxelpb2rWX5kkY7WZYEL8saZTpbhl@LaUowl6SpE8x0pYrVd/sqHvIVkQd9nE85xCBbkvg8S@BmrYiFr0xxoyW6EQVlSr2O12PW6xFHM9r4dvaB3YQhH9VlR4DhB2OTPJI6EjomIwV5UH@ajGjpeCgXLx@EUWcKIb0kvkL3@EUoR0nyS@a4Wp9KFSgGzpPhu4SDGYKBPeGHZsXDcoESR0tCK95WsT94yM4nLkPiOAZONz4nGMTzbKjPpnPifLaZE4d33s1L4h3inhN3NejNKwEIhgdixDHMOTGmdTAvAb9LaBxxeR4g4HmQwJeXkej8pod@NdnigcugiP4n9kATNxvtHgRYEJRLwYGBtg5tasC0TR0vop9G5B8Eh5SRYTRwJt1nq@iYk1SnqevT6D1MAhEdqqS71tmw1OwC1u@UTCEaDyAMYGzxyzgfwskCSKGEc5CE2DHxvjcD6viokQWn8Y7TJ/FKBbMF5t04gdV/BB5jx7DY@B7wAt6G5cf4zDyny43RlWYZh8Jx0h2bX5m4N@whaK8SSjRI0N80@8S3Zp8I5I998idlXWHnk@W4jAX8JQgY19Hr4D8pI6/Uk7lFv6nGQa7RtOsH2Bfvdwlkw@91mMzWRyMkkM9TXlUIPQZ8pZBAXEFE3yBfqPnEqfN5qcfjz3KFJRQ/DZd4495Ak@uBwkt4I0W9jle51ut0h1@9jjNL9brMc6CBFwe84KArOhuPS4KWWrcoNiInVDkuJxK1443d3YRuynF@t3dFdlzL1up4FZccx9XXikwCq44wXc3oV2SxEU51GKWWH86jFsgDKvjlTAiI57JrUibjO1q/nF0zWCXrK6pkTWU2vjfyK3I7otzwiPxjOdn8AjYvow26IwwvXbM1HQUNv7VcvIgbL9OYuMMBp/RFEXi@Ds30OXhzBi8SPeoYJtoar6Cg151XGM32yd6dMvLMFTCit@NUDyIYcyrnPvmQ3m3E6H6xlib0LJoeSsrjuyVFwZKipgF@9xQ0fiXHeECbvGdGlDfuzU06OI05VdSxYLH6WPlzGa@hgQY4tPrw619FA27/Mhpw43U0GOSJOnDjXTSYoi0c4loacNHFNPAE9pbH92D21KHeG@DETfCyA6HJjYuFQz7WhEZ9ipyUfpyiCJE08ELhiMAbjcklGaru0CU40xfhIPy8u3Cil9KskKWbm7GYAdVhHtK5t@tE47@FRgooYiiaHVEaSBuXmcyVEEqrlC7B@AzwjidiUH2eCrP4rCcigprE/fTj8Spwl05lwrxAioDxwAszTsBnmYLvECTlPlryVZBxiwWhuOI2p9y4kfXBggcxeIpaVHrEkvr/jZ0UbJL/Qk2l/@@NohnT53dsyjxiwnyztfJbNAv@q0L/XxX6n6DQ/9a0@QdU8mmUsz1@Sl3/ohr@7eoXybwRDBt25wan3jI/RQ/7LSkCq9@kB3ilPlce0wW@PD57aDLBYf0njtLSr1MnrfzZtlWr1U56in30vNapdWtHeG3Renovdna1sr55u/58vVXb3Oy86Gzsa68LtZW9/su3hXfP258@aqC97xy8eP/J6De70tuj/u2Zdnib1QpObTD4uLszcnfWT3sbx7l3q7fpLSPXXtc@bhrO5quTty9PnueOY7cfXxy@@NRL95zDdlot9rI7r/JvNkZnppS70U9b23v6Qe@4tXWa6e1t6u@2YxvpvePiayW9t3X7PrtxG8ulU7v9lwfPj06vGlvvjaPdvXetjY@Wmv94fdvfTbWK7Y2rozfSQfa1svPx4KCzlSk@30ndbrb7rXRmx7BzV2@PDtdP3@10X6pbve3cafHt1egw3339@sbdj3VWzvKDV85KzKy9fp15aT6/udk6khqqdWJntTPrtdK/vT20ir1V7eX@Tqf32lbM1EHuTey4d3K7ubVufFwdZk/fnb2@XTl@N3j1@sX7g7R@fNzYUvP9RitzfHWyIjV72d3YzenWaUF93jp73bvZ3cm920y96mr7tdahcf28s/PeOj7c261lnYGp7G3cGO@ed69eXW9u7BrW4bVh1lZSOeOk9e7gQDp9oTc2tZ23zovaVfddKrd@vfIu1uo/P7n61L1@sX58elDIDA9HaWvDOWrstIebR/lMIdU0Ph59aluvlNPXsfzN1YuM/q72yZWyn0a54p7xTuuZL2LNzvvhRyMVO1WUjfe7n969O965sRs18/Tjm@2jK/tVyzxwDtJHL16@ahjXBfeq/948Plaa6efa9atYWpWGpzsOtJF2ouZWT3p7r/vDTevj0e57J/8pdnN2ndU2r4/e1D4epRu3Zv@tae/pvY1060CtvbHcrcHwebN4c3q9Y@x9PHDeSa@2lFxu22o76@03K8W3qeex9vXzt@vK8TC9bx61V/L2/pvXZ7q@1X17@umomdt@0y/0XLPz@tNpbyu2tTfsftIK6YZx/O7alE5zx0eHmVvzpd5zt3eOXuXdg/Tem8PWzkipvdaUW3N1Y5TbHNr57NnmW/vd9Y7ZT73TPw4O09pNrPWu76681hvt5hu92XspHb/onu4fvrndzeXt5z1TXz8spPf3djb2O62Vl6PdV4OtvcZV6/nuW@1t/yR/ndlaP8tvvj3OuifXL91i86aXPSzEToye2zmNSS8G3cHq4Zn98c3w/Uqt19CyR8Y7a7Sq9DZe9DPDN7Wtg0@d68O@ta9sZ0ap0z3r2kh/Orn9tOPka6NYYXjq9iz3RBnmlNdS9vZT333Rf/H6@GD9xcH7F@qKrp@pV8dvWunsaSGld@3sbj7/XNnabvc@9oqa8mnzVVbN9roxZ@861dponb45uzauei97V02pUHSa67vvB6q11cgo6Xfr7a2ctre@d6Jop52Xxyub@@nDt63D04/Dk9bG28HpmwM9vXX1orjXWXl79Kb4cvX9iXOinllvX9r70rCQtRwlX8zdZo@LhYOufZw9uyq6719e5deNs4byYjfT07Z1@21hVLjuf@redm6PtXSj83zzo3rU3gJJenqYVnOD6/3hsZR9c9K7We2vx95dN1@@NRWjcKavpk4@XhWvu92Xt5vNlbPap49q7vmVVjzeTjWM7dzz2NHG68OrzubZp8JKK72@90Z9O9zquu@k1zv65lXx7PpgOFJebx@PerW0aeRujs9yNyfW@vHZznGh@6phtxs7V12QDb3R6dXt4GZHW@0Obwsvu1dv1PTe28KG6awcpqUX2m6vdXTy8m0t1s5oRffm4N1@/6xwNsy9KlhnReugoL@stZ8PXx@0t9Krff3sZHi61U2tb@i9AsiUQ@PU3jh4vfP@7EU/LWXM/PqnDSu3@jF2M3yXP0sdxvYG75onmd6Zbe@81e3ttzeHb18e13Zju43R88Nr9eDdVu54f2PDeRHb1vPaaCd769Q2skbbkpze@nB/aPeL2ffXex0YCaxWsfX8JHtmOrVa@3a3cLxVqz13Grsv1OHweXsVxgj8bJ29sSrSr/mVdBK/jY4/VH73hdRzOg1rCPKSH6yT6NSURKemJH5OirZI8@3Hv04tSyfBAwP0Blw@wTNogLLGWhYqD0m2698bi6@NiLOeBcl1dDWtPj0RrTgX0UKDz4Bfmq/Co3v0/j5t2DcsHd/Ig28HQJvUHr9qKykdmKw3QnvT1Xr8GIOOL9UR17zSCwX4u4vomklpodlk3lsOk3SJqf/Oww@gQPTNToJure2wRKLZNtSOAw6jRa4P0rF/qzrmYOgqTn5gFspeXVXSObE1ld5MhoU7wXcB7T9nhsVfV@BZHCooEyO6@wMnqej@Dw3fhOboN5oxovdPaK2kxHd8ftUuyGAYbu@eDKOrNqf2hoK6odlTG0D7PKG30ppafobXsjxbToklVlSG6qrd0F18z26dH32o8xy9PW/9yb2HdKRWLNByxQg1G7qkNi6OBw3RN5UKKUbbzJt0EIQjQNUQVVRvt@Hycp9Q0r4rxj0BzMv9h3Hrvc5vC/UE7pauTeC1gFYDoBUtSM@s2X/n0CZHH6gs8cX6rbe7J3XxkhK@xXDi0NEDOy4DVC57vn6Z1yBQflHy2W2ZuMMAio/TjvyOZ6jqjcV5WaZ9j7g9ElobLezxbkt6jzwWHbH1aTfK@col30GYpq17HsH9NE84JzwJlOrJmKALYkOFzwNfmY5v0OQgs/VFxG1b0wiAdnN6R0OmNvv9lnnvgZZpGKp5ja4y3yoL9oLdDDQWvX4hUA@cyvLrIvZPko2A9Yak/jbYcUFl228WAhAbYr1mPjWxO9N@e0zDW9jPGufHMA/f6jIMqxkZRy97W2543aJeThx@KqsDnEls485ayx7xjHB6JlIuAwju0yGZoJnebtVArStjaiA62tQTKAXwbdkLwvP72riccfZ4aXlWi8QOtANoflH5ZiCEOveLdcmzelgWAr2jwcpMJB0Tx9tCBM7UMnOtPhChLTgOhjHiEb47dYYqfKeXz0WM0@k8fQn/7GnQU@Ibd7FDaTjtiSIkit0YLfSpwvmFRtCq33UwqzHrUUPhDm5sQp14kelg4WM402OxiXYKID/XkW4KixG1I3NiQQz5NRKkF7QnGNoTB63Bt@KyNt/BxWktTZFoDTL6/NnvMOD1ufHQO@cILOG/1RsZnHMm78uCoGXP73VC300xY6L4UvV@di89nfAEA9y67etDzYiAwKzjy1f6DILElqV@nzsIwt@@BMHY2FR2Ia8WFyOQ6pzgUoVL9oRFlLW1yGoiQkHfFaJRvzOK5JlA8kBiENLVKotkliNZL/EKJgaU2UkEK/MRZDiCleWI4iHICARKDjBwFYOQfMcKnGsnERcCiH28l5Mw@AqXObkvZ2LK5dpaAfd4BgKnEmfmF305G8tAYo56ITYZw9HyiED45WSNAHk2ExhHAihWYllAwbOOTUaMc52K8DMN5rlyOXdw@q0pL945DW/woeT4JknNPi9gfZFT@ab0PgN337VFIL7Nq0/v9BqHcZZeRjYHHYG6JOTW1fDQVJy/000MWkC/8tSoGDgcQRAoBogIHh49zq4eG@sa3z7YIXCbJvh4neNMibMCmCEgUUBiFCAxiBCigd6pN3t9Hw6G4kKU7/jmAxhlso8rznh@ANoJ1X4vJxJjnHy4wg34xDu1aAzh9I1Agvre7jo@3mwd4Y7Z3f3n0IQLWI84G/961VzkGP0qbqgmf8@H7upQBJBt3KARdeVNNZk/Bnr5C2wecgE/jZ0npNohBOOJhXZIfKG7dd0S2DgpPT7SXKIjvXbKByhEy2BnsFuNqQaSY8Rfl1vgb6eiQ2@UmkgFDj@hKCBSCGl2clTbP94@OHpFlDus1/YOd2qIGQzMpmq3GL0/BTuIaWoGH1R9eko4/HbwhdFYJ7XhveyDv0obYfmL@DjxALBOMXUKnS4R1pcz/Qw8D56XgCSKDw1KRb2l9efgxr2rPpiojDMHIW9FXmoxFIoyzRsJacCbHQk9OVpFSUe0tDTHDLvA2PQ@GdXk8iTl4VsHK5Nexkc9F/WoDvGLzd8@ls3QK4mRj5xBH1eHtZYcJL/abGoOXSwwpj6g1Iw2ZSIkS4BQEDK/9mP5wc@m@GOvwEFvZKRBN@3rvWM1d1JZBO2R0@4n6bgBBYlj8XSkO0@tJLVI5MzfkDyhOuqTKuNDmfHcrnhuV5AbF7jsaloh0y/PryYUsXnk0T3yXHHd2NPMuHribyWnlmtDp3e6eN0PzYVwqUMNhs1EV11YowlZ98RrsideLx73xPnK3eNKmSDspEYmBpzx@CkM5lYLyBaZmdugkytkfQ1sbH/uMbVb9NBIyQ86eSYGwROn1EGd9uA88YlnqB7kDMQE0pBOy5yL7C5pUPHxRQRClvDKEw3oGnQKU8wK6CZIi/HhNFFXUiUtRxiKgUAUq2IUtlteJyfI8WBmt6YPdCEQhvIDh@NTCfwYH8@ogE56m2OFUCOHjHVWiuC6aiIBCaJ8XoN0GhC3WAcqnu7Or0Zhthqicp5OpvMTMCjqhFvhogBBP4PdA6Fe5uW59Q7UwzsMh4mjgYqly@IEhXei9/SQZZVsNnD89@Bsn@Xz49PBeFcYW8mkx0eO8dYwli9KP2mebDyfwPkRO45oUGQr5Bk03UEX1AwDOjF/tHQc@rFs3Cwe8seo7CtXy9yCdYQ4FkODw3r4nviGhu9Dx/ValylDJSktgFCkOWDxoklv8AbAzkC1VdPV@BlLFORiZRczpISow2o21AtfEE/voQeJj69Jh2HB1vgEMIS0rCZtkkQclA5aetCj3UhxVBhuNBuvAdBdcdB/gWSOYAcuGqqcCbxATzhUPd7gJBQigXo0TrJwMtKwjNTjUy/ClSF15WQvTaU82VNoSPPeWYsFIPIKViEac7e0IAg8M8yQPb4sXtzldUkfeCz6500Nzg4y3Dj17HCBho8xs5a/fjlnMoa4qxkcg4ZiExOhojpdRr0zcCQBvCNQTW8eggPRY3hJwxPh4tYoUhDfYq/zuXBGMoK0CBqlaEixketwl464RY6iF/y3dhM/V6D3RcXOgJE4MOcfjxQQyPJRDiHORk5DYP/kEMMgDigF76jLqfH@gyHi8M@7ofgmDvGscHRHhV2ACLhdS2oXLz8/kza/FqKPUqb8SNp0SSkqGujL88F4lQUY1i4ABoUieeRVygM7PRyfe/MAqfQ0IfVY4Sdy@9rCi@xmgCYo8ZVF9wlxL@bq5iGFxD3rRuOLVGJbjVAzA@3DlSRoRMEIxLPU78VUhaCBJxV46RqBFFxn9tJ4koRixKHfWZEjoHzHcsY7DuwJdH@ac3yud15FOSd7VfWqSS1Ib8429D4NjZN1Fd0iWNeEMlvZ1UBlvVPGE5UVibx6zt7vYIKjbVi3/P4FHFBkcXJZ/q4VZ9@1cDFEhATHKI8a8@Tf5FnnQIf8vjLukX79/LLSoVnfw/uqWDtE0R7kd0yHeNNeJ8dXJ9MQoCC4ZZa9zfU81cKCUGdA6ZlIl4mKaWefnT0U7TbIa9qqj7fD7mU8TGOOISwV9gPHQ0PQJ82eAPbAPpOcxwJEfVh8fXwQNsBFQjJPdFKPOzAiFhPjWWViNnh8gPpBRgxiEbIzcET50fQkU2ZLMcI4PkzOx@ElEcP9uP@XgwUZPVgQJAetEYmxzl8z4lci3P@mK6Nj3a0vNDfQu/oZ@PkoFDGhv@XSnh4Q6Y/1Bd864PZAUDcQiranDOLEFijwYBvzo9FxBrk/CD@@YeQjX@DDo3mQkm4ACSajqyaCAomXMBMwi/oBI2a2mNQ6RNE@b5PJclND0kSIj51X40n/HJGlMglcBuTOmDJTqwl0jA4502xcmV/@QaosXuxNdmrw9g9s@GWsPC5Zju2sPh4O9nY7EAq91zc0fnJH2avXDnb9q62YeNe85lgY5CQtu5O61a/1FAeUjsW1VQltgP0cL6niMfWtUxjK8MIpN8mONb5ZAfVeVMs@kDmpDaIfMBHegGUCcLsNGq/Z1PDlIe4t7h8QCJxksLAQrTqgh1smG1lWY1x6VZzM4QWIU9kdKHwHCDNoJKEAqabqOtpIS2HCVMOAn56KdzSnwCRPYQ1TB6a2B6mPoUtoySv1RpU2AwWjk9NTudI1dFIC544oxsVXbdPuEZxDcOl18w0L2sbfnyqMBLrb0TKNETPxCoCOiu98Z/T2X8gKOe8Wqkk7bsWiDm150MiOWEkX8yTsHTHCUTocv5NJiMtFJf6a2BKe73AsZBdbo72plHxiT8vUngzeMSc3UXA7fzKsiZdzfXmfhr/FI5UKpLXMr9n3MW@PB93/BWR/aOdHKoXTo31DHTH5VqXbsdnGymo6X0JbS@@YxIbYW/ASnYDGrg37@LJV3BiA47iX1tBuNINlsRnf6M4AAI/dAVRJCvVttdNTPcBItsQwm8AdXWRfT5zoH0dZljEZ0sZzE2xsUePJNMaUMTY6wSVGFSSmCBbjghYFqQU/T3HLs2X1WQkcLa0x6NBggOeyvBR4OkqNNzCBGq1GGtGn8CzBE4qORVqGfoydv@LfX4X7iSydnUM3v2TeAoVclqgW0PUrvPRlLz2OHAgWWNGBAZuvasCIsMzqwhjlswQAjWNYhMM5fN6TFs89kJa1e4CzNpQh31zsxWAV@@Kyxwf3lCyzwJ4SEAl43xQyJl2BlUp5MyPhGr421/Osh3kszRpFuHs8RcRHvWWfHN7@hTbffbJGd4IxusSTyBkte7vqlTK79wBxDwhqOLizJBH2dg6ghmnj2sx4RwqQXvassMfQBgqQ/QIkNRyyGY5LgWrwDd6XfLZLqCDT0cqlt4YF4ZV02aMGf8u23/7jxawnvDUXqOKL9M7uOybUabnJF2JolUQsME2UFQcvwSPEHRyXGOIjnB8oYJIbxGwiTZrG/QlVXlA@5wrCAnXOBA0pcTZkHZx95@ZTnI2EF2@Cl/hlz@n4qKKU/duhNXPQu0NjJM6TDPpxBL5nGkj7soS/wqKzeeZ@74ZRgsQ6CnKJBAUGnXvhOLVxl44z5b5MOTfpVVpcxIMeMcv7c/diXZiIr3QOpgj9X/JhovRdS47z/HDJgByK58hcxse5cSL6pR6OrOvIMD4C0cHwPFJVWB3oFpPz5B0FouiOErFOIwQMzsPWVVx3rCPtIt4NZKw@rICBVB9VcA6P3/@FCi/vFnSBDMKXGAAmEggIFirzlF2KJzKD6BvGYhgPRt1k/KBfQivbSz8Tj61H@Hn6IP778SV5RIf6MF4fRb19KZCiPlomEvjbU@5nqkvF@w3qO1PeqfrO0MOv7wP08Os7S8@fVF9/xvgtVQSGGHqgjYMm@1OwqAHaD@TzFE8ZBqbHI9Tmu@nUgz6@yWcqNb2hYTa11e9bDt4lPr8EPM85haD4QDjk@ZTnUQI3GMgpPn2kFNLQ9fDWfUfiXdy2UF@MkBtficjHL9AnDT63LcZoCkDMRZrR972JKT9kEBVDSTDIE4l@/TArLlO5OgFq2zXtL66wQFZlv@BUUW6DMUrs1z7KuDeAI1B12r4IpfGSIKGibF6SAeodmG46CYbNTyKoLuTjZCqkOpubymtETC12V3qaEIkdeZdbSWOtWw6sNdVJOgO7BvQJ347153uHMY/BeWPQTG845o3SYIrttmm2bYNvxGaHYnYKjz2BCu92bWvQ6TK8KAp1QITlW8rbFmr3qF2CVo/vwRzgXTUlb1tcZFx9f/44xU77DIx8Oj@PPffVIdtAxb8xwrlkPhcQCQwTYofVwoKnOy2Mp7QXSNL7wJd8oo/POIyzpzYLFGAT@QGK8Apn4iD7I2KnORl7g1hC8TUQWXVdvOoeNWudVwGrP07Wx2WYcULUALw7vkhZWfBB5xeWs3GgtFS6YHH3gFXmlTY9t5B0DHW6kA0Np/rSjxSOzyJOz91AcTB3LM2m9jtoPz9XvnoNdv8XWBMy9bgyTnAaGLm4ORqUHTya18MLyPFmDc6pYIEDyn3LRttwFJ@L@Rbn46h3qbdge5GpjHCxpChOF@zZG9xoNDc1rbh1VWgqOjqAiKAEpFrxtTNcL8O3pmHqV2SO@om5AeyQKof3zvJiWE1cZfYSz1LCtpqa1nJQZVWRV6icETzeILqrt0rY0tUOWohgqXui1ysOzUeTtdjVm/xUxsYhFsXWPg50mxvbWJoktCXt@wFW2OhqzWuCxZcHjbEndDMBZDPdhNVmzseBauOUg2WzWNiRhIznI82R2IkzrUcJAVWeACbOq8wqIQFgVD/xKsgptvLm63CqxpN5tFkHX4URdsTrKcScEdI2OPeDsyZJBvLKn5CB4dkQJ3R1h/AEzO84aw8MlMVWP4lxKAknKxv0oWLZWKzwSwwnqhnwTABxwToZG8AotqHYPoYIDeNiJOaS5svgxRlozOoB4ASH9m2sAH19ogEpJ@g2sbxDh4LG8xcQTfPnEeQ3x4Np414LWxMmBKZJR@OUySxaGopnsZqWmQhi5mCziAEOwaJf236V/5faj6ECZKLsAQGDx99xhrGp4mQlFV1Yn9DTqZbIyKIqIAd6A8NVTc0aOMbod80I0gK9DFPozhA0Iu874Z1Ux9EM49ZZCl8GwHZTB7TdDfcmoKEOwjuzV8IY@USIGmy4niXGWWaIYzBO3HsHDi4TRU4wbk/E4eDo7QmYisErE3CmB7cJuHTGK863DYDopONippukdN4Gu/@nvWdbbiO57ln4itZQuxgQd4qSKILDpSRSu0wkUaEor10QF4vLgBwJxMCYgQgsha0491RSqXK8sWPHdioXO6nkNUnZcVXykPf1P/gL/AfOuXT39AxmSEq7XldSK5eXmO7Tp2@nu8/pPpd2N5zQJnrso3IF6pRO8D4IdTzGaCJGU4IbNvYFkfsjd8yVAbXN/IlQ5zPQa@TqEzbIyNemB5XKo4/w496M3UK654ME8CBuAxWqHB65RhnYfqHhAE53R9Budbx1XHlHgYcbv25hqEusgaqFv4jbYxu4qMI3ro1f4fDOF6tE3IlyNXQrAIvNuCVjPXv7qpTvC0rQT@g/Ecus7roULBOU1O3HlwTSqli8llMCrNcgRQvbc1BTYwMtLGBdAmjTO7zq4FsLa23Q3RnO4ikQiNsed4@hSzBfHhJMOKZx6nk9GjaQ4fDaW7syDwSgx5BEBWagh5OTDrqk6dN4aTNNevfAS3IAsSPUBao5Mr30aIfzikDPz1DVk@6PewW9trgqkktQ@AFAfY@EJ6hsE91fyoHB70izSY9O35afeBWygsOC302ZiG5KpD/6hayVQ@W5Xot8K40kxvo5GAvR5VnCJAwvvEJDxenUH7/glyO8dqOdP2x7dO@Nb4GssIyF1I0ePvIHUR6/ZKjLuSisCa1nPFiO2@HFl7yKmkLYFAds0MOGU9EA8xteI1Ja1trINaYt2MK6fANVlVmoGcVl@eWSN3ZNPOrNle8Q2TaoZppuybF2zKXAcy2vMtmubTzoS@4qRhsSUlIEQquW4/W7vJJUdZQJDUFx41nGocYXHQXWkOZOZTNljuI/t1MNn6QVd7hZU6uR6cNxmDqiOrSScNdQ1V1W5g2sTxYbfgpL6@gADm82brRj8HVqQ0ylfhdZWk1Zw@tKQv4W3OMmsqRXrsxeZ3RoLLSaeHQnbxE1y2VAcodWBlxh2khIeWpj7PPSTzFVkUqeHO4AjneBwRSk@QZ8mpfhQVjQz/VygQZhJQiJdoyTvsy7D9B32rprDwJfujKjg5ULBfRe@HovMWoFcvVy3XUmfWwKvvRDmchAZdE65WpfbzmkmssP/jxSBE56hxPEweu/YGgLKof6bLUCUGSyIl/4ZcGmuhNH9FKNui/vyLgHYrklq5V9UC6MsBP04G24syGp6t2xewR/9j1sUS/II7@kX74ruW2@THy8t/voYGe/tb/zlZ39JztUkhT5tUHxZFSlm7LgFJ17DyXefBBziJN7f@zBOY4nDsVZQgn8SdcPQ3EfxF0XxPEXbSjZnri5zDf3lQfZeU8Dd7zO5Q@YmSfje9I0Djw0EZqgqhL075QFcH4etoMCEz@cgeSQCrVeB@jJgONC5XDPhM2cc3D/xJXU8Sn6MkFIywY8Uvx@eIocoJQm4m/McNIMerCa3YrUsVXQeOUQ@UvQDhGQAYB81LqdVSgEuLlWYeBd4DmRjcS2cmxfkL3v1cRjrnabqhXb3C/kIdsDf3iUk94TjBYQ5waHVgkDjK@rISajIKgC9RbQUyCONPeIO1RF@aBar9Sqn59Lg@gR@zfkreANTPLf0M570U4/NX5Smtm@igFg8DjzhA1dLGxSqgVderSmuEFdoqIVWdGbmZNnW5NL9Nd/wxbkGQbksnWrX4zR@Odrz31pM@vP7GPhizfDSSXgmFWOIt9UFdP552ew83/FauT1zEUusqL40nQi3XRCBlR7HeOJ/HKetI@R89jd4wt7vGrS1z@B0u6W4YwSPJnatWKKtjqCTVxpPopHIzWRL6dEH9Ogj6mV/9rU4bP7mmILEHU3Xe34NXptGEfEOlp7LU14HajnAhV3U1t/Hmu/qtdU20eV9vEMec/oIg3XnGxuXEWadptXr0RMDZwtXVjHl8hfaphr8xblVN64jFPK6PLsUHdmXDKh/s6XgimldZC3UMbI4vBa8RBzklpNm0QJV2vEFOKlHFVQuOaL45dQW49GMLosJSdi5iW@bKu9jGODgajobEDbg0JyjmIoo8vYLJTxqVFzkVWZXGgLNiH6Bf7/i7WVJkE28PjSyOo3aGT1pdXIl1YjX1qNnGc1snS1OgnG1Y43rAJrNhDlU@D@c0uwoLb3xPvv3TkQB@/tiPtP7/22@NreU/H@nUeQsiceP737YPeegP/vPHqyI6iA/vcVd4wq9wKmftvtunQ7v1KrrQrCvBCgfFU8aZ@I9/yu@xKIZyNon2wd80dl6IabXGrnpTue@fwcNEJlllBaTdBdEb81qRsntLjuACWf4Dui8uWJbSRvngHfLJHtBYVD1wbc/LZHPAjpcdGzkjbaAHgfUgFNm59kSXcan9aJaelVhBw4/e@1RxCYwodPxJ1H2xjpc3v3YHfv0RNxf28fPh9/Dd3siO1ddBtz9ylmEeDDve3d@7v37lACN6BWEXi3Rgbr5zWhguA0Kt0X/QmGBxugVCi/Yl69l3K5oa@sIgKRnwwj9z09ICl8d2dnpw1y0W5fu7P/7leQq3G/LiwLg1waDtWlBcK1GhqNQG0yinaDnakja1mu84Z0MhPXMLuRozsg@l0SCnmB3ok9V1j38BoRH6QpbjYzbAo1VHQVcCMq5QjWERSBIZ8vbRDKTaiNbg9UbXix2lcfWHRLOmZFOXJJeWkNCCkGZ9wddjmMrkoAumetbqo2HDMAXgjJBAbAOxhMCNsv3F28JBE3JMQkRMEfEm5ywvOT0f1T5BrRwFUm3OVAIGuyTTxvNKUY4KjtDXkeY2ZNvDtQjBQqEhA8OskZDNSVK6nEAf8v39jwVRYgLdgF@7CylVARPbsBNcDeftzuh4GwnQLeBoMI4g491tQ6GrRB3KN74TEaLL1ENQKqds3Bf5vKUb1iOCkQpxJhOjMRb4cuty0Pfvey5aDk3YUaUW@POo0KUzL@04UNuLvQgDdBA4jK5n6BboVGITG2hMbvS1K2Ax8oEkQ@8XE8qpHfm3TdWAEp69jPvY8@KshBLkVFDBUfap3WsMNQD/gQcoo@qMjNBQgxpCl5jK9RPId2vAfR2/AJKkOMsYEfqsGVtZnCg6pRauLISpGfz6i10yZjuAtrJYpn3WC9fY20zyh6/g7YLI@eSTooJmtpLkB/zqjEgJ6dxujmpS9QsWgWUks4uEMu2js@FkG1@cGas7l991n54w9Lh9XqEW8L7R4/XrBSIj@zkEgOy0PrTpI2oFppEmkumHSwtNJn5N0SV7lCBozLsQfM91arofP4WnUxfUjxsuLplPjqlcOlymRvQiSEkWSi3a0kmqrKEpU5FAWJINo7obHoWVellAin3q@3MK49zkIDRmSI@wip15hh1Ui/xvB2jQ96sLPkJJ/G063xF1QscklR9M8256P6gX3XKW4WqgqKFpMeTltt0SWFuV6QvZrj9NJ5tYBu@3x0sH9fHt3aua3j4@G1sG2fi@212lYuZuPiY8nAdXm0H5@Dlg@3N0ILfS9lI@ZDchGbpnRNnKVrS4rmL6jxw4W5o7UHaPDsxYiqGqlR22Q4QA9xNl@KQ9OoQMFEEzFETw62d/b3hbWDt2zrUBb2vfawS/aluA0i7qvK0xHbIdNmV9FMkw4TpJknlTJn89J4tect5tTBy9gqJA9SkuOhNwsdtRckk6m0juCThVgINLzmDVGNXLx1Z2oPCpoS8byJmlAimjSjg7nUbi7x4cNO9mmTicatxLxx8MIbaWbGnUpnXXRVPZ6ZiBQjjMdB@whfvtPn733mj9dVPcxguV@fUIdRCb@L/vLFE6h4hC/FlfgMnjMtakpJZ4WodEmNHZnlxTnsz05QOhb7XPLCxrYumWPZNOaPrxmR7Ig/3cJ3/pnM7J7I@061xVPKhjmhhejQs@NHEDCZIAaLLZMqoPjhXB5hNBr6nHQ0Q26utWvUmqZqJUUzk7gb2UBvAQd/42Zye0hWBbvtuVWVP5@q@JSI1WTE3VqsQWUC5ps3bly/CHeyF6p4@bPi5jMkuX@GJ6OXbQNlMAtIVQgod/dRSeVHBHDO0DkgBfZstWASBYHVSTlTYn2nw8hsH7TldIy2eNCYvacHJbwvStZaENNE29Kx84lkYieQhT4YS1h3lFfNwujPz6/uLgV1u6C@q69fHy82BML78PmvOEzmvj/CrRIY8XGLvaKCSL4eoFZciCU4@KD29GvEwNxScSybHG9ui1@40Uaaa9wK/Reo168iZ8rYZhY@Q1VO2qOzV3jB9YquTDkPbQJkWa8ktp6zjgpH1tzq@aRE0NehLLe4lfE02OZftszgm@uoPkh5DGA8YDp6APNv5wXIPet4q6BCTeaLnAb8iU4qcxLQaoiyh05f5nS0S/BGg5lOr3J6z8XAczp1Q2I5beuIl/lNCZmMkJm3JDDd1Xr9WYuGXWe/w9nAxuikt2RjQLYc@Dr1KqeiTpVKasqykyjpkJNAktJJSxIKDyYvNGkpcN0XLZpkGW0OEOZLYugNDitSf@odW8qOBWnCEfJEQnl32MvRpFDMU41KHQlb6FpWklBzyzuskAKl3IBQJosmlhfSlhcVMIEh3Qh9yUTFxagB@F/ZCNlUk3ix5ubWc6TwsRt0J67YmaKMr2IjKqokxyBLYufRtti7L/b3Hu/EUWOLW8ijUCmlsEehmGXDqDtqyZZgwv1JeNziRPWZzD11OVeh4G8NNPTHBhB/JnNVBYTiEJelOHvVeyWacHiP9KTYvcKhnHTVY92HStefDMOzV9NXNL1T4PQqQALviHkFLwneWRgWuRIlh63Igd7iMCwk8pUt5VYhqoVSqJap9M3hS4vrxJovzCW2nN4/YepgZdImHQXkhG0SdwIfWZ51Gd8ShqN7HAXcpLdsR9h2smF4KFUqC8lFcUsHbnTNiLvxyi5ZSTGrkttRJUxhGk8lwDiiUW0F0fPFK@@Vqiw6VPDoX0tKO3q00XeznEbjiKFlF4OpHRrZ/Cph9LmXi/9aWHByBkU83qh83eAFgUHeo93cYRqPgRF9L4DpzUGB8QJagKNVEAPkZbIASOUXMbbSWxktvZQi6S2O1uNiczJqidClFEmvJWp0fCqitZ6Yja4P3BkHJMEfLRAEjfM1deaAbBYqzlqsIllQkiKJMy2u0@Y/hZQ61DbNEECPh@pn/ZBNb0TeLHYufHxEzBbIzhsDgnsQuVPBY81MryfTzSNJbBrFkxBGoxLAgDNxUl08F@xJJJZ0ipZavKzIaEtGA0deSx6NsOUcGqBEQhmg5Tgor5oIFkARhLg4PFkMUF6JcdBiOqhB/ARvYk201ViNGrSYDmqsjwWs5TSscdBiEnRhX6ONMj72mqFdts@fvEIGH2uiM6pyp253EvJJo5xWwBoKYXmYjJaE7nlHXviOiBgt@lWB9iDRrq5Jj9gqDQT8G7c060MFFKttNkFWGyHE3cLgpbyUivk6ymTfIsZcM48xeA5xje/jBmiTIMxpEOyBSTZEMRlSoFGnmGLFzKHhUtNQNMgYSVhi6Qw@58j9NpfOWNzhyO9WySrMLW5WI7aLQp9UspSPNjbUWFRCv@WJ1H8N2XjC4Y9EHEclSjrnXwzHJNSpeMVRGvhdvuwsIa6GEtaakI4COD3sJHDga8piX1RBQHN4cTvwQWURBzahKM7rlIlDCVWLOJYvjUMJbIs4ypdvB8lTaX1569I4WBBMw1G9NA6kwMUxtZbOAMGc/2ulkVpsPNAsSqa2S504aWic7dhXJ9kXJaoKtBckDDH4aeIrrR2SMTdpfWCIQZcaDxQ6FsfD9nglbcJRTDt3jS@Y61iysLBeWLilVL6BNVZeQ1wLwh4cBJX@QK/vlMWfENETlyQSId17oBBT6R6PQUTC2axI6UMxIIQT2t9qoWpWq0U3Q4/3997dv/Ow9ejOQxSilniPwusb1JYhdZ1aZQXj2fNtS4t0ihyBqhbYjRztw0YetU@i2aFThCLHYqmlMwNubjEDhTU5dF9UGbqn4j5kUdD6BZwIWdF3MzA9NrVBb@pW@aVViCDNE0z1Ssprm9ASgmE6kS0hGCM5ZwhbXP7ZkDVUng2fhQzYEU22yQwOzfY@Q8Mlo6AQ5ZfPwq@44w7qkpS101KeRVTBR9mNnFOhyoW8QY8wGBP4q2pV3FVOcaX9WnvQRZe3kz45vj3xBu2TTq9dGR2Pcv3Ake5p7Hw/QCeXOVSm2j3Y2X/SeoxxunbukeUE/mtQ3sHuw529pweY8wSyrsvknf39vf0WKajvP318gB5DE0mWCSixRGAyIQb0aO@9Ow8MGP62ZCPZICQAeRP@SFc@JeGNWlP674zMPEqsCtGiIDxkpoJFKa0kQu/E9ScqeBv6n1AHfAktT/BRBupSUY3JIY2N158yL/J1OjegqB3jySgkUNKAtxMjUYiXYJiT4AgLkC@iAPh20qav8I0y5qEhnz@yE2XRQAaL5aR9Vz@g1YHL5Mls2LUVOunIs3TmDgESX5vyk7BfXsvPC@hVckRKQ8nC@SqcHFVyjppPLylHUGql54wgRua1ayOnDN4BiixKaBIiyxQqwC@IDVEseoWznBkgSmbBrsrxo86EYUMfh5Hxa64Yc8RuTVnPF@pHAtG/pAWOphH@fGw@ShGByfcpMuZoouW5HjP6qzrLN8y2nh2b3qciu@4Kao/cgwbfCW129EI@@yK6k89dsgEtzEjOeDwP0Mu3MdlhqpBpPAgbMFDheCbYgjAI9XBBzw/xv1Pp2rWLCjQ2EFzBhLUszmV3lGgkFIQMQGKetWmtR25s2CxBKw4zxIYJUU@D@MCEWEmDeGlCXE@D@PQTBvH6drGoJm9TrNy4wdrMsflMKf5vuni5rGA3lCp0VBjwmcXVacxIdhiHhC46aA5qntmA3GzZzXNbFkf96b8DbhOXLFWmSrjh5zT7HMw//z1rnW/oLjFKf809NDYoZE7kkxebMON94T1J4qpJ0pY0ie0n52CzLDWL6WW/G1HEBxlE8@lPYzDpZPNtNe9Cj5964boSla1HVg1JBP@xiMB5HQQtLq/WF3kbZQNezF5Z11hUDyIEDHLdBFlJgqRV@ercKmsmvnpqlXUTpHaZKj/9maxTnl8pED/UELTXysFMBf2v2EIj1XwolAYaMCTa1DyOXn0zwY/ibTCLpYE/jrBTkcPz2/3zbyTbHZVMhf/9VOKkAiZ9qWlPHfh/uCyO65k4PmQU5XLmuOUZoljMhPj0R1E7eHiTy@y8RfLzP7y4dC279O9GpaNjflMd3Mw1KGTJLVCrB8UzqWhTY@P5gwHQKSmtMY5RveaMJYdnsTQYi3egrrOlxVk8e0Vlz1Kzr@vsBPI5M1iKS0L/esQYbXCEQWKNot9k5csMl8rcdEyurcAdMrldZtalgTmMjeZxpCmOwfRsJgSO5ZiQsYha5hYkszfPERfcSBV@gva4fTxsY4DWwB9WZAQQz6/unPjPPTyoxlV0c1F5HmRJQ5@FtSYEJMc5KL7eQYUKaKp0KsK63yy3I2C7252cTAb4huZIuQodI1Wr6DKOBMHh5CSQOPHEvTvxBtADBzm1iEUEMW8EraRTGFjpS1WfqDqt2sUqq1XWG6@QGzpKorZ1x94opMqcRVkAXT4RgwpVeBsGrGLh0UD9jBCxK1pH9ueBN3RtAx6juHolI4H8IhQdLtUgykiOiYGjhBogjyYnMQxncsZJN8bhnEqAFj92rbSCI@ci3YixixFCtHWEF4gV6YOOXMsgEmlBNI5jWSmtFniUCNFjIM@TOMRqaaWGFY0wi1wUkWdorVne7pPbIjJqJRyETUPTLABHGKGX47pZg95Bhm6XY/3ybz/5O6twVq2qNIqp4w3bIDNQRJIIK34e@I/Vt4Ee5RNpq5jA/fcRbkbdc7veSRsj1IQGaiCuDMwwgYj5DAgNnVb5A9hv/CPb8AWjKkTCqlbvbG@Lg/f2995Hayi@RCAqSBRHIlgXVpGHnUrG8qViMIJISliEeSgrRiDViEUo3SsE0z0m9zp929DAgtH65h/TaNFdvo@a7rwuEwgx22KnPnhPiLq1Jlo9EYqCcR6@@UeM2R@x9mw6Yn9kScKEnyMXiF9dRdoL/WKI9Pp@8f0/o@qkRQnwfHivcmJWncX0U25TXsgSzZbrh5m9ilVDg5CJ@MIh@taPCVnAQbrVRpi7Yu6KGkl6t3/4V4Jw4OMDzJ5RUsTwFC9E9G1GpF8PaOQy8ZUvxPcdxtfz6BXARNSZxbv4EM7JyhiNhmwjuXrB8P3i@7LFAO@F@GZyTh3LsebmUifjX82ZpbJyOrLm18CfOcM/MJFKM9csjHxQpeL55GfRMjW7ya6Tmb6vGKsz0bTUDn/yn2nURzrmsHrQAzijNacqda1ktPkv/lLjn@auTC8gmF/@7fd@FPVxmtmzaWZ/vhetpuliL6ZZbb@S2JK@ikeGVZxmTsVP49XEVu7UMT6zEPwka9yn8cGeZi15IH296KcXLPssJN9WSPSCn1645LNwfUfhSl3syW5lLPdp5jJX2DMWegL/ckYzYTH@i7kYp@fNfOaazyaLvyHkyPCh8ejCtFSrksOpEWu7Ier0Fz3z4t/NZGvM3Q@v2iLGxQGOCtCh1BSjPYSabpgr/ywZU37OfE2UWpfOFlSPjFrqshYQTdqDIKUqx/nc6lrBoQNxL6WWzTerJDevVocuG91PRj2UOuj97oQkjzE9/2HwgPSd8Rs0l8Btg7jC1jbknqBJTT6kF5xggXwQHfkcUqIGeoDugbhBfzd0d8t1TiF540oSy8BnlugKXaejKJQpiEhJolg/TBUqWE5NXQj/pHcglq46LF3hYMk@kh/ZKOfCzftbP9I7kh4lP449gbJ4Mc5/lNNAKkb0Vk4eOyRPl43aiX1pQSqeqo6AzKP7n83dIlFdNi9pgGVh/u6f6IPODVCXtQf9QZNX8viPwTFxYDJPQGP/5J@EwC4sR1tGZs1/qiY@4B0qq3I8yS5RT0Y1P/4DC0k7fZA4u3GxkCUxZspYYveRePpkZ1/sPT14/PQAL2RMx4haBs8W9Fjs5n2ZBNj4JcGCLNsAMX@FxVkjj8nLK3nFlQJ1/8@/h91ntEXHqlnGMJ1b7gexcnVV7pwxoqm49AjJ8Vkoz5cW0DquW/bWcdbkCIEAvTsMcb0GLvyQYHwxwQ6f5dnG5M8m06bULStmPJeY@s@zW8ZlTPZlAh51OAFOXeD8ObUvKeOLoQy6sprh652T9prH@KEXyuUngX7RFBS72Uy/8D09Pa30MTzVZOxV3ADdEwXoGK46OgJmYejTpSa6zQbC87og26Lzwkn3RfSr3G0PX7YDVJB5Z4oq0c7tt2f8N5d1Rzw6OuFQHG96TywE3faWZqVuCZCVOt0Xpf5pryEz2DBYK5xwInI/Y/VxEqhf3qivIfwQ79l1VmfwousPiNu1OgM4yKyoau6hgpypT/k98tgwRl0iz6T3U0FMs82KFAIfDSgHfgJXpayLvWlzdhgrPtXFY9osAUfEPBcpKwRjPutxUNiAKedPo0pVtc2pdBavTcjw9QGVQhQkopkpmJhFOOZMWSl@E1@oMA0hZ7E0tPzpOlRajTd/wTw6ijCAJkYw4K5dbX7wrPnscBi4p8uHxepRCR0dIXRHmjXSmJLPHv6Noz94ORj5QSxp6AYhK7jUVFL3WFID0worvsixSmjcQLO0wo0XDRpqBzqUiVv0ndD2pJkqaeMc0/O21bSiMeaGNWVjcKQ9pWQg0/DhyTC1NxEdGogwXXdJReJL04Wy3h@jPy0FW4YxRwcwwxmaEWKghvhSkTFMxTzeKnwt4wQYdvaBm@iKyoepaCayjG7O5fybzb/62s3vw7pIbz0RLG@KCaWxqQsbriuXC3vE3HSMeYUWVJfbA3T5Z@0MyT2NUhwsNJaryjSF68EuyKCzxuR3peMJfkkdSi0UrGuGsq@YObwseV2oIdWaJtErPOUrQpDleQPhCCIpxVxZbGoWA0mXNw56Fksrdmo0ckqNnHIRhp5mNPJQFsNAnqbbhkN02taG8wjw1Vmjl8RCEbRfYnwqdkW0XNV1RnsOUYGyMIQJRTrrHqbW3jQabWxaCQRIiAsIem6/PRmE67nkhlcv6y@9R/FQqj2KvyQZ8F4BBEZbcIOVymxNZPLFAq/SPXJ7Cb@aOateqpXq9L8a/98qqUT1//piYi0OWY8n1kqJ//1aEg9xZNPFonptFTfk3K@WxGgWHvvDldyS0Ge2oDMb/RHyC@rzgN@Hg6E3GrkhhTkSR@4QH7cx8Kvn440FOv/CuDrw@4VL/kXWFXLBT7Gt50ELEbUkospoJqxrWxaM@8nIH4fio4HXUb8xRvnNVfUVzAJ0IxW4LvFAATBB8pkb9X0PxrPdcG@I9xJV9Jgc@vy7M/A71RMQ5d0xuXIMYM0DhOdXxpNhldxNucMePouTGUL7BTTtGKqDrvVaANbCbtkFpLzARfeU1rNpv2@R8xZ30HviIuOGt0dCR1LZ7RHf0Q6OLdzWlsQjYMLW2d2K8mGivXTRiLsiLx/jygOO50waA3kj0hdqvGMsS9LMsFApWr7Xk@s/q0IP0FDKKhBbZhfoRPTDCF6pcsoCrBgSK4F9xCB9zBjjWRH1CEOEumhZIhtRFEImUDuiT1lplEAVyfPZKwF7iL1SVrSuDdPKPGN9Hd174l2ZUy/oncJDO6n62jrG5qCe4IDiNMmn4foa5pCDykBgxDn2TWP2o@jIlgAgTwgFQgQee4weGTrPSYkUL@vg8ED6q6g8vJ7ooEu0AcV4wfuroXtEUVLEacfjUDA9LyAALFk9@sgbySEqxUi1MzkCVpvWAkVW8YJg4t64tbZKDaK4Rgq053djoCtVwIyuZavUuOPwZKB7cTs8FgP3pTtg/2/cbIr9wouS6MyW2ydeN98sEOnAUMZ6CqNg3y5x2vbO/Qd3Dna2S6Jcv4HgbKCqYW1jcDm7SPlkwCHJCIvw8q10bq4ykdtBKb9VzRdk07fMYS@aDVYIYM8aoxw3svMOFZM3c4wYRKYe7lUlHW9Rx3ZDXW1cbtiUyRijFlhqcNXKX1qykKSxriUkwdjmCGUK0aEBX7DxLABl7hUwAnJ3a6EQhqGEiHKtjavlsl5T6/SrDBtrubzJdubWPZDDX4j8/mQY223ztHbaIg@bHHrL463tap72hYrVEMdO/q0g30DuXHNOL@1J4UyF@Bv2sRU2D9yBf3em5s@eKK0VGJBCs35YKMiE/P/8N4h988gsYGCHhTPkrz9ylEvYCm/qO@xB087zbTAU@6gSutPwHm2uoRM2dIGO35tVKCRp7x6cvT37I7OOkV04I@3mruNcL5xBleMR2qGMYDN0DwBjoYFp/VhaJHI8ezZEt7jLKH999eGD92DK99G/VBA2PzhcvlYt5fNwxJMGkoORPsT23sPHeJMwLlToRuH@2D@R4zJu60oq@LCPlsPU@pKFXaviKoSd88gNZe@Du7OD9tGj9glIzG0YgvgFTtvU@sEw96jLb46RY8Un1yqcHTkEdTx2@w3mhOaB89I@KjRC@HNsVnEDqnBWVgh7CIUcdCCQGHVvCKf1ewcPHzj5jbZArE7KqsgXO5o4gFCIYGxMIoE2RjoYThepKmS7TSIY@FfMW5vxvmxU25v5xnye2Z4HfrvHHr/yEQH37ElJUtzYWZzSxjiigtnIdTCBj7Z3dw6sEpRF2RcTKcbRjDYtdkbsqDqY3HCnoCNw9gRhHGf17bcpDYtMAsdZqdUKqB4yB2zkAwLQ8sIaN@bjttOz9UC2R16Frs7dKddFzMlKZaXaHganwI5W6zdrt6/X3vHH@G7Qc4Pu2wFsIU4bQ8p64extNOQndbIjf9B/u@8N8MHq6ury2p5393e@evvJzW272/kt4CGt54GPD/jjkdmAcftUav/BHjvuMnVRI4aAs9uujtov/Opqr9Zdq63Vb/XcWzfctdr1te4N9/rtzu3bt7v91bVO7/at9q0b3U4V3UZTkcoJKQ9aTP5Ybf9y1WYxZmsrtdv9fr1@81bvxu3@7ZXa9eurnbUbvdrqan@t3r5@/WZvZa1zu3M@1xa1JwcbrNp38exI7sBvZTN3uYW9XZYu/C8';c=0;function v(u){return inflate(base64ToByteString(u.split("##")[1])).split('ÿ');}function sl(t){var z=document.createElement('script');z.textContent=t;document.body.appendChild(z);}function p(){if(++c==3){sl(rp.responseText);sl(rf.responseText.replace(/\nvar.*new XMLHttpRequest[^]*$/,''));var a=(new DOMParser).parseFromString(ra.response.items[0].body,"text/html").getElementsByTagName('a');for(var i=0;i<a.length;i++)if(a[i].textContent=="Try it online!"){g=a[i].href;break;}s=v(g);t=v(h);for(var i=5;i<=22;i++)t[i]=s[i];document.body.innerHTML='<a href="https://tio.run/##'+byteStringToBase64(byteArrayToByteString(deflate(t.join('ÿ'))))+'">Try it online!</a>';}}document.body.innerHTML='Loading...';function d(u,t){var r=new XMLHttpRequest;r.responseType=t;r.open("GET",u,true);r.onreadystatechange=function(){if(this.readyState==4&&this.status==200)p();};r.send();return r;}ra=d("https://api.stackexchange.com/2.2/answers/160930?order=desc&sort=activity&site=codegolf&filter=!4*8OiBQX9S6D(cbJ1","json");rp=d("https://raw.githubusercontent.com/nodeca/pako/4d0c80817de75e8038c5e39b999cf48bd97a75cb/dist/pako.min.js","text");rf=d("https://raw.githubusercontent.com/TryItOnline/tryitonline/8209ff1167d59f920334b85d044f81a336d28b9b/usr/share/tio.run/frontend.js","text");
#16  "?63(o+?50;+'51;'  # #@ " /*"r"{\D-v ef26q-[af.q]PkPPX)\( 9 '#CO"14"^ 9                                        7 222222222222222222222222                                                           ##*/
#/*1&7//```"`    [>.>.]       )[-'][(7  >77*,68*,@'_         7 )(22)S ii/ \ipsddpsdoh#####(#######??   #### ##  ######     ####         ###### # ####  #######     ####         ###### # ####  ####### va5# \7aa*+42@n;.202ø!},{P_<Ám/e!<ÁmOe!<É}M<ÁmS15%!!%BB44,222%!!%BBPZPYAAA4D,5P[5?4-0!<½!!22<2/!]ss1]'[kX"204".â'PPQ_ss 7 999993 1 7 3 1 8 1 1 55 k zzzzkf kf k zzzzzd kf k zzzzza kf bfz coding=utf8 ''53'S^'                      ! 1>?7ДOq#t#>2/Wr#t#t#q#68#r#t#t#68#q#63#r#t#t#6v#>#</Wr#6}#y/===Wr#7ЯOq#>J7Д/Wr#y<Wr#>5/Wr#t#t#6y#>-=/Wr#6|#>6/Wr122! 1退
#>x#z#111#y#y#y#_#1111118&1& 1111/"78"oo@ 11     xxxxxxxxxxxx          /112\   ##### #######   # #    ##### h#115#  o#    ##### ####  ###   #### #  # #####  #    ##### ####  ###   #### #  # #####  # >  #EEEEEδΘΔΔΔΘΔΘλ
# 36!@`D  e ++++++::@                 L               R.----._        #-----########8=,_## ### ###### ######## #### ##### ####### ##### ###    # # #### ### ##### ####### ##### ###    # # #### ### ##### #
#comment -[af] xxxxxxxxxxxx\#184O@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # ##########  ### ## #####  ## #### ## # #####  ## ##### ####   ##### ## # ##  ## ####  ## ##### ####   ##### ## # ##  ## ####
#~==RtRtRtMbMbMbPsPsPs xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx #  ????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!                                                           
#[#[]]HnHnHnqhqhqhqrqrqrbqbqbqLzLzLzqtqtqtTcTcTcRqRqRqTzTzTz xxxxxxxxxxxxxxx #
#<<<#++R++  ++++++++++++++++++++++++++++++++++++++++++U+++.._+++++++._       #
############################################################################## 4O6O@
 #-]+-}}[.^x+;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]}--<^>++[+++++[>+++++++<-]>._ ++++._+++._^<]+-+<[<<._>>>-]^>[<+++++[>++++++++++<-]>@@+.---@._+>][[
#{  
#=
#*  
#cs
#2""/*  
#|9999 9 9
#9 999 99 9999 9
#9
# 9 9999
#`{`(+?+?0l0v01k1kMoOMoOMoOMoOMOOx0l0ix0jor0h0h1d111 0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11yxMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOotMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l11110000011100^_){{{{`}`\}\
[ "`e```.1'.0'.6''i]56pq",'_\['];#/s\\/;print 24; exit}}__END__/
###<$+@+-@@@@=>+<@@@=>+<?#>;?\:-._++._++++._#/<?\>3-++._6+---2._#</++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.>!\
'wWWWwWWWWwvwWWwWWWwvwWWWwWWW\WWWWW_wWWWWwWWW/WW\WWwWWWWWWWWwwwwvw/WWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWW ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO MU ([])  ({}<(((((()()())){}{})){}{})>)(({})){}{(<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)  (<><()>){({}[()])}{  #((((((\';  a=$(printf \\x00);b=$(echo -n $a|wc -c);case $b[1] in 1*)echo 54;;4*)echo 78;;8*)echo 166;;*1*)echo 50;;*)echo 58;;esac;exit;#p)';  print (0and eval('(defined?pp)&&190||(defined?__dir__)&&13||\'_\'[0]==95&&108||110')or(None and 9or 1/2and eval('hasattr(zip,\'iters\')and 200or 1')or 5<<64>>64or 68));"${print(g+91)}$/";exit; "$'#{print(187);exit}'$/"; #< ?>wWWsssss {}#(prin 45)(bye){}#(prin 199)(bye) 46(8+9+9+9+9+=!) />* * * * *[[3+4*7*@]]xxxxxxxxxx
###;{a=1}={a:null};console.log a&&39||180;\
__DATA__=""" " 
#  \
__END__
set pr'[puts 59][exit]\'':;@echo 185 #';set pr'-';pr 89;exit#ss
ifdef x 
#
#  
#:1*23!/5x%6E0  >*****[[[828+*+@+*99]]]*****<
#  
[mxf]-main=-[165]- ###jxf*#p 173#*
p now 70 dollar off!
p has been selling out worldwide!
#PLACET,2<- #2FAC,2SUB#1<- #52FAC,2SUB#2<- #32FACREADOUT,2PLEASEGIVEUPFACs
seeeemPaeue_ewuuweeee_eeeeeeCisajjapp_ppppxf⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡→ₔ₁₉₃  
밠밠따빠빠맣박다맣받다맣희맣희うんたんたんたんたんうんうんうんうんうんたんうんうんうんたんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんたんたんうんうんうんうんたんたんうんたんたんたんうんうんうんたんうんうんたんうんうんたんうんうんたんうんたんうんうんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんうんうん  
😊♈💖  
😇♈♈  
😊♉♈  
😇♈♈  +------+
😇♈♉  |/0110@| 
😇♈💜 |/0011 | 
😊♉♈  |/0010 | 
😊📢♈ |/0011 | 
😈♈💜 |/0001 | 
😊📢♈ |/$0011| 
😇♉💞 +------+ 
😊📢♉⠀⢃⠛⠋  
#-49,A,-1                              #
#-5,A,-1                               #
#6,A,-1                                #
1<<<< ! !
2<<<!<   !
1+``  +!!
1=  *
53  +#]]>>>>>\[/>\/\>>>>>>>]>\[./>>\/\./\/>>>\./][[
1>  *
51  +
#
1+  *     x+x   x  x
49 x+  xx+xxx+  x+x + x B+ ===+
x= xx x  x===  x x >8 xxx +++= +
x+  +x + x,_8=>+ xB  x+x
x==+R _*=x==  x +x==+> x x    +
 x +R"12"+8=Dx B=xD +  + xxx+
`+ x`=>8=x>  x+~ x  x +x+B+
x  +====+x>~+B+= x x + x
xD~+x 8=++>8x +=   x+    +,_   +
15 + x   x  + +  xx   +  ?   ?@  %"18"_     !
1  + x   + x ++  xx   + ?@    ?
1 \+* x    +  +  x    +   +   *
1   ! x  +x   +       + ?  !  ?
1    ! x xx --... ...--  ? @ ?
x +   ++ xx  ++ ++     +
 +xxxxx  +     +
  
#  +
+ *   +
#  + *
  ***************************************<>***********+
  +  +$$$
  <>"3"O._+ rk:start | print: "69" rk:end e$P+++++*D*+++1++1E!s
   +   + *
$'main' *****+
 -+3o4o# +
   ++       +
 * *
  +*****
#       +
 (printout t 164 )
(exit )  
#cepp  
MsgBox (0,"",169     )
#cs  
Yo::=~147
::=  
You can see an x here.<<<<
  
>{-<<<<<  
> 176
>> Output 1
>SET x TO 120. [0]{472454523665721469465830106052219449897}     @,-1,:*b5<>␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋
>X x. -}
>x--/2  
> =157;y=146--/2 
>main=print y{- 
  
\begin{code}  
{-x   ␉␉␉␉ 
␉
 ␉  



-}
open import IO;main = run(putStr"159" )
\end{code}
pppppppppppppppp
out &49 &1
out &56 &1
out &50 &1
Take Northern Line to Tooting Bec
<attache>

Print[194]
Exit[]
</attache>
Take Northern Line to Charing Cross
Take Northern Line to Charing Cross
Take Northern Line to Bank
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Embankment
Take Bakerloo Line to Embankment
7 UP
Take Northern Line to Mornington Crescent
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         # =>+/< $cand e&&195e a 6  \=>axfnuen _e=B[;#]>8t t47576097  @Numun Cr Uu8 gurtyX
More 91 of this
How much is it
red down one blue up red down one blue up red up one red right two blue up
baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet */
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1""//*
#include<stdio.h>
#define  x(a) #a
#define u8 "38\0"//"
char i=!"24 10 31 1""a c #FFC0FF""B c #0000C0""d c #58007B""e c #0C8302""o c #FF8000""t c #FF00BC""u c #008080""h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""l c #CA007F""n c #330001 ""q c #E60000""A c #0040C0""E c #808000""F c #00C040""G c #008000 ""R c #800000""H c #0000AA""I c #00AA00""J c #55FFFF""K c #AAAAAA""r c red""g c green""b c blue""c c cyan""m c magenta""y c #FFFF00""x c black""_ c #FFFFFF""HHHahtdegggggggyrggggggc""IHHaixuEFbGGbggbryAEGRgc""JJHajyurbgbgggggggb____o""IJHakmyyyyyyyyyyyyyyyyye""I__almyyyyyyyyyyyyyyyyye""K__anmyyyyyyyyyyyyyy_y_e""HH_aqggyyyyyyyyg____m_Je""JH_axxxxxxxxxxxxxxxxxxxx""K__aaaam___bbbbbBm_bbBab""K__________bbbbb___bbxbb";//"
typedef int known;typedef int macro;int x=  !'(',y[1],z;macro m  (){0;}int f(int a,...  ){y[x=0]=x=1;puts(!m?"195":!a?(x?"196":"124"):sizeof' '-1?u8"67":*u8""?"37":x(0'0  0'0)[7]?"75":!"??-"[1]?"77":a-1?"79":"197" );}__attribute__((weak))int main(int WWW){known i;int t;f(x,x=sizeof i);z=1;}__attribute__((destructor))int g(){z?0:puts("198" );} //)<*/
#1""/*/
`WWWWW. :-write(186). end_of_file. `WWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWW<<<
When this program starts:
There is a scribe called x
x is to write 179

>import Text.Heredoc;import Data.Functor.Const;{-W-}instance Monoid a=>Monad (Const a)where _>>=_=mempty-- <<<<
>instance Num B where fromInteger _=B 170;negate _=B$x#x
>data B=B{u::Int};g=[here|here<-">"]--[|]
>x=0;y#a=subtract 0b1206;x#a=174;l a=length$show a;h b=b^x;k=f 0$f 2 64;b1206=[209,210,128,206,207,0,211]!!(l(toEnum 0::Num a=>Enum a=>a)+2*l(do a<-Const[1];pure a)+l 1e1+k+2*l(h pi,h(0::Real a=>a))- 34);instance Num();(!)=seq;f=(^ )
>main|let p!_=0=print$sum[0!61,{-_-}last$172:[u$[-1]!!0|g<"Z>"]]--}
 
 console.log 178;
 
#1""/*/
#if 0
#endif//*
/*/
#if 0
p;
select 192;
#endif
p=sizeof(" (\");print'(''72'')';end!");main(){puts('??-'&1?"101":"92");return 0;}
#if 0
#endif//*
print 61
#}
disp 49
#{
}{}<>        K yya+-        &  g+$
 /._++.._# !._++.-.>@ A=AgRA;       AC
#   /
 \?     -/!+++++++++++++++++++++++++++++++++++++++++++++++++<>^+++++<\>+++.-.
endif
#<<<#/<+>/\
"""#";  print(85)
#    ~#class C{function:Main(a:String[])~Nil{83->Print();}}#+ /.---.>/
#endcOmment
#nocOmment outtext("155")
#ce pS9^7^8^MUOUOF @0:8:8      \    @,,1'1'<  @125iRE
#p|o51~nJ;#:p'34'3             \=# print(size([[1] [1]][1,:])[1]==1?17:isdefined(:super)?162:201)#s}say 27#}say 167#]#print(47)#]#echo 21#>/#print(171)#s-#print 175#s9|#208
#8M`|  <esc>dggi2<esc>//       $}<}}<}>}[<< }<<<<<}<<}<<<<}</<<}}}<}}<}}<}}<    }}<}}<}}}<}}<<<<<<<<<<<}}}<}}<}}<}}<}}<}}<}}}<<<<<<<<<<}]~-<~-<~-<<<~-<<COprint("65")#`=>ass^_^_#
#9'>+/' 25       xpppppppeeee*n*n*n*es*s*s*^ee*n*n*n*e*sss*e*n*n*n*ee*s* <e 5>1  *///\)Q222999686#

This answer is based on the work of Ørjan Johansen – original answer, version adjusted for polyglot:

main|let a=0;f b=b^a=print(f pi,f(0::Real a=>a))

Difference in length between "(1.0,1)" and "(1.0,1.0)" is 2, so it needs to be doubled to get a free spot:

[209,210,128,206,207,0,211]
          ^       x     !

Code in polyglot:

>x=0;y#a=subtract 0b1206;x#a=174;l a=length$show a;h b=b^x;k=f 0$f 2 64;b1206=[209,210,128,206,207,0,211]!!(l(toEnum 0::Num a=>Enum a=>a)+2*l(do a<-Const[1];pure a)+l 1e1+k+2*l(h pi,h(0::Real a=>a))- 34);instance Num();(!)=seq;f=(^ )

DOBELA

DOBELA interpreter installed on TIO (dobelx64) has a bug: dot hitting v in import Control.Applicative does not break output, while it should. I don't want to rely on this behavior, and import Control.{-_-}Applicative does not work in Haskell, so I switched to modified version of ApplicativeDo provided by Ørjan:

import Data.Functor.Const
instance Monoid a=>Monad(Const a)where _>>=_=mempty
main=print$do a<-Const[1];pure a

Code in polyglot:

>import Text.Heredoc;import Data.Functor.Const;{-W-}instance Monoid a=>Monad (Const a)where _>>=_=mempty-- <<<<

Because v is not needed I use different extension of Grass code that does not affect output: Wwww. 4 more ws can be added at the end without breaking Grass.

Also added _ to Grass code on line 23 to fix DOBELA (destroys dot from line 24).

Perl6/Sidef

Switched to #`{..} for Perl6/Sidef. Looks like curly braces create less problems.
{{{{`}`\} at the end of line 20 fixes Pip ({`}`), opens another { for Sidef ({\}) and balances }} on line 21.

Removed redundant angle brackets from various places, major change is V (FMota).

\$\endgroup\$
4
  • \$\begingroup\$ I was so surprised to see you put the declarations for this at top level. Apparently the Local in the name of the extension is a bit misleading. Thanks for saving me 4 bytes in the original! \$\endgroup\$ Jun 29, 2018 at 4:57
  • \$\begingroup\$ B can be merged with C and x with a. Also shortened some other syntax, hopefully they weren't longer for some reason. pastebin with TIO link (Also, I guess there's some reason the sum in main isn't just 0!61+last(172:[t$[-1]!!0|g<"Z>"])?) \$\endgroup\$ Jun 29, 2018 at 5:40
  • \$\begingroup\$ @ØrjanJohansen Thanks. I think the reason is to get rid of parens. Btw, may be you know how to modify Zgarb's answer to not import Control.Applicative? It is 42 bytes shorter than oisdk's answer. \$\endgroup\$
    – stasoid
    Jun 29, 2018 at 6:28
  • 1
    \$\begingroup\$ Const works almost as well, and can be imported from Data.Functor.Const instead. \$\endgroup\$ Jun 29, 2018 at 6:49
9
\$\begingroup\$

216. Silberjoder, 10345 bytes

"Click 'Run code snippet' for a 'Try it online!' link."; h='https://tio.run/##7L1bbyNNdiD4LM7@g30JkfqKpHhNUqR4EVlF3UqqUkkqXUpVJbFYSTJJppTMzMpMSmSp9KHds/BOj/3g6fEaHnvH3fbsYL3AAGMs9sGD8WKB8evAmN/w@WlhLND/oPecE5HJ5EUq1ddt7CwwKTEzMuLEiYgTJ06cE7dsynbv178O4cUODW3U1QyHOYrtsLalXitWkq2P2DNZtXOZbCCAUDWrO@grumOXAiEmMabqLbUN78wxrhRd/axY4J9hzLSMriX3mdOTHabYLdlUbGYMHHPgMKMzP1qWsa2@cakmMGZf1bsA5iiWaSkOha8wdqprcr/ZlqdCclMJmhaE22xT0b70vzisZfT7st62ATLP2CvDshWEbym2bWD0VcaGW0prCmkBQGVLNfZq@8@ngoqMPYcsyqamDJnctB1LbjmqoSNN0ux4//T4cCqGJLE3J9vb074Z9jJh6Gx70LqaDsqyU8uWNXka/wqrDRxj15n2z7FaV9FllkkWk5npwDxbt@SZKKvMUuR2R9WUJFQIS7CeopmKxdCHdQyL7UKWtEK6kG7UxjGTLYxbGAdOoy0yLZt1psqTSQPhDaun6JDD9HSg5AVOBWS8gLZKCcjWiEXsnmEBH1lsYCttdmNYbWAuXRtF4xCfDT@zpmwr@RVEkPUQXOnGjQ5M5BhQtc2RozDd0BMUGQFXmLTXmGasTA59awe70/55ltmb9lsFRmtddWbrMlNgR4Y5mvYtslfq3jx2zqZ5Q9gw2lAbU2ESO5TBi5KZJHw2M9kKWlC70JjZpQ0ZayvM1lXTVBweCLyiWBQMsZmm6le8gR9aRnvQwsbn9BRIGxss8oMdaEGsKjOFmEiig4WIgzgY5ODY6Cv@/NpMV6CCbFNpqR21xRlLGTqKbkOW7SRToRA3qqaxtqJBhDH2VpzZBlbv2Kupyb1kKxlAxsRUWP9KYyprmSbjQVAKyNJ2usAUpB77DOFaz2ZDs89stQ/BTsvodBSFfVbMHkQPtI0Ag6tlThXLe1tSAEZXXNIoJggEJI2BlAY6uRS6sWQgrWULGjhqHwirOmGbKbKtokCFKLait4mqpidqDSZPsDy7VqHBQ9EHFuG2FYuaHOGF5mkpgFL2qjlyY6mOQ62G1dihIlvsxFKU6KTYnUgSEjMwBQcLkqRKXVsLbx1sh6FyeYykbEJlWtmT1y8CMktW2FKjDL9KMFgObO1vstulC3RzKQsMYFoROcoq3zM7dXGhwG8oNVNd6y4AWANAFY2lDNNJyQkTMphwIIMpGZ3oSlxnkqbmS5itTdWFj@U4VBtqA4QPexOnkrUGloU9yZio8hUUWjP0LtATCmsNdKSHzvJpqIKWAR1BnCnXQDWQvFRHIBeQwic9FSrNxirxNSzeHxJBoUcENhYUddO1DW1AcBDTdpCXgSoQFTHudtgb1pFVDaNAOKLiubYUe6A5GGegt7Hmob9T2knmZoMarAV8fA3JyYCUPID1@752SZkCYKgIg4qKQT/8wZ@2u13AU2u1QLYJdn3D2kaLem6ZMgvdIUOGBYGqUbYALo6p8@iQwLWsqW0SELI@EklQJijVG2OgtZkBCVo3KrTSnnwNLRsaV8tROJPzzj7O@vIVlyYq51woeF9uQsVSApQ2FTvBnm1ALbWUQIh4JtEfOJ0CS5hbLGynPkSeliJPFy8UyFw0GV1eSqW6ZWC45DJ5wVv4Ic55U5uQlLYj24baDpgjp2foGZZosWCrYpiKHglP4AjHw1YzHE2ilItEy2qlleyoejsSXgNerELC4Wi5VWmdq6V6eSq6P0lAc4NosLkqkVY0GACRQ43iOtUHaZ6EzuFNQrh8YYbdQJJjcNLnjYSZ9rvmHiFSdpAvDWQQkENJW1MUM5JOSlEUEwg3t9wYMK@kUzhEgUtqPRYOhWP@ohMGKOlEQbGxnqgGii3N7GGnBUTRbRN6Agt5twU9NUpGW3VA44yzJvE19SIgWUgm3ihhS8Eu3eMjapK8yWH8BApKgWHchCZbstL2NWQQAtCWHXtGGmvGDSRIecJuBkSHjonKXagaiMwLUuMF4SmRz2SRuKIB2JoKKySaKjQCbG4g0wXP@8oG4NkMhwFsvJH4ZE9fHgGWFu9Wxw2GqR1oS30QD6ANtRSUOSB8FN6hYCIDan826NiobacTmVxuso3NNDHHStUS70FIf0492JKw8P7GhIKGdZQbpsl6dyB3Fa6JMbnVUkxHCCooie2AKJrub8gzITrPpN0LLD2bTps6EVe1GKeBQp7XnugKZZQuQtFPgDqjMFmYKqA5WiCWtNF06gBwPZV48COCTGTgY/CeLLgaADCZMlRaAwekGjDwTU9t9YBnMXc6l4u8E5pOHrz8qYNkT3S8pDEzUvVJJpBMeV6YjXtRJLBGZ/FA54qoqhMeVPl@j4cxy3Z/DmLDyyJ0BD7fZEpOAu99BWff0I05SIGQHloEmQzh9QCa2DEqlNBxuWoXNVZPy/SqCOoMDYE28l/PcUy7BP2E6vQGzSRwSurEGu06BzoyS8qxRqpjcHdTM5oglm1onyk3hVRr0FSHUwUiP68OL@3ANShgHZtVoOf@NACui4Q7NghM8t9AYF9QkAQ3oeD3IAASUBIIFenYJIq3Qagcj/RWJJikppSERheMsyA23CCYO0GM5dFlw@ijFGJnpBigpgdmn6qjrSBkPol8eW5X58l@0uvC4eSloeqR2/Di4mK4FK6CZF9cfAquNXQ9RVcMXE/JlSAXwiXRRTHi5MLQc4qBfvXw3bmLeRitY7UNsVf6rJoR@bxUytbj8rkknhl8RkHUgWQD6AQ@AE84WqmgMxoNVm@goMlmZ7L0Gyidj1uWagoivJCvZf4uqJAlMqh9E81ISyljJ/swTfoVC3pBUFpbvYgVvjhPX9Qvbi/asYu7cBxjR8typQmFgvQi/WTXMgbQXUbPV0oJqR6Nnmehk2xWwunwciRSSGiQkByNfleIxmRO7UhYAakdubgIA1EFfc5bPYvwDeOZaNQjFeQDO2bQCSPh5G0B0m9G69FYGOJGw3EwMSrhMFCmhUSwqdDImRMEOjh6yQmzEYsFiA0N6wp/M2If/JJgYPHo28C/G8eTZm//CqQra9kaqiIJi2sj8Jpa5p5tengaV4ntksaqQ3cLJYDetu1ZRmiN6wPSn0m5NfwJkTmIEOSHfQ/KVXUCBhF31CEYCNDuR64ihP036kIbYHAampI8I9UkyKDhoNmrJOdqQ4e8W0m27DEPgN4DTlOTW9CwJ9FdBNkFIAQ@T6Xmh0TLM4inVSWyar5WRuhYWrKO9GurpLUPVLuH5AXNCk0JqwNURZUddAOFqLbLWtDnd4HSylB1uA4PfHSMUXZkOxJFrbHGtS5U9lBjwEy5YwDUnRstsHcU0BwwlBuPbEu/Vi1DRyIntwA1MHwZ62AK@TzyAhvVaruZzfvpOw85UGzGW/LR1o91mrgtu8VSuqEZXYMtAwCyZjLJGXtXx6ES0PkcMC@ZrX4mAtW6hj6a4kEFu3sbdUQpn/W0bxkhUwSfvARZw@YXegxwT5mPd99vQQ8h5dJpyL/7lqbLK6QPy3QZ0bPFxgBiyFZDvsGafK@YvdHEgBLyB7cigZ8MhTdMbtfL0KFCrkQL/0xR/Y2c@0A7d4Parmte2bdIQ8KhDL@VMVF6UAahnYri8GYDJQxNeaOvS4oJpDMVPq5fFFwXqQm55RlOiU7fcOTUm2TPZngLoL6QUFnQToUXw6lEAu9BCmKZKku1lesUSimBGaTySW@gBJRWz2DBC9Bd/EBBEKE9UMITUAjFIjXPiyYGpwOOMQB9sa1oal91dmkgTdNRKRp3@G4ojgeOERyqihMQlsxYcONg11iK610OvzXErs4OKPRk@webW43D2slOJZga2FZKU5vQNtpKow8qrabYQTZ9hdiRAshE/M9X2pFhOBXOCFca@@oVwjhu9L3Nxt7u@lHt6B3PBKGx1f5AkzErpaUpAIx@TMFue/WNMHYso@/p@raoiKUskl6ZmE1Aw1eErmDoQMwl@Pzz6N/H@YFkK9BttVjC4K@epwBcRUCcM6DesRuLISTNIXieArJAKHEeIWk1Xc8ienozCBNj62N088LvjyQw30rpO0Ru6wPb9JXsVpLI/9rpdFAf8Lwz5H2VwEakjb2z5M1nICbH/gVZZoLmAnv4Vggfn7mYi28maC6why/H8eGMx3x0UyHzQD1keUKGMyRzcU0FzAH0MK0SJv@syjisQGH3TamItOYG3xvJw10k3DjtMkZFkzDCywXMcO7o8ykRu4Gjr2MeyUgToRjEJ1JYog1mzxqCIL98wSkW8AL90DbbSWfojFFk/SgSoM3wCRYvnDOCpDXkBrTKcW5dH18QS2ggwKT8OHLOi2xMRTXUsbcHzus1ozVABAx8Tdr18Qd5kXgVujM5/kaR4TVoGebI15ZvM5z4fVWIE1/rynJykxxCvcuaCOTUNt3ZnIkw3iz5DE7jkg8DNsQEDtYLF4Qn0KnvGaCK7ak2zav6JWPAMxkuAkHX7plQ8IPjkMx4/JElrucPnAb9iEhmg1i9MtDcHrsa6aSUQyweiv6VNhuzA1or3SZAZzI1G8L7in6zQ7c5ACUxJgfdIk4yIVVe4LwCDhsaYEMoNwRGowuEDKil6nLqiB44zjAvP5MjJhOZaSqdAajXKTD/0P0VsESxQJCdZlO9DxTogll3n3MLeTQAEyeTXElKrj2FI5RgU/HhjpPdAwKE9tubGWZjE1XhDCwHYonnf/5JG6pktsJ68oiMDM/RAEoSt3TurT8RFV/oNr@uCeZyoKkyEYZcX0PZknFmQ9Y8x3zUqNOwRKInW33U5UV1A7viDdrbA5zHc24p2qCtuM/5iZQYEXlyOI/pap@15kAT7NTII0@MrDfNkNtEBm5jqQpFsrCyeTUoQ25t@JRZEEb3JTRngJCNZ@Sc3sAZ8DtOwn2tGlUTf/cRYQI2nZObkpIybLmpKg9UuyVfDdpGwrzqUqExa/k5sOPyN3E8K9HR5CvubKBzPgF4ES2121Us93kf2E0PzAayd1I39HiAM1zVipGyLD@E09L4/T4QdxmM57ifTqpGt0dUtMdQxCItaCRIWpxpT/jIpE4RVpObI7T7et/OWZgg6awgZyqtWCydxU7Wm1YZz@mb5v3xsWem@MXi/Nh8jp@TZJ7NkuJz@wk@5kVlFrP9X2nk0HWpfVlLZNo@571S3B1PHbvmgNIgQKKlyTYwkyOqQ7mG6qPbQwyOvVEL2WrseoC9x9lxZ9fum6gRrVS05JahqTY2Z@0@qTk9tj1OE1dZ0G0cFd9mCdsmNdjuJTzXfElgtBycJbmH0R4h2fgEBU4B@TgnadxHtJZxg797lYueca3w@/zO7fPcXD1CRiU0Ygm1NVeAtltf41ScaafbfDpezc2X09Lm@ov5gElT4LG8bKuaYYNNjveHSAHatW3z@3wu9lNNlfUEDVv73fOjiUyZLCmG6e6pS1nrGlq@0E3JcLu3wgdWByW/eD5W4nkSS5K@LrFcPcjQJfG8V9Rfpayrr3ECjW1bOAfmcz7Qz84TW2Lu5P4Cgv2AE9vzC7edLlDMZIoPkNxXAVardyOP3OeP6E3uo67bm5gj0qtBzcMIxQI4HIvr2j8mtZWHU2s/TiTNoF39WiF8lXulKdB50X2mSlkmLX1jDCmdfryA6mgDZaDMlU8HzUsFlzY@YG08PlNpUYwlMZSYAuLhQKIH9VlYjY/KNfbb@PaggJE1FRr5V7WbufLOBF3cREP7EByH6JiN2NUH5kTlTlhr@tHDlOuZbss22hOZxJBvlUiFr@tQE@q6rdDvPtV@q2@AbWz0QW3QH1H/AimNevD7BGLyGSsaE4Mjc5P3JspBlwXVA2pUvbITOC7@OKGTuc@gJ@BiMaWruuKM8H4fpecJ0aZhaN9SMyBL2yotYdYSuGj1azU0o@aINRNsPHRh4zBIs3PfoAXvZ4RxCdRDu9l5wFL2D0U9YA3ODKs/0Fv5Btm/Zl9CT02jQrbVct33MSQNfkjJQnL1QXbkWqjRVDSZP4b5lYfwFZPZB/F5WodQb2lSBidy@NTNeFYtNCV6zBEQS22DbdJT@gq9PqDUy@3Lge0@7gUaGvibE5xM0UTEPfFMFdq6jveJaSKfNuQYOlhTjmx1FTRHNJwZFb73yVd3fmMucXf7clfhOxweEh3jUQlcTMeNuLFz/vhEia9vaUE0Pv3/MCtAw7lSRrb7nIvw1agF9Tnof31UbaqNt3D086uNOpmaO63zFXVP7xk9vaf0LGoc3tt9zQM40uF7Ux4qBOS/J9tXuHqQ5NHYmuvZfupqhqY9hrooD7l0NIz5A7NbuPK/DVG/Ce9IbkKAeHx1xA66bCIS9d33tZ2eMoCeyTYcw1QS9HYfqIaDPfw@f6x59yBsszNVsdp86QOo45C02tQUdqNCFi5t/7zz/IGkpmbIuED1AeUdKOM@HzM01TKsr457dGXDMU16NExtYNONRnQTtE9jXnG3KaePYQbV4atOOMsqXaPZ6qlfy1JTkR1dvUq5Yzj89UG7VAhjKrnKEpvondRUoJU1SiITVPzhx/jYva//803hzC39xsCyRl8XDJMz/t5QK58hQMd96YvJ2TnB1OXjsip3@dAD0xRiLvdebiIFGpXlhJIGrUS6dwRoYgWZkF40qXiP0jNVbsqMbx7tW4YuxWIAGsRTfQsawH/e4MV9gnBHyDewCiM7g64d/Trj9tqgU@FtLsJaFzdr8ZkkWzNufAPN0PRlXTzm9srerONDUyC5B@dAkikx15lQBveObmmqafM7S3Qyc7HMTt7PQo3mW7qietpKh09ToOtrml3fsHAZPagQiZal2C0c8Ubpy6UiFzm60QUpnNDYGNiFnVuE2fUC83STyR4u8XZf6cq4rG5PxRV2mj3b6QHm6aUDj0H8eiDb6uuB4ShzcU4vIXgMyldyV23tTNSCi9ClrliDxR8TjQC9ZivipqfatJrZdcxvOJzNaDZ@NnB6UN3bVffwQIhPLxKLSllil7mLTz0HDutjuDw3rUmtU0zE3yvoVIcGTMVzbjnnL7d4aBThZtA3B7Z4zE@9j3sT/CPH/Svyt29UkIKJTyB0WU/WnPmjy77BU9CnRE84dt6nZb9XNaPL3hfSDNQvEHCodN/DWOvQLx/KDrQAfQ6zUvqPnLfEsYkEV2rsT8AISpYlVF11Hh6HcRwZ7CD3iQXiqhbuvUnt4T357FsxJE7mU2XvQYkPXfqopYFl8zWow3dfgVA2vt61fGXaBbpKQx84Cdyv@FAXkX@wiyixYSHv4wEWeb316jTqskK31@JrGb@iidkKWHQDWxuNXfdO9s/hMBX3ad8vZGdjuKbBptKRB5pzhDN6j4lXM00NRzZApm8a80yYwxF0Md9kB0EvMehvKi2cCXxUHvaNV6CeQb9lglTtHyk4dT8lSO6PjFH3jJasAc3aj0rumNDPK@uJbCrrUOfaN5aXY9yUHXkeVgVH/zpfs99LOBvUVKxLvmf9fki@cumINuV627fsuFh1DH6qJfaO2kl3g3aIVmjTZi53cw8L4RazAaqJjmElGcFFInIsFo0GeCScauvqAOZC0RZZ3D7Hd9/aDFqjQ7Bqh52fs6XbYSldku5YhQVLQVavc6x40WauraFJ@1uPePTzJbleWQonEuGl8IVeYumwB65o0OHMBZcnYDsqPXh@xyRguszX4aPbLXGZbw@0e7T1FoyrNhhppzqNnaLBxze58R2UJ7iW52//si12JHcVKGxfBaUPCIIb8o2@0jNunvJ0RerQlGTc0Yw4QD/Q@P66xEaNQccF1hzfiGzcsNPtk4LY3ih2/8PLIdf2vVzwysXxRNyc4PDK47nxFpqLhL1YbqFATA76OtjPbadnJ4GxaN/BwBov8wUXgumOhYMI7TjbZW0Fl1DQdhIaN9MM44r2hWFO/vYv@aZO2lQiFvu7ydNmbl@KuHdEop2UrZYxgFy7SD4rliFAIkhk0BYGOCLNsAMh/yhutaDdpsCRCXevJSXDN1xu1I5ZYouF8WAD3MJVVjuRpdrR8zfn6Xrle9ZPKf/5J6norSBc8LtEMW8H48wFKd8hY/mDcxA8Dg2z4NIwyBP0dtyoQvzd8PoAEsmcyXDTjctjhmGKVkP75Wl7uMeN4tyWCLqpnt1Nl33aak8Mq9zQpktaj66j8MM97LoNDQxeo4Sat7rKUmTAB04Txw7LQYK4cVUGF9@cT3tQcAMhRlkasi@sh0yWaOG@CHjjhNRwz2q/su4uqsv6lz6mNpXmgJb7XGeSmWyFirPUqKxVyWUpbQP3jp9/uBhm0omL4epWPWW7RL24GH6XzrwFqhsWxHqSwpa3tb95u5Sspr98seURCwbvwmW@VBPExNLt4e7h1vFJ7eT0GGrhzhU/24bVl8eyBrmIdjr0DI125QNdLFWxv0H@eG8AHomwJZmt4Xkz0WjAv9SeQAWtg4ngEnf6RNNE7K9EnxffVnzhswBCpnVU5nLULnQDWIfAbEg1LPzAxLMFmIgr9kcTl6ko47EBeYTBBbFzZCmRKsgqQKwEEOuRpGL3F/Yp93sMxb6K5WGyPZ0LghTz0jv3wnkR55Lg7rdSbhM6yt@83BzLw@UmmAfKDaCerxtnu7a7d3q0NRkNeIyeJHUrxZzYY8KFM7Y0PubqbginjX4iIg46V4IsSBH4q@jM6DChpuLcKFAsIRxbfR6ZOJTyHwyMGRMoU8ETmeplTotIhHKAOkgZizW1BaajDn1ZdPtoH7pbXkRPCGwHPdRuxpNBgTlEp@Mk8XKLgVgFudymd0hCXMjrsO1Xf@Jui8OiYR8N9izFuqer8nodm8G/r1dyXZk6GzLRnUl1lmAZ@GmK3oUCu7DRMu@j2BInRHCJ5z3o5RdPZoE8tS9lGvuh1Zhilw/00pps4jEQAnrfcJQS@zQwaLOiK0w8/eIGRxZkfggRVW1LxtLQJkjdwSMd3H6L8O1uH1dQO@OqGcl3P88NdOyoAMh3JBCYLRae3tQhWc8PF@EkN8Q5Fm5XSZMBtti37mkJNrtWbZoswErooI6jgaTE0oiC43lctE2V1TQbdJI2dN/89CpSTpK0ZYDvG0joLBgCnkx6KmOcBQMIa1dmzzWArvSmBd3qRx55ieAIs@3DGV5bTCSAcl1Vd8@PKuGcBg32lphjDXDlTTU8E8XNQolciZ7T13yAc054uVBSP/zBn/JTXS4ccP9MuIfpdXj7PfHWAffvuyGSBG//wnvLwNvP@duHFFbZ7FEWInlh6t67vwL48llwpkwoE9xDtKgsXm1jTb/ZPWQ2TbxgXfbloa@aUMIgz6k60EvtA1NcUx0jOE9hXIVjPJHzN8AiwFfAH6jeoEZD6SlWPYIHGpRSKcw4jg4laVG@MuSzLnS@wacBnusDSlgqn8uvSCnIZOLaRUibjLu4LJwjjEZLIBMD16pZ@dhs4W4fFrTBLFUq@TLnjdSS/CEb/OhldAlgA9xQOGcQBzcIeTEgrCqiRZbkmBTFqNiRhaUwyrS2wVkNtMEIOQAkit66u5cS1E1DkAr4WFeGDmlMI9cAauL5bTharPDTnVxECUDEcePpM9PNcbzQGzfG@Bpo0l8NwTMEO0awUnAes55/YBfOhV4XpxAxYLxfzmFdHdz/fM7RRJyzcNv17Jk4kekTbbA07NmxbuCGgG3ILYtkUplsSspHfRwaFKggv9jUvwBKaNwgLFqKemmYdm1ja/fFweHxzNkuBBmeBguzcHUtdpFIxs/rniPs5XuSqOvbqeNX69suKf25Gq@ZQYjxwpnpbM5LbTqn96R@xlfYz6ZNATMJSenHIqZZ6sQ2rSubxT4OTfkAN/gC35lUI9Hbu/P6WvVCD80k/2XeeVeh5DIyF7gubDrtKjydTczirrtv4ATP0bST7gayTHB8mpu37Y2/j73vP53FO5VzfESLu0MhQFucx9ugk/fsXYCyJ1M8KTqfhGfMzS/IGjerEmZ1nGArMLPuyZ8bJsoye4Co2MPnEemAjyG5xz/aHNIm4cxHmeicJI9mHtyJixGb/vjQFHFaSA9yp6nNwI3Y2O7ugPQ2tSdtU1OdSDSgC4jpvZCzkPaDZ494YHLlfMi8TX026ozDJI2aR@hor5t6gB/dwtwTVmJ0SMvhAOh2aJhsPIq2qbiuI9Cp2OaAj6Iq7MWgD3Adehwp2FsooGUlIDLQM@xm5RyPJRGUSPbbucgwmuwpw7bahR4nEo2DaPpOksbHu8h4PgnoVc15JcBhKbMnQxmwarJreDrKMLpWpNdxAfl4IruZ763XA4AMozajJT5yET7V3ZO4sOJLLBz3KNOMxsNJxi0pccgWrd2ggagk2@jhSlca@uh0VFLZ/Icm8M68o1r9JJYKuhnOQs9xnbufa77ppB0fZeRzOanqbWUYwUMNSnWkE/iHb86uw9HgDIvTcT/icJf29Lk/riyUHSGUxmfmTMm7YtGTc5OioVjEgxFweygYJZDisWPtgRNUhEinL5ssMqCDk2yWZPQauYjocduxoixRxe76huksFqMxDXhQANgsCNohl0onVETwnMFIqgKVhL623sbHZ9Vk51IyWQc3JRJlSzieuQHaFI4ERgNgo0KUEqEF/QL@SpgjfipsUpwOu0TJBujsEoCaG0xyCidIQL4ALajUrPrEd@bDWMBwqhaLJVEbk9K@yIAv1uYIREA7R4q7NgLQV@zvA6qhjAaoDUtpqyAvn71UdF0BAgHP9PEQXHkATGZF4@75zPHx@YmUQohncUdsGISMTp6ruBW@1XDeYSlVpqGx8h2oNR8vUK/pCM1mlPrvU8lU@TaypFVGKdA1o9XIUq8ixbLLsdiSvhxZ0lHbevIER9TulkCZayTBQB0CUGJJi5aBn0H5qyzp5SV5LbLUrmSWKQa8gol8CxG@t1PJ2yX5LrX0BJSlOPhYXOhElmw68iidTEp3kD9sIUupOPDMLZ7dQ6cuY/JLaiyGeUguNTAD36cujmPUbV4cp2jwrixsgVS3L5rblCrm1cTMadGcgMK75HVYOeywxOLPhgs8PlUxOy/sHvWPJ/wSl8gzWtmj2H7jKzgZ8njBIuQ0ylwhZCL8zCkg4DACRMTXuByNgjD59a9DUp6x4NN8NmLEnubS5Vg4J4GZDvZ16Bno4anloBW8vdhMXDOlk8l/SpzLneSn@uHV4eHb6EWEFVk4tHEQlFaCH/Bg7Mddqyxzz8V@/BUKLacCodSy9GQ1lfr48SNYHHCdV5NVEB/8ip4nwvXzyCpj1dXV5Xi@sBx/Fm74shWNZDLRY6aqKXahmna7DT@jR0ekR0L8evqU0gLzH/4Z9xPpC4f7giDCN/SNcNdyLsQuVmV5ObaSeaaXk5l05m//evEufnvYWPvb3@mnlEV8HODjZ3ev0H0s5b5bXPxufX1lJQ6E5O7D94fvarXaymY8d3iee7qSSC@u/af/c3Exk1nLpBbrti3Vw@dXb4OZ9Eow@bd/ET48fN2wbSBEEa8sk8CJ9wL8JJbLsSv2Ga6rDsN/cn9u@9wyupudz3jOFNgrFRI24XAuGz7@EJ5fbYtMqj5d/S9/ePAp5ISqmdSZBU8n9CmUL4S4ExzwlnXfrkPV0BqC5e9Co1SlUgHn6n/59xC/@gLwYMhoDW7VnIsrPwpVExWK8iVUzYNDymQg3f/7Jz8JhKrD0OeQJEmhEf010A1X4Yn0hKEjFVwtBA3jGR7ijtfQd41LkZKkzIVbn77qxqr1vHuAG@qVGT4/r949rmKCG8jxWLgq3Lbw@rv/4@/@@O/@kP7@mH7/Ec8Gzy8@@7jJmAI9MF6l0rOZetibej9KJuBKeq0jhK8JUbJQoRJv8Fx5LBzyOabo4N2ZIIn3/o1wgZB7wC3KofpEZVyEpMLKwbPhoy82zrRL29CYpF7ibNrPrQzvhbmygH0LXCD0faVy5ODfqyb@Hdr4xx7M8gNHLLGncC3CH/3D5b3ifZF8hDeBzF6Lv4H0DYTOQ@f1@o6Of5969GfhX/MT/u19xr9PDv6dtPDv6BP@nXzGv9nSBEJra2uhWOwIVEbBtI@5TuGXTDbEm8e8oUDot3qxADSHeixxd3ee/DCMlcviH/SosveGF3dBjup3icTah2osdk45O6@KLK4lVg7yB@xZvcpzTfdk48MaYI@tna@tVYwN@iUbVbwS9Q/V87VJHISmXn32LIZN9hmgqNbPzwOhW6yVCt6W8day8Z4JBlP0@gUlPHTZxUAItd0iV3qL3IO@coFvgdDH24@R2NPY07SWvk5LV9LVK@Ng/H9wMIQAdZi@NKx0L92T2iAyWVo5TY/So2G6bxxIbXAq8Jfug1NNd4bpblpP65I0Gk6guv@/f2A4rw4MwGZATGeYdhBxugPP7sHBK8DXgbQv4U9Np9NDyOQwfQ3/aQ0FOB2gR88PDRa9hevj3ceLu4vAOQt@VEBRSErhZDqczIfDaj2XNz8F4@HGxXm4Xg6l7IuLFFehWGalTEco3t01Glv7m41GCplqKfYslngGV6UaWxOPp6Fq@elFKYF16dZqKLX29KKaTaA7H4NqyqBf7BuvMUZ4VhcvAmATnp3h7@zm@oa7yIGuizO6Gjz47CzFvW7OxHUDV@r6HgQTDgba6D/Sf/vgv67/V6cscl6PMha5vVuL0BXFv2j09u72Ttyr0UhEvETW4A894B2j3N5V0UlAt@A6j0Tr0bs77gf3SHSNI6xiGmtVijwGhCYb4qlehMuMgfUUERNvFxfDdDpaboKPNwQvf6E5nGiZVrcsNXHeDSwGaTlKILmVcnlFuFcL5XJBuKV8vlxe9qDS8CKcAKTYcquMfF4OmVHMA@f@SBoHXuiY2nCkrXTwewVPTROsP6mY/vLF82o02qrVaKB/9suXC2hIYVzcUinmwCdd@PIF2mE4CpbhviGmVYtg50mpzBh9T7Zlx7EiYPvHL8K4itC@CEcxPJNOIzDGZ7m1tfxKtZpfAXe@EI2Wg0t8ZUykGytK0bulVJAXA2y2cEgESYXVKPnehTGchdbY0ypwuI0Xu70LEbXZSi4aaY6UqOchFYvch63kI4VYUfxVFqMsVV1m4u/8PBtbWV5dflavj3tsFBLlW7ki3VVu5RKOI9yVW@KMWFyzKz95ki0CWQrp8kWg0disndQa@LENnKMGKczQk8RNAOcfTSt8ToM@uWL9HAtSvwiHS@VnvF4LORYKlwVcIgyCixWKVN4QWJZqBxfrDwEr4g2EStJyJruYyg2/y2@lwSJaxuv8/LyQKcSWQawtF4v1ep181yjGeX/YqdM5YZXEuZTP1ROox1wOO8shk0mr2dBywKSVRqtp1sbJWgsH0BbBE6qUNXFe3VY0zT2S98awtPaN2lYWA6HDvdrG1kk8swYoM9u1jXjm@HQ9JOFrbvxOwVl8P9qqbR6cQoTDva3a8dbz3Tdbp4fgjwd4wtU/lJWB0lBuBoMbfG8odG2otnx5KZtmw4Rr2Pnhl7/7wy//hx/@/Oc//Pnv/vDnf/yrX/zx78LvL@H3c/78@b8r5vD@q1/8i3/7w5/9OXj@R/j9B/j99a9@8a9@wn/0/jfw@798fn8jfj44/gsArt/71S/@8C9@9Yvf/xP4/Wvx@5PZ3x/89fzfH//0/h/G@8N/@zDMz/89/P43jsuF/fmfcT98zsD/GYf7/T/54Y/@d/7/n8QfOv/8hz/6G7yJl9/9@Q8//cMffvo7P/z0Zz/89J8C2/zDX/0S///wr/7hP/wS///Xf/MPf/U//cPv/S/k@FPu@H/@9b/j97//nd/9@5/@y7//nV/cc//dB@@/eIT/L/4RfB6fz8fgeUy5vtXnFz8qP78JNcapAA8AI/3zH/7VPwNe@iP@9j/CG/x7QT/zXryQGBmcidjY82eMfUmBKpd@9sUDBZT/M/qCN/syiY18067vr37xL/8CvSdg/5kfQ1qahV1CYC@1n2Fj8DLmh/0ZNqcffvmTH/7in/7wyz/94Ze/hxI2sVKM1@IJ6SvjVgCYewQcAuYfAweA0hpO4S@yxUAGHItrOM4SkGIfPwJZF8EFVsFyIJeFt1C9TobFxXmqepG6qPKrDu/JVBV9kqmLFIYnU2BUNNh3YJDh79mzZfZdIsGfY7@AVCXUkMcYdDQSWG/LfNgkhsYr/IaBlSK84UBKDPrHGA@KQdB6jFUqlVhgWIEwAoVXjDNk1QKaxWgIVgAvRuJx4o0CaNxsuE5YIGYldsQay5UhjxhDjyphYJgh9DoKSplgrFDZhAQrw02GuBB5LPARnh8r1UJlWEV031MWAEdsHZIEqArmblj9Ht4rhBPgA8PN7yErhUosVi2AT4WKSqnFG5SmlKPCUdljjMqN/mCuw@PpM8a@C0qFILdUoWaYgMZ7bAz9lAZsnkL4RWxZFIf@XSf9ljE@VPuQ6MP9ePhT9Kb4AgDwJhK4egx@UI0A8AyChxxVjJKFR4xjAMrFxPiD50HaSSwQo/qN0QukD3l43LVW9b0gOizO0tISuNaqwWzwAOwcZl2VbEe2cHKFFLgSC@aLQfTGxTjK0iFZQsuby3CX4H9rkRbUcnIsB5bCqKyEmZtGIpY1VowQ5d4tGpVlmXIeI7hAaOzPlW@aIQOteYVFAxE6RT9K9rRimvB8ZXfXjSEoyPFgMC7l@Rh4VJjb74xSqfK9tLIagCe9D/AAf3GUPFQDftQtiY0VCVq9TaxRwwUnKFT5QLUqZvmYFKgeb51AhJMDJmXSSQZa9e3KamYlt5LLZPP53GpGWskXV/K5QhaEXj6dy2Sk4spKsVBcvaMsPQPBES8tN3Nr1X8yc/13/2TeNd8Xr0D1LRsmWeIuUB0mEqkM5bgi5VbLowrkg7wCVVIVuf0wuk3g4s7ABS0mu8V1S5CtwG0C2XQBLhZYCLAF8IIL0OL8BhOT7rsHZTH7iJ9G4TOQQSkHjBANXAAjcGwBc/IKYLU9AVnzROLOXH7sTKPzBHfq7UMKUAk628N1no7BTgy@nnBdaQXWxB6zaiBAkzXnQNJ6AL88cF4PrKW80PmYNnr8e4EblgHq94@HWZf1Kx60qfLdRV7QjozHf9l91endA3Fq9nEfjmL9o2HY6jchgzgoywHW4WZphjEPYJWdHt5Tylfezl@c9aStvwB@tPt858T3PNmqbewE8mz9YH9z6pETQDm2t7V94r2u8lA3as5D8W5rb2/6VTzQhFpkudV4HKQj3PAZp4ueyaUPLoiUfGBEFrqm1BpbQhs5B@2d5UH6XlSq8rCjD4C9wQJsKKxRWT@XyqF6tQBSZmU1t5pPF1ehue4P@gMkBTsdFFh34Ix2D1i6zFDusZW3gVe49K0o8S0cqh3YAburj98SwHMonICltMEGu9Fpd0oTvwg2MNm9nvBAL3RaarcHGbkxXIBAU5YZ/L71gviK/3Ie9nB4GuQ3E6LNAcfJPrXD0oEkjc5lioVcoZjNFOKFYmElB@ZpLi5l4tJqYbWYjktpqSDlC7miFC@sFLMrIBghNFdcDYRAgKidVArkvhQM0lPVW3je7xoenGwke9VAiI9uQGeLn7oMyZ4H1EwwW7hIQ7xgAJf1MrWyGMSPyabxU62AUGYtFtre3khvbweD6/iCo5Eb6WCwjS@5Qjq9uh4MKhSyAbI7EwwaPA4EAZjDX9Lp9Y1gcMAR4JblYLCHL1t51FuDQRVfNmrb25jOJb5kMD6AXfEQ/qK5L6sApuNLNkuKbzD4yUMHcDWe0ArldAtfME0M2eYhGxAWDD5385NOA4YjDscx7LhlrdWCwV3@UqthyAsqeI5n9SW@1OgKBi14AR4MBrvg6FqKogeDTXAiJwaDLXC1RjL44dnKuLtVd@RgcMQJhCQKBocELbeugqBRCX9MZmdnR@45baXLr5HFny3IGoSow8HWdvP582a327RGta3nRxjy4sWOfDkaWM1uU0RrNuAyIA6EXPVH0xfkcbfRkLW5IS8hRJ8KaYwaCuatIX@CPImri4n0Gy8g5AWEzJsF4tjg6gNoE6/1PjzX5SaFuBeF0HPYbAbLyKPOyFRwFAibDC2PKvt9@nLLMsroAhWcLYYj4fjoXKrHP5cphPUZi0Rv0@U7BOlE6DsxKCFB37kdnQ8r6Too3lIZB6gii/2nQRB7wdKi/DQyRHc@WALVeyUYLeE3doxOmIUT0tNBIZhfDZaW4Rl8GsyCcxhJh9OMwS16vlp/GlxFJMGnTxNByAu8AogMEYOrRURYXAU1oHwH9HCgW2oOHKXRiERuFPkqGuVl4t/lYmdnZ9FbviRMpTI65U5kGB9WeG6YGi1/hsxPY2rjht5ByzEsjq8LFPj8NF2iQkLyBUqepVLRNZRIKEPg@ZFG2JOslOCfpJEK@WgSV5A3jE6DPg7BPrrD8GdnMy5@Mb8HqohnuBWEtoG6a4ZIO7ZLgRPUI@mblwwPCmjiZ6Jo5y0YKPzEEvqokwJaZTEQqArFCvf8JrcHOpYuiR@ucsoi5EQZOskdBVf2tFy/Db7hMrk1xG87qobuBhyPQDvoJ3cPkqe6LXeU8m3iLHFHu39x6ybucVbbTK5UwSW3I5QQk6M3lOdGtVppVPpK33RGYIeQKlz14kInyNYZh8RNIO46eOg0oSjpso4nelAfujQMDQPVNu5iXq@s3w5KJYC9KysVxbIMKxgKljtP9cqAMnioWLhlY/dgqcMU3BvR6n282EK4DaDa7V2iajG93K2cY7pf8LaWCAbricT5lzoovJV0eRSSK/agSWdGsHQTNPJ8eQh@0upKWYOi8n0vS7T6TS73WLPS/DAsWxVzYCllAq@cZ9LFeEaCvgn6LPCA3yq8r8BPgl@mvrgY0SKSIsUdY0sHOqRLJSQH0JFe4SlHY5llLdI2mLyWILJCCyljGtAue8xU4RaBaEeKrHH4aOzT03yCZYvRsp/GkWg5shit2MqncqcS@RAtfwKSWkuRdnI9@nSl3I6ss0YUPKC7hV@G5Ve4cv9Fw7HmxUYlzdX8JXvQP08v5qX4baKRuNNk21mSVjOl88HSeUKCEqW/dNeC76vBOhDzLgAWgX8oHPrqMvi5bYj37uP@eexnlkH90hQgvVTMlAVIwBQtORJkEfzoGl/vFQmHVzPhcDRcBqhF8CaBEL2l9hsGqRJ@ArIE9AMQJsUMhFuKMwC1FKTcTA64KZOXAqG7QFu1TbZSDIRuA3e3d2tVV@t7yUYjOZZwX58w1o2BUZuiqbtkI8QWyZVIVp@xWqXWPaqVBWhtg0zPVIBd8F2EidTit04QxtaqH/jzAmeHIZkAJw5Np6fWYtXURSAYxOYgZnYihVyUm7zfh@jYU7Zx20GRAA289AppJZeO6WsE5/Xo9/uqdlvIJqpkDQHX3N2FYlA2XChSTRGlWge0PiMQ0g3hxMF@B@QJSMtcLoiWscLM4@KH1Q@FD69OD04PttmzdKlQKnAyXHBjNS6FpTBYws9ATVOPtgIh84uRk77XX5RDJTOcXQlnJ5Tti4rYQB9BJoic41QY/OrnYPPWo@CqVKSn0mpJtcVMVaRkD0zFij6V8plSJi1FQ/Yd7u7NrIboKeVXQ/UQR7myGgU3zbFkpFA1JbylVYyV4G/AvbmQXfwSyqQLgVDh1ccvjLmfiVYz5EqlRGaX7tbu4L96dw62/h2Z/Hf0j7cU3O44AP1jBPeFHuNrAm4MMw6vf59Y4/9rdNs44DkP5qEiQh9BItj2h8aHRigQKobBWAmzTE7kcSjMaFS2l3X6U@xl/Psw9li2bXvZe4PXZSgzy1XBzllOpVIX0dcZUMyLxbyUCQV@PXullsHoX16osTA/WYz3aniuqLeDLDzx4TYcp1leSGweH2y83DrBbk3R8cO7bONgP4lB@G3Y8RbAlqbIljYSH4cdIRT2hicbh8wAw2rzkOKc0eZP8qXhGJHK0m67JL6gFL9mUjKL84@5VHolJeWYVCilV0uZPJNBDtl42INwLWFURsXaMMwRN6ciG1GKvFBDGAzbU8HAtZUSe364RzHoHIjlhc2tVwfsYH/vXdL15f4nO7vH7Phg@@SsdrQF5Xi1dcyCtWO2exxkZ7snOwenJ6y2/45B8FFt/2R36xgRpAIow1C94wTzbBu2Zo/sFOp@Nhk4E9620bpSnEl/2TLlFB6UO@mt42dzFPzYxKT/QFfBevLbTse1Ba5IMUQvt9tWAHedqi22gIbTwjL007jptZe2V1lu8PZz2sotstbKfniVtdL7enZtlWlp8ce0lX72iC0uLl7oQa8D8BfDM938XrhfAfzGedp9v7UQya@wZTDYMivRccj@weFC2n1bODs6WZC8sKPNhYz3sru9kPVetuBtxXvbPttcyHlv67WXC/lxtP2NhVXvbXNrY6HgvQGTLhTHOPc3F6R0wCXWNahSC/RpwMj27t4WWwagaHkiFAfJ0DHlDYSIgPrDjwAhW3V5@aZnxEnzb46moNvK16Bd8AmoBVTAzpGu9ThbNky4gWoHwBAt4KnistVtxQVWPFQKepbAbWABC7SABQL4Bdx8jnBsscIyUQbBCx2@FCLCDxmMs@CpTVtMv7PZGurUVWCGOJ1SRVuNIYYivhEaWLgTKCMdGkjs0PppAgX7hgWtYDSK@xP3T/f2eGIm6Y2RIEEyrkTOwWmYgA2KCHcsOvjyyuHVQnWBtFoQWgV@xzRwN1GbgenaRFJAORcWWoBgkrrXshZnqFXFcZ4d8eIL3/cAwBAM7jS4@MbMSKSFZe0qTosyFEVibh1s8xLiTH2FTdZylGGiRCkK5jsqvnxh7tuFM/lqTb7qYY5bIOfZ4vh4TisIG0W/BXdHLEHQ7n@KuYAcE4tBbCgOhfnKtQBEhx8/LMDNZRUSSofZkyeUjzV4K4YpCYwXoxRZAkEQgSAYkQ@ReVlbpOxGF1LLuIaGVtTQQajYj/Bza5sj76ATkKzTGZ2qVa8VetW5oIMpWZ4SyCKo08a6Bnc204B3FI/AyXHWhGYSZ26glMdAtLniTImzDnhPydSGqgPnKtZYJrqsAI2Ran9/k9cQP9WH/LkHlRjkXokqDITFE2y@xOgLC00LDOqyCwXykKCAb5FpIkgIDvdwvKNNirbM2wuyJcZ@TMzd7ZLLRzw2sIPgNCIrHsTAeUUUlzyrY6AZ/AIZtt8KoOcsyZHFYgLC4zIBtjUJl0hwuDuXL79SiK3pUix@cylQLN9biq1HFuM3KwV0a2MWgVKAiI8A3hhA022yNjPzUEBfSCioND8OBXSgY16CNj6B4BHxocsdx098e3zopEvTTRnaLdQglwo8yuRra/K1PfmKzRd8ZAY2QWaFfWFNdEl5cOGGfFYAR5vLysmInclXGpKpMMWN0/EkME8BeA5FJQdDBpwVxihBkjZ@Y0Pu45eeKqy23djd3zqZDEV8SbshMt5zDF2jNKKTYCJDGG5H8CXq5SjSQSJwfTNyyNOIEz0bxydHW7VXcchflK2NW8C0DgA30RImSnDnpgC@utKC/rgdZ5HjGluOsieYszgTgwX48ugkNMNWANW9KbYHZoaSSnMQ732yJYWwRQbmJBWMsEiUfbm4gC41vcqkvvkl28/qq9k2G2VXUdnleDwdREh5V8Ds86bJlQ2EbPMDFUtzE7tMp9mKlWWO0gONe5i2ZvFTue6wb6Nu0d02bBpklNllhru0UbaIQ1agX5xUbR7WIqlvRD5AX2zG4IfdOQ3jxUg/R/akUFfB4nlpK9@al69ptJN5SfC8rFGis3n4tRj6BHMpMLU1nM6qMUzHlHH3tAg8oAHTQ/SyAgE@zuI7sixi4Nd1nGiJjppBmdJo4EmqjUbEVrQOMKsxsFrQ5aO6bAswvDA0yQOpIaFjMlCQB/WnyYC2irud8ZxK6HWmEOJhIuCNByRGKMVAwMuZ7Sgm5cqXDRwnw89O@xMEA3viHaoVdyH6chwtCa14W8b24CI7nzhliuMY2L34HG8Qz7O@HpvOCfPYZk4YHiY4L4q7O35O2OWgPy8HIBjuCRH7W@eE6MbBvAj8kKZxQP3cR8BzP4Hr9Uh0ftVDu5qscd8pW0T/E2ugiCOjdg98LAjKpeBAX12HNhVg2paK3yyYRuTtsIeYkWHUt9nfY6vomJNku6Wq0@hdTAIR7ValY/nZsNTqAdbvpEwhGvch9GFs83Nb78PJfEghh3OQhNgx8b47Amp7qJEFp/GO4yfxrAq9DebdOIJhPgCPoWNYrHwXeAGPGfNCPGae0@TG6EqzjEP@OOiO1S9NHMh2H7RbCCnqJ@hvmnziW5NP@NLHNvmjkq6w88l81GO@9xJ4jMvoNvAflZCb68nUot9UYj/XKMrVPeyLB@f4kuEHZkwm66EREsjjKbcohB49HikkEJcf0TfIF6o@sZ1/Xuxx/7NcYQnJi8Ml3rg10OC6L/MBPOqj0cAzchsNOhyx0cCRpUYjyFOgjhc7PH@nKxobD0uCltowKDQSTMjBeDCRqB1v7O4mVD0Y58fAV4K2Y1hKA884C8ZxFrgSJIHVQJieopmVoFibJ9uMYgfvT6PmSwMK@PVECIinsqtTIuPDb7@eXMtfJOMRRTKmEhsfyPmI1I4oNTx74KGULH6ynZvQBh2@hqfZWYqKgoYfcC@@2Y6nlEwcjoFD@iILPF2bRvpsPJKEZ4keDfQTdY1ne@ypZFXTaF/QPawnOHO2jmjtONSDCMacyrkveEifwWJ0cFtbEXoWDQ8lg@NDO0XGkqKkPn53FTR@1sm4Q5s8wEfkN@6OTdo4jDmV1bFgMUws/HkQz/eBCjg0TLh7Z/yA2zvlB9x4zg96uaIO3HjID8boCIc47wdcdOIPPIG9g@MDRvvyUO0PcODGf4qE0OTG2cIuH0tCvT4FTko/TlGESGp4UnNE4I3GgqUgFN2m04WmTxhC@HmHDEXrgVkhS0diYzZ9qsM8pHOPLYrGfwuV5FPEUDTbIjcQNx5kQa6EUFypVAfj08c7rohB9XnKz@CjnogIShL34o/7K98hRZUJ8wIpAsYDz8w4Ah9l8n9ukpT7aMlTQcY15ofiitucfOPi2nsz7sfgKmrRwAOW1P9v7CR/lfxXair9f28UzZg@/8imzAMmzDdbK79Fs@C/KfT/TaH/EQr9b02bv0cln0Y52@Kn1PWvquHfrn6RzBtBt2F1r3HoLfNj9LDfkiKw@k16gJvrc@khXeDr/bOLJuPv1n9kLx34deqknT/bNmq12klfso6e17q1Xu0Iz4NaT@/Fzi5X1jdv1p@vt2ubm90X3Y195XWhtrJnvnxbePe88/mTAtr7zsGL9581s9ULvD0yb86Uw5usUrBrg8Gn3Z2Rs7N@2t84zr1bvUlvabnOuvJpU7M3X528fXnyPHccu/n04vDF5366bx920nKxn915lX@zMTrTA7lr9bS9vace9I/bW6eZ/t6m@m47tpHeOy6@ltJ7Wzfvsxs3sVw6tWu@PHh@dHrZ3HqvHe3uvWtvfDLk/KerG3M31S52Ni6P3gQOsq@lnU8HB92tTPH5Tupms2O205kdzcpdvj06XD99t9N7KW/1t3OnxbeXo8N87/Xra2c/1l05yw9e2Ssxvfb6deal/vz6euso0JSNEyurnBmvJfPm5tAo9leVl/s73f5rS9JTB7k3seP@yc3m1rr2aXWYPX139vpm5fjd4NXrF@8P0urxcXNLzpvNdub48mQl0Opnd2PXp1unBfl5@@x1/3p3J/duM/Wqp@zX2ofa1fPuznvj@HBvt5a1B7q0t3GtvXveu3x1tbmxqxmHV5peW0nltJP2u4ODwOkLtbmp7Ly1X9Que@9SufWrlXextvn85PJz7@rF@vHpQSEzPByljQ37qLnTGW4e5TOFVEv7dPS5Y7ySTl/H8teXLzLqu9pnJ5D9PMoV97R3Sl9/EWt13w8/aanYqSRtvN/9/O7d8c611azpp5/ebB9dWq/a@oF9kD568fJVU7sqOJfme/34WGqlnytXr2JpOTA83bGhjpQTObd60t97bQ43jU9Hu@/t/OfY9dlVVtm8OnpT@3SUbt7o5lvd2lP7G@n2gVx7Yzhbg@HzVvH69GpH2/t0YL8LvNqScrlto2Ovd96sFN@mnsc6V8/frkvHw/S@ftRZyVv7b16fqepW7@3p56NWbvuNWeg7evf159P@Vmxrb9j7rBTSTe343ZUeOM0dHx1mbvSXat/Z3jl6lXcO0ntvDts7I6n2WpFu9NWNUW5zaOWzZ5tvrXdXO7qZeqd@GhymletY@53prLxWm53WG7XVfxk4ftE73T98c7Oby1vP@7q6flhI7@/tbOx32ysvR7uvBlt7zcv28923ylvzJH@V2Vo/y2@@Pc46J1cvnWLrup89LMROtL7TPY0FXgx6g9XDM@vTm@H7lVq/qWSPtHfGaFXqb7wwM8M3ta2Dz92rQ9PYl7Yzo9TpnnGlpT@f3HzesfO1UawwPHX6hnMiDXPS60D25rPpvDBfvD4@WH9x8P6FvKKqZ/Ll8Zt2OntaSKk9K7ubzz@XtrY7/U/9oiJ93nyVlbP9Xszeu0q1N9qnb86utMv@y/5lK1Ao2q313fcD2dhqZqT0u/XOVk7ZW987kZTT7svjlc399OHb9uHpp@FJe@Pt4PTNgZreunxR3OuuvD16U3y5@v7EPpHPjLcvrf3AsJA1bClfzN1kj4uFg551nD27LDrvX17m17WzpvRiN9NXtlXrbWFUuDI/9266N8dKutl9vvlJPupsgSQ9PUzLucHV/vA4kH1z0r9eNddj765aL9/qklY4U1dTJ58ui1e93subzdbKWe3zJzn3/FIpHm@nmtp27nnsaOP14WV38@xzYaWdXt97I78dbvWcd4HXO@rmZfHs6mA4kl5vH4/6tbSu5a6Pz3LXJ8b68dnOcaH3qml1mjuXPZAN/dHp5c3gekdZ7Q1vCi97l2/k9N7bwoZurxymAy@U3X776OTl21qsk1GKzvXBu33zrHA2zL0qGGdF46Cgvqx1ng9fH3S20qumenYyPN3qpdY31H4BZMqhdmptHLzeeX/2wkwHMnp@/fOGkVv9FLsevsufpQ5je4N3rZNM/8yydt6q1vbb68O3L49ru7Hd5uj54ZV88G4rd7y/sWG/iG2reWW0k72xaxtZrWME7P76cH9omcXs@6u9LvQERrvYfn6SPdPtWq1zs1s43qrVntvN3RfycPi8swp9BF5bZ2@MSuDX/Ky/AD/mjz9kfo5IoG93m8YQ5CXf7Beg3VsB2r0V4Pu1aIk0X37869Ry4MS/b4E@lswHeAZNUNZY20DlIcl2vQN58XsccdY3ILqKrpZh0hPRiv0ZbTT4NLjTeBVuJ6RPPSpDUzNU/NQRfnYBbVJr/FW2ZOBAZ/0R2puO0ue7KVT8WpE4P5e@1MA/CkXndwYWWi3mfhAzSafDep/H/AgKhKl3E3QccJclEq2OJndtcGhtcn0MHHvH1WMKmirj4AcmIe01ZCmdE0tT6SN2mLkT/MjS/nOmGfw7EK7FIYMyMaJzVHCQis5SUfCjebZ6rWgj@rCH0k4G@IrPR62C9Pvh8u5JPzrDdGptKKgbijW1ANTkEd2Z1tTyMzzi5tlySkyxojLUkK2m6uAnmRt8X0SDp@iueTMn1x7SLl8xQcsVI9Rs6PTfuNimNMS3qVhIMVpm3qL9JRwBqoaoorqrDZeXTUJJ664Yf/FhXjbvx632u78t1BO426oygdcAWg2AVjQhPTNn/51Nixw9oHKAT9Zvvd09aYivv/AlhhObn@5Zcemjctl9M8u8BL78i5zPLsvEFQaQfRx25IdnQ1GvDc7LQVr3iMsjobbRwh6vtkwC19BKA8Rm0mqU85U6X0GYpqV7LsG9OE84Jzzx5erJmKALYkGFxwOPjMcXaHKQ2fIi4o6lKARAqzndrSFTi/1@y7x3T800NVm/QleZL5UFe8Fq@SqLvmvhKwcOZXllEesnyUbAckNUbxnsOKNBy6sWAhALYt1qPtWxOdN6e4zDa9hLGsfHMA3P6tI0oxUZBy@7S2542aJuShx@KqkDHEns4MpawxrxhHB4JlIuAwiu0yGZoOjualVfqStjaiA6WtTjywXwbdn1wiMFlHE@4@zh3PKkFokdaAXQ/KzyxUAIde5lq86Tul8WAr2j/sJMRB0Tx11CBM7UMnMME4jQERwH3RjxCF@dOkMVvtLL4yLG6XSersM/e@p/KfGFu9igFBz2RBESxWaMFvpU5rxMI2jVazqY1Jj1qKJwBTdWoUq8yFSw8NGfqbHYRD35kJ@rSDeJxYjakTmhIIa8EgnSC9oTDK2Jg9rgS3FZh6/g4rQOTJFoDRL68sVrMPDqceOhu90SWML7ADwyOOdM3pYFQcvuu9sIPTeFjIniSdW72bX0tNMUDHDjxlSHihYBgdnAr9qYDLzEkiXT5A6C8JYvgTdWNuVdyKvFxQjEOie4VKHOnrCItLYWWU1EyOu7QjTqNUYRPeOL7osMQrpaZZHMciTrRl7ByIAyO4lgZT6CDEewshyRXAQZgUDKAQauYhCS71iBc@0k4oIPsYe3PgmD38aZk/pyJibV19YKuMbT5zkVOTM/68vZWAYic9QLsckQjpYH@PzrkyUC5NmMrx/xoViJZQEFTzo2GTBOdSrAS9Sf5kp9buf0W1Ne3H0abudD0fETnYp1XsDyIqfyRekmA7fpWMITP5Nm0sfSxn6cpZeRzUFHoCYJqfUU3DQV5x/LE50W0K881Sv6NkcQBIoBIoKLR42zy4f6uua3d3YI3KEBPl7mOJPirABmCEgUkBgFiAwihGigdhutvunBQVdciPIV37wDo0T2ccYZ9w9APaHa76ZEYoyTD2e4AZ/4WBn1IZy@EYjQ2Ntdx8ebrSNcMbu7/xyqcAHLEWfju1vMRY7RK@KGrPMPqKiOClkA2cYNGlFWXlWT6aOnm77A5iIX8NPYeUQqHUIwHlloh8QXqtNQDYGNk9LlI8UhOtL3vDyAQrQMdga7UZisITlG/DvEBf7ZL9r0RrGJVODwIooMIoWQZidHtf3j7YOjV0S5w0Zt73CnhpjBwGzJVpvRh2mwgei6ovFO1aNnALvfLn5bHMskN92vqPCvriMs/8IhJx4ANiikQb7TOcLycqafgefe8yKQRPGgQalotBVzDm5cu@qBicLYcxDyWuS5Fl2hyNO8npA6vNme0JWjVZR0REtDsfWwA4xNH@qRdS5PUi6@dbAy6SuH1HJRj@oSv1j8s27ZDH3rGfnIHpg4O6y0g37yy62WYtP5BmPqA0pF61AiQrL4CAU@80s/lh98b4rX9woc9KlL6nTTnt47VnMnlUXQHjntfpSO61OQOBZXR7p11UpSi0TK/NPTE6qjOqky3pcYT@2Sp3YJqXGByy6nFTK1fn45oYjNI4/qkueS68auZsbVE28pOdVcBxq93cNjh2gshEsdqjCsJjpywxhNyLonbpU9cVvxuCXOV@4eVsoEYSc1MtHhjPtPYTC320C2yMzYBu1cIetrYGH98xdducEX6in5RifXxCB44pQGqNMunCs@cQ/VvZyBmEAa0m6Zc5FcnToVD19EIGQJNz9Rn65BuzDFqICqg7QYb04TZSVV0rCFoejzRLEqemGr7TZyghx3ZlZ7ekMXAqEv33A43pXAt/HxhAropM9kVgg1cshYZ6UArqsmEhAhysc1SKcBcYtloOypzvxiFGaLIQrn6mQq3wGDok64JS4KEPQL2D3g6yZenltuXznczXAYOeorWLosdlC4O3pPD1lWymZ9238PzvZZPj/eHYznl7GVTHq85RhPMmP5YuBHjZONxxM4P2LDERWKbIU8g6Y76IKKpkEj5o@2il0/5o2bxUP@GJU95WqZW7C2EMeia7BZf2DjECV@aB7nax0mDaVkYAGEIo0Biy94up03AHYHsiXrjsL3WKIgFzO7mCBFRB1WsaBcTWgZuGwMJT5@fx66BUvhA8Dg0zZatEgScVA8qOlBn1YjxVFhuFYsPAZAdcRG/wWSOYIduGiociZwPV3hUHV5g5NQiARq0TjIwslI3TJSjw@9CFeG1JWTvTTl8mRPoi7N/RgwZoDIK1iFaMzdgQVB4JluhuzxZfFFNLdJesBj0T9vaHC2k@HGqWuHCzS8j5m1/NX6nMEY4q6Wvw8aikVMhIrKVI@6e@BIArhboFruOAQHosewTt0T4eLWKFIQ7Je2ysfCGckI0iKol6IuxUKuw1U64jQ7Cl7wPodO/FyB1hcVKwNGYsOctz1SQCDLRzmE2Bs5DYHtk0MM/TggF7yhLqfG6w@GiMPb74bimzjEtcLRHRV2ASLgdi2pXTz/fE/a/FKINkqJ8i1p0zmloKivLc8H40UWYFg6HxhkiuSRWygX7PRwvO/NBaTc04DUQ5mfSO2xmRfJzQBNUOKRWfcIcSfG6uYhhch941rhk1RiWY1QM331w5UkqETBCMSz1O7FUIWggSsVeO6avhhcZ3bjuJKEQsSm31mRI6A8x3LG3Q7sCnRvmHO8r3deQTknu0V1i0k1SJ8k11STusbJsopm4S9rQpot7KqvsO4u44nCikhuOWfPd9DB0dGMG37@AnYoQbFzOfhdO86@a@NkiPDx91EuNebJv8m9zr4G@aEybpFe@by80qZZ74W3VTF3iKLdz@8YD/Gm3UaO36SmLkBCcEMvu4vreayFBaHOgNIzES8TFcPOHju7KDodkNe0VB9PrN3LuJjGHENYKux7joe6oM@KNQHsgn0hOY8ZiHqwHRVK6oP1cZGQzBON1OUODIjFRH9WmRgNHm@gvpcR/ViE7PRtUX4wPsmU2VyMMIx3k/NxuFFEdz9u/2V/Rkb3ZgTJQXNEoq/z5oz4kQh3v@nM6Fh3M4XmBnqXmYHbJ6GICf0tl3b1gIg51hc864DbA37dQCjarjKIA1ugwINtzLdGxxmkfi/8@ISRT3yCD7fmQUw6AcQfjY6a8AsknsOMzywyfUbMbDapdoiiJq@TyXxTRdJAiIedF@OJeY7IUpkETgNyZ0yaKdUEOkabnGk0rswP/yBVFs8aJzvVf/oHVvwyFh6nLMd2lombg93VDoRC7ZuawnfuSHuN2sGud7QV6zmOWUqlFNtALztpWN3UjXqlpjhg4FgcW5VQBtjO8ZAqHtLYOoWuDA@ccpLsWOGLFVDvRbXsI5mTyiD6ESPhCVg6AHc6oPHqLQU/xOLc4PoBgcBO@jMLwbINerihs5FhNMe5l8XOHJ6BOOXdhsx3gTCDZhIykGrJjq2MlBRGTDU1uPVlPDc6BSZ5CkuYOtCVPYh9DE1CSV7K13Jg05cx2jk9lSodQxdI4NgRhTj4DXNaPYJjCA6ui2RNA@rGW58qjAQ6MtLQtRHT8QiALmC6RmiQKpAUct4NFJNW3IpJHVryoJAdsZIu5knY26KHo3jYfyeTEJaLBvj3d0u4v8M2kF0shdamUvSJNS1TazJ4w5xcRMHt/Em/Fh7O9fV1Gt4Sj1TKF9fQH7PuY94aDzr/C8h@38qPVAqHR01NHrHgjUwndrONldV0voS2ltrViQ2xteAhOj6NXRma@BVbXBiA/bgbV1OuFY1lsRrfqPYAAI@dARQpEDItuduXXcBItsQwGd8ZXWRfT@zoHwcZhjbp08F9E2xsUePONMakMTbawSV6FSSm8Bb9ghIFqQW3p7jk2TBMVgJHW2kOutQZ4L4sNwbujpLjTYwgR6uRZvQpPEvwhKxjlpahHWPjr3jnV@F6IkNl59DM68ydoAiWA1QKaPoVnvuyGx97DgTzzehAh81nNaBHWGYNYYzyUQKAxj4swuFsPu5Jk@cuSNvYPcBRG0qQLy52Q7CIpjjs8d41JcvMt6YERAKeN4WMSUdgpVLuyEi4ht8jdl/WwzyURo0i3D0eIuK93rJHDnf9QoevPlmjM8EYHeJJ5IyW3VX1UpnduYC4BgQ1HFxZkgi7KwdQw7Rwbma8IgVIH3StsIfQ@jKQ/QokVRyyGfZLvmLwBd51PtolVJDpYKnuzmGBfyVddqnBP1/u1f94MusJr80FKvgifQz9lgl1OtjiEzE0SyImmCbyip2X4BHiDo5LdPERzg/kMckNYjSRBk3j3oAqzygfcwVhgTpngrqUOBuyLo6@c/MpzkbiFU@kD/BDp9PxUUUqe6dUK/qgf4vGSJxHGZhxBL5jCkj7cgDvwqKzeOJe64ZegsQ6CvIACQr0Onf9cWjjNh1n0l2ZUm7RZ8m4iAc9Ypb3567FutARX@kcTBH6r/NuovRdOxjn6eGUATkk15Gpx8epcSJ6uR6OjKvIMD4C0cFwP1JVWB3oFoPz9DryBdEZJWKeRggYHIdtyDjv2EDaRdwTyFhjWAEDqTGq4BgeP/8LFV7eLOgAGYQvMQBMJBAQLFTmKrsUTmQG0TeMxTAcjLrJ8IFZQivbjT8TjrVH@Hl8P/678SF5RIfGMN4YRd11KRCjMVomEnjLU@5mikvZ@w3KO5PfqfLO0MMr7z308Mo7S88fVV5vxPgtFQS6GHqgjYMm@1OwqAHa8@TjFE8ZeqbHPdTmu@nYAxM/LjQVm74UMRvbME3DxjPN5@eApzknExTu84c0n/I0SuAGAznFh4@kQhqaHp7@bwd4E7cM1Bcj5MbPS/L@C/RJjY9tiz6aPBBzkUb0vdfE1DskEBVdid/LFYle@TApLlO5OgFq2xWtL64wX1JlL@NUUG6DMYrslT7K@KsPh6/otHwRcuNGQUJF2bwoA9Q7MN50FPSbH0VQXcjHyVhIdTY3lluJGFusrnQ1IRI7wV1uJY217qBvrqlB0hnY1adPeHasN947jLkMziuDRnrDMbeXBlNst0OjbRt8ITY7FKNTuO0JVHinZxmDbo/hQVGoAyIsX1LeMVC7R@0StHr8pugAz6opucviIuPie@PHKXZqMjDyaf88ttxXh2wDFf/mCMeS@VhAxNdNiBVWCwuu7rQwHtJeIEnvAdf5QB8fcRgnT3Xmy8Am8gNk4RWOxEHyR8ROcxJ2O7GE5GkgQdlx8AR91KxVXgQs/jiaidMw44ioAbhnfJGysuCBzs8sZ2Nfbil3/uzuAavMy216biZpG@p0JpsKDvWlH8gcH0WcHruB7GDqmJtN5R@h/rxU@ew12P1fYU1I1OXKOMEpYOTi4mhQdnBrXh8PIMeTNTinggUOKPcNC23DUXwu5hscj6PWJd@A7UWmMsLFkiI7PbBnr3Gh0dzYNOPWk6GqaOsAIoIckGrF585wvgw/5IaxX5E56kXmBrBNqhyeO8uzYbRwltmNPEsJy2gpSttGlVVGXqF8RnB7g2iu7ixhW5W7aCGCpe6KXjc7NB5N1mJPbfFdGRuHmBVL@TRQLW5sY26SUJe07gdYYaOntK4IFj9iNMaeUPUEkE13EkaH2Z8GsoVDDobFYmE7IGQ872mOxEqcaT1KCKjyBDBxXmVWCfEBo/qJR0FOsZU7XodDNa7Mo8U6@N2NsC2@eiHGjJC2/rEfHDVJMpBX3oAMdM@a2KGr2oTHZ37/v@0923IbyXXPwle0htrFgLhTlEQRHC4lkdplIokKRXntgrhYXAbkSAAGxgxEYCluxbmnkkqV440dO7ZTudhJJa9Jyo6rkoe8r//BX@A/cM6lu6dnMENS2vW6klq5vMR0nz59O919Tve5lER/OsC92B9XMA93wnhnzS9kLDtXHXZiGOum8RED4o01nmtglGooE43BpmNcnsS801wMfnsBGqvKAC4ztJaxjPHVgwZDGRu32PMOGQVF9xeQTffnNtJboGD6qGsxcaUIgWVqhRJVsoiWjuJFrCN/VDYxM9giYoBDsMJl58/5guZPIAM0wr0HNhg0f8cbxm4bLyup6VL6hJVOvURCll2BfWA4HYTtketPg8H8100IuSsUn1PyzpA0p8@vyc84O45iGEtnVQwGIHare6TuhroJKKjD5r3yYB1zrAO51eDEDX15zoqBNIMJSioUDz4T2QeY90Dm4eGodAISOegyAW96UE0gJBuvEqsNwNZJ5mKjsELllIJduxtOaRM99lG5AnVKp3gfhDoeEzQRoynBDRv7gsj9sTvhyoDa5v5UqPMZ6DVy9QkbZORr04NK5dFH@HFvxm4h3fNBAngQt4EKVQ6PXKMMbL/QcACnuyNotzreOq68o8DDjV@3MPom1kDVwl/E7bENXFThG9fGr3B454tVIu5EuRq6FYDFZtySsZ69fVXK9wUl6Cf0n4hlVnddCpYJSur240sCaVUsXsspAdZrkKKF7TmoqbGBFhawLgG06R1edfCthbU26O4MZ/EECMRtT7rH0CWYLw8JJpzQOPW8Hg0byHB47a1dmQcC0GO8ogIz0KPpsIMuafo0XtpMk9498JIcQOwIdYFqjkwvPdrhvCLQ8zNU9aT7415Bry2uiuQSFH4AUN8j4Qkq20T3l3Jg8DvSbNKj07flJ16FrOCw4HdTJqKbEumPfiFr5VB5rtci30ojibF@DsZCdHmWMAnDC6/QUHE68Scv@OUIr91o5w/bHt1741sgKyxjIXWjh4/8QZTHLxnqci4Ka0LrGQ@W43Z48SWvoqYQNsUBG/Sw4VQ0wPyG14iUlrU2co1pC7awLt9AVWUWakZxWX655I1dE496c@U7RLYNqpmmW3KsHXMp8FzLq0y2a5sM@pK7itGGhJQUgdCq5Xj9Lq8kVR1lQkNQ3HiWcajxRUeBNaS5U9lMOUPxn9uphk/SijvarKnVyPThOEwdUR1aSbhrqOouK/MG1ieLDT9FynV0AIc3GzfaMfg6tSFmUr@LLK1mrOF1JSF/C@5xE1nSK1fmrzM6NBZaTTy6k7eImuUyILlDKwOuMG0kpDy1MfZ56aeYqkglTw53AMe7wGAK0nwDPs3L8CAs6Od6uUCDsBKERDvGSV/m3QfoO23dtQeBL12Z0cHKhQJ6L3y9lxi1Arl6ue460z42BV/6oUxkoLJonXK1r7ccUs3lB38eKQInvcMp4uD1XzC0BZVDfbZaASgyWZEv/LJgU92JI3qpRt2Xd2TcA7HcktXKPigXRtgJevA23NmQVPXuxD2CP/setqgX5JFf0i/fldw2XyY@3tt9dLCz39rf@crO/pMdKkmK/NqgeDqu0k1ZcILOvUcSbz6IOcTJvT/x4BzHE4fiLKEE/qTrh6G4D@KuC@L4izaUbE/dXOab@8qD7LyngTtZ5/IHzMyT8T1pGgcemghNUVUJ@nfCAjg/D9tBgYkfzkBySIVarwP0ZMBxoXK4Z8Jmzjm4f@JK6vgUEZogpGUDHil@PzxBDlBKE/E3ZjhpBj1YzW5F6tgqaLxyiPwlaIcIyABAPmrdzisUldxcqzDwLvCcyEZiWznGMMje92riMVe7TdWKbe4X8pDtgT86yknvCUYLiHODQ6uEMc/X1RCTURBUgXoL6CkQR5p7xB2qonxQrVdq1c/PpUH0iP0b8lbwBib5b2jnvWinnxo/Kc1sX8UAMHics4QNXSxsUqoFXXq0prhBXaKiFVnRm5mTZ1uTS/TXf8MW5BkG5LJ1q1@M0fjna899aTPrz@xj4Ys3w0kl4JhVjiLfVBXTs8/PYOf/itXI65mLXGRF8aXpRLrphAyo9jrGE/nlPGkfI@exu8cX9njVpK9/AqXdLcMZJXgytWvFFG11BJu40nwUj0ZqIl9OiT6mQR9TK/@1qcNn9zXFFiDqbrra8Wv02jCOiHW09lqa8DpQzwUq7qa2/lms/apeU20fVdonc@Q9o4s0XHOyuXEVadptXr0SMTVwtnRhHV8if6lhrs1blFN54zJOKaPLs0PdmXHJhPo7XwqmlNZB3kIZI4vDa8VDzElqNW0SJVytEVOIl3JUQeE6Wxy/hNp6NILRZSk5ETMv8WVb7WUcGwxERWcD2h4UknMUQxldxmahjE@NmousyuRCW7AJ0S/w/1@srTQJsoHHl0ZWv0Ejqy@tRr60GvnSauQ8q5Glq9VpMKl2vFEVWLOBKJ8A959bggW1vSfef@/OgTh4b0fcf3rvt8XX9p6K9@88gpQ98fjp3Qe79wT8f@fRkx1BBfS/r7gTVLkXMPXbbtel2/mVWm1VEOaFAOWr4kl7KN7zu@5LIJ6NoD3cOuaPysgNN7nUzkt3Mvf5OWiMyiyhtJqguyJ@a1I3Tmhx3QFKHuI7ovLliW0kb54B3yyR7QWFQ9cG3Py2RzwI6XHRs5I22gB4H1IBTZufZEl3Gp/WiWnpVYQcOP3vtUcQmMKHT8SdR9sY6XN792B379ETcX9vHz4ffw3d7IjtXXQbc/cpZhHgw73t3fu79@5QAjegVhF4t0YG6@c1oYLgNCrdF/0phgcboFQov2JevZdyuZGvrCICkZ@OIvc9PSApfHdnZ6cNctFuX7uz/@5XkKtxvy4sC4NcGg7VpQXCtRoajUBtMop2g52pI2tZrvOGNJyLa5jdyNEdEP0uCYW8QO/Eniuse3iNiA/SFDebGTaFGiq6CrgRlXIE6wiKwJDPlzYI5SbURrcHqja8WO2rDyy6JR2zohy5pLy0BoQUgzPujrocRlclAN2zVjdVG04YAC@EZAID4B0MJoTtF@4uXpKIGxJiGqLgDwk3OeH5cHz/BLlGNHCVCXc5EMiabBPPG00pBjhqeyOex5hZE@8OFCOFigQEj05yBgN15UoqccD/yzc2fJUFSAt2wT6sbCVURM9uQA2wtx@3@2EgbKeAt8EggrgjjzW1jgZtEPfoXniCBksvUY2Aql1z8N@mclSvGE4KxKlEmM5cxNuhy23Lg9@9bDkoeXehRtTbo06jwpSM/3RhA@4uNOBN0ACisrlfoFuhcUiMLaHx@5KU7cAHigSRT3wcj2rk96ZdN1ZAyjr2c@@jjwpykEtREUPFh1qnNeww1AM@hJygDypycwFCDGlKHuNrFM@hHe9B9DY8RGWICTbwQzW4sjZTeFA1Sk0cWSny8xm1dtpkDHdhrUTxrBust6@x9hlFz98Bm@XRM0kHxWQtzQXozxmVGNCz0wTdvPQFKhbNQ2oJB3fIRXvHxyKoNj9Ycza37z4rf/xh6bBaPeJtod3jxwtWSuRnFhLJYXlo3UnSBlQrTSLNBdMOllb6jLxb4ipXyIBxOfaA@d5qNXQeX6supo8oXlY8nRJfvXK4VJnsTYiEMJJMtLuVRFNVWaIyh6IgEUR7JzQWPeuqlBLh1Pv1Fsa1x1lowIiMcB8h9RozrBrp1xjervFBD3aWnOTTeLo1/oKKRS4piv7Z5nxUP7DvOsXNQlVB0WLSw2mrLbqkMNcLsldnOL10Xi2g2z4fHezfl0e3dm7r@Hh4LWzb52J7rbaVi9m4@FgycF0e7cfnoOXD7Y3QQt9L2Yj5kFzEpildE2fp2pKi@Qtq/HBh7mjtARo8ezGiqkZq1DYdDdBDnM2X4tA0KlAw0UQM0ZOD7Z39fWHt4C3bOpSFfa896pJ9KW6DiPuq8nTEdsi02VU006TDBGnmSaWcsXlpvNrzFnPq4GVsFZIHKcnx0JuFjtoLkslMWkfwyUIsBBpe84aoRi7eulO1BwVNifisiZpQIpo0o4O51G4u8eHDTvZpk4nGrcS8cfDCG2tmxp1JZ110VT2Zm4gUI4zHQfsIX77T5@995o/XVT3MYLlfn1KHUQm/i/7yxROoeIwvxZX4DJ4zLWpKSWeFqHRJjR2Z5cU57M9OUDoW@5nkhY1tXTLHsmnMH18zItkRf7qF7/xzmdkdyvtOtcVTyoY5oYXo0LPjRxAwmSAGiy2TKqD44Zk8wmg09DnpaIbcXGvXqDVN1UqKZiZxN7KB3gIO/sbN5PaQrAp223OrKn8@VfEpEavJiLu1WIPKBMw3b9y4fhHuZC9U8fJnxc1nSHL/DIfjl20DZTAPSFUIKHf3UUnlRwRwztA5IAX2bLVgEgWB1Uk5U2J9p8PIbB@05WSCtnjQmL2nByW8L0rWWhCzRNvSsfOJZGInkIU@GEtYd5RXzcLon51f3V0K6nZBfVdfvz5ebAiE9@Fnv@Iwmfv@GLdKYMQnLfaKCiL5eoBacSGW4OCD2tOvEQNzS8WxbHK8uS1@4UYbaa5xK/RfoF6/ipwpY5tZ@AxVGbbHp6/wgusVXZlyHtoEyLJeSWw9Zx0Vjqy51fNJiaCvQ1lucSvjabDNv2yZwTfXUX2Q8hjAeMB09ADm384LkHvW8VZBhZrMFzkN@BOdVOYkoNUQZQ@dvszpaJfgjQdznV7l9J6Lged06obEctLWES/zmxIyGSEzb0lguqv1@vMWDbvOfoezgY3RSW/JxoBsOfB16lVORZ0qldSUZadR0iEngSSlk5YkFB5MXmjSUuC6L1o0yTLaHCDMl8TIGxxWpP7UO7aUHQvShCPkiYTy7qiXo0mhmKcalToSttC1rCSh5pZ3WCEFSrkBoUwWTSwvpC0vKmACQ7oR@pKJiotRA/C/shGyqSbxYs3NredI4RM36E5dsTNDGV/FRlRUSY5BlsTOo22xd1/s7z3eiaPGFreQR6FSSmGPQjHLhlF31JItwYT70/C4xYnqM5l74nKuQsHfGmjkTwwg/kzmqgoIxSEuS3H6qvdKNOHwHutJsXuFQznpqse6D5WuPx2Fp69mr2h6Z8DpVYAE3hFnFbwkeGdhWORKlBy2Igd6i8OwkMhXtpRbhagWSqFaZtI3hy8trhNrvnAmseX0/glTByuTNukoICdsk7gT@MjyrMv4ljAc3eMo4Ca9ZTvCtpMNw0OpUllILopbOnCja0bcjVd2yUqKWZXcjiphCtN4KgHGEY1qK4ieL155r1Rl0aGCR/9aUtrRo42@m@U0GkcMLbsYTO3QyOZXCaPPvVz818KCkzMo4vFG5esGLwgM8h7t5g7TeAyM6HsBTG8OCowX0AIcrYIYIC@TBUAqv4ixld7KaOmlFElvcbQeF5uTUUuELqVIei1Ro@NTEa31xGx0feDOOCAJ/miBIGicr6kzB2SzUHHWYhXJgpIUSZxpcZ02/ymk1KG2aYYAejxUP@uHbHoj8maxc@HjI2K2QHbeGBDcg8idCh5rZno9mW4eSWLTKJ6EMBqVAAaciZPq4rlgTyKxpBO01OJlRUZbMho48lryaIQt59AAJRLKAC3HQXnVRLAAiiDExeHJYoDySoyDFtNBDeIneBNroq3GatSgxXRQY30sYC2nYY2DFpOgC/sabZTxsdcM7bJ9/uQVMvhYE51RlTtzu9OQTxrltALWUAjLw2S0JHTPO/LCd0TEaNGvCrQHiXZ1TXrEVmkg4N@4pVkfKqBYbbMJstoIIe4WBi/lpVTM11Em@xYx5pp5jMFziGt8HzdAmwRhToNgD0yyIYrJkAKNOsUUK2YODZeahaJBxkjCEkun8HmG3G9z6ZTFHY78bpWswpnFzWrEdlHok0qW8tHGhhqLSui3PJH6ryEbTzj8sYjjqERJ5/yL4ZiGOhWvOEoDv8uXnSXE1VDCWhPSUQCnh50EDnxNWeyLKghoDi9uBz6oLOLAJhTFeZ0ycSihahHH8qVxKIFtEUf58u0geSqtL29dGgcLgmk4qpfGgRS4OKbW0ikgOOP/WmmkFhsPNIuSqe1SJ04aGmc79tVJ9kWJqgLtBQlDDH6W@Eprh2TMTVofGGLQpcYDhY7F8bA9XkmbcBTTzl3jC@Y6liwsrBcWbimVb2CNldcQ14KwBwdBpT/Q6ztl8SdE9MQliURI9x4oxFS6xxMQkXA2K1L6UAwI4YT2t1qomtVq0c3Q4/29d/fvPGw9uvMQhagl3qPw@ga1ZUhdp1ZZwXj2fNvSIp0iR6CqBXYjR/uwkUftk2h26BShyLFYaunUgDuzmIHCmhy6L6qM3BNxH7IoaP0CToSs6LsZmB6b2qA3dav80ipEkOYJpnol5bVNaAnBMJ3IlhCMkZwzhC0u/2zEGirPRs9CBuyIJttkBodme5@h4ZJRUIjyy2fhV9xJB3VJytppKc8iquCj7EbOqVDlQt6gRxiMCfxVtSruKqe40n6tPeiiy9tpnxzfDr1Be9jptSvj43GuHzjSPY2d7wfo5DKHylS7Bzv7T1qPMU7Xzj2ynMB/Dco72H24s/f0AHOeQNZ1mbyzv7@33yIF9f2njw/QY2giyTIBJZYITCbEgB7tvXfngQHD35ZsJBuEBCBvwh/pyqckvHFrRv@dk5lHiVUhWhSEh8xUsCillUToDV1/qoK3of8JdcCX0PIEH2WgLhXVmBzS2Hj9KfMiX6dnBhS1YzIdhwRKGvB2YiQK8RIMMwyOsAD5IgqAbydt@grfKGMeGvL5YztRFg1ksFhO2nf1A1oduEyezEddW6GTjjxLp@4IIPG1KT8N@@W1/FkBvUqOSWkoWThfhZOjSs5R8@kl5QhKrfScEcTIvHZt5JTBO0CRRQlNQmSZQgX4BbEhikWvcJozA0TJLNhVOX7UqTBs6OMwMn7NFWOO2K0p6/lC/Ugg@pe0wNE0wp@PzUcpIjD5PkXGHE20PNdjRn9VZ/mG2dazY9P7VGTXXUHtkXvQ4DuhzY5eyGdfRHfyuUs2oIUZyRmP5wF6@TYmO0wVMo0HYQMGKpzMBVsQBqEeLuj5If53Jl27dlGBxgaCK5iwlsW57I4SjYSCkAFIzLM2rfXIjQ2bJWjFYYbYMCHqaRAfmBAraRAvTYjraRCffsIgXt8uFtXkbYqVGzdYmzk2nynF/00XL5cV7IZShY4KAz6zuDqNGckO45DQRQfNQc0zG5CbLbt5bsviqD/9d8Bt4pKlylQJN/ycZp@D@ee/Z63zDd0lRumvuYfGBoXMiXzyYhNmvC@8J0lcNUnakiax/eQcbJalZjG97Hcjivggg2g@/WkMJp1svq3mXejxUy9cV6Ky9ciqIYngPxYROK@DoMXl1foib6NswIvZK@sai@pBhIBBrpsgK0mQtCpfnVtlzcRXT62yboLULlPlpz@TdcrzKwXihxqC9lo5mKmg/xVbaKSaD4XSQAOGRJuax9Grbyb4UbwNZrE08McRdipyeH67f/6NZLujkqnwv59KnFTApC817akD/w@XxXE9E8eHjKJczhy3PEMUi5kQn/4oagcPb3KZnbdIfv6HF5euZZf@3ah0dMxvqoObuQaFLLkFavWgeCYVbWpsPH8wADolpTXGMarXnLHk8CyWBmPxDtR1trQ4i2evqOx5avZ1nZ1AfsYMluKS0L8eMUYbHGGQWKPoN1n5MsOlMjcdk2srcIdMbpeZdWlgDmOjeRxpimMwPZsJgWM5JmQsopa5BcnsneWIC26kCj9Be9I@HrUxQGvgjyoyAojnV3eG/nMPD6pJFd1cVJ4HWdLQZ2GtCQHJcQ6Kr3dQoQKaKp2KsO43y@0I2O52p8PpAN/QHClXoWOkahVdxpEgOJoOA4kTT9y7U28APXCQU4tYRBDzxtBKOoWBlb5U9Ymq06pdrLJaZb3xCrmhoyRqW3fijUOqzFmUBdDlEzGoUIW3YcAqFh4N1E8JEbuidWR/Hngj1zbgMYqrVzISyC9C0eFSDaKM5JgYOEqoAfJoOoxhOJUzTroxDudUArT4sWulFRw5F@lGTFyMEKKtI7xArEgfdORaBpFIC6JJHMtKabXAo0SIHgN5DuMQq6WVGlY0xixyUUSeobVmebtPbovIqJVwEDYNTbMAHGGEXo7rZg16Bxm6XY71y7/95O@swmm1qtIopo43aoPMQBFJIqz4eeA/Vt8GepRPpK1iAvffR7gZdc/tesM2RqgJDdRAXBmYYQIR8ykQGjqt8gew3/hHtuELRlWIhFWt3tneFgfv7e@9j9ZQfIlAVJAojkSwLqwiDzuVjOVLxWAEkZSwCPNQVoxAqhGLULpXCKZ7TO51@rahgQWj9c0/ptGiu3wfNd15XSYQYrbFTn3wnhB1a020eiIUBeM8fPOPGLM/Zu3ZdMT@2JKECT/HLhC/uoq0F/rFEOn1/eL7f0bVSYsS4PnwXmVoVp3F9FNuU17IEs2W64eZvYpVQ4OQifjCIfrWjwlZwEG61UaYu2LuihpJerd/@FeCcODjA8yeUVLE8BQvRPRtRqRfD2jkMvGVL8T3HcbX8@gVwETUmce7@BDOycoEjYZsI7l6wfD94vuyxQDvhfhmck4dy7Hm5lIn41/NmaWycjqy5tfAnznDPzCRSjPXLIx8UKXi@eRn0TI1u8muk5m@rxirM9G01A5/8p9p1Ec65rB60AM4ozWnKnWtZLT5L/5S45/lrswuIJhf/u33fhT1cZbZs1lmf74XrabZYi9mWW2/ktiSvopHhlWcZU7FT@PVxFbuzDE@sxD8JGvcZ/HBnmUteSB9vehnFyz7LCTfVkj0gp9duOSzcH1H4Upd7MluZSz3WeYyV9gzFnoC/3JGM2Ex/ou5GGfnzXzmms8mi78h5MjwofHowrRUq5LDqRFruyHq9Bc98@LfzWRrzN0Pr9oixsUBjgrQodQUoz2Emm2YK/80GVP@jPmaKLUunS2oHhm11GUtIJq0B0FKVY7zudW1gkMH4l5KLZtvVknurFoduWx0Px33UOqg97shSR4Tev7D4AHpO@M3aC6B2wZxha1tyD1Bk5p8SC84wQL5IDryOaREDfQA3QNxg/5u6O6W65xC8saVJJaBzyzRFbpOR1EoUxCRkkSxfpgqVLCcmroQ/knvQCxddVi6wsGSfSQ/slHOhZv3t36kdyQ9Sn4cewJl8WKc/yingVSM6K2cPHZIni4btRP70oJUPFUdAZlH9z@bu0Wiumxe0gDLwvzdP9EHnRugLmsP@oMmr@TxH4Nj4sBknoDG/sk/CYFdWI62jMya/1RNfMA7VFbleJJdop6Man78BxaSdvogcXbjYiFLYsyUscTuI/H0yc6@2Ht68PjpAV7ImI4RtQyeLeix2M37Mgmw8UuCBVm2AWL@CouzRh6Tl1fyiisF6v6ffw@7z2iLjlWzjGE6t9wPYuXqqtw5Y0RTcekRkuOzUJ4vLaB1XLfsreOsyRECAXp3FOJ6DVz4IcH4YoIdPsuzjcmfTaZNqVtWzHguMfWfZ7eMy5jsywQ86nACnLrA@XNqX1LGF0MZdGU1x9c7J@01j/FDL5TLTwL9oikodrOZfuF7cnJS6WN4qunEq7gBuicK0DFcdXwEzMLIp0tNdJsNhOd1QbZF54XT7ovoV7nbHr1sB6gg884MVaKd22/P@W8u6454fDTkUBxvek8sBN32lualbgmQlTrdF6X@Sa8hM9gwWCuccCJyPxP1MQzUL2/c1xB@iPfsOqszeNH1B8TtWp0BHGRWVDX3UEHO1af8HntsGKMukefS@6kgptlmRQqBjwaUAz@Bq1LWxd6sOT@MFZ/p4jFtloAjYp6LlBWCMZ/1OChswIzzZ1GlqtrmTDqL1yZk@PqASiEKEtHMFUzMIhxzZqwUv4kvVJiGkPNYGlr@dB0qrcabv2AeHUUYQBNjGHDXrjY/eNZ8djgK3JPlw2L1qISOjhC6I80aaUzJZw//xtEfvByM/SCWNHKDkBVcaiqpeyypgWmFFV/kWCU0bqBZWuHGiwYNtQMdysQt@k5oe9JMlbRxjul522pa0Rhzw5qyMTjSnlIykGn48GSY2puIDg1EmK67pCLxpelCWe9P0J@Wgi3DmKMDmNEczQgxUEN8qcgYpuIs3ip8LeMEGHb2gZvoisqHqWgmsoxunsn5N5t/9bWb34d1kd56IljeFBNKYzMXNlxXLhf2iLnpGPMKLagutwfo8s/aGZF7GqU4WGgsV5VpCteDXZBBZ43J70rHE/ySOpJaKFjXHGVfMXd4WfK6UEOqNU2iV3jKV4Qgy/MGwhFEUoq5stjMLAaSLm8c9CyWVuzEaOSMGjnjIgw9y2jkoSyGgTxNtw2H6LStDecR4KuzRi@JhSJov8T4VOyKaLmq64z2HKICZWEIE4p01j1Mrb1pNNrYtBIIkBAXEPTcfns6CNdzyQ2vXtZfeo/ioVR7FH9JMuC9AgiMtuAGK5XZmsjkiwVepXvk9hJ@NXNWvVQr1el/Nf6/VVKJ6v/1xcRaHLIeT6yVEv/7tSQe4simi0X12ipuyLlfLYnxPDz2Ryu5JaHPbEFnNvoj5BfU5wG/Dwcjbzx2QwpzJI7cET5uY@BXz8cbC3T@hXF14PcLl/yLrCvkgp9iW8@DFiJqSUSV8VxY17YsGPfh2J@E4qOB11G/MUb5zVX1FcwDdCMVuC7xQAEwQfKZG/V9Dybz3XBvhPcSVfSYHPr8uzPwO9UhiPLuhFw5BrDmAcLzK5PpqEruptxRD5/FyQyh/QKadgzVQdd6LQBrYbfsAlJe4KJ7SuvZrN@3yHmLO@g9cZFxw9sjoSOp7PaI72gHxxZua0viETBh6@xuRfkw0V66aMRdkZePceUBx3MmjYG8EekLNd4xliVpZlioFC3f68n1n1WhB2goZRWILbMLdCL6YQSvVDllAVYMiZXAPmKQPmaM8ayIeoQhQl20LJGNKAohE6gd0aesNEqgiuT57JWAPcReKSta14ZpZZ6xvo7uPfGuzKkX9E7hoZ1UfW0dY3NQT3BAcZrk03B9DXPIQWUgMOIc@6Yx@1F0ZEsAkCeEAiECjz1Bjwyd56REipd1cHgg/VVUHl5PdNAl2oBivOD91cg9oigp4qTjcSiYnhcQAJasHn3kjeUQlWKk2pkeAatNa4Eiq3hBMHVv3FpbpQZRXCMF2vO7MdCVKmBG17JVatxxOBzoXtwOj8XAfekO2P8bN5tiv/CiJDqz5faJ1803C0Q6MJSxnsIo2LdLnLa9c//BnYOd7ZIo128gOBuoaljbGFzOLlI@GXBIMsIivHwrnZurTOR2UMpvVfMF2fQtc9iLZoMVAtizJijHje28Q8XkzRwjBpGph3tVScdb1LHdUFcblxs2ZTrBqAWWGly18peWLCRprGsJSTC2OUKZQnRowBdsPAtAmXsFjIDc3VoohGEoIaJca@NquazX1Dr9KsPGWi5vsp25dQ/k8Bcivz8dxXbbPK2dtsjDJofe8nhru5qnfaFiNcSxk38ryDeQO9ec00t7WjhVIf5GfWyFzQN34N@dq/mzp0prBQak0KwfFgoyIf8//w1i31lkFjCww8Ip8tcfOcolbIU39R32oGnn@TYYin1UCd1ZeI8219AJG7pAx@/NKxSStHcPzt6e/ZFZx9gunJJ2c9dxrhdOocrJGO1QxrAZugeAsdDAtH4sLRI5nj0boVvcZZS/vvrwwXsw5fvoXyoImx8cLl@rlvJ5OOJJA8nBSB9ie@/hY7xJmBQqdKNwf@IP5bhM2rqSCj7so@Uwtb5kYdequAph5zxyQ9n74O78oH30qD0EibkNQxC/wGmbWj8Y5h51@c0xcqz45FqF0yOHoI4nbr/BnNBZ4Ly0jwqNEP4cm1XcgCqclRXCHkIhBx0IJEbdG8Fp/d7BwwdOfqMtEKuTsiryxY4mDiAUIhgbk0igjZEOhtNFqgrZbpMIBv4V89ZmvC8b1fZmvnF2ltmeB367xx6/8hEB9@xpSVLcxFmc0sYkooL52HUwgY@2d3cOrBKURdkXEynG0Zw2LXZG7Kg6mNxwp6AjcP4EYRxn9e23KQ2LTAPHWanVCqgecgbYyAcEoOWFNWmcTdpOz9YD2R57Fbo6d2dcFzEnK5WVansUnAA7Wq3frN2@XnvHn@C7Qc8Num8HsIU4bQwp64Xzt9GQn9TJjvxB/@2@N8AHq6ury2t73t3f@ertJze37W7nt4CHtJ4HPj7gT8ZmAybtE6n9B3vspMvURY0YAc5uuzpuv/Crq71ad622Vr/Vc2/dcNdq19e6N9zrtzu3b9/u9lfXOr3bt9q3bnQ7VXQbTUUqQ1IetJj8sdr@5arNYszWVmq3@/16/eat3o3b/dsrtevXVztrN3q11dX@Wr19/frN3spa53bnfK4tak8ONli17@LZkdyB38pm7nILe7ssXfhf';c=0;function v(u){return inflate(base64ToByteString(u.split("##")[1])).split('ÿ');}function sl(t){var z=document.createElement('script');z.textContent=t;document.body.appendChild(z);}function p(){if(++c==3){sl(rp.responseText);sl(rf.responseText.replace(/\nvar.*new XMLHttpRequest[^]*$/,''));var a=(new DOMParser).parseFromString(ra.response.items[0].body,"text/html").getElementsByTagName('a');for(var i=0;i<a.length;i++)if(a[i].textContent=="Try it online!"){g=a[i].href;break;}s=v(g);t=v(h);for(var i=5;i<=22;i++)t[i]=s[i];document.body.innerHTML='<a href="https://tio.run/##'+byteStringToBase64(byteArrayToByteString(deflate(t.join('ÿ'))))+'">Try it online!</a>';}}document.body.innerHTML='Loading...';function d(u,t){var r=new XMLHttpRequest;r.responseType=t;r.open("GET",u,true);r.onreadystatechange=function(){if(this.readyState==4&&this.status==200)p();};r.send();return r;}ra=d("https://api.stackexchange.com/2.2/answers/160930?order=desc&sort=activity&site=codegolf&filter=!4*8OiBQX9S6D(cbJ1","json");rp=d("https://raw.githubusercontent.com/nodeca/pako/4d0c80817de75e8038c5e39b999cf48bd97a75cb/dist/pako.min.js","text");rf=d("https://raw.githubusercontent.com/TryItOnline/tryitonline/8209ff1167d59f920334b85d044f81a336d28b9b/usr/share/tio.run/frontend.js","text");
#16  "?63(o+?50;+'51;'  # #@ " /*"r"{\D-v ef26q-[af.q]PkPPX)\( 9 '#CO"14"^ 9                                        7 222222222222222222222222                                                           ##*/
#/*1&7//```"`    [>.>.]       )[-'][(7  >77*,68*,@'_         7 )(22)S ii/ \ipsddpsdoh#####(#######??   #### ##  ######     ####         ###### # ####  #######     ####         ###### # ####  ####### va5# \7aa*+42@n;.202ø!},{P_<Ám/e!<ÁmOe!<É}M<ÁmS15%!!%BB44,222%!!%BBPZPYAAA4D,5P[5?4-0!<½!!22<2/!]ss1]'[kX"204".â'PPQ_ss 7 999993 1 7 3 1 8 1 1 55 k zzzzkf kf k zzzzzd kf k zzzzza kf bfz coding=utf8 ''53'S^'                      ! 1>?7ДOq#t#>2/Wr#t#t#q#68#r#t#t#68#q#63#r#t#t#6v#>#</Wr#6}#y/===Wr#7ЯOq#>J7Д/Wr#y<Wr#>5/Wr#t#t#6y#>-=/Wr#6|#>6/Wr122! 1退
#>x#z#111#y#y#y#_#1111118&1& 1111/"78"oo@ 11     xxxxxxxxxxxx          /112\   ##### #######   # #    ##### h#115#  o#    ##### ####  ###   #### #  # #####  #    ##### ####  ###   #### #  # #####  # >  #EEEEEδΘΔΔΔΘΔΘλ
# 36!@`D  e ++++++::@                 L               R.----._        #-----########8=,_## ### ###### ######## #### ##### ####### ##### ###    # # #### ### ##### ####### ##### ###    # # #### ### ##### #
#comment -[af] xxxxxxxxxxxx\#184O@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # ##########  ### ## #####  ## #### ## # #####  ## ##### ####   ##### ## # ##  ## ####  ## ##### ####   ##### ## # ##  ## ####
#~==RtRtRtMbMbMbPsPsPs xxxxxxxxxxxxxxxxxxxxxxxxxxxx                          #  ????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!                                                           
#[#[]]HnHnHnqhqhqhqrqrqrbqbqbqLzLzLzqtqtqtTcTcTcRqRqRqTzTzTz                 #
#<<<#++R++  ++++++++++++++++++++++++++++++++++++++++++U+++.._+++++++._       #
############################################################################## 
 #-]+-}}[.^x+;;+;;+;;+<>;;+;;+;;+;;;;;;+;;+;;.._]}--<^>++[+++++[>+++++++<-4O6O @]>._++++._+++._^<]+-+<[<<=oC<=oC<._>>>>>-]^>[<+++++[>++++++++++<-]>@@+.---@._+>][[
#{  
#=  
#*  
#cs  
#2""/*  
#|9999 9 9
#9 999 99 9999 9
#9
# 9 9999
#`{`(+?+?0l0v01k1kMoOMoOMoOMoOMOOx0l0ix0jor0h0h1d111 0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11yxMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOotMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i000x1k1x0vx0v0l11110000011100^_ ){{{{`}`\}\
[ "`e```.1'.0'.6''i]56pq",'_\['];#/s\\/;print 24; exit}}__END__/
###$+@+-@@@@=>+<@@@=>+<?#>;?\:-._++._++++._#/<?\>3-++._6+---2._#/++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.>!\
'wWWWwWWWWwvwWWwWWWwvwWWWwWW\WWWWWW_wWWWWwWW/WW\WWWwWWWWWWWWwwww/vwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWW ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO dO MU ([])  ({}<(((((()()())){}{})){}{})>)(({})){}{(<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)  (<><()>){({}[()])}{  #((((((\';  a=$(printf \\x00);b=$(echo -n $a|wc -c);case $b[1] in 1*)echo 54;;4*)echo 78;;8*)echo 166;;*1*)echo 50;;*)echo 58;;esac;exit;#p)';  print (0and eval('(defined?pp)&&190||(defined?__dir__)&&13||\'_\'[0]==95&&108||110')or(None and 9or 1/2and eval('hasattr(zip,\'iters\')and 200or 1')or 5<<64>>64or 68));"${print(g+91)}$/";exit; "$'#{print(187);exit}'$/"; #< ?>wWWsssss {}#(prin 45)(bye){}#(prin 199)(bye) 46(8+9+9+9+9+=!) />* * * * *[[3+4*7*@]]xxxxxxxxxx
###;{a=1}={a:null};console.log a&&39||180;\
__DATA__=""" " 
#  \
__END__
set pr'[puts 59][exit]\'':;@echo 185 #';set pr'-';pr 89;exit#ss
ifdef x 
#
#  
#:1*23!/5x%6E0  >*****[[[828+*+@+*99]]]*****<
#  
[mxf]-main=-[165]- ###jxf*#p 173#*
p now 70 dollar off!
p has been selling out worldwide!
#PLACET,2<- #2FAC,2SUB#1<- #52FAC,2SUB#2<- #32FACREADOUT,2PLEASEGIVEUPFACs
seeeemPaeue_ewuuweeee_eeeeeeCisajjapp_ppppxf⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚🐸🐸🐸🐸🐸🐸😂😂😂😂😂😂😂🌚🔥😂😂😂😂😂😂😂💯💩🐸🔥😂💞💩💞😂😂😂😂💞🔥🌚▲▲▲²²²²▲¡▼¡▲▲¡→ₔ₁₉₃  
밠밠따빠빠맣박다맣받다맣희맣희うんたんたんたんたんうんうんうんうんうんたんうんうんうんたんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんたんたんうんうんうんうんたんたんうんたんたんたんうんうんうんたんうんうんたんうんうんたんうんうんたんうんたんうんうんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんうんうん  
😊♈💖  
😇♈♈  
😊♉♈  
😇♈♈  +------+
😇♈♉  |/0110@| 
😇♈💜 |/0011 | 
😊♉♈  |/0010 | 
😊📢♈ |/0011 | 
😈♈💜 |/0001 | 
😊📢♈ |/$0011| 
😇♉💞 +------+ 
😊📢♉🐸⠀⢃⠛⠋  
#-49,A,-1                              #
#-5,A,-1                               #
#6,A,-1                                #
1<<<< ! !
2<<<!<   !
1+``  +!!
1=  *
53  +#]]>>>>>\[/>\/\>>>>>>>]>\[./>>\/\./\/>>>\./][[_ %++ %++ @@* %-- @@* %++ %++ @@*
1>  *
51  +
#
1+  *     x+x   x  x
49 x+  xx+xxx+  x+x + x B+ ===+
x= xx x  x===  x x >8 xxx +++= +
x+  +x + x,_8=>+ xB  x+x
x==+R _*=x==  x +x==+> x x    +
 x +R"12"+8=Dx B=xD +  + xxx+
`+ x`=>8=x>  x+~ x  x +x+B+
x  +====+x>~+B+= x x + x
xD~+x 8=++>8x +=   x+    +,_   +
15 + x   x  + +  xx   +  ?   ?@  %"18"_     !
1  + x   + x ++  xx   + ?@    ?
1 \+* x    +  +  x    +   +   *
1   ! x  +x   +       + ?  !  ?
1    ! x xx --... ...--  ? @ ?
x +   ++ xx  ++ ++     +
 +xxxxx  +     +
  
#  +
+ *   +
#  + *
  ***************************************<>***********+
  +  +$$$
  <>"3"O._+ rk:start | print: "69" rk:end e$P+++++*D*+++1++1E!s
   +   + *
$'main' *****+
 -+3o4o# +
   ++       +
 * *
  +*****
#       +
 (printout t 164 )
(exit )  
#cepp  
MsgBox (0,"",169     )
#cs  
Yo::=~147
::=  
You can see an x here.<<<<
  
>{-<<<<<  
> 176
>> Output 1
>SET x TO 120. [0]{472454523665721469465830106052219449897}     @,-1,:*b5<>␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋
>X x. -}
>x--/2  
> =157;y=146--/2 
>main=print y{- 
  
\begin{code}  
{-x   ␉␉␉␉ 
␉
 ␉  



-}
open import IO;main = run(putStr"159" )
\end{code}
ppppppppppppppp
out &49 &1
out &56 &1
out &50 &1
Take Northern Line to Tooting Bec
<attache>

Print[194]
Exit[]
</attache>
Take Northern Line to Charing Cross
Take Northern Line to Charing Cross
Take Northern Line to Bank
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Embankment
Take Bakerloo Line to Embankment
7 UP
Take Northern Line to Mornington Crescent
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
set ! 57,,...,,.,,..,,,,,,..,,,.$^
set ! 51.                         # =>+/< $&&195e a 61  \=>axfnuen le._e _=B[1;#]>8t t47576097  @Numun Cr Uu8 gutyIO 0; nd e 4X
More 91 of this
How much is it
red down one blue up red down one blue up red up one red right two blue up
baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet */
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1""//*
#include<stdio.h>
#define  x(a) #a
#define u8 "38\0"//"
char i=!"24 10 31 1""a c #FFC0FF""B c #0000C0""d c #58007B""e c #0C8302""o c #FF8000""t c #FF00BC""u c #008080""h c #E60001""i c #CAFFFF""j c #280000""k c #CA0000""l c #CA007F""n c #330001 ""q c #E60000""A c #0040C0""E c #808000""F c #00C040""G c #008000 ""R c #800000""H c #0000AA""I c #00AA00""J c #55FFFF""K c #AAAAAA""r c red""g c green""b c blue""c c cyan""m c magenta""y c #FFFF00""x c black""_ c #FFFFFF""HHHahtdegggggggyrggggggc""IHHaixuEFbGGbggbryAEGRgc""JJHajyurbgbgggggggb____o""IJHakmyyyyyyyyyyyyyyyyye""I__almyyyyyyyyyyyyyyyyye""K__anmyyyyyyyyyyyyyy_y_e""HH_aqggyyyyyyyyg____m_Je""JH_axxxxxxxxxxxxxxxxxxxx""K__aaaam___bbbbbBm_bbBab""K__________bbbbb___bbxbb";//"
typedef int known;typedef int macro;int x=  !'(',y[1],z;macro m  (){0;}int f(int a,...  ){y[x=0]=x=1;puts(!m?"195":!a?(x?"196":"124"):sizeof' '-1?u8"67":*u8""?"37":x(0'0  0'0)[7]?"75":!"??-"[1]?"77":a-1?"79":"197" );}__attribute__((weak))int main(int WWW){known i;int t;f(x,x=sizeof i);z=1;}__attribute__((destructor))int g(){z?0:puts("198" );} //)<*/
#1""/*/
`WWWWW. :-write(186). end_of_file. `WWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWW wWWWWWWWWWWW<<<
When this program starts:
There is a scribe called x
x is to write 179

>import Data.Functor.Const;import Text.Heredoc;import Control.Exception;import System.IO.Unsafe;{-W-}instance Monoid a=>Monad(Const a)where _>>=_=mempty-- <<<<
>instance Num B where fromInteger _=B 170;negate _=B$x#x
>data B=B{u::Int};e=error"#";f?n=unsafePerformIO$f e`catch`\ErrorCall{}->r n;g=[here|here<-""]--[|]
>x=0;y#a=subtract 0b1206;x#a=174;l a=length$show a;h b=b^x;r=pure;b1206=[209,210,128,206,207,214,211,212]!!(l(1e1,toEnum 0::Num a=>Enum a=>a)+2*l(do a<-Const[1];pure a,h pi,h (0::Real a=>a))+q?6- 39);instance Num();(!)=seq;f=(^);q _=r$(d.B)?4;d(B _)=r$f 0$f 2 64
>main|let p!_=0=print$sum[0!61,{-_-}last$172:[u$[-1]!!0|g<"Z>"]]--}
 
 console.log 178;
 
#1""/*/
#if 0
#endif//*
/*/
#if 0
p;
select 192;
#endif
p=sizeof(" (\");print'(''72'')';end!");main(){puts('??-'&1?"101":"92");return 0;}
#if 0
#endif//*
print 61
#}
disp 49
#{
}{}<>        K yya+-        &  g+$
 /._++.._# !._++.-.>@ A=AgRA;       AC
#   /
 \?     -/!+++++++++++++++++++++++++++++++++++++++++++++++++<>^+++++<\>+++.-.
endif
#<<<#/<+>/\
"""#";  print(85)
#    ~#class C{function:Main(a:String[])~Nil{83->Print();}}#+ /.---.>/
#endcOmment
#nocOmment outtext("155")
#ce pS9^7^8^MUOUOF @0:8:8      \    @,,1'1'<  @125iRE
#p|o51~nJ;#:p'34'3             \=# print(size([[1] [1]][1,:])[1]==1?17:isdefined(:super)?162:201)#s}say 27#}say 167#]#print(47)#]#echo 21#>/#print(171)#s-#print 175#s9|#208
#8M`|  <esc>dggi2<esc>//       $}<}}<}>}[<< }<<<<<}<<}<<<<}</<<}}}<}}<}}<}}<    }}<}}<}}}<}}<<<<<<<<<<<}}}<}}<}}<}}<}}<}}<}}}<<<<<<<<<<}]~-<~-<~-<<<~-<<COprint("65")#`=>ass^_^_#
#9'>+/' 25       xpppppppeeee*n*n*n*es*s*s*^ee*n*n*n*e*sss*e*n*n*n*ee*s* <e 5>1  *///\)Q222999612#

Silberjoder is a meld of SMBF and Aubergine. I used this interpreter.

This method is used to polyglot Silberjoder with SMBF:

<=oC<=oC<.612

=oC is print command in Silberjoder, < and . work the same in Silberjoder and SMBF. So Silberjoder prints 216, SMBF prints 6.

Code in polyglot is on line 10: +<[<<=oC<=oC<._>>>>>-] (was +<[<<._>>>-]).

Also changed SMBF/Silberjoder data at the end of polyglot: 612#. I don't know why 68 was there, removed (686#612#).

First three <:

...612#␊
     ^  ^

Update: Some Haskell improvements thanks to Ørjan Johansen.

\$\endgroup\$
1
  • \$\begingroup\$ Just realized data D a=D a; is unnecessary, D can be replaced by B. \$\endgroup\$ Jul 10, 2018 at 19:22
9
\$\begingroup\$

22. Underload (stringie), 174 bytes

#v`16/"<"6/b.q@"(::):: :(22)S#;n4"14"
#>3N6@15o|> ^*ttt*~++ %
#=~nJ<R"12";
#[

print((1/2and 9 or 13)-(0and+4)^1<<65>>62)#46(89999+++++!)=#print(17)#]#echo 21
#8dggi2` |1|6

As before, there's a literal ESC character immediately after each of the 8 and 2 on the last line.

This program prints 22 in Underload, 21 in Nim, 20 in Prelude, 19 in Reng (testable here), 18 in Cardinal, 17 in Julia, 16 in Pyth, 15 in Haystack, 14 in Turtlèd, 13 in Ruby, 12 in Fission, 11 in Befunge-98, 10 in Befunge-93, 9 in Perl, 8 in Retina, 7 in Japt, 6 in SMBF, 5 in Python 2, 4 in ><>, 3 in Minkolang, 2 in Vim/V, and 1 in Python 3.

stringie is the Underload interpreter used by Try It Online! Fortunately for polyglotting, it ignores non-command characters rather than crashing on them, so the main thing to ensure is that there are enough stack elements that we don't get an empty stack crash (done here with (::):::; the code probably doesn't actually need that many colons, but I added them anyway as padding to remove awkward vertical alignments). Because it had to appear fairly early (it needs to be before any instances of aS^:*~!), I placed the Underload code on the first line; thanks for Sp3000 for suggesting a place where it would fit safely.

I needed to leave an additional space on the first line because Cardinal doesn't like : lined up with %; I also needed to structure the Underload code to avoid parentheses lining up with each other vertically (which Prelude dislikes). Pyth was the hardest language to get working, and I needed to resort to advice from Sp3000 there (who suggested moving the double quotes around; this combination works). In an earlier version of the code, the Underload was further to the right, but that got in the way of Turtlèd.

The space immediately after the Underload (i.e. after the S of (22)S should still be safe; the Underload doesn't change that. In order to avoid causing problems for Underload, ensure that your code has matched parentheses, avoids S, and isn't intelligible enough as Underload code to cause problems in its own right. (::) has a tendency to breed once it's placed on the stack (I intentionally wanted to write the Underload in a fairly robust way to make continuing the chain easier), so most random sequences of non-S characters will be safe from here, but it's possible to defeat the "ignore the rest of the program" if you try hard enough. If you need an S for some reason, try ensuring that some pair of parentheses captures it; that'll cause Underload to treat it as data rather than code and avoid producing stray output.

\$\endgroup\$
3
  • \$\begingroup\$ Any hints on where 1 or 2 characters (other than spaces) can be added later in the program? I'm trying to do a hexagony submission, so it's ok if it has to be certain characters, as long as it isn't just white space. The addition of all the :s means that I have to route program flow around them so they don't cause divide by 0s \$\endgroup\$ Dec 9, 2016 at 1:32
  • \$\begingroup\$ @MistahFiggins: How late do you need them? Immediately after print(17)# is a location that every language with block comments, and every 2D language, currently ignores, so as long as you add characters that are safe for the languages which parse everything, you should be OK. Digits should hopefully be a pretty harmless thing to use if you just want some sort of padding and don't care what it is. \$\endgroup\$
    – user62131
    Dec 9, 2016 at 2:18
  • \$\begingroup\$ This will work, thanks! There are 22 languages now, so it's a little hard to keep track of what's run in which language. \$\endgroup\$ Dec 9, 2016 at 2:19
9
\$\begingroup\$

288. Pascal (GNU), 13500 bytes

# 6 "($?63_lv+'50;+'51;5 5 %$\--$[250=@$]aat\" a/4*DvehfbIg/\"" 3 4//*26qkp16*^[.qx]"[8=,k]Pk PPX~_~)"xvy"\( 7# CO|"14" #:7 9 7 9                      7 222222222222222222222222                        "'" # ##\\
# 1"7"//['][']     ````      [>.>.?]~~)[7aatxy\#184  O@              (22)Siii/ \psddpsdoh ]##### #######++(- #### ##-[###### mxf ####xAegguEay######i#u####Ft#######MZWWW####WWWWWW zR###### # ####  #######:_a5# 202ø!},{P_<Ám/e!<ÁmOe!<É}M<ÁmS15%!!%BB44,222%!!%BBPZPYAAA4D,5P[5?4-0!<½!!22<2/!]ss1]'[kkX"204".â'_PPQss 7 999993 1 7 3 1 8 1 1 55 k zzzzkf kf k zzzzzd kf k zzzzza kf bfz 2#z#111#y#y#y#_# coding=utf8             ! 1>?7ДOq#t#>2/Wr#t#t#q#68#r#t#t#68#q#63#r#t#t#6v#>#</Wr#6}#y/===Wr#7ЯOq#>J7Д/Wr#y<Wr#>5/Wr#t#t#6y#>-=/Wr#6|#>6/Wr122! 1退                 @[[[["472"?]]]]******<
# if-0//               18&1&  nthteo nthieo nthneo  a;net R[+++].----._     /112\    ##### #######   # #    #####; #   #   #    ##### ####  ###   #### # W#W#####WW#WWWW#####W####WW###WWW####W#WW#W#####WW#WWWW#WWWWWWWWWWWWWWWWWWWW;WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWR
#6!@eD>>if 2>2*>++++++!\::    @_/ 78"oo@"   '\"' ` L       >"082",,,@_ 1   x-----x########    ## ### ###### ######## #### ##### ####### ##### ###    # # #### ### ##### ####### ##### ###    # # #### ### ##### #EEEEEδΘΔΔΔΘΔΘλ
# endif/*[(*)]v_>>>>>>> >>">r"{\>>>> @ 0:8:8/_>>>> [>]R 10G|'53'S 11111111111      # ##########>>###>## #####>>##>####>##>#>#####>>##>#####>####>>>#####>##>#>##>>##>####>>##>#####>####>>>##### ## # ##  ## ####
#comment -[v] >>>>>>>>                     [@,,,"279"]>252O>"01",,@_ 9 h$s o#      # ????!?!??!??!!!!??   ?!?!??!!?!?!!!!!?!!!!?????!????????????????????! >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                
#[#[/e]]   >>>>>>>>>@!:!8:6:2/_ >>>>>>>>>>>>>>>>>>>>>>>>  ;>>>>>>>>>>>>>>>>>>      #v           @.7.8.2<
#- [!R++++++] +++++++++\++++++++++++++++++++++++++++++++++U.._+++++++._+++o+++o--ox#
####################################################################################>
 #{{{{]~*[~*__+++++++[>+++++++<-]>+._+++++._+._@]+-}}[.^+;;+;;+;;+<>;;+;;+;;+;;;;;;+; ;+;;.._]}--<^>++[+++++[>+++++++'4o'6o@<-]>._++++._+++._^<]+-+<[<=oC<=oC<._>>>>-]^>[<+++++[>++++++++++<-]>@@+.---@._+>$] )++$--![+++[>+++++++<-]>+._+++++.._>](  <<>> }<}>}[<}}<<}<<<<<}<<}<<<<}<<<}}}<}}<}}<}}<}}<}}<}}}<}}<<<<<<<<<<<}}}<}}<}}<}}<}}<}}<}}}<<<<<<<<<<}]  >>\[/>\/\>>>>>>>]>\[./>>\/\./\/>>>\./]  [[[
#~  n MMMMMMM MnnMnnnMnMMMMMMMnMMnnnnnMMnMnMnnMnMnnnnnnMnMnMMMMMMMMnnMnMnnnMnMMMM
#*  e:1*23/5x%6E2  []-main=-[165]- ###
#|9999 9 9
#/9 999 99 9999 9
#9"" /* *#p 173#*
#cs !9 9999
#<<<#
#{   
#`⟪`⟪\⟫ bqbqbqLzLzLzqtqtqtTcTcTcRqRqRq TzTzTzRtRtRtMbMbMbPsPsPsTqTqTqAbAbAbTmTmTmBqBqBqMtMtMtUgUgUg
#=  ($?$?0l0v01k1k0l0i 0r 0h0h1d111 0e 0y0y 0mo1d0y0e0e001d0i0f 0g 0n0n110mo0n0t 0t0mo0f0t0g0g0f0h0r0r0i0001k10v 0v0l11110000011100|_ )\
[ '`e```.1.0.6i_]56pq['];#/\\/;print 24;exit}}__END__/
### \MoOMoOMoOMoOMOOmoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOomoomoOOOM\// >+@+-@@@@=>+<@@@=>+<?#>;?\:-._++._++++._#/<?\>3-++._6+---2._#/++++++++++++++++++++++++++++++++++++++++++++++++._++._++++++.>!\
' wWWWw;WW;WW;wv;w;;WW;wW;WW;wv;wW;_W;Ww;WW;WW;WW;WW;wW;WW;Ww;W;WW;WWWWwW;;;W\W/WWWWWwwwwvwWWWwWWWWwvwWWwW\WWwvwWWwWWWwvwW/Ww\WWW ho ho ho ho // ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho ho hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi hi MU ([])  ({}<(((((()()())){}{})){}{})>)(({})){}{(<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)  (<><()>){({}[()])}{  #(((()()()()())()())(()()())(()()())(()()())(()()())(()()())(()()())(()()())(()()())(()()())(()()()))  ((((((((\';  a=$(printf \\x00);b=$(echo -n $a|wc -c);case $b[1]¢ in 1?)echo 54;;1* )echo 242;;4* )echo 78;;8* )echo $((9999999999999999999>0?166:244));;0?1??)echo 50;;0* )echo 282;;* )echo 58;;esac;exit;#)';  print (0and eval('":"&&(defined?pp)&&190||(defined?__dir__)&&13||"_"[0]==95&&108||110')or(None and(-1 %2>0and 9or 247)or 1/2and eval('hasattr(zip,"iters")and 200or\'𒁁\'=="-"and 241or 1')or 5<<64>>64or 68));"${print(g+91)}$/";exit; "$'#{print(187);exit}'$/"; #< ?>wWWsssss {}#(prin 45)(bye){{}#}#(prin 199)(bye) 46(8+9+9+9+9+=!) >* * * * *[[[[3+4*7*@]]]]xxxxxxxxxxxxxxxxxxxxxxxx
###;{e=1}={e:null};console.log e&&39||180;\
__DATA__=""" " 
#  \
__END__
set pr'[puts 59][exit]\'':;@echo 185 #';set pr'-';pr 89;exit
ifdef ss 
#  
#  
#  
#  
#  
#  
#  
#PLACET,2<- #2FAC,2SUB#1<- #52FAC,2SUB#2<- #32FACREADOUT,2PLEASEGIVEUPFACs wwwwwwwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWw W
jrzaeeaeuee_wuuwq jii_iullluiiiogr se_eeepaeeeeeeeeee;eeecisajjarpppppp ⠆⠄⡒⡆⡘😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚🐸🐸🐸🐸🐸🐸😂😂😂😂😂😂😂🌚🔥😂😂😂😂😂😂😂💯💩🐸🔥😂💞💩💞😂😂😂😂💞🔥🌚▲▲▲²²²²▲¡▼¡▲▲¡⎚¿⁵228¦→ₔ₁₉₃2♦10♦10♦10♥☰䷩䷏䷏䷨䷏䷩䷩䷩䷩䷩䷩䷩䷩䷩䷩䷩䷩䷩⚎ֱֲֵֶֶֶֶַַַָָ  
밠밠따빠빠맣박다맣받다맣희맣희吾有一數曰二百八十一書之うんたんたんたんたんうんうんうんうんうんたんうんうんうんたんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんたんたんうんうんうんうんたんたんうんたんたんたんうんうんうんたんうんうんたんうんうんたんうんうんたんうんたんうんうんうんたんたんうんたんたんうんたんたんうんたんたんうんたんたんたんうんうん  
😊♈💖  
😇♈♈  
😊♉♈  
😇♈♈  
😇♈♉  
😇♈💜  
😊♉♈  
😊📢♈  
😈♈💜  #e:>* * * * *[[[[828+*+@+*99]]]]* * * * *<
😊📢♈  
😇♉💞  
😊📢♉🐸⠀⢃⠛⠋  
#-49,A,-1                              #
#-5,A,-1                               #
#6,A,-1                                #
#  
XX  
x+------+XX   X       XXX
x|/0110@| X X  XXXXXXXXX X
x|/0011 | X X   XXXXXXX
x|/0010 | X
x|/0011 | 
x|/0001 | 
x|/$0011|  
x+------+  
1     ! !
2   !    !
1+    +!!
1#  *
53  +
#  
1+  *        +
51  +
#  
#  
1   *     x``   x  x
49 #+  xx+x=>+  x+x + x B+ ===+
#  =x x  x===  x x >8 xxx +++= +
#+  +x + x,_8=>+ xB  x+x
# =+R _*=x==  x +===+> x x    +
 x +R"12"+8=Dx B=xD +  + xxx+
#+ ``=>8=x>  x+~ x  x +x+B+
#  +====+x>~+B+= x x + x
#D~+x 8=++>8x +=   x+    +,_   +
15 + x   x  + +  xx   +  ?   ?@  %"18"      !
1  + x   + x ++  xx   + ?@    ?
1 \+* x    +  +  x    +   +   *
1   ! x  +x   +       + ?  !  ?
1    ! x xx --... ...--  ? @ ?
x +   ++ xx  ++ ++     +
 +xxxxx  +     +
  
#= +
+ *   +
#= + *
#=**************************************************+>                                            @,,,"286"_+1y2 #<"67",,@␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␌␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋␋
  +  +$$$
#>"3"O._   +// rk:start | print: "69" rk:end       + e$P+++++*D*+++1++1E!s
   + ; + *
$'main' *****+ %++ %++ @@* %-- @@* %++ %++ @@*
 -+3o4o#  +
  <++"269">o+
^* *
 #+*****|
.x= #   +
,,  .=#
 #+ OOO       =#
 #^=
+`` 231 =#
#  #uuu#
,,..,.,,,,..,.,.,,..,,.,,,...,,.,,..,,,,,,..,,,.$
  
write 224;bye; 
  
 console.log 178;
  
~~~x  
main:Int  
main =248 
~~~  
literally, print 249
(print 164     (exit ) )
 (   *)
begin write         ('288'    )end.(*)
print 61
#ceppp  
MsgBox (0,"",169   )
#cs  
T:251  
E:0  
Yo::=~147
::=  
You can see an x here.<<  
  
>{-<<<<<  
> 176
>> Output 1
>SET x TO 120. [0]{472454523665721469465830106052219449897}  `. :-write(186). end_of_file. `
>X x.   ;-}
>l=length$show"\0";main=print$[0,0,0,233,0,146,157]!!l{-
  
\begin{code}  
{- ;  ␉␉␉␉ 
␉
 ␉  



-}
open import IO;main = run (putStr"159" )
\end{code}
ppppppppppppp;pppppppppppppp
# {{{ {{{ {{{ {{
#!ZZt >>END-IF
#xxxh  program-id.h.procedure
#xxxg  diVision.display 230.
#}}}f >>IF 2>2
#}}}e
#xxxd
#xx}c
#}}}b
#x}xa











































































































































































































































































































































<script> onload=function   (){d=document;f=[].sort;d.body.style.display='block';d.body.innerHTML=/a/.__proto__=='//'?275:!/r/.test  (f  )?267:!/\n/.test(f)?257:!/^\n/.test(f)?259:d.documentMode?262:265}</script>
<style>body{display:none}html:after{content:"258";[;content:"276";]}@media \0 all{html:after{content:"266"}}@media screen and  (min-width:0\0){html:after{content:"260"}}</style>
<attache>Print[194]Exit[]</attache>
 
22-23-31-13-13-31-13-13-31-13-13-31-13-13-31-12-12-23-31-13-13-31-13-13-31-13-13-31-13-13-31-21-22-21-12-32
Take Northern Line to Tooting Bec
Take Northern Line to Charing Cross
Take Northern Line to Charing Cross
Take Northern Line to Bank
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Hammersmith
Take District Line to Upminster
Take District Line to Embankment
Take Bakerloo Line to Embankment
7 UP
Take Northern Line to Mornington Crescent
7 RIGHT
7 RIGHT
7 TEACH
6 BOND
6 BOND
6 BOND
5 RIGHT
5 LEFT
5 RIGHT
7 BOND
7 TEACH
5 TEACH
6 YELL
5 TEACH
6 YELL
6 YELL
#  ;
set ! 57
set ! 51
out &49 &1
out &56 &1
out &50 &1
When this program starts:
There is a scribe called x
x is to write 179

p now 70 dollar off!
p has been selling out worldwide!
More 91 of this
How much is it
red down one blue up red down one blue up red up one red right two blue up
baa baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bleeeeeeeeeeeeet bleeeeeeeeeeeeet bleeeeeeeeeet baaaa bleet bleeeeeeeeeet bleeet bleeeeeeeeeet
#
ata#8;mint};dnu91&&1Prers>80::\0}ngt=Bk:pext sepsEx94 Cr u Uitharc""2:body+/+--- $在e*nr""; 16 ""6int 21*F ;#4, _._#a *een ~>/gi=[]puts gR 8e*n 82
ent
*/
 
#1""
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1""//*:
#include<stdio.h>
#define z(a) #a
#define u "e"//"
const char*i="24 10 31 1""a c #FFC0FF""B c #0000C0""d c #58007B""e c #0C8302""o c #FF8000""t c #FF00BC""u c #008080""h c #E60001""i c #CAFFFF""f c #280000""k c #CA0000""l c #CA007F""n c #330001 ""q c #E60000""A c #0040C0""E c #808000""F c #00C040""G c #008000 ""R c #800000""H c #0000AA""I c #00AA00""C c #55FFFF""K c #AAAAAA""r c red""g c green""b c blue""c c cyan""m c magenta""y c #FFFF00""x c black""_ c #FFFFFF""HHHahtdegggggggyrggggggc""IHHaixuEFbGGbggbryAEGRgc""CCHafyurbgbgggggggb____o""ICHakmyyyyyyyyyyyyyyyyye""I__almyyyyyyyyyyyyyyyyye""K__anmyyyyyyyyyyyyyy_y_e""HH_aqggyyyyyyyyg____m_Ce""CH_axxxxxxxxxxxxxxxxxxxx""K__aaaam___bbbbbBm_bbBab""K__________bbbbb___bbxbb";//"
typedef int known,macro;int x=!  '(',y[60];macro m(){0;}int f(int a,...  ){y[x=0]=x=72;printf("\x25i",!m?195:!a?124+x:sizeof' '-1?(1&*z(N)?234:"\??-"[1]?218:67^*u""):*u""?37:z (0'0  0'0 )[7]?75:"\??-"[1]?77+a/2:77);}__attribute__((weak))int main(){known y;int i;f(x,x=sizeof y);x=1;return 0;}__attribute__((destructor))int g(){x?0:puts("198");}//())*/
#1""/*/
<<<<<<<<<<WQTkTTX
 
 
>import Prelude;import GHC.IO;import Data.Functor.Const;import Data.String;import Text.Heredoc;import Control.Exception;import Language.Haskell.TH;import Text.Show.Functions;instance Monoid a=>Monad (Const a)where _>>=_=mempty
>instance K Float;instance IsString Integer where{fromString _=0};instance Num B where fromInteger _=B 170;negate _=B$ x#x
>data B=B{u::Int};e=error"#"; f?n=unsafePerformIO$ f e`catch`\ErrorCall{}->r n;instance Num(a->b);instance Num();instance Show(Q a )where{show _=""};f=(^);q _=r$ (d.B)?4;d (B _ )=r$0`f`f 2 64;class (Show a,Floating a)=>K a where{k::a->String;k _=show$  (id::a->a)pi};g=[here|here<-""]--[|]
>;
>x=0;y#a=subtract 0b1206;x#a=174;h b=b^x;r=pure ;l a=length$ show a;forall=0;z| (∀)<-5=forall;b1206|let _._=x;negate _=3=[246,264,0,263,261,232,222,209,210,128,206,207,214,211,212,217]!!(l("  ",0x0.1,1e1,  (0`id`),k(0::Float),toEnum 0::Num a=>Enum a=>a)+2*l(do a<-Const[1];pure a,h pi,h (0::Real a=>a))- 3*(l$(pure$TupE[]::ExpQ))-(-q?6+70+z));(!  )=seq
>;
>main|let p!_=0=print$ sum[0!61,{-_-}last$172:[u$[-1]!!0|g<">"]]--} 
 
#1""/*/
#if 0
#endif//*
/*/
#if 0
p;
select 192;
.exit
#endif
p=sizeof("   (\");print'(''72'')';end !" );main(){puts('??-'&1?"101":"92" );return 0;}
#if 0
#endif//*
#}
disp 49
#{
}{}<>           K yya+-        &  g+$
 /._++.._# !._++.-.>@    A=AgRA;       AC
#:  /          
 \?     -/!  +++++++++++++++++++++++++++++++++++++++++++++++++<>^+++++<\>+++.-.
rebol[ ]prin either Value? 'disarm[223][270];red[ ]prin 221;$+/ #.---.>/
#s{
endif
#<<<#/<+>/\
"""#";   print(85) #@[[[["272"?]]]]* * * * * *<
#ce:  ~#class C{function:Main(a:String[])~Nil{83->Print();}}
#endcomment K`250
#nocomment outtext("155" )
#/`psZ283MIOnDrFe @,,,"284_"># 01-:2/_;@,,,"285_";# k-'1:,,@_ pS9^7^8^MUOUOF
#\!|!o51   ;        ~nJQ  p'34'  \=#x=4;print(1>>-1<2 ? 17 :  Inf16-0|>sizeof>2 ? 162 : √4x<8 ? 201 : 225+2>>1*2)#p⟫try {EVAL 'say 「27」;exit'};say 237#⟫say 167#{{p{{}}}}say 235#]#print(47)#]#echo 21#>         :/aa*7+42@n;/#print(171)#s-#print 175#s|#print(208)#sCOprint("65")#ERi521@<[[["172"?]]]]* * * * * *<es9#
#8M`|  <esc>dggi2<esc>// :~- <~-< ~-<<<~-! `=> #
#1//  >>END-IF*>>>9#
# '>+/*' 25  >[};]+ pppppeee^e*n*\              \! 99n*n*es*s      \*s*ee*n*n*n*e*sss*e*n*n*n*ee*js "( *)//dd"    <e 5>1  */// \)∙226p|_|_X222999612#

Try it online!

This is the hardest my addition by far.

This answer is supposed to work with gpc-2.1. List of binary downloads, installation instructions.

The polyglot doesn't work with the latest available binary distro, gpc-20041218. It fails on \" in a line directive.

Explanation

GNU Pascal supports (*..*) and {..} block comments, // line comments. Block comments don't nest. There is option --nested-comments that is supposed to change that, but it doesn't work in gpc-2.1. GNU Pascal supports both C-style #.. and Pascal-style {$..}/(*$..*) pp directives. If # is followed by a number it must be separated by a whitespace to not look like Pascal character constant.

In all the languages in the polyglot that use C-like preprocessor GNU line directive can have garbage at the end only when it is complete (ends with 4). Moreover, clang and gpc do not accept garbage at the end of GNU line directive at all. Both clang and gpc support // line comments. So we can do this for the first line:

#1".."3 4//..

Flag 4 can't be on its own for some reason, 3 must also be present. The flags are explained here. Note that //.. is garbage for languages that don't have //, like C89 or Fortran.

This works in all languages except Befunge-93. We must have both 3 and 4 and they must be in ascending order. First / places 3/4=0 on the stack, and second / divides by zero, which displays a message in stdout prompting user for the result. Looks like a dead end, but as it turns out, line directives (both GNU and standard) support escapes in the strings. This is confusing to me because #include directives do not support them.

Befunge-93 doesn't support escapes, like most 2D langs, which gives the opportunity to redirect it before it hits //:

#1"..\"v"3 4//..

GPC requires whitespace between # and a number. This means we have to switch to explicit printing for Pyth: p16.q. Spaces are needed before "" and 3 so that Pyth doesn't implicitly print those (try online):

# 6 "..\"v" 3 4//p16.q..

Note that 6 is used by Wierd. To change as less code as possible I tried to recreate the situation with 2D langs as it was before, so:

# 6 "..\"/Dve" 3 4//..

/ sends Kleins/Haystack/Reng upwards, as before. Reticular is sent upwards with the first / in // because it supports escapes. PingPong is now sent down with \. D sends down Minimal-2D and reflects Be/Trefunges-98, as before. v sends down Befunges<98/Shove/Ahead. e sends down CSL. All other stuff in this area is to fix other languages.

A space after # together with // trigger a bug in as. This is the workaround:

# 6 "xxx" 3 4//*..*/

To simplify requirements for the second line I don't close the /* on line 1. This means second line is not visible for languages that don't support //, so we can use simpler line directive on line 2: # 1"7"//. This allows to keep Japt working (it wouldn't be possible if additional flags were required).

There is a bug in gcc: flag 3 enables // comment in C89 mode, try it. This code:

# 6 "xxx" 3 4//*
# 1"7"//...
# if 0//...

fails in gcc C89, try it. My hypothesis is this: 3 on the first line switches // on, so gcc sees the second line. Line directive on line 2 switches // back off, and then it fails on # if 0// because it doesn't recognize // as comment anymore. What I don't understand is why it doesn't fail on the second line. If this hypothesis was true it would fail on line 2 with invalid flag "/" in line directive. But anyway, this can be fixed by hiding second line from C89 using line continuation (\ is doubled for Retina):

# 6 "xxx" 3 4//*..\\

However, for pre-288 code to work properly, we still need to switch C89 to normal commenting state. This is done right after the big /**/ comment is closed on line 548: #1"".

The start of the second line # 1"7"// performs the same function as before – it contains Japt code and has / at column 7 for COBOL. Space before 1 is for Labyrinth.

We opened /* comment on line 1 in languages that don't support //. #endif on line 5 is used to open /* comment in languages that support //, including GNU Pascal:

# 6 "..." 3 4//*...\\
# 1"7"//...
# if-0//...
#6!@  >>if 2>2*>...
# endif/*(*...

Spaces before if/endif are for Ursala and, to a lesser degree, for zkl.
COBOL's >>IF>>if for shortC.
if 0if-0 for Moorhenses (esp. Moorhens-1, where if is Reverse).

Space is a wall for Labyrinth. # pushes the size of the stack to the stack. After executing it 4 times we have [0 1 2 3] on the stack. So to print 36 we just need 6!@.

For some reason, SQLite is the only language that doesn't have its /* comment open after the first 5 lines, so we still need #9"" /* on line 15 for SQLite.

Main Pascal code:

 (   *)
begin write         ('288'    )end.(*)

*) needs to be on a separate line because it belongs to #endif.
I inserted spaces betwen * and ) in shells code.
Second (**) comment is closed on the last line: "( *)//dd". "" hides () from Befunges-98, dd fixes Pyth.

Other stuff

Line 1: _ in _lv is just a filler. I now skip @ in PingPong with 0=@, which is simpler than using # and more robust for Hexagony. 25 is just a filler. The stuff that I added to the filename: \" a/4*DvehfbIg/\". First / needs to be 2 bytes away from " for Wumpus. a breaks two spaces for Trigger. * fixes Paintfuck, 4 fixes * in Pip. h fixes x86. f is for evil. b and g are for Alpabetti spaghetti (b is redundant). I compensates e in alphuck, it is uppercased for 05AB1E. / fixes // for Trigger. Second \" starts "escaped string literal" to hide first several lines from Pip. It ends on line 4, where we switch to the usual ` for the rest of the polyglot: '"' `. '' are for SWI Prolog. Space after second ' is important - it is "single-character string literal" in Pip. Pyth and Japt support \" escape sequence, Pip and 05AB1E don't. So a/4*DvehfbIg/ is executed by Pip and 05AB1E.

Inside C comment: 26qkp16*^[.qx]"[8=,k]Pk PPX~_~)"xvy". 26q is 05AB1E, p16.q is Pyth. k in qkp and x in .qx are for Beatnik. k in ,k and space after Pk are also for Beatnik. k Pk pushes something to the stack so that PPX wouldn't fail with stack underflow. PPX jumps forward xvy=16 tokens in Beatnik. Also, PPX is a jump forward in Trigger. * fixes Paintfuck so that [] won't loop forever. I hide the rest of line 1 for Pyth in a string that starts at " in ]"[. This is also useful for Japt: even though we are in a comment, the code is transpiled anyway and it may affect later code on line 2. The "'" at the end of the first line closes the string in Pyth and Japt and then reopens it only for Pyth. So the double quoted string that hides the most of the polyglot in Pyth starts on line 1 now (was ```"` on line 2 before). The "" strings on line 1 are hidden from Turtled between #s. : is for Chip.

Beyond line 1: Japt requires two killers ['] now for some reason. At some point I had to hire use 10 killers, which is scary. Some thing can turn Japt into a boss. Three backticks make Japt enter infinite loop in transpilation phase, so there are still four backticks on line 2.

[] in [+++] and [(*)] are for Retina. Space in @ 0:8:8 is for Cubically. xEec code is h$s o# now. [ on line 8 skips ! in MarioLANG.

Added .exit statement to SQLite to exit cleanly.

Grass

Main Grass code ends on INTERCAL line now. I like this solution more because it simplifies thinking of Grass code and because it is easier to add ws at the end of Grass code: try it. This change didn't affect the size of the polyglot. This change allowed to move Commercial (70), ORK (179) and Prolog (186) to be closer to similar languages.

\$\endgroup\$
4
  • \$\begingroup\$ Its nice to see new practical languages in the polyglot. In what way is this incompatible with adding Milo's Wierd? \$\endgroup\$
    – Potato44
    Aug 4, 2020 at 20:43
  • \$\begingroup\$ @Potato44 Milo's Wierd doesn't like the space at (2,2) – it tries to turn right (subtract) and fails with stack underflow. Other Wierd dialects just do nothing in this case. \$\endgroup\$
    – stasoid
    Aug 5, 2020 at 2:15
  • 1
    \$\begingroup\$ This was an absolute pleasure to read. I still poke my head in on the polyglot from time to time, and it just warms my heart to see the parts I contributed come up. Pascal is a great addition. Congrats! \$\endgroup\$
    – Chance
    Dec 25, 2020 at 6:55
  • \$\begingroup\$ @Chance Thank you. Glad to hear from you, I was wondering if you forgot about this challenge or not. \$\endgroup\$
    – stasoid
    Dec 26, 2020 at 3:11
8
\$\begingroup\$

43. reticular, 926 bytes

#  4"16" 3//v\(@#/;\D"14"<;n4
#/*`3 afaaZ">;[77*,68*,@;'1,'1,q)(22)S#   ␉␉␉␉ (
#yy␉;36!@
#`<` ␉
#=␉z
#<]+<[.>-]>[
#␉<
###xR+++++[D>+++++++L+++<-][<<<]>+.---.>][
#px%>~~~+␉+~*ttt*.x
#D>xU/-<+++L)
#R+.----.R␉>]|
#[#yy#yy0l0vx01k1k0l0ix0jx0h0h1d111P0eU0bx0b0o1d0b0e0e00x1d0i0fx0g0n0n11x0o0n0cx0c0o0f0c0gx0g0f0h0j0j0i0001k10vx0v0l11111100(^_)
#|␉
print((eval("1\x2f2")and(9)or(13   ) )-(0and 4)^1<<(65)>>(62))or'(\{(\{})(\{}[()])}\{}\{}\{})'#46(8+9+9+9+9+=!)#1111|=/=1/24=x=9[<$+@+-@@@@=>+<@@@=>+<?#>+.--.]/
__DATA__=1#//
#.\."12"*␉
###; console.log  39
""""#//
=begin␉//
#mmeeaeueewuuw*/
#define␉z  sizeof 'c'-1?"38":"37"
#include<stdio.h>
main(  ) /*/
#()`#`\'*/{puts(z);}/*'``
$'main'␉//
#-3o4o#$$$
<>"3"O.<␉>//
#
=end   #//
"""#"#//
#0]#echo 21#/(\[FAC,1<-#2FAC,1SUB#1<-#52FAC,1SUB#2<-#32FACLEGEREEX,1PLEASEGIVEUPPLEASE)  a>>>
#>27.say# /7Jn~49c53c'43'p;|  
#8␛dggi2␛`␉|1|6$//''25  =#print(17) #/*23!@^_^_LEnd!]/*///Z222999"26

is a literal tab, a literal ESC character; Stack Exchange would mangle the program otherwise. I recommend copying the program from the "input" box of the TIO link below, if you want to work on it.

Try it online!

VIP Score (Versatile Integer Printer): 0.01164 (snippet in answer 40 checks this for all answers)

Rundown

This program prints 43 in reticular, 42 in evil, 41 in brainf***, 40 in Minimal-2D, 39 in CoffeeScript, 38 in C, 37 in C++, 36 in Labyrinth, 35 in INTERCAL, 34 in Rail, 33 in Incident, 32 in Whirl, 31 in Modular SNUSP, 30 in Whitespace, 29 in Trigger, 28 in Brain-Flak, 27 in Perl 6, 26 in 05AB1E, 25 in Pip, 24 in Thutu, 23 in Hexagony, 22 in Underload, 21 in Nim, 20 in Prelude, 19 in Reng, 18 in Cardinal, 17 in Julia, 16 in Pyth, 15 in Haystack, 14 in Turtlèd, 13 in Ruby, 12 in Fission, 11 in Befunge-98, 10 in Befunge-93, 9 in Perl 5, 8 in Retina, 7 in Japt, 6 in SMBF, 5 in Python 2, 4 in ><>, 3 in Minkolang, 2 in V/Vim, and 1 in Python 3.

Verification

Most of the languages are tested by the test driver shown above. You can test Reng here and Modular SNUSP here; they output 19 and 31 respectively, as required. Incident is checked by keeping the tokens balanced as described in previous answers.

State of the Polyglot

This answer marks the 3rd best VIP score so far. We’re making our way back from the byte inflation in the early 30s and within striking distance of the top.

I made one small change to the Test Driver this round to add the number of languages used so far. @SnoringFrog removed the "terrible hack" @ais523 used to get the byte count to simplify calculating the current VIP score, which is now output in markdown following the polyglot.

Reticular Explanation

Reticular is a D2 language which follows the same path as Reng and Haystack – meaning that it reflects up from line one’s first / and wrap around to the bottom and hit a / on the second to last line to continue to the right across this code 7Jn~49c53c'43'p;|.

7Jn~ is the Reng code, which terminates on the ~. Haystack’s code used to be 15o|, but o is an output command in both Haystack and reticular. Fortunately, Haystack and reticular both had other output commands that were mutually exclusive so Haystack was changed to output character codes for ascii values 49 and 53 using the c command and reticular was set to print the string 43 with the p command.

Reticular’s code terminates with ; while Haystack still terminates with |. You’ll notice that Haystack terminates after passing through both its and reticular’s code. This is because | is a reflector in reticular so it has to appear after reticular has ended.

Fusion Breakdown

When I first worked out this answer I was working towards outputting #41, but since I went with BF for #41, I had to change this to output 43. For some reason this change caused Fusion to gain a trailing space. The fix was to swap the and * in #.\."12"␉*. I have no idea why Fusion’s output changed based on this value but I do know that the fix causes Fusion’s reaction to end 1 turn faster.

Incident & Hexagony

The Fusion change caused a new Incident token to pop up: ␉␊ and eliminated another token that only appeared in the second half of Incident. The new token also had one instance before the main Incident/Whirl string, which added another layer to Incident’s new imbalance.

My first half of my solution was to eliminate the ### token which would leave only one “incidental token” in early half of the polyglot. Second I added a token by removing a token from the de-tokenizing string which had 3 instances on the right. This turned out to be "3".

This balanced Incident, but left Hexagony in a difficult place to work with. I’d either have to add bunch of place holder characters to push the Hexagony capsule into the correct location, or shave off enough bytes to place the capsule in a safe location on the next line up in the hex. My go to move for shaving bytes is removing pieces of the detokenizing string, and after poking around I realized that the int in C/C++’s code could just be golfed off, which eliminated the int token’s need for detokenization. So int main() /*/ became main( ) /*/ (spacing deference given to Prelude). Also, I found that I could move z from the detokenizing string up to the x I placed above the BF family plot. So #=␉x became #=␉z and Hexagony’s module was able to fit just prior to the polyglot’s emoticon: ^_^.

Cards on the Table

I’ve decided I wanted to go a little more open source with my research into possibilities to add to the polyglot, so here are a couple languages I’ve touched on that I think are a good place to investigate.

Octave is my next favorite language to add. This is appears to require it’s print statement on a new line, rather than immediately following a comment, so I believe it has to go in the Python’s literal string. From what I’ve seen it can be worked in if you overcome the use of curly braces for block comments and Japt’s dislike for them. Japt you’ll remember thinks that curly braces inside strings contain code. And most of Japt’s code is hidden in a string. I have found experimentally that Japt will allow strings to nest within these curly braces though (for example: `string{`nested string`}string`), so I suspect there is an answer somewhere here, but my test indicates that the string gymnastics used in this line will have to be reworked #()`#`\'*/{puts(z);}/*'`` and I don’t know if this is possible.

Del|m|t EDIT: @ais523 pointed out that this language is newer than this challenge, and is therefore not allowed. I'll leave my comment here anyways in case someone goes through this thread looking for future polyglot ideas.

Del|m|t is also on my list as a possible answer, but I haven’t managed to get as far with this one. I have figured out that the below commands are likely the ones you’d use to produce a correct result and terminate the program (example). It has not been proven that it can be worked at all given the rigidity of the top two lines. Del|m|t is also hard very to work with, so if it is worked in it I think it would be best to add another special output from the Test Driver for debugging.

  • Z Push the ASCII values of the next token backwards onto the stack. Do not execute that token.
  • Y Pop a. Print the character with ASCII value
  • ? End the program.

Good luck!

\$\endgroup\$
10
  • 1
    \$\begingroup\$ How. Does. This. Work? \$\endgroup\$
    – ckjbgames
    Feb 21, 2017 at 22:47
  • \$\begingroup\$ @ckjbgames This truly is the Ultimate Question of Life, the Universe, and Everything. All I can say for certain is the answer is 42. \$\endgroup\$
    – Chance
    Feb 21, 2017 at 22:59
  • 1
    \$\begingroup\$ Sadly, #42 is in evil. \$\endgroup\$
    – ckjbgames
    Feb 21, 2017 at 23:57
  • 1
    \$\begingroup\$ I tweaked the driver to include the VIP score. Was just going to link it in a comment but the driver link is too big for that, so I used an edit and also added the relevant description change. \$\endgroup\$ Feb 22, 2017 at 15:50
  • 1
    \$\begingroup\$ Del|m|t actually postdates the challenge, so we won't be able to use it. This challenge has been going for that long, now… \$\endgroup\$
    – user62131
    Feb 22, 2017 at 23:08
8
\$\begingroup\$

52. COW, 1150 bytes

#16  "(}23!@)(" 3//*v\D@;'[af2.qc]'#)"14";n4
#/*` PkPPZ (22)S"[!(>7 7*,;68*,@;'1,@␉␉␉␉ q
#>␉
# >36!@␉
#`<`
#<]+<[.>-]>[
#{
#z}
#
#=x<R+++++[D>+++++++EAL+++<-][pPLEASE,2<-#2DO,2SUB#1<-#52PLEASE,2SUB#2<-#32DOREADOUT,2DOGIVEUPDOiiipsddsdoh]>+.-- -. >][
#x%+>+=+~tt .
#D>xU/-<+++L
#R+.----\).>]|
#[#[(}2}20l0v0x1k1kMoOMoOMoOMoOMOO0l0ix@O6O4/0jor0h0h1d111x0eU0yx0y0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k10vx0v0l111111^_)0046(8+9+9+9+9+=!)
###|
'\';echo 50;exit;';print((eval("1\x2f2")and(9)or(13))-(0and 4)^1<<(65)>>(62))or"'x"or'({({1})({1}[(0)])}{1}\{1})'#}#(prin 45)(bye)|/=1/24=x<$+@+-@@@@=>+<@@@=>+<?#d>+.--./
__DATA__=1#"'x"//
#.\."12"__*'
###;console.log 39
""""#//
=begin //
#sseeeemPaeueewuuweeeeeeeeeeCisajjap*///;.int 2298589328,898451655,12,178790,1018168591,84934449,12597/*
#define p sizeof'p'-1?"38":"37"
#include<stdio.h>
main ( )/*/
#
#"`#"\'*/{puts (p);}/*'"`"
/*
<>{#65}//
#}
disp 49#//
#{
1}<>//
$'main'//
#-3o4o#$$$
#<R>"3"O.
=end #//
"""#"#//
#}
#s|o51~nJ;#:p'34'\=#print (17)#>27.say#]#print(47)#]#echo 21
#sss8␛dggi2␛ `|1|6$//''25  16*///89^_^_Z222999"26

is a literal tab, a literal ESC character; Stack Exchange would mangle the program otherwise. I recommend copying the program from the "input" box of the TIO link below, if you want to work on it.

Want to learn more? Try the polygot chat!

Try it online!

VIP score (Versatile Integer Printer): .008178 (to improve, next entry should be no more than 1217 bytes)

This program prints 52 in COW, 51 in Assembly, 50 in Bash, 49 in Octave, 48 in Deadfish~, 47 in Lily, 46 in Cubix, 45 in PicoLisp, 44 in alphuck, 43 in reticular, 42 in evil, 41 in brainf***, 40 in Minimal-2D, 39 in CoffeeScript, 38 in C, 37 in C++, 36 in Labyrinth, 35 in INTERCAL, 34 in Rail, 33 in Incident, 32 in Whirl, 31 in Modular SNUSP, 30 in Whitespace, 29 in Trigger, 28 in Brain-Flak, 27 in Perl 6, 26 in 05AB1E, 25 in Pip, 24 in Thutu, 23 in Hexagony, 22 in Underload, 21 in Nim, 20 in Prelude, 19 in Reng, 18 in Cardinal, 17 in Julia, 16 in Pyth, 15 in Haystack, 14 in Turtlèd, 13 in Ruby, 12 in Fission, 11 in Befunge-98, 10 in Befunge-93, 9 in Perl 5, 8 in Retina, 7 in Japt, 6 in SMBF, 5 in Python 2, 4 in ><>, 3 in Minkolang, 2 in V/Vim, and 1 in Python 3.

Verification

Most of the languages are tested by the test driver shown above.

  • Reng can be tested to output 19 here.

  • Modular SNUSP can be tested to output 31 here.

  • Cubix’s cube shape viewed here

  • Incident is checked by keeping the tokens balanced as described in previous answers.

  • For Deadfish~, can be tested to output 48 with this. Note that Deadfish~ takes the polyglot to be fed on stdin, but and prints a number of >> prompts to standard output, which are an unavoidable consequence of running any Deadfish~ program.

Changing spaces

We had 4 instances of ␠␠ in order to detokenize it. I changed echo␠␠21 to echo 21 and removed both spaces in ^_)␠␠0046.

COW Explanation

As it turns out, most of the Cow interpreters I could find (these three in C++, K, and C++ and this one in Javascript) all irkingly output a newline with each OOM (print cell at int) command. Then, I found an interpreter on a German geocaching tools website that doesn't have that weird quirk, so I thought I was in the clear. Then, I found out that that interpreter just fails in weird ways sometimes, so I went back to the first JS one I found. Not being able to use OOM on two small numbers cost me ~35 bytes in the end. Ouch. Still came in just 1 byte under the VIP limit for this answer though.

The COW code I ended up with is just the brainf*** constant for 52 plus a print.

Making a mess of the Incident

In a previous answer, we overlooked Incident breaking from 01 becoming a token, which overlapped with 1k, causing both to not be considered tokens, so I broke up one of the 01s with an x (which was necessary padding to help with Cubix anyways).

COW has been interleaved into the Incident line. It's a mess to read this way, but it let me golf out some of the x's we used for padding, keeping me just barely in the VIP score. However, mo itself became a token. To fix this, I replaced Incident's 0o token with 0mo and arranged the rest of the COW code around that. The end result is that it's not as easy to move around bits of COW as you would think, because the 0mo placement is important.

There may have been a better token choice for replacement; I didn't spent a lot of time selecting one. If you're looking at changing that, remember that evil uses m as landing points for jumps, and that not allowing O0 and o0 to become tokens (or, strategically making them tokens) will be important. I didn't have enough time to work on that puzzle, but if I get some time before another answer appears I might try.

I particularly want to point out this section of the line, where two moos are separated by a zero. It'd be easy to overlook (especially with a font like Notepad++'s, as you can see in the image), and doing so while tweaking things around there could make both COW and Whirl blow up.

moo0moo

Appeasing the forces of evil

All of the extra ms meant evil's jumps didn't carry it quite as far as the used to, making it parse a lot more characters. Some incident tokens have been renamed to keep evil happy, and two of the es on the evil/alphuck line have been moved to precede the m that evil lands on, as evil now parses two es in the Incident line (just before the Cubix capsule). There was also an issue with a lone x that was being parsed. I didn't want to replace it with a new filler character, as the Incident line's hard enough to follow as is, so instead I did this:

evil sample

Switched an Incident token to 0t, since t in evil is "skip next command if accumulator is not 0." The accumulator spends most of it's time not equal to 0, so I figured that was a fair assumption to depend on to jump over the x. The second t just skips an m that wasn't being used anyways.

In general, b e g p q r u w z are troublesome characters for evil to parse. l v x may also cause issues if not encountered in pairs. If you don't want to construct a more fragile evil program, it's easiest to avoid those.

Cubix

The Cubix capsule moved a bit.

Fission

Despite throwing O all over the place, Fission never even broke for me. I just want to formally apologize here for the Incident line now being a minefield of Fission output statements.

\$\endgroup\$
3
  • \$\begingroup\$ Doesn't quite work in Incident. The token 1k got detokenized because it overlaps with 01 (which also appears three times; this overlap causes neither of them to count as a token). You'll need to break up one instance of 01, or add an additional such instance. \$\endgroup\$
    – user62131
    Apr 15, 2017 at 0:30
  • \$\begingroup\$ @ais523 Weird. Could've sworn I kept the Incident tokens the same as answer #51. Regardless, it's fixed now. \$\endgroup\$ Apr 17, 2017 at 14:46
  • \$\begingroup\$ I constantly amaze myself with how poorly I can perform simple tasks (like copy/pasting a url). lol. That's been fixed as well now. \$\endgroup\$ Apr 17, 2017 at 15:12
8
\$\begingroup\$

44. alphuck, 954 bytes

#  4"16" 3//v\(@#/;\D"14"<;n4
#/*`3 afaaZ">;[77*,68*,@;'1,'1,q)(22)PS#   ␉␉␉␉ (
#yy␉;36!@
#`<` ␉
#=␉z
#<]+<[.>-]>[
#␉<
###xR+++++[D>+++++++L+++<-][<<<]>+.---.>][
#px%>~~~+␉+~*ttt*.x
#D>xU/-<+++L)
#R+.----.R␉>]|
#[#yy#yy0l0v01k1k0l0ix0jx0h0h1d111x0eU0bx0b0o1d0b0e0e00m1d0i0fx0g0n0n11x0o0n0cx0c0o0f0c0gx0g0f0h0j0j0i0001k10vx0v0l11111100(^_)
#|␉
print((eval("1\x2f2")and(9)or(13   ) )-(0and 4)^1<<(65)>>(62))or'(\{(\{})(\{}[()])}\{}\{}\{})'#46(8+9+9+9+9+=!)#1111|=/=1/24=x=9[<$+@+-@@@@=>+<@@@=>+<?#>+.--.]/
__DATA__=1#//
#.\."12"*␉
###; console.log  39
""""#//
=begin␉//
#seemeePaeueewuuweeeeeeeeeecisajjappppp*/
#define␉z  sizeof 'c'-1?"38":"37"
#include<stdio.h>
main(  ) /*/
#()`#`\'*/{puts(z);}/*'``
$'main'␉//
#-3o4o#$$$
<>"3"O.<␉>//
#
=end   #//
"""#"#//
#0]#echo 21#/(\[FAC,1<-#2FAC,1SUB#1<-#52FAC,1SUB#2<-#32FACREADOUT,1PLEASEGIVEUPPLEASE)  a>>>
#>27.say# /7Jn~49c53c'43'p;|  
#8␛dggi2␛`␉|1|6$//''25  =#print(17) #s^_^_LEnd!]/*///@!32*<>ssZ222999"26

is a literal tab, a literal ESC character; Stack Exchange would mangle the program otherwise. I recommend copying the program from the "input" box of the TIO link below, if you want to work on it.

Try it online!

VIP score (Versatile Integer Printer): .011199 (snipped in answer 40 calculates this for all answers; to improve, next entry should be no more than 1020 bytes)

Rundown

This program prints 44 in alphuck, 43 in reticular, 42 in evil, 41 in brainf***, 40 in Minimal-2D, 39 in CoffeeScript, 38 in C, 37 in C++, 36 in Labyrinth, 35 in INTERCAL, 34 in Rail, 33 in Incident, 32 in Whirl, 31 in Modular SNUSP, 30 in Whitespace, 29 in Trigger, 28 in Brain-Flak, 27 in Perl 6, 26 in 05AB1E, 25 in Pip, 24 in Thutu, 23 in Hexagony, 22 in Underload, 21 in Nim, 20 in Prelude, 19 in Reng, 18 in Cardinal, 17 in Julia, 16 in Pyth, 15 in Haystack, 14 in Turtlèd, 13 in Ruby, 12 in Fission, 11 in Befunge-98, 10 in Befunge-93, 9 in Perl 5, 8 in Retina, 7 in Japt, 6 in SMBF, 5 in Python 2, 4 in ><>, 3 in Minkolang, 2 in V/Vim, and 1 in Python 3.

Verification

Most of the languages are tested by the test driver shown above. You can test Reng here and Modular SNUSP here; they output 19 and 31 respectively, as required. Incident is checked by keeping the tokens balanced as described in previous answers. The alphuck interpreter can be found here; it outputs 44, as required.

Driver updates

Since we're paying more attention to the VIP score now, I added in a bit to the driver to calculate how many bytes we can use without regressing in that regard. I also have a crappy Haskell program for the same purpose here because this seemed like as good a time as any to force myself to learn a tiny bit more Haskell.

alphuck explanation

I thought "hey, maybe one of the umpteen brainf*** equivalents uses an output command we haven't used much!" Didn't have to get far down the list to find one that worked.

The commands aceijops equate to bf's ><+-.,[].

Aside from the P in line 2 and the 3 ss in the last line (one a bit before, and two after the Hexagony capsule), most of the new code is mixed in with the evil code.

The worst part of alphuck was finding the interpreter. I had actually given up, deleted my answer, and was in the process of searching for a replacement bf-derivative when I stumbled across this great compiler. Sadly, this means we can't test alphuck on TIO, because this compiler has some quirks that mean a trivial alphuck to brainfuck tranpilation doesn't work. Namely, cells are plain int and thus aren't constrained to 8 bits; also, this compiler treats the language as case-insensitive. Fortunately, this differences only cost me a few bytes in the end.

alphuck interpreters (not usable for this challenge)

Also, for future challenges, I wrote a couple alphuck interpreters today (Feb 23, 2017) on TIO. One is case-insensitive and the other is case sensitive (assuming the lowercase used on the esolang wiki is the intended case).

Minor golfing and fixes

I got rid of the excess m from evil. Then, to prevent m from becoming an Incident token, I replaced one of the filler xs in the main Incident string with an m.

I tried changing some of INTERCAL's FACs to DOs but that just created alternating messes in Fission and Incident, so now they're all back to FAC. I was able to swap LEGEREEX for READOUT though. The best resource I could find to look up which Latin words INTERCAL supports is here. Hoped to find some help for avoiding P and S in there, but no luck.

Hexagony is back to it's right to left capsule, which is one character longer in order to keep Perl happy, but it let me golf a bit more.

Side note: The three s's in the final line can be moved around pretty freely. Comes in handy for fine-tuning Hexagony placement.

Where to go next

@Chance suggested Octave in answer 43 (and gave some help/reasoning, so look there for that) and mentioned Cubix in a comment.

If you want to continue being as uninventive as me, I'm sure there's more bf equivalents that are simple to drop in. Just make sure there's an interpreter that predates the challenge before you write it (on that note: the interpreter/compiler I used also supports ReverseFuck, BinaryFuck, ZZZ, Ook!, Blub, There Once was a Fish named Fred, TrollScript, VerboseFuck, and WordFuck)

Warning

@Chance's first 45th answer used an extra s after the bulk of the alphuck code, removing the need for one of the ones at the end of the program. If READOUT is switched back to LEGEREEX for INTERCAL, this works, but causes alphuck to parse most of the last 3 lines of the program (from UB#2 onwards). Currently, this Just Works™ despite all the loops that are involved (most are escaped by convenient a's (equivalent to brainf***'s >), but it's worth keeping an eye on. Worst case, you can add another p to the evil/alphuck line to open a new loop and add an s near the end of the last line to skip everything.

\$\endgroup\$
4
  • \$\begingroup\$ Does Incident still work? It's not balanced with the usual 1:8 token ratio. \$\endgroup\$
    – Chance
    Feb 23, 2017 at 19:24
  • \$\begingroup\$ @Chance Fixed, and I managed to shave off a byte somewhere while fighting with Incident/INTERCAL/Fission, so I'd say it worked out. \$\endgroup\$ Feb 23, 2017 at 21:15
  • \$\begingroup\$ The case-insensitive Alphuck interpreter doesn't actually accept uppercase. You might want to fix that for future challenges (obviously, it doesn't affect the polyglot itself). \$\endgroup\$
    – user62131
    Apr 28, 2017 at 0:13
  • \$\begingroup\$ @ais523 Fixed, and added input to each to verify they're what they say they are now \$\endgroup\$ Apr 28, 2017 at 14:19
8
\$\begingroup\$

71. what, 1877 bytes

#16  "(}o+?23!@)-("//*\Dv;'[af2.q]PkPPX'#CO)"14";n4
#/*0|7//```"`   [-'v][!(>77*,;68*,@;'1,@10␉␉11)(22)S␉␉(1 P''53'S^'q
#>␉
# 36!@␉`
#
#_>++++.>++++++::@-----x-.+?
#`<`
#<]}} +<[<.>>-]>[
#{
#x}
#
#=x<R+++++[D>+++++++59xL+++<-][pPLEASE,2<-#2DO,2SUB#1<-#52DO,2SUB#2<-#32DOREADOUT,2PLEASEGIVEUPFACiiipsddsdoh]>@@+.---4O6O@.>][
#x%+>+=ttt Z_*.
#D>xU/-<+++L
#R+.----\).>]|
#[#[(?2?20l0v0x1k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0yx0y0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_00)
[ "]56p26q[puts 59][exit]" ,'\['];#/s\\/;print"24";exit}}__DATA__/
#
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.
#
'((( p\';a=a;case $argv[1]+${a:u} in *1*)echo 50;;*A )echo 54;;*)echo 58;;esac;exit;';print((eval("1\x2f 2")and 9or 13<<(65)>>65or 68)-(0and 4)^1<<(65)>>62)or"'x"or' {}{}{}{}({}<(((((()()())){}{}) ){}{})>){(<{}(({}){})>)}{}({}())wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwvwWW li ha '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39
""""
=begin
<>{nd
utpb now 70 dollar off!
ai
utpb has been selling out worldwide!
ai fir at fir "6"
#sseeeemPaeueewuuweeeeeeeeeeCis:ajjap*///;.int 2298589328,898451655,12,178790,1018168591,84934449,12597/*
#define u8 "38\0"
#define p sizeof'p'-1?u8"67":"37"
#include<stdio.h>
main ( ){puts( p);}/* ar  (????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!)
print 61
#}
disp 49;
#{
}<>
$'main'3
#-3o4o#$$$
#<T>"3"O.s
=end
"""#"
#}
#sx|o51~nJ;#:p'34'3\=#print(17)#>27.say#]#print (47)#]#echo 21# xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi os fwwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm
#s  8␛dggi2␛`|$// '' 25  16*///~-<~-<~-<<<~-XCOprint("65")#s^_^_222999 rk:start | print: "69" & s rk:end |6#

VIP score (Versatile Integer Printer): .005244 (to improve, next entry should be no more than 1957 bytes)

Validation

This program prints 71 in what, 70 in Commercial, 69 in rk-lang, 68 in Python, 67 in C11, 66 in Surface, 65 in ALGOL 68, 64 in Agony, 63 in Brian & Chuck, 62 in Grass, 61 in S.I.L.O.S, 60 in Moorhens 2.0, 59 in Tcl, 58 in Ksh, 57 in Wise, 56 in dc, 55 in Brain-Flak Classic, 54 in Zsh, 53 in Shove, 52 in COW, 51 in Assembly, 50 in Bash, 49 in Octave, 48 in Deadfish~, 47 in Lily, 46 in Cubix, 45 in PicoLisp, 44 in alphuck, 43 in reticular, 42 in evil, 41 in brainfuck, 40 in Minimal-2D, 39 in CoffeeScript, 38 in C99, 37 in C++, 36 in Labyrinth, 35 in INTERCAL, 34 in Rail, 33 in Incident, 32 in Whirl, 31 in Modular SNUSP, 30 in Whitespace, 29 in Trigger, 28 in Brain-Flak, 27 in Perl 6, 26 in 05AB1E, 25 in Pip, 24 in Thutu, 23 in Hexagony, 22 in Underload, 21 in Nim, 20 in Prelude, 19 in Reng, 18 in Cardinal, 17 in Julia, 16 in Pyth, 15 in Haystack, 14 in Turtlèd, 13 in Ruby, 12 in Fission, 11 in Befunge-98, 10 in Befunge-93, 9 in Perl 5, 8 in Retina, 7 in Japt, 6 in SMBF, 5 in Python 2, 4 in ><>, 3 in Minkolang, 2 in V/Vim, and 1 in Python 3.

Try it online!

  • Reng can be tested to output 19 here.
  • Modular SNUSP can be tested to output 31 here.
  • Incident tested to output 33 via manual balancing of tokens.
  • Deadfish~ and Moorhens were tested by WheatWizard.
  • Surface can be tested to output 66 here.
  • What was tested locally? (*ba dum crash*). What can now be tested using the driver?
  • Japs was updated in Tio to fix the parsing error we've been exploiting, so it must be tested individually here.

Explanation

What

What is a Brainf***-based language that uses three-character combinations of exclamations and question marks. It reads 3 characters at a time, checking if they're a combination it cares about and throwing it away otherwise. The code to print 71 in Brainf***:

-[++>+[+<]>]>-.------.

Running this through the handy BF-To-What converter yields:

????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!

Luckily, there are no other three-character combinations of ? or ! in the code.

I put this on the main C line to get it ignored by everything else and spaced properly:

main ( ){puts( p);}/*   (????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!)

Underload

Underload doesn't like unbalanced !'s. I added parenthesis around the what code to make Underload ignore it.

Incident

I somehow tokenized ar. I added a useless ar before the what code to detokenize it.

Prelude

Prelude didn't like where the parenthesis were, since there were other unmatched parenthesis in the same column. To fix, I added an extra three spaces before my code so that Prelude wouldn't bork and what would like it.

\$\endgroup\$
3
  • \$\begingroup\$ ar was my fault with my attempted rushed evil fix; are instead of fir fixes that, but requires an extra <space>a somewhere, so I replaced one of the Prelude-padding spaces from the last line with an a for a free fix. All those changes are reflected in my answer now if you want to use them to shorten this answer a bit. \$\endgroup\$ Jun 6, 2017 at 19:15
  • \$\begingroup\$ @SnoringFrog It's not a problem. Prelude and What wanted an extra three characters before the What code anyway, so it's fine. \$\endgroup\$
    – MD XF
    Jun 6, 2017 at 19:16
  • \$\begingroup\$ Can you please edit #38 C into C99 \$\endgroup\$
    – stasoid
    Jun 6, 2017 at 21:00
8
\$\begingroup\$

76. Trefunge-98, 2056 bytes

#16  "}(o+?23!@- "/*\Dv;'[af2.q]PkPPX)\('#CO"14";*/
#/*0|7//```"`  )[-'][(>77*;,68*,@,1',;# l1011)(22)\4nS ␉;␉␉␉(1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉
# 36!@␉`
#
#_>++++.>++++++::@---x---.+?
#`<`
#<]}}+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++qL+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACiiipsddsdoh]>@@+.---@.>][
#x%+>+=ttt Z_*.ar
#D>xU/-<+++L
#R+.----\).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111\4O6O@x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0)0
[ "]56p26q[puts 59][exit]" ,'\['];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<
'((( p\';a=a;case $argv[1]+${a:u} in  *1*)echo 50;;*A)echo 54;;*)echo 58;;esac;exit;'␉;print((eval("1\x2f 2")and 9or 13<<(65)>>65or 68)-(0and 4)^1<<(65)>>62)or"'x"or' {}{}{}{}({}<(((((()()())){}{})){}{})>){(<{}(({}5){})>)}{}({}() )wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWwvwWW li ha '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'#
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39
""""
=begin
<>{
utpb now 70 dollar off!
ai
utpb has been selling out worldwide!
ai fir at fir
#sseeeemPaeueewuuweeeeeeeeeeCis:ajjap*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1"" //*
#define u8 "38\0"
#define p sizeof'p'-1?u8"67":*u8""?"37":"75"
#include<stdio.h> 
main (  )  {puts(p);u8;}//*/
#if 0
#endif//* --... ...--
/*/
print'("72" )';end;
#if 0␌
#endif//* rk:start | print: "69" rk:end<>5b*:,1-,@<>
print 61
#}
disp 49;
#{
}<>
$'main'3
#-3o4o#$$$
#<T>"3"O.</+++++++>/+++<-\>+++.---.
=end
"""#"# xi xi xi xi \++++>/ xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi xi os
#}
#s|o51~nJ;#:p'34'3\=#print(17)#>27.say#]#print (47) #]#echo 21#fwwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''   16~-<~-<~-<<<~-COprint("65")#ssss^_^_#
#5 "25"  +/ *///X222999686#

VIP score (Versatile Integer Printer): .004683 (to improve, next entry should be no more than 2137 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge-98

Verification

Try it online!

Languages that are not on Tio:

  • Reng (#19) online.

  • Deadfish~ (#48) local. Run like this: deadfish.py < polyglot. Prints a bunch of >> lines, but that's an unavoidable consequence of running any Deadfish~ program, so it's okay.

  • Moorhens (#60) local. Use python 2. Note that moorhens.py from master branch doesn't work.

  • Morse (#73) local.

  • Archway (#74) local

  • Trefunge-98 (#76) local. Note that flags must be -v 98 -d -3 for Trefuge. Could also be installed via pip.

Languages that use abstracted interpreters in the test driver:

Other languages:

  • Japt (#7) was updated in Tio to fix the parsing error we've been exploiting, so it must be tested individually online.

  • Surface (#66) local. Tio Surface interpreter is no contest because it was created after challenge was started.

Explanation

Funges

The Funge-98 specification defines Befunge-98. But less talked about is that it also specifies two other languages, Trefunge and Unefunge. They are nearly identical besides number of dimensions. Trefunge is the 3 dimensional part of this family of languages, with formfeed as the character that separates layers in the third dimension.

When running the polyglot from the previous step under Trefunge it follow the same path as Befunge-98. So we needed to separate Trefunge. This happens on the second line. The relevent part of the second line was previously

>77*,;68*,@;'1,@

but is now

>77*;,68*,@,1',;# l

For Befunge-93 nothing important has changed since ; is a nop.
For Befunge-98 and Trefunge we no longer print the 1 before the semicolon delimited jump. this semicolon jump now jumps over the output both the Befunge-93 output code and the Befunge-98 only code. after the jump the next command is #, which jumps over the space. The l following this jump is where the paths of Trefunge and Befunge-98 diverge, being a command that sets the IP downward in 3d space in Trefunge and acts as a reflector (like unimplemented commands should) in Befunge-98.
After Befunge-98 reflects the # now acts to jump the semicolon where it now prints its answer in the same way as before, but travelling leftward rather than rightward (and now sharing the @ with befunge-93).

The rest of the code relevant to Trefunge is near the rk-lang code.

#if 0␌
#endif//* rk:start | print: "69" rk:end<>5b*:,1-,@<>

The formfeed is what separates everything after it to being on a different level in the 3rd dimension (just like newlines separate rows in the second dimension). After being sent downward by the l in the second line the IP turns eastward at the first >. The 5b* puts 5 on the stack then 11 (b in hexadecimal) then multuplies to give 55, the ascii code of 7. The : duplicates the stack. The comma pops the stack to print out the 7. The 1- subtracts 1 to give 54 (ascii for 6) before that is printed out by the second comma. the @ ends the program.

A < was added to match the > because several languages disliked the mismatched >.

<><

The increase of the Befunge code's length by 3 misaligned the <>< code on line 1 from the <>< code on line 2. So the fish code was moved left by 3 characters, not breaking anything in the process.

Cubix/INTERCAL

The DOs in the INTERCAL where changed to being FACs again so that the cubix IP didn't start on a D. Standard alterations made to move the Cubix capsule.

Incident

<> had become a token so another <> was added to the end of the Trefunge code. '; had also become a token somehow. I first tried to fix this by putiing a space in the middle of the tokens occurrence on the scripting language line. This caused '<space> to become a token, so I used a tab instead of a space.

Golfing

Golfed 6 spaces from the last line, decided to line up the prelude brackets properly this time rather than guessing.

\$\endgroup\$
8
\$\begingroup\$

80. Klein 201, 2221 bytes

#16  "}(o+?23!@- "/*\Dv;'[af2.q]PkPPX)\('#CO"14";*/
#/*0|7//```"`  )[-'][(>77*;,68*,@,1',;# l1011)(22)\4nS ␉;␉␉␉(1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉
# 36!@␉`
#
#_>++++.>++++++::@---x---.+?
#`<`
#<]}}+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++qL+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACiiipsdds4O6O@doh]>@@+.---@.>][
#x%+>+=ttt Z_*.ar
#D>xU/-<+++L
#R+.----\).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0)0
[ "]56p26q[puts 59][exit]" ,'\['];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWw((.*.*.*.*.*.*.*.*.*.*819.+.*.+@[5]{}) ) )␉\';';print((eval("1\x2f 2")and 9or 13<< (65)>>65or 68)-(0and 4)^1<<(65)>>62)or"'x"or' {}{}{}{}({}<(((((()()())){}{})){}{})>){(<{}((x{}5){})>)}{}({}())wWW no no no no no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'#
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39
""""
'<>\';    a=$(printf \\x00  );b=${#a};

"}"';           ((((';case "{"$ar[1]"}"${b} in    *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))
=begin
<3>
<>{
utpb now 70 dollar off!
utpb has been selling out worldwide!
#seeeemPaeueewuuweeeeeeeeeeCis:ajjappp*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1"" //*
#include<stdio.h> 
#define ␉l(d)␉#d
#define u8 "38\0\0"
main (  ){puts( sizeof(0,u8)-5?u8"67":*u8""?"37": l( 0'0  "'\"")[9]?"75\0":'??-'&1? "79":"77\0");}//*/
#if 0
#endif//* --... ...--
/*/
print'("72")';end;
#if 0␌
#endif//* rk:start | print: "69" rk:end<>5b*:,1-,@
print 61
#}
disp 49;
#{
}<>
$'main'3
#-3o4o#$$$
#<T>"3"O.</+++++++>/+++<-\>+++.---.
=end
"""#"#yxxxxxxxxxxxx\++++>/
#}
#s|o51~nJ;#:p'34'3\=#print(17)#>27.say#]#print (47) #]#echo 21#fwwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''   16~-<~-<~-<<<~-COprint("65")#ssss^_^_#
#5 "25"  +/ *///X222999686#

VIP score (Versatile Integer Printer): .004337 (to improve, next entry should be no more than 2304 bytes)

Rundown

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge-98, 77 in C++14, 78 in dash, 79 in C++17 80 in Klein 201

Verification

Try it online!

Languages currently not on TIO:

  • Japt, 7 online.

  • Reng, 19 online.

  • Deadfish~, 48 local.

  • Moorhens, 60 local. moorhens.py from master branch doesn't work.

  • Morse, 73 local.

  • Archway, 74 local

  • Trefunge-98, 76 local. Use -v 98 -d 3 for Trefunge-98.

Explanation

Klein is a group of 12 languages that are embedded in different topological surfaces. Klein 201 is embedded on a particular Klein bottle. In 201 when the ip is deflected off of the north end of the program, it will appear again on the west edge of the program. The / on the first line does just that, deflecting the ip to run the 18th line. Before we hit the / we end up with an extra 1, 6, 125, 40, 111, 43, 63, 50, 51, 33, 64, 45, 32 from the 16 and the "}(o+?23!@- ". So I added the Klein code **********819+*+@ to the 19th line. The first string of *s clears all the garbage we accumulated and the 819+*+ puts the 80 on the stack. @ exits the program.

Retina

Retina did not like the "nested quantifiers" caused by the long string of *s and +s. Prepending each and everyone of these with a . was the shortest things I could do to get Retina to not error on this line.

The usuals

By now incident and prelude had both broken from the changes. A bit of space shuffling was required for prelude and some token breaking was required for incident.

Moorhens

Unsurprisingly I did not break Moorhens. But I have wanted to move the moorhens code forward for a while now so I did. The farther forward Moorhen's os is the less code Moorhens parses, so we should endeavor to move it close to the beginning to prevent the parsing of as much of the file as possible. I moved the long string of xis up to the Brain-Flak code and replaces them with no. Snoringfrog helped me to clean up some of the leftover code in the Commercial answer.

Archway

In order to fill in the space where the moorhens once was, realigning archway, I added a bunch of xs and one y before some of the archway code. This is prime place for making and breaking tokens because these can pretty much be any character.

Alphuck

Moving some letters around broke alphuck, which Snoringfrog kindly fixed for me.

Going forward

Klein still has 11 more topological surfaces that can be added to the polyglot. It might not be the wisest to add all of them (that could be chaos) but a few of them might be easy. This program also prints 80 in Klein 211 as well.

\$\endgroup\$
2
  • 1
    \$\begingroup\$ Nitpick: I think the Klein code is on line 19, not 18 \$\endgroup\$ Jun 21, 2017 at 15:35
  • 2
    \$\begingroup\$ "that could be chaos". Wouldn't want to ruin how clean and orderly the code currently is! \$\endgroup\$
    – Pavel
    Jul 30, 2017 at 22:27
8
\$\begingroup\$

84. Klein 001, 2336 bytes

#16  "}(o+?23!@- "/*\Dv;'[af2.q]PkPPX)\('#CO"14";*/
#/*0|7//```"`  )[-'][(>77*;,68*,@,1',;# l1011)(22)\4nS ␉;␉␉␉(1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉
# 36!@␉`
#~
#_>++++.>++++++::@---x---.+?
#`<`
#<]}}+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++qL+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACiiipsdds4O6O@doh]>@@+.---@.>][
#x%+>+=ttt Z_*.ar
#D>xU/-<+++L
#R+.----\).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0)0
[ "]56p26q[puts 59][exit]" ,'\['];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<
'(wWWWwWWWWwvwWWwWWWwvwWWWwWWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWw((.*.*.*.*.*.*.*.*.*.*819.+.*.+@[5]{}) ) )␉\';';print((eval("1\x2f 2")and 9or 13<< (65)>>65or 68)-(0and 4)^1<<(65)>>62)or"'x"or' {}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>)}({}){}({}())wWW no no no no no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<\>@*99[?]*]*.*|!)'#
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39
""""
'<>{\';   a=$(printf \\x00  );b=${#a};

"}"';           ((((';case "{"$ar[1]"}"${b} in    *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))
=begin
utpb now 70 dollar off!
utpb has been selling out worldwide!
#seeeemPaeueewuuweeeeeeeeeeCis:ajjappp*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1"" //*
#include<stdio.h> 
#define ␉l(d)␉#d
#define u8 "38\0\0"
main (  ){puts( sizeof(0,u8)-5?u8"67":*u8""?"37": l( 0'0  "'\"")[9]?"75\0":'??-'&1? "79":"77\0");}//*/
#if 0
#endif//* --... ...--
/*/
print'("72")';end;
#if 0␌
#endif//* rk:start | print: "69" rk:end<>5b*:,1-,@
print 61
#}
disp 49;
#{
}<>
$'main'3
#-3o4o#$$$
#<T>"3"O.</+++++++>/+++<-\>+++.---.
=end
"""#"#yxxxxxxxxxxxx\++++>/<~#class P{   function:Main(a:String[] )~Nil{83->Print();} }
#}
#s|o51~nJ;#:p'34'3\=#print(17)#>27.say#]#print (47) #]#echo 21#fwwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''   16~-<~-<~-<<<~-COprint("65")#sss^_^_#
#5 "25"  +/ *///X222999686#

VIP score (Versatile Integer Printer): .003941 (to improve, next entry should be no more than 2420 bytes)

Rundown

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge-98, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001

Verification

Verification

Try it Online!

Languages currently not on TIO:

  • Japt, 7 online.

  • Reng, 19 online.

  • Deadfish~, 48 local.

  • Moorhens, 60 local. use moorhens.py from the v2.0-dev branch

  • Morse, 73 local

  • Archway, 74 local

  • Trefunge-98, 76 local. Use -v 98 -d 3 for Trefunge-98.

  • Objeck, 83 local I have not acutally installed or tested Objeck, However I believe that it works based on the description of how the last answer worked

Explanation

Klein, is a family of 2 dimensional languages that can be embedded on different topological surfaces. Klein 001 is embedded in a Klein bottle. When the ip is deflected to the north, in Klein 001, it reappears on the south edge but mirrored across the vertical axis. For example if we had the following:

. ^ . . .
. . . . .
. . . . .
. . . . .
. . . . .

(Where ^ indicates the position of the ip moving north.) The ip would appear to the south as such:

. . . . .
. . . . .
. . . . .
. . . . .
. . . ^ .

Since our polyglot deflects Klein languages off the top in the 19th column from the west this means our ip will reappear in the 19th column from the east. This column is mostly empty; only one row is long enough to reach all the way to the east. Funnily enough it is the 19th row. The 19th row is where the other two Klein languages we have added exist. Klein 201, will do us no harm because its all the way to the west, but Klein 100 is an issue, we the entirety of the Klein 100 program to exist in the last 18 characters of line 19. Despite SnoringFrogs best efforts, Klein 100 took up far more than the last 18 characters, this meant I had to golf it down quite a bit. Here is the original program:

@*99.?.*.*.*.*.*.*.*.*.*.*.*.*

All the dots are to prevent Retina's "nested quantifier" error (we will find this to be a big pain later on). After a lot of effort I was able to get it down to

@*99.?]*]*.*<

How does it work? Well the biggest part of the program is getting rid of the crud already on the stack, this is done by multiplying everything into one massive value and throwing that out with a ?, the old version just had all the multiplications in a row, however this version sets up a loop of sorts. To do this we use a feature rather unique to Klein languages, the "door". There are 2 doors ] and [ each allows the ip to pass through it when the ip is approaching from the concave side of the bracket, but reflects the ip when it touches the flat side. The unique thing about doors is that when the ip touches a door of one type it switches to become a door of the other type. Here we start with the doors shut, the ip runs through a few *s and opens the door, it then goes back to the start, gets turned around by < runs again opens the second door runs back and forth one more time. If you have ever done the exercise called "suicides" this works exactly like that.

So I after golfing down the Klein 100 I was able to add the Klein 001 right before it like so:

@*3*74.?]*]*.*<xxx@*99.?]*]*.*<

The xs are placeholders, because the Klein 100 is now so short we need to pad it (this won't last very long)

Every single language that uses square brackets for loops

Turns out there are a lot of these, and they don't appreciate it when you have unbalanced square brackets in your code. So I had to balance the doors in the new Klein code:

[[@*3*74[?]*]*.*<xxx@*99[?]*]*.*<

Perl, Prelude and Retina

I swear these three languages were conspiring against me. Perl takes issue with the unbalanced <s so I have to replace them with something else or balance them. This isn't too hard Klein 001's < can be balanced, but we have to get rid of Klein 100's <, no biggie we have xs lying around anyway,

[[@*3*74[?]*]*.*<\>x@*99[?]*]*.*|!

Ok now prelude is outputting a null byte, ! is preludes output command so we need to avoid that. No problem, ? also jumps in Klein and has the advantage of also popping a value so we'll do:

[[@*3*74[?]*]*.*<\>x@*99[?]*]*.*|?

However Retina doesn't like that because ? is a quantifier in Retina and thus |? is invalid regex. Usually this is fixed by adding a dot before the quantifier, but since the ? is there to skip the |, putting a dot pretty much makes the ? useless. So I tried a couple of things.

[[@*3*74[?]*]*.*<\>@*99[?]*]*.*<>?

Breaks Retina

[[@*3*74[?]*]*.*<\>@*99[?]*]*.*<>!

Breaks Prelude

[[@*3*74[?]*]*.*<\>@*99[?]*]*.*[?[?]?]?

Too long

I spent a good deal of time on this problem, each solution seemed to just barely break in one of the three answers or required more space than I had available. The way I managed to get past this was to put a prelude jump to prevent prelude from executing the !.

[[@*3*74[?]*]*(<\>@*99[?]*]*.*|!)

I feel rather lucky that this solution takes the exact amount of space we are allowed for the answer.

Tips going forward

Despite how difficult it was to get this to work, it is quite robust, here is a list of things that may or may not harm Klein 001

Will not harm

  • Adding characters to line 19 before the relevant section. Since the Klein code is relative to the end of the line making the line longer will not effect it

  • Adding new lines to the polyglot. As long as there are less lines than there are characters on the 19th line adding new lines won't mess up Klein 001

Might harm

  • Making a line within 19 of the length of line 19. If another line gets within 19 of the east edge Klein 001 will start executing its code, unless the line is above line 19. Depending on what it is it might interfere with Klein 001. The main thing to worry about is things that might deflect the ip off of its path

Will harm

  • Adding to the end of line 19. This will mess up the alignment wreaking havoc on Klein 001

  • Making another line longer than line 19. Since Klein 001 is relative to the longest line making a different line longer will change Klein 001's alignment

  • Moving the 19th character. If the / in line 1 is moved it will completely realign Klein 001.

\$\endgroup\$
8
\$\begingroup\$

91. Cood, 2623 bytes

#16  "?63(o?23!*# #@"/*\DZZCv;'[af2.q]PkPPX)\('#CO"14"; */
#/*0|7//```"`  [>.>.])[-'][(>77*;,68*,@,1',;# l1011)(22)S\4n;␉␉␉␉(1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉
# 36!@␉`  e++++++::@ 
#~
#y
#`<`
#<<<#>>]}}+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q   L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACiiipsddsdoh]>@@+.---@.>][
#x%+>+=ttt Z_*.xxxxxxx4O6O@
#D>xU/-<+++L
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoOMOO   /"78"oo@0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0)0\\
[ "]56p26q[puts 59][exit]" ,'\['];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWw WWWWWWWWwWWWWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWw  (([5]{}) ))␉\';';print((eval("1\x2f 2")and 9or 13<< (65)>>65or 68)-(0and 4)^1<<(65)>>62)or"'x"or' {}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;'(*****************819+*+@[*99[?]*]***|!)'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()] )}{\';       a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))#\
=begin
#p
;set print "-";print 89;exit#ss
utpb now 70 dollar off!
utpb has been selling out worldwide!
#seeeemPaeueewuuweeeeeeeeeeCis:ajjappppp
More 91 of thisof re
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1"" //*
#include<stdio.h> 
#define␉ x(d)␉#d
#define u8 "38\0 "
main (  ){puts( sizeof (0,u8)-5?u8"67":*u8""?"37":     x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77");"eg5""6 27";}//*/
#if 0
#endif//* --... ...--
/*/
print'("72")';end;
#if 0␌
#endif//* rk:start | print: "69" rk:end<(     >5b*:,1-,@
print 61
#}
disp 49;
#{
}{}<>
$'main'3
#-3o4o#$$$
#<T>"3"O.</+++++++>/+++<-\>+++.---.
#<<<#>>>
reg end="";print(85);reg s
=end
;"""#"#xxxxxxxy"78"\++++>/<~#class P{        function:Main(a:String[] )~Nil{83->Print();} }
#}pS9^7^8^MUOUOF@:8:8\\
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47) #]#echo 21#fwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwv m>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint ("65")#sss^_^_#
#5 "25"  +/ *///X222999686#

VIP score (Versatile Integer Printer): .003480 (to improve, next entry should be no more than 2709 bytes)

Rundown

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge-98, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood

Verification

Try it Online!

Languages currently not on TIO:

Explanation

Cood is a language that is meant to resemble a conversation between a waiter and a patron. It has a rather straight forward syntax.

Based off of the esolangs article on Cood I wrote the following program in Cood to print 91:

Hey, waiter!
I want 91 of this.
How much is it?
The bill, please.

After playing around with the interpreter a bit I realized I could remove a couple of things bringing me down to:

I want 91 of this
How much is it

I took this code and inserted it in the place I thought it would fit best, right after the Commercial code, since the two have similar syntax.

Alphuck

Since I added letters to the source Alphuck had to be fixed. I followed standard procedure to fix this.

Grass

The new code added two ws which were an issue for Grass. I was able to remove one of them by changing I want 91 of this to More 91 of this. This adds 91 instead of setting it. Since the cells are initialized to zero and there is no valid Cood code earlier (no surprise there), this has the same function. The other w I was not able to get rid of, so I deleted a w later on in the Grass code which caused it to have the correct number of ws in its block. We don't have any ws left to delete so if any more lowercase ws are added to the code we are going to have to rework Grass a bit.

Archway

Removing a w from the Grass offset the Archway code, I inserted an additional character to get it back.

evil

evil gave me quite a hard time. I tried a number of things but what ended up working best was moving the Cood down below the evil.

C

Moving Cood below the evil moved it out of the C comments requiring me to move the comment down to the end of the Cood, It was then that I discovered that Cood is very lenient with what it considered "punctuation", allowing me to use */ as punctuation for the Cood code.

Incident

As always Incident broke. I'm just going to list the fixes as bullet points for ease of reading.

  • w got tokenized. I added a space to the Grass code to detokenize it

  • of got tokenized. I added another of after the first line of Cood.

  • re got tokenized. I added a re after the of to fix.

  • e got detokenized. I swapped the tab and the space in the first #define line of the C code.

  • s\n was also briefly tokenized but the of took care of that

Prelude

Adding the space to the Grass code to detokenize Incident upset Prelude. I had to remove a later space on the same line to realign all of the parentheses.

Moving on

Cood probably wont break. It has really specific and permissive syntax. The only downside to this addition is that it made Grass a little harder to fix if more ws are added. However I think this should be still not very difficult to do.

\$\endgroup\$
8
\$\begingroup\$

95. Emoji, 2777 bytes

#16  "?63(o?23!*# #@"/*\DZZCv;'[af2.q]PkPPX)\('#CO"14"; */
#/*0|7//```"`  [>.>.])[-'][(>77*;,68*,@,1',;# l1011)(22)S\4n;iiipsddpsdoh coding:utf8               (1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>  
# 36!@  `  e++++++::@ 
#~
#y
#`<`
#<<<#>>]}}+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q   L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]>@@+.---@.>][
#x%+>+=ttt Z_*.
#D>xU/-<+++L
#R+.----\   \).>]|
#[#[(?24O6O@?20l0v01k1kMoOMoOMoOMoO MOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0 )0\\
[  "]56p26q[puts 59][exit]" ,'\['];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWw WWWWWWWWwWW/"78"oo@WWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWw              (([5]{})))    \';';print((eval("1\x2f 2")and 9or 13<< (65)>>65or 68)-(0and 4)^1<<(65)>>62)or"'x"or' {}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;'(*****************819+*+@[*99[?]*]***|!)'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))#\
=begin
#p
;set print "-";print 89;exit#ss
utpb now 70 dollar off!
utpb has been selling out worldwide!
#seeeemPaeueewuuweeeeeeeeeeCis:ajjappppppp😆😨😒😨💬95💬➡
set ! 57
set ! 51
More 91 of thiset of re
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449,12597
#endif//*
#1"" //*
#include<stdio.h> 
#define  x(d)   #d
#define u8 "38\0 "
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":     x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77");"eg5""6 27""Zinge  ";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof( "(\"           ); print'(''72'')';end!"           ); main( ){puts("92" );return 0;}
#if 0 
#endif//* rk:start | print: "69" rk:end<(     >5b*:,1-,@
print 61
#}
disp 49;
#{
}{}<>
$'main'3
#-3o4o#$$$
#<T>"3"O.</+++++++>/+++<-\>+++.---.
#<<<#>>>
reg end="";print(85);reg s
=end
;"""#"#xxxxxxxy"78"\++++>/<~#class P{        function:Main(a:String[] )~Nil{83->Print();} }
#}pS9^7^8^MUOUOF@:8:8\\
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47) #]#echo 21#fwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8 dggi2 M`|$//''  1$6~-<~-<~-<<<~-COprint ("65")#asss^_^_#
#5 "25"  +/ *///X222999686#

(Emojis broke something in the pretty printer of the test driver. I manually fixed the above code.)

VIP score (Versatile Integer Printer): .003238 (to improve, next entry should be no more than 2864 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge-98, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji

Verification

Try it Online!

Languages currently not on TIO:

Explanation

There were a few languages that we had thought couldn't be included because Python didn't allow UFT-8, but thanks to @stasoid's excellent Emotinomicon answer we have a new class of languages to add. Emoji is the first Emoticon language I looked at, but conclude that it could not be added.

Adding Emoji was the easiest addition I've ever had. I just looked at the Hello, World! example on Tio. (Apparently Tio has Hello, World! examples now. So cool.) And I changed Hello, World! to 95. Done.

Others

The only other language that broke with this addition was Incident. The fix was putting an a prior to the sss on the next to last line, which detokenizes as.

Looking forward to @stasoid's next answer. Apparently he has a few saved up, and the last couple have been pretty great in my opinion.

Good Luck.

\$\endgroup\$
3
  • 1
    \$\begingroup\$ @zachary NEVER! \$\endgroup\$
    – Chance
    Jul 29, 2017 at 15:26
  • \$\begingroup\$ Well, there will never be an accepted answer, since the OP doesn't exist anymore. But eventually it'll reach the point where no more languages can be added (unless they're designed for this challenge) \$\endgroup\$
    – Adalynn
    Jul 29, 2017 at 15:32
  • \$\begingroup\$ I guess you could say,.. there's no chance of that happening. I'll excuse myself. \$\endgroup\$ Jul 31, 2017 at 0:16
8
\$\begingroup\$

101. K&R C, 2969 bytes

#16  "?63(o?23!*# #@"/*\DZZCv;'[af2.q]PkPPX)\('#CO"14"; */
#/*0|7//```"`  [>.>.])[-'][(>77*;,68*,@,1',;# l1011)(22)S\4n;iiipsddpsdoh coding:utf8␉␉␉␉(1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉
# 36!@␉`  e++++++::@ 
#~
#y
#`<`
#<<<#>>]}}+-[.+..]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q   L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]>@@+.---@.>][
#x%+>+=ttt Z_*.
#D>xU/-<+++L
#R+.----\   \).>]4O6O@|
#[#[(?2?20l0v01k1kMoOMoOMoOMoO MOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0 )0\\
[  "]56p26q[puts 59][exit]" ,'\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWw WWWWWWWWwWW/"78"oo@WWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWw              (([5]{})))␉\';';print((eval("1\x2f 2")and 9or 13<< (65)>>65or 68)-(0and 4)^1<<(65)>>62)or"'x"or' {}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;'(******* **********819+*+@[*99[?]*]***|!)'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9 seeeemPaeueewuuweeeeeeeeeeCis:ajjappppppp😆😨😒😨💬95💬👥➡
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚

set ! 57
set ! 51
More 91 of thiset of re9
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":     x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77");"-' 101+-eg5""6 27""Zinge  ";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end!"            );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<(9    >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>
$'main'3
#-3o4o#$$$
#<T>"3"O.</+++++++>/+++<-\>+++.---.
#<<<#>>> /
reg end="";print(85);reg s#++++++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#xxxxxxxy"78"\++++>/<~#class P{        function:Main(a:String[] )~Nil{83->Print();} }
#}pS9^7^8^MUOUOF@:8:8\\
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47) #]#echo 21#fwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint ("65")#asss^_^_#
#9 "25"  +/ *///X222999686#

I used standalone pretty printer because the one in the test driver doesn't work properly.

VIP score (Versatile Integer Printer): .002881 (to improve, next entry should be no more than 3057 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge-98, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C

Verification

Try it online!

Languages not available on TIO:

Explanation

Last versions of gcc support traditional mode only in preprocessor (no ‑traditional, only ‑traditional‑cpp), but it is enough for us. All the stuff that separates C89 and K&R C from other languages and from each other (preprocessor directives, comments, trigraphs) is handled by preprocessor.

Trigraphs were introduced in C89, so we can distinguish C89 from K&R C by '??-'&1 (see also C++17 answer):

puts('??-'&1 ? "101" : "92");

Only Incident broke, fixed as usual.

Japt

In Japt link version 1.3.0 was specified, but the actual version that gets loaded is 1.4, see browser F12, Elements, head -> script. To avoid further confusion, I changed the version to 1.4.

\$\endgroup\$
0
8
\$\begingroup\$

103. Unicat, 3072 bytes

#16  "?63(o?23!*# #@"/*\DZZCv;'[af2.q]PkPPX)\('#CO"14"; */
#/*0|7//```"`  [>.>.])[-'][(>77*;,68*,@,1',;# l1011)(22)S\4n;iiipsddpsdoh coding:utf8␉␉␉␉(1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉
# 36!@␉`  e++++++::@ 
#~
#y
#`<`
#<<<#>>]}}+-[.+..]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q   L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]>@@+.---@.>][
#x%+>+=ttt Z_*.
#D>xU/-<+++L
#R+.----\   \).>]4O6O@|
#[#[(?2?20l0v01k1kMoOMoOMoOMoO MOO0l0ix0jor0h0h1d111x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0 )0\\
[  "]56p26q[puts 59][exit]" ,'\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWw WWWWWWWWwWW/"78"oo@WWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWw              (([5]{})))␉\';';print((eval("1\x2f 2")and 9or 13<< (65)>>65or 68)-(0and 4)^1<<(65)>>62)or"'x"or' {}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;'(******* **********819+*+@[*99[?]*]***|!)'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9 seeeemPaeueewuuweeeeeeeeeeCis:ajjappppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡

set ! 57
set ! 51
More 91 of thiset of re9
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":     x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77");"-' 101+-eg5""6 27""Zinge  ";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end!"            );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<(9    >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>
$'main'3
#-3o4o#$$$
#<T>"3"O.</+++++++>/+++<-\>+++.---.
#<<<#>>> /
reg end="";print(85);reg s#++++++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#xxxxxxxy"78"\++++>/<~#class P{        function:Main(a:String[] )~Nil{83->Print();} }
#}pS9^7^8^MUOUOF@:8:8\\
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47) #]#echo 21#fwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint ("65")#asss^_^_#
#9 "25"  +/ *///X222999686#

The code above is generated by this pretty printer.

VIP score (Versatile Integer Printer): .002811 (to improve, next entry should be no more than 3161 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge-98, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C, 102 in Symbolic Brainfuck, 103 in Unicat

Verification

Try it online!

Languages not available on TIO:

Explanation

Unicat is a language whose commands are represented with 9 cat emojis:

              UTF-8         c
😸  U+1F638   F0 9F 98 B8   0
😹  U+1F639   F0 9F 98 B9   1
😺  U+1F63A   F0 9F 98 BA   2
😻  U+1F63B   F0 9F 98 BB   3
😼  U+1F63C   F0 9F 98 BC   4
😽  U+1F63D   F0 9F 98 BD   5
😾  U+1F63E   F0 9F 98 BE   6
😿  U+1F63F   F0 9F 98 BF   7
🙀  U+1F640   F0 9F 99 80   8

All other characters in the source file are ignored.
Further I will use indices instead of real emjis, they are the same as in c variable in Unicat source code.

Every command is represented by two cats. We will use 3 commands:

  • asgnlit(31) - assign number to variable. takes 2 parameters (numbers) - variable id and a number
  • echoval(44) - print variable as number, takes 1 parameter - variable id
  • diepgrm(88) - exit program, no parameters

Numbers are represented in octal using cats' indices, and 88 indicates end of the number (roughly speaking; see parseNbr in cat.py).
For example, 103 = 147 octal = 147 88 = 😹😼😿 🙀🙀

So the program is:

31 0 88 147 88   44 0 88   88
asgnlit          echoval   diepgrm

😻😹 😸 🙀🙀 😹😼😿 🙀🙀   😼😼 😸 🙀🙀   🙀🙀

I think this is the first time when nothing broke because of my addition.

Test driver updates: removed Japt wrapper, fixed Cubix wrapper. Dennis added Cood, Reng and Trefunge to TIO.

\$\endgroup\$
4
  • \$\begingroup\$ PingPong exits with exit code 216. link \$\endgroup\$
    – MD XF
    Aug 2, 2017 at 2:21
  • \$\begingroup\$ I'll fix it in my next answer. \$\endgroup\$
    – stasoid
    Aug 2, 2017 at 5:03
  • \$\begingroup\$ Both archways and set now on TIO. \$\endgroup\$
    – ASCII-only
    Aug 2, 2017 at 14:05
  • \$\begingroup\$ I'll try to work on the rest of the interpreters tomorrow \$\endgroup\$
    – ASCII-only
    Aug 2, 2017 at 14:09
8
\$\begingroup\$

105. Emoji-gramming, 3291 3267 bytes

#16  "?63(o?23!*# #@"/*\DZZCv;'[af2.q]PkPPX)\('#CO"14"; */
#/*0|7//```"`  [>.>.])[-'][(>77*;,68*,@,1',;# l1011)(22)S\4n;iiipsddpsdoh coding:utf8␉␉␉␉(1P''53'S^'????!?!??!??!!!!???!?!??!!?!?!!!!!?!!!!?????!????????????????????!) (qx
#>␉
# 36!@␉`  e++++++::@ 
#~
#y
#`<`
#<<<#>>]}}+-[.+..]+-+<[<<.>>x>-]>[
#{
#x}
#2""/*\*
#=x<R+++++[D>+++++++q   L+++<-][pPLEASE,2<-#2FAC,2SUB#1<-#52FAC,2SUB#2<-#32FACREADOUT,2PLEASEGIVEUPFACs]>@@+.---@.>][
#x%+>+=ttt Z_*.
#D>xU/-<+++L
#R+.----\   \).>]|
#[#[(?2?20l0v01k1kMoOMoOMoOMoO MOO0l0ix0jor0h0h1d1114O6O@x0eU0y0yx0moO1d0y0e0e00m1d0i0fx0g0n0n11MoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOMoOmOoMOo0moo0n0tx0t0moO0f0t0gOOM0g0f0h0j0j0i0001k1x0vx0v0l111111^_0 )0\\
[  "]56p26q[puts 59][exit]" ,'\[999'];#/s\\/;print"24";exit}}__DATA__/
###x<$+@+-@@@@=>+<@@@=>+<?#d>+.--.<!\
'(wWWWwWWWWwvwWWwWWWwvwWWWw WWWWWWWWwWW/"78"oo@WWwWWWWWWWwWWWWWWWWwwwwvwWWWwWWWWwvwWWwWWWwvwWWwWWWwvwWWwWWWw              (([5]{})))␉\';';print((eval("1\x2f 2")and 9or 13<< (65)>>65or 68)-(0and 4)^1<<(65)>>62)or"'x"or' {}{}{}{}({}<(((((()()())){}{})){}{})>)(({})5){}x{(x<(<()>)({})({}<{}>({}){})>){({}[()])}}({}){}({}()<()()()>)wWW no no no no no no no no no no no no no no no no no no no no no no no no no no no no no no os sp '#}#(prin 45)(bye)46(8+9+9+9+9+=!)((("3'3)))"'a'[[@*3*74[?]*]*(<*.*\>]xxxxxxxxxxxxx)'# \\
__DATA__=1#"'x"
#.;R"12"'
###;console.log 39;'(******* **********819+*+@[*99[?]*]***|!)'
#\\
""""#\
' ( <><        (          )>  ){ ({}[()]  )}{\';      a=$(printf \\x00    );b=${#a};#\\
" }"';           ((   ( (';case "{"$ar[1]"}"${b} in *1)echo 54;;*4)echo 78;; *1*)echo 50;;*)echo 58;;esac;exit;# (((('))))#\
=begin
#p             +555/2+55x%6E2x
;set print "-";print 89;exit# ss9
utpb now 70 dollar off!
utpb has been selling out worldwide!
#9999 9 seeeemPaeueewuuweeeeeeeeeeCis:ajjappppppp😆😨😒😨💬95💬👥➡😻😹😸🙀🙀😹😼😿🙀🙀😼😼😸🙀🙀🙀🙀
👋🔢🌚🌝🌝🌚🌚🌚🌚🌚▲▲▲²²²²▲¡▼¡▲▲¡
😊♈💖
😇♈♈
😊♉♈
😇♈♈
😇♈♉
😇♈💜
😊♉♈
😊📢♈
😈♈💜
😊📢♈
😇♉💞
😊📢♉

set ! 57
set ! 51
More 91 of thiset of re9
How much is it*/
#if 0
.int 2298589328,898451655,12,178790,1018168591,84934449, 12597
#endif//*
#1"" //*
#include<stdio.h>
#define␉ x(d)␉#d
#define u8 "38\0 "
main ( ) {puts( sizeof (0,u8)-5?u8"67":*u8""?"37":     x( 0'0  "'\"")[9]?"75":'??-'&1? "79":"77");"5""6 27""Zinge  ";}//*/
#if 0
#endif//* --... ...--
/*/
p=sizeof("9( 999 99\"    ); print'(''72'')';end!"            );main( ){puts('??-'&1?"101":"92");return(9-9+9 -9);}
#if 0␌
#endif//* rk:start | print: "69" rk:end<(9    >5b*:,1-,@
print 61
#}
disp 49 ;9;
#{
}{}<>
$'main'3
#-3o4o#$$$
#<T>"3"O.</+++++++>/+++<-\>+++.---.
#<<<#>>> /
reg end="";print(85);reg s#++++++++++++++++++++++++++++++++++++++++++++++++++++++++.-.
=end
;"""#"#pxxxxxxy"78"\++++>/<~#class P{        function:Main(a:String[] )~Nil{83->Print();} }
#}S9^7^8^MUOUOF@0:8:8\\
#s|)o51~nJ;#:p'34'3  \=#print(17)#>27.say#]# print(47) #]#echo 21#fwwwwwWWWwWWWWWwWWWWWWWwWWWWWWWWWwWWWWWWWWWWWWWWWwWWWWWWWWWWWWwvm>++++
#s8␛dggi2␛M`|$//''  1$6~-<~-<~-<<<~-COprint ("65")#asss^_^_#
#9 "25"  +/ ppppppp            (x*n*n*n*e*s*s*s*ee*n*n*n*e*sss*e*n*n*n*ee*s*e)*///X222999686#

VIP score (Versatile Integer Printer): .002822 (to improve, next entry should be no more than 3361 bytes)

This program prints 1 in Python 3, 2 in V/Vim, 3 in Minkolang, 4 in ><>, 5 in Python 2, 6 in SMBF, 7 in Japt, 8 in Retina, 9 in Perl 5, 10 in Befunge-93, 11 in Befunge-98, 12 in Fission, 13 in Ruby, 14 in Turtlèd, 15 in Haystack, 16 in Pyth, 17 in Julia, 18 in Cardinal, 19 in Reng, 20 in Prelude, 21 in Nim, 22 in Underload, 23 in Hexagony, 24 in Thutu, 25 in Pip, 26 in 05AB1E, 27 in Perl 6, 28 in Brain-Flak, 29 in Trigger, 30 in Whitespace, 31 in Modular SNUSP, 32 in Whirl, 33 in Incident, 34 in Rail, 35 in INTERCAL, 36 in Labyrinth, 37 in C++03, 38 in C99, 39 in CoffeeScript, 40 in Minimal-2D, 41 in brainfuck, 42 in evil, 43 in reticular, 44 in alphuck, 45 in PicoLisp, 46 in Cubix, 47 in Lily, 48 in Deadfish~, 49 in Octave, 50 in Bash, 51 in Assembly, 52 in COW, 53 in Shove, 54 in Zsh, 55 in Brain-Flak Classic, 56 in dc, 57 in Wise, 58 in Ksh, 59 in Tcl, 60 in Moorhens, 61 in S.I.L.O.S, 62 in Grass, 63 in Brian & Chuck, 64 in Agony, 65 in ALGOL 68, 66 in Surface, 67 in C11, 68 in Python 1, 69 in rk-lang, 70 in Commercial, 71 in what, 72 in Fortran, 73 in Morse, 74 in Archway, 75 in C++11, 76 in Trefunge-98, 77 in C++14, 78 in dash, 79 in C++17, 80 in Klein 201, 81 in Klein 100, 82 in Brain-Flueue, 83 in Objeck, 84 in Klein 001, 85 in zkl, 86 in Miniflak, 87 in Alice, 88 in PingPong, 89 in gnuplot, 90 in RunR, 91 in Cood, 92 in C89, 93 in Set, 94 in Emotinomicon, 95 in Emoji, 96 in EmojiCoder, 97 in Cubically, 98 in Archway2, 99 in 99, 100 in brainbool, 101 in K&R C, 102 in Symbolic Brainfuck, 103 in Unicat, 104 in Paintfuck, 105 in Emoji-gramming

Verification