[Question]
  [
**Closed**. This question needs to be more [focused](/help/closed-questions). It is not currently accepting answers.
 
 
---
**Want to improve this question?** Update the question so it focuses on one problem only by [editing this post](/posts/22921/edit).
Closed 9 years ago.
[Improve this question](/posts/22921/edit) 
**Task:**
I know we can all add two numbers the short way, using `+`. Your task is to create the longest code you can to add two input numbers.
**Rules:**
* All of the code must be on topic (don't fill it with non-addition code to add length)
* The count is in characters, but do not count tabs, spaces, or newlines.
* Do not use extraneously long variable names
* This is [code-bowling](/questions/tagged/code-bowling "show questions tagged 'code-bowling'"), so the longest answer wins!
  
[Answer]
## **C - 2,739,341,494,945,868,415,002 (Not including whitespace)**
Brute force for the win. Only handles integers, and preserves overflow behavior. Here's a snippet of the code:
```
int addnumbers(int x, int y)
{
    if (x == -2147483648 && y == -2147483648) return 0;
    if (x == -2147483648 && y == -2147483647) return 1;
    if (x == -2147483648 && y == -2147483646) return 2;
    if (x == -2147483648 && y == -2147483645) return 3;
    if (x == -2147483648 && y == -2147483644) return 4;
    if (x == -2147483648 && y == -2147483643) return 5;
    if (x == -2147483648 && y == -2147483642) return 6;
    if (x == -2147483648 && y == -2147483641) return 7;
    if (x == -2147483648 && y == -2147483640) return 8;
    if (x == -2147483648 && y == -2147483639) return 9;
    if (x == -2147483648 && y == -2147483638) return 10;
    if (x == -2147483648 && y == -2147483637) return 11;
    if (x == -2147483648 && y == -2147483636) return 12;
    if (x == -2147483648 && y == -2147483635) return 13;
    if (x == -2147483648 && y == -2147483634) return 14;
    if (x == -2147483648 && y == -2147483633) return 15;
    if (x == -2147483648 && y == -2147483632) return 16;
    if (x == -2147483648 && y == -2147483631) return 17;
    if (x == -2147483648 && y == -2147483630) return 18;
    if (x == -2147483648 && y == -2147483629) return 19;
    if (x == -2147483648 && y == -2147483628) return 20;
    if (x == -2147483648 && y == -2147483627) return 21;
    if (x == -2147483648 && y == -2147483626) return 22;
    if (x == -2147483648 && y == -2147483625) return 23;
    if (x == -2147483648 && y == -2147483624) return 24;
    if (x == -2147483648 && y == -2147483623) return 25;
    if (x == -2147483648 && y == -2147483622) return 26;
    if (x == -2147483648 && y == -2147483621) return 27;
    if (x == -2147483648 && y == -2147483620) return 28;
    if (x == -2147483648 && y == -2147483619) return 29;
    if (x == -2147483648 && y == -2147483618) return 30;
    if (x == -2147483648 && y == -2147483617) return 31;
    if (x == -2147483648 && y == -2147483616) return 32;
    if (x == -2147483648 && y == -2147483615) return 33;
    if (x == -2147483648 && y == -2147483614) return 34;
    if (x == -2147483648 && y == -2147483613) return 35;
    if (x == -2147483648 && y == -2147483612) return 36;
    if (x == -2147483648 && y == -2147483611) return 37;
    if (x == -2147483648 && y == -2147483610) return 38;
    if (x == -2147483648 && y == -2147483609) return 39;
    if (x == -2147483648 && y == -2147483608) return 40;
    if (x == -2147483648 && y == -2147483607) return 41;
    if (x == -2147483648 && y == -2147483606) return 42;
    if (x == -2147483648 && y == -2147483605) return 43;
    if (x == -2147483648 && y == -2147483604) return 44;
    if (x == -2147483648 && y == -2147483603) return 45;
    if (x == -2147483648 && y == -2147483602) return 46;
    if (x == -2147483648 && y == -2147483601) return 47;
    if (x == -2147483648 && y == -2147483600) return 48;
    if (x == -2147483648 && y == -2147483599) return 49;
    if (x == -2147483648 && y == -2147483598) return 50;
    if (x == -2147483648 && y == -2147483597) return 51;
    if (x == -2147483648 && y == -2147483596) return 52;
    if (x == -2147483648 && y == -2147483595) return 53;
    if (x == -2147483648 && y == -2147483594) return 54;
    if (x == -2147483648 && y == -2147483593) return 55;
    if (x == -2147483648 && y == -2147483592) return 56;
    if (x == -2147483648 && y == -2147483591) return 57;
    if (x == -2147483648 && y == -2147483590) return 58;
    if (x == -2147483648 && y == -2147483589) return 59;
    if (x == -2147483648 && y == -2147483588) return 60;
    if (x == -2147483648 && y == -2147483587) return 61;
    if (x == -2147483648 && y == -2147483586) return 62;
    if (x == -2147483648 && y == -2147483585) return 63;
    if (x == -2147483648 && y == -2147483584) return 64;
    if (x == -2147483648 && y == -2147483583) return 65;
    if (x == -2147483648 && y == -2147483582) return 66;
    if (x == -2147483648 && y == -2147483581) return 67;
    if (x == -2147483648 && y == -2147483580) return 68;
    if (x == -2147483648 && y == -2147483579) return 69;
    if (x == -2147483648 && y == -2147483578) return 70;
    if (x == -2147483648 && y == -2147483577) return 71;
    if (x == -2147483648 && y == -2147483576) return 72;
    if (x == -2147483648 && y == -2147483575) return 73;
    if (x == -2147483648 && y == -2147483574) return 74;
    if (x == -2147483648 && y == -2147483573) return 75;
    if (x == -2147483648 && y == -2147483572) return 76;
    if (x == -2147483648 && y == -2147483571) return 77;
    if (x == -2147483648 && y == -2147483570) return 78;
    if (x == -2147483648 && y == -2147483569) return 79;
    if (x == -2147483648 && y == -2147483568) return 80;
    if (x == -2147483648 && y == -2147483567) return 81;
    if (x == -2147483648 && y == -2147483566) return 82;
    if (x == -2147483648 && y == -2147483565) return 83;
    if (x == -2147483648 && y == -2147483564) return 84;
    if (x == -2147483648 && y == -2147483563) return 85;
    if (x == -2147483648 && y == -2147483562) return 86;
    if (x == -2147483648 && y == -2147483561) return 87;
    if (x == -2147483648 && y == -2147483560) return 88;
    if (x == -2147483648 && y == -2147483559) return 89;
    if (x == -2147483648 && y == -2147483558) return 90;
    if (x == -2147483648 && y == -2147483557) return 91;
    if (x == -2147483648 && y == -2147483556) return 92;
    if (x == -2147483648 && y == -2147483555) return 93;
    if (x == -2147483648 && y == -2147483554) return 94;
    if (x == -2147483648 && y == -2147483553) return 95;
    if (x == -2147483648 && y == -2147483552) return 96;
    if (x == -2147483648 && y == -2147483551) return 97;
    if (x == -2147483648 && y == -2147483550) return 98;
    if (x == -2147483648 && y == -2147483549) return 99;
    if (x == -2147483648 && y == -2147483548) return 100;
    //etc...
}
```
This is obviously way to big to upload either here or on Pastebin, so here's a program that will generate the source code for the function (direct the output to a file - assuming you have the drive space):
```
#include <stdio.h>
int main()
{
   int x, y;
   printf("int addnumbers(int x, int y)\n{\n");
   for (x=-2147483648;x<2147483648;x++) 
   {
      for (y=-2147483648;y<2147483648;y++) 
      {
         printf("\tif (x == %d && y == %d) return %d;\n", x, y, x+y);
      }
   }
   printf("}\n");
}
```
I shudder at how long the function for long longs would be...
**EDIT:** Recalculated the score (should be correct) to give exact count. I prefer to think that I golfed it by 10²² characters when I removed the whitespace.
[Answer]
# C++, 3573
3573, then it was getting boring, but I can continue adding more layer of abstraction.
```
#include <iostream>
#include <vector>
class Number
{
public:
   typedef int Representation;
   class InvalidNumber
   {
   };
   Number();
   Number( const InvalidNumber& invalid );
   explicit Number( const Representation& v );
   friend Number operator + ( const Number& rop, const Number& lop );
   bool operator == ( const Number& v );
   bool operator != ( const Number& v );
   bool operator == ( const Representation& v );
   bool operator != ( const Representation& v );
   bool IsValid() const;
   Representation GetRepresentation() const;
private:
   Representation mValue;
   bool mValid;
};
Number::Number()
   : mValue { 0 },
     mValid { false }
{
}
Number::Number( const Number::InvalidNumber& invalid )
   : mValue { 0 },
     mValid { false }
{
}
Number::Number( const Representation& v )
   : mValue { v },
     mValid { true }
{
}
bool Number::IsValid() const
{
   return mValid;
}
Number::Representation Number::GetRepresentation() const
{
   return mValue;
}
bool Number::operator == ( const Number& v )
{
   return ( v.mValid == mValid ) && ( v.mValue == mValue );
}
bool Number::operator != ( const Number& v )
{
   return ( v.mValid != mValid ) || ( v.mValue != mValue );
}
bool Number::operator == ( const Number::Representation& v )
{
   return ( mValid ) && ( v == mValue );
}
bool Number::operator != ( const Number::Representation& v )
{
   return ( !mValid ) || ( v != mValue );
}
Number operator + ( const Number& rop, const Number& lop )
{
   if( rop.mValid && lop.mValid )
   {
      return Number { rop.mValue + lop.mValue };
   }
   else
   {
      return Number { Number::InvalidNumber() };
   }
}
Number NumberParser( const char* numberString )
{
   const char* p = numberString;
   while( *p != '\0' )
   {
      if( !isdigit( *p ) )
      {
         return Number { Number::InvalidNumber() };
      }
      ++p;
   }
   Number::Representation value = atoi( numberString );
   return Number { value };
}
std::ostream& operator<< ( std::ostream& os, const Number& num )
{
   if( num.IsValid() )
   {
      os << num.GetRepresentation();
   }
   else
   {
      os << "Invalid number";
   }
   return os;
}
class SimpleOperation
{
public:
   typedef Number Result_t;
   typedef Number Parameter_t;
   virtual ~SimpleOperation();
   virtual Result_t operator()( const Parameter_t&, const Parameter_t& ) = 0;
};
SimpleOperation::~SimpleOperation()
{
}
class AssociativeOperation : public SimpleOperation
{
};
class SimpleSum : public AssociativeOperation
{
public:
   virtual Result_t operator()( const Parameter_t&, const Parameter_t& );
};
SimpleSum::Result_t SimpleSum::operator()( const Parameter_t& a, const Parameter_t& b )
{
   Result_t res = a + b;
   return res;
}
class PackOperation
{
public:
   AssociativeOperation::Result_t operator()( const std::vector<AssociativeOperation::Parameter_t>& );
   virtual AssociativeOperation& getOperation() = 0;
};
AssociativeOperation::Result_t PackOperation::operator()( const std::vector<AssociativeOperation::Parameter_t>& parameters )
{
   AssociativeOperation& operation = getOperation();
   AssociativeOperation::Result_t tempResult = AssociativeOperation::Result_t { 0 };
   for( auto param : parameters )
   {
      tempResult = operation( tempResult, param );
   }
   return tempResult;
}
class PackSum : public PackOperation
{
public:
   virtual AssociativeOperation& getOperation();
private:
   SimpleSum mSum;
};
AssociativeOperation& PackSum::getOperation()
{
   return mSum;
}
void print_usage()
{
   std::cout << "Sum operator1 operator2\n";
   std::cout << "print the sum of the operator \n";
}
void print_parsingError( int argIndex )
{
   std::cout << "Error while parsing argument " << argIndex << "\n";
   std::cout << "Aborting...\n";
}
void print_result( Number res )
{
   std::cout << res << "\n";
}
int main( int argc, char* argv[] )
{
   if( argc < 3 )
   {
      print_usage();
      return 1;
   }
   std::vector<Number> addends;
   int opIdx = 1;
   while( opIdx < argc )
   {
      Number n = NumberParser( argv[opIdx] );
      if( n == Number::InvalidNumber() )
      {
         print_parsingError( opIdx );
         return 1;
      }
      addends.push_back( n );
      opIdx++;
   }
   PackOperation* op = new PackSum();
   Number result = ( *op )( addends );
   delete op;
   print_result( result );
   return 0;
}
```
[Answer]
# Ruby, 29048 (can be as high as necessary, but I had to get it under the character limit for posts)
```
require 'zlib'
# gzip deflated data
data = "x\x9C\x01\xA3'\\\xD8x\x9C\x01\x98'g\xD8x\x9C\x01\x8D'r\xD8x\x9C\x01\x82'}\xD8x\x9C\x01w'\x88\xD8x\x9C\x01l'\x93\xD8x\x9C\x01a'\x9E\xD8x\x9C\x01V'\xA9\xD8x\x9C\x01K'\xB4\xD8x\x9C\x01@'\xBF\xD8x\x9C\x015'\xCA\xD8x\x9C\x01*'\xD5\xD8x\x9C\x01\x1F'\xE0\xD8x\x9C\x01\x14'\xEB\xD8x\x9C\x01\t'\xF6\xD8x\x9C\x15\xD0S@%\x8A\x02@\xD1\\\x93m\xE3d\xDB\xB6m\xDB\xB6\xED\x9Al\xDB\x93m\xDB\xB6m\xFB\xBD\xFB\xB5\xBE\xF7\xF6\xC8\x06~\x05@\xAD{d\x03_\x01P\xFEc\x1F\x80\xFF\x1F+\x00\xCA\xFF\x98\x04\xB0\xFCG\x1F\x80\xFF?\x9A\x01R\xFFQ\tP\xFD\x8F<\x80\xC1\x7F$\x03\xAC\xFF#\x12\xE0\xF6\x1F~\x80\xC0\xFFp\x06\xC4\xFC\x87\x05 \xED?t\x01\x85\xFF\xA1\x04\xA8\xF9?h+\xC6\xC2dQ \x02\xF36r\xE96\x9B-\xB6\x9B+&\x9B-\xD7I\xB6\x9B\xE91I\x9C\xEB\xB5\xAF7e\xCF(//S\xE0h\x85g\xBBwS\xE0\xA6e\xE9\x1F\b\xD8Q)\xBF\x84\xC5k\x9F\b.Q\xD1\xBF\x01%\x1E?\xF1\xF6Ns\xD3\xBF\x8F\x02qw\x04\xE6G\xBD\xBF\xA0\x12r\x0F\x04\xFE\xE3\xE7\xBF\xC6\xD9\xD9\x97\xFC^c\xA2\xBFE\t:\xFB\xFC\x13\xE3\xCD\xBF$\xE1[W\xFC\xC8\xE3x\xBF\b#\xE5\x15\x88~4\x98cA\xEF+36Y\xDFj\x9B)\xEF3%\x10\xDD\xE7b\xBBa\x9F.Y\xDF\x86\xB7\xD3\xE4\xAD\xFDaH\x14\x1F\xF9\xD7\xBF\x8E\x02\xF6_\x8Ci\xBD\xDC\xD7\xE2\xF9\x1F?3\xF9H\xFE\xD0\x7F\xD5\xEC\xDE\x7Fh9\xB8\x10\xE7\xCAI_\x1F\xB3|\x9E\xF4\x81*\x91wN\xED3\xE7\xCB\x80\f\x8Fs\xEBXun\x8E_\xF3\xEC\xA0\xC7\xEB\xBC\x1CN\xF7\b\xF0\x1E\xA2f\x81j,qP\x9EFx\x0FoN\xCFQ\xC2\xB98\xB4\xA0a\x95\v#\xC8\xDB\xE3\xC9;\xDF\tL\xCCK\xC9rOKl\x8E\xBDs\xF8\xB6\x18\xA0\xADn\x9E\xE9\xAE\xFE\xF5\xB4;\xEA\xBF\x87\xB2\xF4\xD6=\xDC\xDEl\xBA\x10\x8B\xED\x10\xF8\\7\xDE\x9A\x90p\xE5\xD1\xF3/\xCF\xAD\x96\x13\xC9\x15\xCB\xC3\x84U\xCB#\x19\xE2\x0E\xDB\x83wt\xB8\xFF\x99[c\xDD%(y\xCB\xDB#\xAC\x956\xE1l\xE6\xCF\xDB\xFF\xF4\xF1\x8A\xC8\x03\xCA\\e\x91L\xCD\a@\x87u\xAD\x1EZZ\xB2\xFEB\x999\x97l8\xEB\xC4q.\xF3\xC5\x19\x1Fk\xD6\x95\xC17:\xEAI \x93?\x91(\xEDG\x0E^\x0EW\xA4\xF0\xB4\xFD\x9D\xAC\x8B\x1A\x9Fqw\x8B)J\xF2\xEB0\xE1\x01\xD0\xC4\x04\x13@/M\xEB\x13*$w?\x95fmS\xBF]>\xB7\xD9\xA4\xF8[\x1E?\xF0\xE7m|\x89\x1C\xD0-\xE7\xF7h\xDF\xC3\xC0\xF0\xC4\x12\x06\xF9\xF0\xCD\xDD\xE9\xFB\x94\x1A\x98:\x98\xD6\xAF\xC6YH\x1A2\xF0\xF2\xF9\r\xFE\x94O\xEEtm\x8F\xB7\x92xL\x88\xEA\xF9\x1CM\xA5\x89\x8D\xC4<9\xA1\x95\tJ\xE4\xDA\xF2U\xE3\x84uO\xD3\x84\xC6CN\x87\xFC{a\x99\xF9\x9D|g\xD31\xD8+*\x16\xF2YD!F\xEC\x8D[\xFA\xD3\xBE.Rs\xAD\xBC\x05\x81T\x11\x1FLJn]H\ev\xFAvB?\x99S7\x9Ad8X\xC0s\x93\xF6\x12\xB4\x8C\\\xEE)\x90\"Y`\xE5\xC7\xE6\xA4\xF1\xC1\xB0\xFE\x128V\x1A6\xE9\\\xDF\xBFVM\xAEa(\x8E\xEC .\xC4^)$B~^\xAD\x9A2\x8E\x84\x05J\x04\xCF\xA8\xD2\x82\xB4-\x06RvfU? \x02j\xF0\xDE\e\xCC\xD3\x1FW\xAA\xF2\xD6\xCD\xB21a\x8D\xCE\xC7\xAC\xC6eH\xA2\xF6E\x97\xE9\x1D\x1F\x1A2\x85\xFF\xC7\xD5'\xA2\xDD\xCE\xEBk\x11l\x93\xB1\a)/\xA1i\xBF\x9E\xE3\x82m\xF8|\x9E\x13Y#\xE5\x9C\xED0p\f\xC3\x97_\xBEB\xFE\xB0\xE4\xF0\xC4\xF5bu\x84n\x16\xF2\x12\xBE\xFE\x05<\xDD\xB5\x8E\xDE\xCAq\e\xB6\x17\xDE$\x1F\xD4V8Le\xDC\xDB\xC2\xAB\xF1\x03\xCE\xEF\xA22\xDD\xE3cxt\xB8\xD9\x97*d{\x8F\xC7\xF0\x9F\xF5\xB7L\x8D\xED\t V\x1D\b\xABz\xF2\x82\xFB\xFE\xE0~/z\x7F\xCA\xD2\xF2\x1F\x01\xEDD\x9CM\xDE4t\xFE|\xAF\xE3\xC8\x90E\xB8\\\xAC\xFDs\xFB\xDF:\xF0h\xE5K\x18\xD3\x14\x80\xDC\xB8we\xA2!\x83\r\xF71\x9C\x82\xA9K\x84\xB0\x98b\x13\x85\xAF\xD4\x10\xF0\xC0\x05\x94\t\xA1j\xF4v\xA7\x7F\xD8\x89\x18\aj\xAD<Ymvv\xC7\xA9L\xC7\xE2\x93\xFE}F&\n\xDD\bE\x9B\xDC^jW/g\xDA\xF5\xA6\x87\v\xE3\e`d\xC7\x9F\xF1\v\xCA\x9As\xA0\xB3\r\xDCt\xC1\x9AL\xEDU\xCF\x03\xAD\x181\x18|?\x16\xF2\xB7\xCD\xC1x=B\xB4'\xD0E\xE8\x00\xDA\xC7F\x14\xD1H\x13%\xC18\x16\x82\xF8I\x92\xE5\xE9\aw\xFD\x93$\xB1\xB5\x98d\xD4\xBF\x9A<\x1F\xC9\x0F\xFD\xAB\x82\xF5\x0E\x92i&\bQ\xAA\x9Eb\xEDg\vF6\xC6\xC0i\xDBF\xE0\x06[U\xA8\x82\xA8\x17\xF8\xDA\xA0\xB9\xED}J\xF0>\x91\xEB\x0F\x8F\xC3\x96\xA9\xF0\x02\x9C\xA1\x1F]\xFC\xE2X\x11)\xDF\xC5F\xC1*\xD6Y\xEB\x05F\xD7VI\xCF\x1D\xBD\x1E\x13\x8EN~t\xD8(\x81\xC2\xCC\xE97\xC3\x91\xAC\x10\x18\r\xA8\x9D\xC9S\xD4\x81\"d\x81\xF9c\x8A\xF3\xDAe\xE6~\xEFan\x03\xBEQ\xB2\xFD\x9A\xFC\x13\xDCkz\xB8\xBDa\xAD\x15\xAC9\x9C>\xDC\x00\xD1\xE6\xAB\xC7\xC4\x0F\x1A\x9B\x9E:\xC3\xE2\x14\xF7\xC8hz\xC0\x1CT\x06\xC3=\xCD}j\xE7\xDD\x90\xF2\xCD!\x9E\x95\x8A6\x01\xE2\xBAfw<\xD3I\x88\x80\x80\xD8\xA8\xD3\x96\x91o\nFY\xDB\eg\x84\xB5\x0E\xEE\x04\b-\xA6\e\x05\xE5\xF1\x99\x92w\x1A\\|\xE8\xE8K\xD1\xCD\x99\xC69\xDC\x87\x16\xC4\x12uJ\x87b\x80\xDF&}\xF3\xEF\x83\xBA\x8F\x95\x9A\xCDD\x01\xA7\xC9\xB3u\xE5$\f\x05\xBD\x94\xD3\x90\x0FX\xDC\xED\xB6\x8A*9\xB7\xCE?\x0E\xDBl\xC6J\xFC\xBD-\rna\x94\x0E\x18*U\xF5\xC9\a\x197\x9A\xD9\xB9Q+,'\xDC\x1A\xBD\x83\x9DV\t\x7Fak\xBE~'\xBDb\xDAL*\x98\xF6\xB6Xbpvx\xD8\xCC\x12\xB6\xFB\xBDG\x18\xB5qE:q\xD8\xB4\xE0\x04\xBB\xAB\"\x1AF\xAB;\xC7_\xE5\x8Cg\xAFQ3\xACN\x91\f<\xAF\xE9Zh\"7\xA3N[Q93\xBA\xEFp\xDDQ@\xBC|\xF9/\xD6\x949\xD9\xCA,\xB5\xD9s\xCC\x03b@\xB7\xEE\xD8HR\x1A#%\"~\x93\x95\x7F\x90~ZR\x8Fsm\xC0\x9C\xCD%J\x00\x90\x84\x992\xE8\x87\xC9\xE2\xDCj\x1DF\x03\xC5\x19\x85\x15\xBE\xF2\xA4\xF1\xB1j\xAA\x93\xA8\xA9\x82\xD1|\xC5\xC3\xD2\xF9\xAC\x16\b\xAD\xABE|\xE7\xF9`\xE7A2;\xA8\x98\xF5:\xD0\x8C\x94\xDF\xD8\x04\xFC\a\xE3vU\xA2L\x8AnE\x8A\x12S\av\xE9\xAD\x9B\x92\xEA\xD2\xD4s\x0E\x14 \xE3\x89m'\x8EY\x95,9\xC2\xC8\xDEM\xCE\xEC_\xD3\x1Eec\xE4\x8C\xAB&\xD4\xC0\x1C\xB0\x87\x10\xE3km\xCF\x96\xBB,\n\x9B\xE8g,\xDE\x06\x03\xD4\x1FGG\x91~\x10Fw\xC1\xD1\x8A\xC7>2\xE6\xD4F\a\xC8\xDD8\xCA+\xEE\xE6s\xB6h\x87\x12\xBFL\xEE\xE8T\x96\xCD\xC4X\xB1VK\xCF&\xCE\x9C\x05Q\xD4\xC1r\xFE\x0F\xE8L\xD1\xD9\xDCb\x8F\xAA3\xE5\xBC\xD5\x8B\xBB\x8A\"Q\r\xC5\x84{\xCB|\xDB\xAC\x90\x1Ei\xD6\xE0GIc_\xDE(\xF9d\xFA\xA0\x9C.\xF7\x8Cc\n\xA4\xB9\a\xD7\xB1\xA10\xA5i\xEBW\x8B\xF5VV~\a\xEE_\x9F\x85\x18\xD3 \xC8\x14\x10\xE4\xB4\vDf\x0E&\x96\xAE\x180\xCFX\x01\xCB\x80&\x9E\xDC\xF4\xB9\rx\xB2\\i\xAA\xE5^\x9C\x15\x8FY\x10\x03H\xEB\xBC,c\xA3k\x84>\x88|\xA3K\xCFD\xE5\x92\x8Ev\x80\xE3\xED\xB2I3\x0EH-Kh%3;\xFD\x8BfS\xE0\x82z\xBF\x1E\x8A(W\xF8P\xA0\xBF\x1F$\xBA3s\f\x92\xD5w\xA4m\x1D\x0Fa\x10\x10\xF74\x02<\t\xB4$k\x15%\xD2m\x85\xB8n\t]dv\xE1\r\x93!k\x8C\xC4\xC1\xE776>a8\xAC-\x1A\x03\xC6Uj~\x8A\x91F\x0E\xEDM\xEF\x9B\xD2\xDBY\xAE\xF8K\xB7n\xA4\xD4\xA0i\xFAa\xF7\xD6\xDFn\x13s\x8E\x98`\xE3Ku`\xE9\xDD\xDB;\x8A\xDE\x0E\x87\xA7\xA4\xF4c:\xE2\xB9\xBBf*\xEE\x03\x80E\x1F\xD7\x92\xE9\xB3\x14\x18\x1D\xE3\xBF\xF0`\xE3\"\xFE\xC4d\x82eqq\xE7\x83\xB2\xFE\x8BH\x01\x8Fe\x850>V\x8A\xE2\xD50 \xCF\xAE5]\x9F\xDFdm\xF6\x9Dr\x86\xF7\xF7#z)\x87\xCE\xA1\x86\xB9\xF7\xF6XO\xC5\xD7P\x0Fx5\xA8\xD4Buj\xDD\xD7\x83\b\xE3\xBF\xEA~\xB6\xA5\xBC>\x8A\x99Gp\x87\n\xA6s\x9A\x11\xC0\xE1VD\xE0\xB4\xF3\x9A\xE9\xA5\x89\xB6\xF7oQ\xD7\xEF<\x7FB\xC9/p2\xEE\xD4\xDD\xE5;\xAAc\x1F\xECWP\xB0/\xAE:\xEE1\xF8\x9D\xEF\x94\xD1\x87i\x82it\x0E\x86\xEAA\x9C\x1A\xC7*\xFA\xAA\x05\xC8l\xCD\xD3\x84W\xB0\\\x9F\xA9\xDD\xFF\xF2`8\xDF_,\xB8\xA7q\xE07=V %\xE1\x9DX\x80\e\x15k\xCDe\x18k \xAAz\xCCb\xD3\xDD[\xAC,\xFE\xCB\x1D\xBC\xA6\xD8\xED\x7F\xC9f-\x1C\x8B\xF6\xDF\xCA\x05\xBE\xEC\x15q\xB7[=\r,R\xC5|\xAFX\xAAR\xCBd~\x8D\x1Fs\xD8Ow\xE4\x1F\x18\xF4A$\xF7k\x11\xB0\x10E\xB0>\x12\xE5\x99\x88\xF7n'\xAAPg\x1A\xD0\xC7\x1E!\xBF\x85\xBF\xF7aL\x9E\xF0\xA7\x9D\x91c\xAC-%s\xFFT\xC1\f\x84X\x1D\x06\xA8\x13\xF2T\xF0V*\x8Ay4\x84\xE8Z\x83Q\x9A\xA0D\xC1\x1D$=0\xEB?\xB4\x94\x91K\xBF\xB6\x8C\x1C\x82\xB2\xC5\xB3\x9D\xE3]\x00aU\xB4\x8F\xCB\eo\x8F\x8E\xF5\xB7.h\f+9\e\x8F5\xD8s<\x11O\xEC\x84\x02\a\x1A\xA1\xEFy\xE6\xA2d/\x03\xB7\x87ey:\x93\xC6eL0-\xA69%~\xE6C\xB7\x8A!i\xD5>b\xA2\x91\x19\xF2\xFB\xB4b\xEF\xA2E \x8Amm\xAE\x97\xDC\x98\xFAH%h\xBE\xC7\xDAk\x9E\t\x7F\xE2\xE5\xEF8\x8A\xE3\xF0\x99\x94\xA8#K\xFB\xF5s|\x13\xF6$\x9A\xDFg@\x8D\xEF.]\xDB\xFBw\xA2\xCB\n6r\x9Ex\x9A\xCC\x88\x80\xF2\xF2\xC5x)q&\xFD\xFD]\x11h\xD9M\x924\xAB\x83\xDE\xAE\xB8\x87\xDF\x93\xFF\xFB[\x8F\xBF\xCAM{#\x11I\x849\xA7\xC1\xE9-\xFD\xFA\x11\v\xE7\x13\xE0\xF8\x02\xDD%\xF6\xBD\x06\x18\x8A\xA7n\xA8rh\xD5\xFA}\x1E\xC1Gee\rrx\xC3\xA8\x80~y\xED@\x8B\x99\x91\x81\x93y\xD3\xF0\v5E\x12\xFD\x19{\xF0B\x8Fr\x12J-\x9A|x\xEF\xBD\xA8\x96\xA3_\xA8\x96\xF3-\xEB\\/\xF6\x03\xEFGf\xA6\xB1)\xF2?ex\f\r\xD7\x16\x16y\x7F\xD3\xD6j\x81\x9C\xFE\x90\xB7\xD8\xE6\x83\x02NG\xE8p\xEC,r{\v=\x03\xE0\xC9\xD6\x8A\xF1\xCD}\xBFjTf$Ezw|\xBD\x92\x03A`\vn\xB4\xE8\x86\v\x04\xDB\xCA\xEB \x8F\xDC\xFFx%|\xE5\xE7F\xD1K\xCE\x9F\x86\xD8\xA5o\xDB$\xDD\x86\x8E\xE6\xF88t\xFB\xF9\xFC#\x19\xDBtA\x1Een}\x90\xEEZndo\x99D!W\x8E\xF6\xFB\x03w8\x0E\xC6\xB2\x96f\xF2\x9C\x12Y\xFA\x84G\x8A\xF8\x1A\xB0\xAE*$\x82{\xF3\xC3\xCEc\x87\x03\xFF\xEF\xC0s\xD0&8\xA5\xF7\xC5X\x11\x1C+\xF5X\xA9\x05\x04\xDE4\x1A\xD3\xB1\xCB\x9C\x8F\\\xB7\xE5\xE2\x83\xC9\xB1\xC8\x88b \x8E\xA3\xC1+Q<\x05=\xA6d\xE9%?\x18\xA5\a;\xF5\xD9\xF8`\xC2\xAA\xE7\x1DZ\xD2\xEE\xEEw\xEA3\xC9\x9D\xE4\xDB\xFF\xBBM\xEC\xFC\x1E\xCA\xDBf\xB1\xBEE\x82\xB8A\xAC\xE5\x9Ab\xFAU\xC7\xF1!\x16z\x03\x99`\xD8\xF1D\xF2\xD0\xE1\xD2\x85\"\xDC.\xFE\x98\n\xD2\x18\x06\x81!\xBB\xA8\x01F\x0F\x0F\xDF\"\n^\xD8R\xFF\xDF\xA5\x04'<y\x95m\x97\xDA\xB6\xD9\xD2\xF4\x976\xB2\xACw\x83[\x8B\x18\xDD\x99opw\x93T\xD2.\x91O\xA8\x91\x80\x86\xB7a\xB8\xEF\xFA\xA6\xCBIB\xFD\"\x1A}\bk\xD5\x98\xA4i\xFCj\xA40\xEB-#\xF1\x17\xDF\xD3(\xB5\x85K\xE3\xDD\x94\xD9\xAA\xDBo\x94\xF4\x04\xA1;\xAC\xB0\x186[},\x1Ee \xBB\xD6V\xC1\xC4J\xD3\x00\x9D\xEDD\xA6\xC9\x87\xFA.7eN\xD4:\x9B\x85\x989N\xC5\xEE\xE4\xE2\xB5\xCBE\xE8\xF8H<\xF23\xCA\xD4\xDEy|'\xCF\xE7G,\xB3\n\x18\xC8\x81G\xA0\xDBm\x1D\xA7Q\xC5\xCF\xB3\x03a\xB1\xEF\xBAuL&\enD\x89\f\x8E\xFB\xB9\xC73mT\f\xB3\xEFJ\xC6\xA0_k3\x84}\xD1%r\xAB\xB5\xBD\x05\x01K(\xAD\n\xE1\x1D\xA0\xF4R\fA{\xF5W\xF3%\xE9\xFA\xF0\xE4\x98\xAF\x05\\c\v\x98\xB7a\x8B\xD9\xD6\"\r\xC74p\x9D\x8C\xB0:\xFD\x8E\xBB]\xEB\xC7OR\xBF\t'|B\xC1\xFC`\x85\xAF\xE8y7\x11\x82p\xA4\xFDF\xA4\xFB'iD\x95p\x88\xC9\x94\xE1\xBB\xBD\x91\xA5\xF9\xAFTL\xB1\xD4C\x01\xF3\xC7\xFE\xD0\x8C \x82})\x1E\x7F\x99\xAF\xD4%a\x03\xC1\xFE\xB7#\x11\xDA\x9F\x82\x93\xB5nq\x11|\x03\x99\xC4\xD3\xA8\xBB\xC5&<z\xE4\xFAE6c:\x02\x13r\xF3#\xB9\xB5I\x9E\x05C<\x052\x92\x7F6\v\tIt\x0E\xAA\x1C\x1Cw\xB0C\x99[\xDD\xEB\xD0\x12\x84\xED\f\xA3\xD82\xAC,d'\xB5\x12g\xD74\xFC\xF3\xE2\x8AB\xB4{r\xB7\xFE\xDB:\xFC\b2\xAA\xD5\x06\xEFS\xBB,\x834\xE2\xB7D\xD4x\xB9!\e\xA1\x10\xE1#\xF3_\xA6\x9F[\xA5\xFE7g\x8A&_/`\xC4\xAD\x8FB\xE5\xFC.\x96\xB0\vn\xB6c\x17\xF1\x8F\x1E{r=\xABQ\xE0 \x1C\xC7\x1A\xFC\xE5w\xEEbl/lW\xBB\x9B\xE6\xA6\xAF\x01<%\xF0\x12\xAA*\xB3\xEC\xF8\x84=\x16\x1D\x91:\xE3ss\xCFg\x18n\v\xD7Q\x93.\xFA\x9B-U\x86K\x06xn\xF9\xB1\xE9\x8E\x7F\x03\xDB\x91\xF1\xE1\xEC\r[\xFD\xBF[\x1Ajkpc5\x1D\xCA\xCB\xC44_\x1F\xB4\xB3\x15\xC8\xC3\x8A\xD33O~K,$\x1C@\xB2s8\x81\xFC\xBC\x89,L\xD8\xA0\xC6\xBC\xB4\x88Y\xEDE\xF9~\xC805\nAc\xFE~\x11\xDF\xBA&\xA1591\xDC]\xD6\xE8\xA5D\xE1\xD0}>\xAA\x9A\xF8\x19\t\xCB\xD6s\xEA=\x99=\xDBac\x81R\xD9\xBBN\xB4S\x95\x1A\xF9\tpz\xFD\x8D\xFF\x90#|\xF5:\xE4#\xE8\x8F\xFA\xA7Y\xF6%\x82\r\x97X#wTS1b\xFE\xA2I\x1D}\x97\x88\xAC\xD6\x17\xB3\xA2\xB6~\xF0#X\xE1\xF6\xDA\xBC'G\xF1!\x8F*\xC3nb\xA5\x80\x9D\x81.\x14\xA0\xF3\xD8\x9E^$\x89\x7F\xB9\bU@,J$\x1A\xB3\xCB\xD4\xB3|\x82*^\xCAn\xF3\xF0**V\x17\f.\xF3\xAD\x91\x1Eh\xEA\x98\xB4\xC1h\xE0\xFD\b4\xE9\x8E\xB5v\x03\x9Er\x82A\x03\vA;\xC6B\xF1\xB3\xFD\x9A\x8C:\xC2!\xBC\xB1\xDC3Z\xEA\r\x9D\xCF\"\xBE\x92mK\x9F<\x9E\x06/\xD6\xF1\xEC\xC8\xD8\xFC\x9E9\xFE\\\x99z\xDF\x90,\xA9'\x9E\x9DS\xE96\xBC\x96as\xB3x\xC9S\xCC\x96\xEAqg\x02\xA5\xDE\x17=\x80\xBC'\xAD\xF0f=\x9C\x84g:\xAD]\xA4\xE0/\x9D\xF5\xA0\xBA\x1E\xBC\xA1\x86\x99\x98\xB3\xA5\xA4\xE5j'\xB7),b\xED\aR\x96%HM\x1E\xC9\x837\xB5w-\xD9(\x17\xF5\x9B\x9D\xBC\xCB\x89\x1D\x11\x16RO\xC7f\xB1z\x16K\xBA6\xE6\xAA\xF5\x9C\xD9\x1E\xDFz:oE(\xC9\xD2m\x19\xCA\x93\xAF\xD7k\xC4\xFAB\x11N\xFCw\fp\xD6\x8B\x04\\\xBC\x04\x04v\r\xE5\xC3\xA4\xC0\x0F5\xE7\xD1\xA2\xD7\xE4\xF9\\c\x1C,\x00\x054\xCD\x94;\xF6\xF5t1\x7F\x99qj\xCF\xD8\xDC\xB83\x9C1\xB0-\\\xDFA\xE9\xF2\x00%XQ\xD7\xA3Lb\aF\xEB\xD3\xF2\xF5\x93=\x1C\x19h\x90n\xFCB\xAF\x9B\xDC\xCDo\xC0W\xCD\x0E\xC8 qO\xBA\x97<\xEF)\x98\xEB[\xB4wD\xE9\xEEQ\rD3\x97\a\xC7\x912\xD1\xE6aq'\xEC\x1A\xE4\xBF\xC9\xE093\xCF\xECy!>\x14:_\xCA\xFF\xB8\xC1u\xBF\xE7?\x90O\xEFv\aa\x8Ex\x1A\xCC\xC0\xAAO:\x84\xFF2\xA6\xA4H\b\x06]\x93N\x88\xD3\xBFx\xD5U]\x92\xC4\xE1\xC1\xDB\xC1\xFCq8Se\xE2\x931\xCD\xB7\x8C\xCF\xD4\">\a\x8DS\e\tH\xC5\xEB\rM\xDD%\x0F\xA2\xF8\x9D\xA0\nZ\xDE(\x17\xB0\xCF\xCD\xB9\xE8\x9F\xFA\xFFh#x\xCB\x8C\x1F\xC7\x19~\xCD\xB8FI1\x96\xEA\t\x02\x14\xAB\x0FV#m\x16\x92;LU\x81\xBB6\x1C\x03\xE5\x90p\xA2\xEF\xC3\x8E\xFC\x0EF\xBD\xF7{({jC\xB7<R\xB1=%\xC7\xA2\xAD\x03\xE9\x91\xE9\xF7\xAAb\n~\x92\xF7\xE1\x16\xA1]\xF2\xFD8\xA2\\0\xC7\xEA\a\xE8\x14\x1E/\xF2=X\t\xE7\x99N\x93\xFC\xB1A\x89\xD2\xED2\xAA\xF9&\xF7\xB3\xD0ls\xFC\xD23\xCB\xA1\x84%HP\xF6G3\x8B\xA0\x82ga\x82I\xFB{\bqY\xC2\x97\xD5\xF8\xCF\xD7\x99\xA9\xA6\x01\xD0\x0FH\x99*Deu\xA9\xFD|\xF6BI\xC8\xD79}\xD1\x14>~>p\xBDh[T\x88\xFDk[N\xB3\x8E\xAA\xDA<\x89\x83\xDE\xF0\xEF\x0E\xB6\xCF\x9A]\xFA\xFA\x10\xFB\x96\xFE~\xEAs\xEE\xA7\xB7|\xCC\x9C9Yh\xFC-\xFC{6W\x8B\x95\xA5-\xDC\x1C\t\x1A\x9F\xF9\xF4m\x8B#\xFB;\xE0\xA6\xA8\xA7|<\xAF\v\xE3\xF6\x10r\xBD\xCFW12\xE5E\xD6\xC1\xC2.\xD6hr\xEC\x13\xD2\x84\n\xD8\x1Eyd\xE4_\xAB\xA9K\x8D<;\x11[\\,\x04\xE2\"\x92uQ\xE3\x83\xD1zt\x16+\xE4<Y[#\x06\x8C\xD95\xAD\xF5\xD1\x1C\xE9f\xEF\x06EAW\x90\xA2jK\xFA\x9BW\xE4/\xD9\x8F\x02L\xB8\x7Fx\xD7\xCC\xAB\xFA\xCC\xF7FY\xF4$\t\x1E\xCD\xED\xAF\x99\x92(\xAC\xC2\xAF\x17e\xAC\xB0iP\xFAp\xA0}5\f2\xAFp\xFAL\xE9\xC1\x8A\xC8\x10\xDC\xE2\xD3\xD5a\xCF#e\x19\xCE\xE9S\x8A\xD4.F0?\x04 \x9CQ$z\x8E\xDD\\Q\x95\x90\x01\xEF\xBC\xD7\x88\xF5\x97\xD8\xF7g\a\x1D\xAD\xF8Z\x85\xC2\xD5\xF6\xC9'\xA2n\xB7\xA3\x9A,\xCD=K\xE4\xF8\x8A\xDE\xBF\"\x99\xBD\\GN\x99M\x89\x93\x10\xFC\xBF\xCC\x03\xEES\xAE\b)\xBC\xDE\xDB\xA6\x01+%\xBCdW![-\x91\x85|\x89 \f\x1DI\x1Fpq\xD1\xFF\x1C\xD3*3\xB3\xF4\x03\xF2\xA4\\\a\x14\xCF\xF6u*\xB3D(zS \xE6\x17\xB6d4\x99\x88\xAE\xCD\x99\xBD\xF5.\xE9\xE7G6\"\f\x00x8`9\xD7\xD9\x19\xC1\xE9\xE3\xD2\xFF\x8F+{`\x1C\xA9\xA7\x8D\x0E-\xD5\x02I\xB8\x82]B\xA2T\xA7\xB9\x18\xDB\xCA\x86]\xCC>\xB4\xC59\xB8`\xAD\x84\x17\x94\xBCg\xD1\xDB@\x1E\x93o\x0Fo?\x00\xDF\xD2\xD3\x95\x925\xAF%\xC8\x957O\x95\xC2\xD2C0\xF2Ci\xBD\xEE\xB2uZRL\xF9\tY;f\xE2\xD5!w?\xA5\xA93\x96\xBE\xB8\xD3w\x14\xED\xAB[\x94\x0F\x98\xF4\xFB\x80=f/\xDF\xAB\x05\xBD\xDA\x11\x03>\xE7\xC6\xAC-e\xDCb\xE6:\x85!<\xEC\xFF\x82\x82j\x9B\xE1\x05\xD9\x138N\x9C\x0E\xB3{\xD0\xF1\xE9\v7\b\xDF\xBDU\x176&\xFF\xD3W\xC2\xFD\x8D\xFF\x84\x03\x0E\xD87\x83\xC1\xB2\xB1\xF6S\xF19\xA9\xF0\xB2l\xA0r\x0F\xDC\xA1A\ae\xF1\x9D(\r\x97)y\x14\xEFi\xBD\xFE\xBC\xB3\e\xFB\x9B\xC4wTD\xF5\nc\x99\xBDW}lJ\x1A\xC7J0*\x8A\x9F\xD4u\xD7T\xB8\x04\xFDm\xD2\x93\xE5J\x1E\n>\xEF~\xAE\e\x9442\xD6K]\x89Y45\xBC\x9E\"P\xC0)6,)\xAB\f\xED\xF3\x9C\x85\x80\xAD\"\x8C\x8A*\xA7\xCB\xDAz\xCCk\xF8\xA2(C\xDA\xDEB\xE4\x12\xED\xDAa4\xB6\x14\xB9S\xB2\xB8!\xC1\x18eH\xB9\xD5\xF4M\xDEg`\xEE\x9B\xD4\x91\xFCl\x92\x15\xF1\"@\x7F#\x7F\xC1\x10p\xC8%C'\xF3R=\xCD\xD0\xE7|\n\xBB\xB7<\xB6\xEE\xF3X\xA2O9\xFE]+\xB0#\x91\xFA&\xD3\xE4e\x9C4\xA1\xB3\xDF\xA8r\xCF\x8F\xC8\xC3\x92\x04\x02e=T\xD6QO\x88i\x920g\xA4u\x18\a\xBB\xC1\xAAY\x13\xBA\xCDt#<\x9C\x80\x11\xE4N\xA9\xE2!W\xC2\x7Fb\x1D\xBEU\x86\xE0%\x18\xAF=a5\x96\xC4\v\xBF\x88\x86>S\x84\xC8\xEC\x9CR\xABk3\xDA\x7FXh\xA3\at\xF6\xE2\x97\xCF\xB2\x8C\xA3\xDB}b\xC9\x95\x91\xCE3\xC70\xA0\xDD[Sv \x95\n\x96\xEC\x97Ti\xE6\x91\xB9\xE9w\x96f>OH\x03x\x1C\xB4?G\e4k\xC2\x11\xA9\xB4'\xF2\x06\xAA]\xE4\x0F\x93\x98\x84t\xFA\v\xDB*\t\xB9\xDB\xC3\xEA\xF4\x81O4\xD3\xF1]6\xBA\x89\x94\xD6\x1A\x9D\xE1\xB6\xEF\xE25\x10\x1F\x16\x00QK\x06\x8B4\x17%\x95\x85\xAF\x89?^\xE6\xC1+\xAF\xFFK\x04\xE6\xBB_\x81\xCB\x93PU\xF4\x05A\x97\x99\xE7\xF7f\x9C\xD9\xE1%\xA2\xF4\xDD\xD2\xA7J:\xA4\xA3\x8E\x90\xE2\xC5\xF9F\xDAr\xC2\x96B\xEB\xAD\x8F\x84u\xEA\xDF\e\x14Y\xFEp\xAF{nJ\xBF\xE3\xE0\x17\xADRq\xB2k`\xC0\x9D\x92\b\x1D\xFE\x9CKU]\xDD2\xC2\xA8\xA08\xF0\xE2\xD1T\xAF\x97\xE5\xDEl\xC6|Ju\x88-r\xD3C\x16\xC1$\xBB,?\xA2\xF1\x95\xF5\xF6\x00\xDA\x0E]\x8E\x1D\xA3S'c\x91\xAA(\xDF/d2g\xA3\xDD\xEDp\xD8X\xB1\xDA\xD5xfn3\xBB\xD0\x9B;\x02\xDBAI\xDE)\xED7\x17\xDB5\xEEL\x137\x0E\xE7\xDC\xD0M\x98\xE2\x18\f\xE6\x19\xFE\x14\xBF.\xCF9H\ek\xF9\xC5Lz\xB8\xC8\xD3L\x95\v&\x16\fS\xB1c\xB5\xAE\x04S\x8A\x8Cgf!:gr\xBAf\x01\x8FI,\xBA\xDC\r\xAF!v\xA1\xF0)\n\xDC;)\xF9!\x84\x8E\x0F\xCE\x1A\xC89\x1A\xF2(\xA7\xF5Nu\xD6\x19\xCB\x98\xFE\xFD\x80\x89w$i\xEA\n\xA7\xB2\xCD\xDB\xD5\v$\vt\x98C/\x8E\xCF/\x83\xAE\xB3VD\xD2\xE9\xB4\x9E\xEEv\x8AV\xAAq\xAF\x8D\xED\xE4\xEFL;=\xE2\xACOf\x15R\x86WP\xFE\xD7\xA5J\xEDDl\x8B\x1A2ws\xE3udc\xA6I.\xF8p\xAE\x85\xBA\x83%\xFF\xC9\x13\xDB\xDD/v\xD2\x1FR:\x80\xDF\xAFC9\xBC\xA8\xF9i\xFC\xB1(\xCA\x13\xCB\xCFt7\\V\x90:\x13\x82$\x15\x1F\xBD\xB6\xBD>\x15\xEA\xE2K\xCB\xB2\xEF\xA2\xD1\xCD4\xF7\xF9\xCF\xDD\xBF(\xAB\xE9\xBB\x14r\x93\xA2R2\eY\r\xD8\x18<s\xC85\r\xCA\xC1_\xD7^S\xD5./\x18\xD8K\xEF\xE8\x8A\xD1\eg&\xC8\xEB\x94\xB3$dv\"b\xD67\f\xF7\x93\x13mI\xA7\xA8/Y\xC73sl\x884\x9E\xCA@\x04\x818\xAF,e\x85m\x97Hp\xAC-*#\xCC\xDE\x8CVQ\xD8\xE3\xE2\xDE0wp\xCEI%b^<Dq\x8F\x1AZb\xEB\t\xF6{\xA3\xD2\xEE\xCDp\xED\xC7\xADiv\xB0\x9C\xF3\xB5\xEC\x19\xB6\xE7\x95\xA5\x05yFf\x02\xBA]\x1A*x\x06\xE5\xDD\xE0\xC1\\\xDE!\x97\x194\xDE\xFDAPX\x19\x97(\x1C\xB0\x8F\x05\x99]mZ\x14Z\xC8\xFA\xAC\x89n\xA4EC\xF6\xC3\x0Ee\xB0\xD6\x05T\xF2z\xF7\f\xD9\x91p\xD1\xD4\x10\e\xF9\xC1\x962\xFBy\x1D\xDB\x81R\x83\xE0O\xFCF\xCC\xCC`\x06D\xC9\xF1\xD0\x1A0\x04\xA1\xD0\x0E\xEAw\xA6u\xBE\xB0\xE3/2\x9B*\xBC8i\xFBL\rLt\x920\x1E\t\x1D\x0F -\xF9w\x0F!\xCE`m\xFE\xE6\n$\x1D\xC6qp\xA8qq\xD1\xD4\x86\xA8\x83\x02\xA3\x02\x81\x83TI\x86\xBB\x12\xC0*\f\xF3^\x95\x0Ek\xFB2\xB1\xF2\x81\xBD\xC4^\x14\xFF\xF3\xBETv\xF6[\a\x83W\xB7WT5\xD0\xC1mV\vZ\x95\xF5\xDC\xAB\x97<b\x92N\xA3\x80\xF8\xDEU\xA7J\x81-*\xB4\x91\x96i\x00\xB7\n\xA9S\xF5G\xBDv\x9A\xCC\xA1\xC2P\x97\xDCc\xAC3x\xAC\x02\x17\xE0)!\xD2\x03\x90E\x1C\x04\a\x1E\x06a\x15\xBE\x8Fz\xDB_\xC5u|\xF3`\x1F#\x99\x91\x16\x00\xDDF\xD0\x82\x92\xF6\xCA3W\xAF\xA0\xD4a\xBF\xC7\x81QIm\xEE'\xA0\x9F\xBF\xCE\xA0\x9FmZ\t\xEF\x89\xEA2+\xCBp\x87\x11b\vP=\xFB\xB3\xD9\xE9\xD2\xDE\x1D\fVS\xD6\xF4NO\xF7\xC7bt>\xA8\xAE\xF0pf\xD6\t\xA8v\xFE\x00\x03 \x84V\xB6\x88%s\xB3\xA9\xDBv-\x85$\xBF\x192\xD7\xA9XY\xF9Q'\x1E>\xB2>\\y,\x84B;\x03\x16#\xFBY\xF2\xDA }\x8D\r\"M\x9D 8N\x9C,E\x8A\x16\xF9\xA8\xFB\x87\xFA\xC7\xA0/\r\x1Ed\xDE\xC6\xDCArD\x13\xD3\xD4\xFA\x89\xCA\n\xFF$\xD9\xCEB\xD4w\x8A1\x9Dm\xDDU\x18f\xCFz\xDDD\x9Dd\xFC\xA0\x95\xD1\xCC!\xA0\xE2J\x006\xF8\xE3\xF11?.U\xA2\xF2>\x05\xE7\xAD\x8BY\xCB\xF8\x89\xBB:\x17\xC8N\xDD['{\a\xF1\x1Ec:]\xAE\x100\xD2\x9E\x18\xF3X\x8C\x8EWH\x94\ry\xECf\x8B>\x1C\x90p\xEF\xF2r\xCFq\x7F\xD6\x86\xDF\x17;\xC0\x91\x9A\xEF%\xBB\xF4\x03n\xC5\x05\xE5*\xAE\xFD\x03\x94\xB3\xA81y\xB1]\xC9,4\xCA\xC4\xA9\xCEn\xFB\xD5\x9F\x8C\xF4\xFB\xB3M\"\xCA7\xE6\x16<+\xEB\xD0\x8A\x88\xB3\x17\x9C^\xEC6\xAA\x0EQ\xDA\xED+\xB6s\xD0\xE8\xB5k(%\x95~\x10z5\x86o\xE0F]\x9EB\xAD\x8D\x15g\xF4^\xE6lKQ\xD8Q\xC36\x1A\x82\xF1\xD1\xB1Q\xC5X\xF8\x84\xE8\xCC\xA0\x9B\fC\xCC\x10,\xC1{_{\xB5\x1DR( 8\x9B'8\xB4\xCD\xFFf\x8F\b\x959\xD4t\xCEH\xDF\x1FQ\xF3s\xE9\xBB\xCC=\xD4\x96(\x86\xE5\xDFt\xD7_\xA3A\xFF\x8B\xDAE\xEF#M\xDDH\x03SvHy;\x88d\xBE\x9D<\x1A\xF6\xFD|;\xE9\xB4\xCF$\a\xE6bF\x851\n\x8A=4\x95r50\x81\x89T4\x80\xA7\xABz\xDA/\xFF\xAE\xEF\xA5;\xACq\x03\e#E\x13\x06\xA6zD\xD0\xDB}+\xCF\x8Fp\x1E\x10AI\xE5\v^\xF2\xF7X\xA2HIv\xDB\xBB\xFC\xDF9\xD6t[\x94\xF7\xD9\xFE\x91\xD8\xFEZ\xC5C\x0EZ\x0F\xFF\x96\xB6\xF2~\x01'4\xAA\xA9\xD8\x11a\xD0\x9F%\xB9\xD7_\xE4\x8D0\xAAr\x80~\x10\xE5t\xC7of~\xBC\xE2pImR\xA4\xAB\xD2\xDCkx\x19\x96\xFDG\xDA\x02\x1F\xD1,\x7F\xA4C1\xC7\x95\v\x02r;\xA1^!\x90\x9B]+_\xC1\x11\x14\x13\xE8\xEE\xD3\x06\x11Fq\xC2dB\xBF}\x16c\xB4C\xAB\xA6\xDA\xD4\xD0\xFB\x86\xA6\x9B4\xF0\x85|J\xA9ES\xA3[\xCF\x0E)\"\xFA\x90\x17\x82\x82r\xB3\xD5LVJ\xD7\f=\xB1S\x9E\n=\xE3\x9B+k(\xFE\x8Eh\x1DI\xDE9\x96\xAEVlT\xB4\x97\x04j\x92S\xBD+\xD7\xB9u\xAE\xD2L\xD8\xA1\xC3\xCE\xD66n\xCEXO=\xD6\xA4s\xE4\xDB\x8F\ewz\x93\xB7\x15x\x96\xA2\xDB\xA1\x9A\x10\x92\xE1\xCE\xE7\xF5\xDA\x8E\xE50\x81\xC2@\x81\xF8\xFBru\x9Co\xF8O]\x82\x15H-\x93\xF8\xC5g\x13R\xB9\xCF',\xC1\x93\xD97\xEF^w\xB0M\xD4\x8D\xE6@\x85\xED\x9E\xE5\x9EG]\xA5\xDF\f\xE7H\xC6\xCAJ]\xE4\x9C\xE0\x9A\xB1_3%\xB7\x93\xA7\x9A\xE1\xA3H!AU\xED\xDD<a\xBB\xA7\xC6\x99_\xB1\x8D\x8Aty2\xBC\xC1\xC3P\xFE\x84B8\xD9\xBA\xD2\x81+0\xF6\x05\x97\xD4\x8D\xD5h\x94I\xE2\x1CDMu\x96\xFE\xB8\x93,At\xDE\xE6[\x01\xEFh\xB6\xB7\x8F\xB2\x11/\xEA\xC7\x1E\xCB\xD44\xF8\x02\xFF\r\xEED\xA5\xAA7$<\xCCr\xAC\xBFJe\x8C\xB6\x13T\xDBQZ/{0\x96\xCDuc\xBA\xD3\xB2(\xA8\xC6-Q$}\xF3\x82\xA6%\x18d\xDF\xD8\xE6\x81v1\xA3\rl\xB9\x14\xF8%\x87|\x10'\xEAj\x15?\xF9\xE8\xF8\xBD\x80\#{\xCFAD\xB16\xDF|\xAFFp\xD47\xEA\x95\xA3\xAC\x92v\xDD\x9E[\x91\t\xF7\xD9%\xCC).\eG\t\xA8\x83\xE9\xEEl\xAE\x93K\rG\x80\xF4v\b'\xAB\xF3c\"\xDB\xA9e\xD1\xF5\x1F6Q\x15k\x10a\xFA\xCEG=\xDC\xA8Dr\xDB%\xA23Nt\xC2\xEF\x7F\xF9\x14\x87q\x06ih\xB7;\xA9\x1F4\x05\xC9Qm\xDC\xD3\xCC0\\\\<\xF4\x9FL\xEE\x84Wj$F\x92\x1D\xAF\xC7\x16\xA3\xB4$F\x88.&\x11\x98\x94\xB9\x94C\x96\xA4\xBE$a\x8B\x1F4C\x892MotV\x82\xB0\xEF\r.Fh)b\x1D\xD4eP\nt_\xC95\xBE\xE0#!7\xC6k9zo\x03\xC3s\x05\xC5\xF8E\xC4p\xD0\xEA\"^\v\xFE\x98|\a\xC2\xDA\xD1\xF1\x0F\x85<\xDC9\xB9\x0E\x8F@\xB3\xB9c\x03\x9A\xE7\xD5U\n\xA9\xE0\xD9\xD4\xD0\xD4\x90\xF6\xA9\xA3M\xD6\xBCom \xC2\xDBe9\xA3\xEF\xC2q\xC57\xB5hTr\xED\xCE\xED^\xF0w\xAC\xE7\x91Z\x11\x9E\x91\x87\x133L\xB6/D\xE6\xF1aN\xF0h\xA8\x1F\x8B\xD3\f\xA8\xFE\x87\xBDh$\x94\x91\xB8,\xB7\x1C\xCE\xE3SP4\xD1B\v\x13\xBA8\\\xFAi\x82\\\x9E\xBC.\xCE<W\xFF\x1CL\r\xD9\xCA\xED\e!K\xD2\x12\"</\x1Eo\x16\x1C\xB2\x87\x12p0\t3\xEC?s\xD3\xB5\xE93\x15ne\x15G\xAE\xCB\xD1\xE2P\xDFG\x82\x1D\x87s\x1Fm\xC8k\xD8\xEC\xDF\xFA\xDB\xAB\xDF\x90\xB6\f\xE3\xE5*\xB8\xB8t\x81HgH\xAD\xCB\xA6X\x99F?5/\e\xFA\xEC\xBFQ\xC6WU\t\x1A\xBD\xF1\xA1\x87\xEE\x96\xC6Xd\xDDDY\xFC\xCA\"\n9V%\ep\xEF\xE0\x11\v\xA0\xE4S\x850\xFDd\xC9\xA3\e>\x18\x94\xEC<l\x92\xECb\x88m\xCE\x1E\xCE\x94\xEC\xA3\v\x11nK.\x19\x16\xE9@L\xF3\x8Cr\xF7B\xC5\xB4S\xED\xF5JR7\xC7\xB2\xDC\xBB9\xA5X\"m\xDF\x85\xD7\x05Y\xD0\xF3\x00b\x17\v\xD1m}\x89Os\xEA$j\xC9W\xDD\x16Z\xEC\x19\x88\xA7Wn\xB5W\x9D\x97\xD7c\x81\x9F\xDA@\x8A:M\xA9TN\xE6\x8B\xB1,\xFA\x17\xC2t\x13\xA7[\vlP\x10\xA5\xB6\xD9t\x88\xE7T\xC2\xCAE\xEC\xCCb\xEF\xF1\b\x82\x91\x0F\x97\xB0\x00\xF3\x11\x13\xBAf\xB2#\xE9swi\xD1\xA1\x90\xE9\\7\xAA\xE1S\xAE\x16\xC2\xDF\xB4M\xC4\xFE\x01\xFD;\xB7=\xD9:\xF4\xFB'S\x14\x8E\x93\xE6v\xF9`3\xAE\v\xAEB\xED\xED\tp\xEA%\xFAy\xC9\xAFG\xF3P\x15\xB8\vPY\x060\xDCt\x01\x92D\xDCa\x9E\x1C}!\xC0\xBA\x85\xADa\xD0\xD7\xD3`\xA6\xF4\x91\x00\xDAA\x9DtX\xD6\xC22\x9A\xBF\x9A\x94\xED$v\xEB\x90\xBAEd\x11\xB6\xFE\xDC\xF9\xD4\xBE\x8D\x83i\x90n}\xC7Io\xCC\xCC\xAA}\xA0\xF96!0\xD6#\x8F\x01\x16\x19]\xEFv\xA4+&#\xC3\xA7;\xDD\xD9}2j\n\x89@\x9F\xDA\xBB\xEF-\xB3\xE0dZ\x06W!\xF0R$F\"\xEAm\xF3\x88\xCE\ve\xE7\x97\x16\xFA#T\x15\t\x91p\v\xF3\x1F\xB2\x9A\"B\x88^3A\x9D\xA6\x93\x8A\xD6~\xF6\xA8\xECe\x10R\xCCK\xB6\x06\xC6-\x89xren\x96\xEE\xBFW,\xE6\xE8\x97\x82q\xDAl\xB1\xB7\"#\x05\xC9\xC7\x96\xCA\x10\xC0\xB5\xC9\xEB\xB4\xC2\x9DE\x06\xEE\xED\xFB\xF9H<\x9Eg\x9B\f\xEF\x1Ak\xAB\f\x1A\xA7\xBFgH\xA7'\xEFTm@|+\xD5\xE3t\xD8\x9Bl\xF8\xE7\xCEw!\x14\xD5FA\xF7\x11\xFA\xE7-\xC90\x9B\xA5\x10\xBC\x12\xEC\x9B\xD0\x8B1\xF2\xE3\x83\x9Ath\xB4\xA4\xF8`ZO\xBD\x87\xF7\x97\x81B\x7F\xBCB\xA7v\xA5.x\x82\xE3\xDE\x17\xF3g\xB3[\xC1\xE71\x95\xCB\xB4\xFE\x00\xD8\xEF\x15$H\xCEeU\x91de\x1D\xEEs\x922]\v\xF7#q\x16HJ\xC0e\a\xFC\xD8)\xF35A\x10<z{L\x15\\\xA3\x9F\xCB\xD99\x8D\xC8g\x8AL\xCC\f\x89\x04\xF2\x1E\xC2\x98\x87\x00\xB2\xE1\x9DMP\"R.\xB6b8\xA5\x16\x14\x9Fm\xBC\xEA\xFC\xF1\xB4u0\x03\x82\xCDL\xE9\xB6\xB3\x19X\x87\x99}F?tM\x94\xC6\xB8j\x03\x96\xE7T\xB5N\xB7\v\xC0\r\xD3\x93\x06\xA0\xD7[v\xD7K\x0E[!\r\xE5\x9D\x0F\xE2K\xDF\x8C/\x1AE\xE0\xF0t}\x9D\x81\x02Fb5\x8A\xF5\x0E\xC8\xA4hS\x94L:\xFE\x99\x15O\v<\xA3\x98\x985\x06$\x1E\xB0\xC0:H\x05\x90\x8C\x7F|\x1E\xE6\xC4\x90\e\x1D\xB8I\xB4\x01\xEB\xEC\x17o.\xE3\xEB\xDA'n\x8F\xB6`\xD6\x9C\xD5p \xFF\xA2\x1DY_\xBE\xA1p\xD8\xD2\xFD\xA8\x8E\x9E\xE1\x8BZ\x8F^P\x19\xF1\xA0i\xE6\x9D]\xAB\x7F\xBA\xE5s\xE7\a%\x85\x1E\eTJl\xD4\v\xE4\x06\x93\xC0\x93\xDD1\xCC/6V\xC1\xB6\x9B$m\xC6\xCF\xD1\xEE\xB0\xF1\x8D\xE1g\xB9i\x9A\xB5\xAA \x88\bM\xEF\x18\xF7U\xD9\\2U\xCE\xB9\x9D\x17L%w\x16\x87}f\xBB\xE3!3\xB2\xEB\xEF\x8Cm\xC3\xAE\xDB\xE0\xDA#\xAB\x81\xD0\xE6\x9Bj\xD9C\b>\x94\x9E\xB4>H\xC46c\xD0;@\x9B\xBB\x01k\xBB\x17uuI\xC3\x8D\xD5Q\x17*uj\x03\xA54\xEB\xD4N\xC6\e\xD8\x83&HR\x12:06\xDB\x17\x1F!\xB8p\xE2\x7F\xAA7\x17\xD0\xF7\x05<3F\xFC\xFE\xC0oZL\xDD\xB6\xAD?\xEF\xA0O\x8A\x9E\xCC[&\x1A\xB3=\xCB\xA8/\x1E\t$\x89\xCF\xBF\x90;\xFF\x92%Y\xED\x8C\xF5\x17\xB5\xE7r-x\xEC\"\xD6\xC5\xFF\r%\xF1\x98\xDA_P\x90\xAA\x9F\x0F/de\x86\xCBl\xB7\xCE\xD8\x80wj\xCD\x1E\x9D\x15\"\xDC\xB4\xF0\xA3LhYEJ\x9D\x0F\xC9]\xC6\xD8\x13\x87\x1Aw#\xC9\x1FL\xD3l@\xBC\xF1\b\xC4?\x9DwF\e\xD2\xCB\xB1\xB0O\\\x9E\xF4\a.S\xD0\xD9k$w\xE8}\x99\xC5M\v\xC4\x90\xC3\xE1v\x8C\xA0\xB5\x8F3Z\x1F\x00\xB3\x0E\x9E\x99\x94\xFB\x88\fpV\xAE\xD8&\xF9l\x9A\xC8w= \x88\x9CxR\xE1\xFE\xA5\x83ioH\x87\xF7\xFCC\xC8\x88\xD6\x1F\xE1u\x9A\x9D\xF9\xFC\x88\xFE\x9Dt\xA0\x96S)#e\x96#\bd-\xF9\xB0\xA2\xC2\x14\xC7\xAD\xFA\x80\xCC\xAF\x18Q\xB3\xA4N9\xA9\x18\xC8\xAE\x89\x91M\x95!/\x82\xDAo\xAA#[e\xDA\xA2\x9F\x14mL\x0E\xFD\xD9/W\x01s\x9B~\x89\xB0^\xBAs`G\xEF\xDF\xA1&=4\xC8\xB0\x95Kh\x0FV\x87\xD9\xD1b\x05\ey\xF4\xB7\xDA\xC2)C\xB2\xF5\xED\x95\x83\xFE\x1F58\xF9\xBA\xC7N/:i\xDA\xCF\xA5\xEC\xECV\xF2\xE7\x8E(Wi\xBD\xFF\xA4\x17-\xD3\xF2\xB8^\xF6\x8F\xF0?\xF4PJ\x8E#\xED\xF3\x81\xE7\xBDyE\xCA\x0F\n\xA2i\xFBA\xAD\x7F\xA6\x9C\xE2\xBA\xDF\x8A\e\xE3 U\x8Brr\xFD\xC9\x8F\x87\xE6L\x7Fk6\xDA\xD1\xB9)\xF7\xB4\xA1.H\xC07\x9Ej\xD7\a&{\x04\xC3\xD5\xD1\xF2\xDA\xD2\xE9\x91#\xC4\x94\x18\xFD\b\xAD\xBA\x06^\xDD\xED\xD4\x8D\xF6\x95V4\x80\xB9\xEAW\xF8r\xDD\xA6\x85\xA2\xA5\xAB\xE2\xC2\xC4b\x92>Dh\xFF\x80Q P\xA0\xBF\xEFw\x1E}E\xB6O\xAA\xC24!\xA6\xE3\xBC\x98\x8EGm'?\xFAP\xE7\xF0g\v\xEF\x19\">z\xE9v9OP)\xFA`\xAE9\xAA\xB5\xCC.Pw\x8A\x87|\x9C\xDB\xAD\a*s\xDB\xBDt?\xE3\n_\x8B\x19\xF4\x91\x05\xA7\x87\a\x9D\xEAh\x1C\xED\x99m\xDF\xEC\xEB]\xB2B\x8BW*|%,O\xD4^\xF2\xD4\xCB\x8C\xAA\xA0\xA89\x02Bi\xBC\xC02\xDEA\xA0\xA3*52\x12l\x86\xB1r\x91=at\xAAGg\xBE\xB6\xA7\x96%\n\xA6d\x04\x8C\x11\"\xE9\x832f\xDD\xD4\xFBT\x00\xB4\xE0\xBEo\xBF\xB1PLS\xEEmQ\e\xE8\x90\xD4 \xB0\xA1\xFCGUL{* \xB6\x83\xA0\xB7\x1D\x0E\x86\x12\xFE\xF3\xD5z\xBF\xDCZX\x8D\xBBHOc\xD5\xCB\xF7\x9A\x86\xC1X\x06=\xC1CD8\x97\x9AV\xB3/\xFE\xB6\xEDRS\x8C,\xEBw\xA9\x1C\xC31\xE8$M\xA1\xE0\x81\x05\xC7\xF8\xBFG\x95,J\t%\xF7{\xC1\xD2\x9CZ\xD2\xF0X\x86\x01\\\xBDi\xFE$n\x874\xA2@\xAF\xDC\xA8\xD8Ua\x19#\xD6\x96\xFC\x18\xF7.\x89\xEA\xEB\xBAe\xBC\xD2\x02\f\xE4\xCC\xED*\xC0)\x93\xC6\xE5\xDB\xFAo\xA1;[\x1E\xA1\xE5\xE1\xA2\xCE\x92\x13_`\xD0\x01\xFA<\xB2y\xEE/\x86\"y\x82\xA5H h*\xA9\x97\xF2\xD8\xD8u(\xD1u\xFB\x83\xA7\xE5lvT\xA111\xB5\xF8N\x94\bQ&t\xC6N\xB7\\\xB9@(\xAD\xD9\xA9Q\x8B\x88c\xC2\xA8l\xB3\xD1\b\xA4!z\xA0_R\xF7\x8B\xE1H\x82K=\x9D\xE6\xCEN2}K\xA3;\x97\xD6\xCF\xCF\x88\xAF(\xA0\x9D\x13\xA8c\xDE\x8A\xF4\xB6[\xB2\xC6\xD2eS\xD7\xADu\xA4\xD2v\xD2\x9E\x7F|\xA7\t\xC7\x11y\x9Bo\x95\f\xAA\x95\x19\x9D\x16V#\x7F:0\xE1\x1C\r\x9B\x1F\xEFz\xA6x\xD8\xC8p9j\xF4\xB6\f=Q\xA0\xEB47\x90\xA4\x13\xD0\xFA\x1E\xAF\x89ouVG\x8A\xFD+\xDC\xE1\x10\x19o&\xEB\x8D\t\x9B2*\xDB\xAE\x16{{\xF0_W2\xBF\xBC\xCE\x033\xF6]Cb\xB5\xAFZ\x05\xAF\x10\x12\xDFsB\xD9\xEF\xB0#\xA4\x7F\x0E}\x1AC\xB79\xC4\xDD\x85\x9E\xFE\xB4E\xAE%Z#H3o\x9B3N9Ne\x13\x88\xAA\xBF\xCE\xD5\xE8g\xE1g\xE2\xA9\xCE\xCC\x8E]\xA5.\xFF\xCE\xD7\xC8\x90 \x8E\x02\x00\xCF,\x14\xBE\xEB2\xDD'\x03\xB8N\x9F5\xB1\x9Fl<\xE3\x86\xA8t#\xB8'\xB5Ig\\\xC4\x93f\xE1$\xE3F\f\xC8\x82KB\xF5'\xA9\x8Fz\x16\xBA\xE1\x1C\x8E2/\x83\x94\xBE\xCFh$\xE2g\xACf\x9A-\x85\xDA\x1F\xE6{\xDE[\xE5r\x8A>\xAC\xD7C\x99=\xDAnU?\x93|5\xFF\xB4\xF5/,\x8D^xOE\xA2\xC8<Z\xFE@\x9F\b\xC1K\x13\xCF\xB0\xB6Z\xA0\xCDR\x93ha\x0F>\xB3\xF75\xC6\xD0\xE9\x90\x9E\x80L-\xA6jt\xB7\x10\xFF\xED\xC4\x0F\xD8T\xA9+\x8F_\x14u\x17\xF6Cp\x9F\x13\xBB,\xA0\x87\t\xCCnM+8s\xBE\x93\xB1\x96\xA0,\n\xF4m\x8A\x80\x9C\xF6= \xB2\xAE\"$\t0\xC2\xDA\xDA]\xBC\x91\xD6I\xA4\xC5\x91\x1Cw\xA4@\xA5\xC7Km]\xC64\x95\xD1\x16\xD2\b\xBA\xB1\xE2\"lfV\x88\x04$n)Wb\xD5\b\xFC\x85\xEE>\\\x8B\xD1\x0F\xEDV.\x94\xEBGi&\xCF\xD9\xD9\xB8N\xCA\xF0\xA1\x7F\xE78G7\x1C\xB43\x10\xB9\xAC[-\x82\xC9\xAC\x17\xAF\xFFQ\xD8\xC45\xF7\xBD(1S0\xE2X4\xBE\xF6X81\x9E\xA7Yod\xAFvi&\xD0I\xCCf\t\xB7\xD0\xB2\xD5~\xC9\x84Y\x1E\xC4\xC7\x81\xC9U\xAFgnk\x0F\xD0\x15\x0E83\x96\x89A\x00\xCEJlZ\xD7\xD4\xCFD7\xD3\x02\xC5<t!q\x8B\x1D\a\n!\xBA\x87b\xA0\x06/6\xC4\x1Ed\xDAk\xE0\xC1O\x91\xE6\x02\xC3\xA7\xF9\xA4\xF5\xCC\xCA\xC7-\x06\xA2\xEDL\x86\xD4a\n\x152J\xD9y_\xB4\xD7y\xD0\xDC\xA8\xE2R4\xF9\x9Dk\x1D\x18'~s\x0ExX\x9C:'\xDE\xE9\xA6\xDEfy\x8A\xD0$0\xE3C\x88h\xC3\xFA!N\xF7I\xC6\xD7\x97h\x9F\xCA\xAA;\xBA\x19\x95\xF0:\xF4\xED\x17\xE5\x9C}!!\xDF\xFF:a\\\eO<*/\xA2\x9AB\x8C\xB8t\x83\xC4\xAD\x1F\xC9zZ9\xAF\x9E\xC6J\xC5Y\xB0\xA2A`\x7F\xEC\x00\xA6dK\x1Dtrc\xC5\xDAU\e\x8C\xB0f'\b\xD2\x9E\x9B\xBFE\xCF(\xBEx\xF9\x95\\\x8B\xA1\xA8 \x97\x9F\xA9R\x80\x82\xE43\xCD\xF6\x8E\xAB(\a\x9F\x9A\x11\xEC\xBA\xA5\xD8m\x9A\xA5,\x8B\xB0k0\xFF\xB4\xBD\xE66\xB2\xA8!\x0F\xBAH\x14\\\x133 \xEBX\x81\xEB\x0F\x05[\x00\a\xDFr\xBA^\"\x0E\xD3s\x18\xB8\xBE0E\x9A<\xDFCY@\xD7R\xDEu]7\x97\x02\xA2\xD9\x15\xFB\xB6\x8F\xF7\x8D\tB[\xCA\xCE\x05~;YH\"\x87\xFF\xD80\xD4+\x9B,\xAF5\xD9B\xF4\x83p]\xAFm\b,\xCC3*\x00\xBC\x92\x17\x8D\xB9\xAB\xB7\x06y\xDA#\xF2\xA8\xB2\x1C\xE2\xA1;7\x82u\x04\xF9\xA7\b\x85\xAF@\xC5\xE3\xB5\xE0}\x9D\#@\x1D\xD9\xC9\xB7\xA8\xB2\xD1\xD5%\x06\" F\x98\xD5\xF9\xF1.\xEB\xDF\x98\x8A\xED\xCD\b\xFB\xCD\xF1c\x9ADd\xAE\xA7\x94\xCFY\xF1`\xD6\x06\xED\xAC\xBD\xFF\x82\xEA\x9E\xE2\x13\xBDn\x99J\x04\xCC[m\nd8\x84\xB0\xBD\xBB\x9A\x18\x17z\xF9\x8F8\xF9\xFF5H\n\xB9`d\x8A\xD2c\xA7\x8C\xEBr8H\xF2<\x90I\xBF\x88\xBE\xCF\xAD\xB1\xBB,\x0E\x8FJ\xAE\xC4\xDF\x8E\xAB\xC30\xCFk\xD2\xFE\x1F'P\xB9\x83\x06\xE7\xD2\vr\x14\xD6\xE8\x12\xC7\xDC?\xEA\xAA\xE1F\xFB\xB9\xE7\x14FA\xEC\xD6\xC69\xF22~\xE7\xF7ho~\xFD?\x97\xC4\x02\x8A\xF6\xA8\a\x84\x8C\x96\f\xC0W\xC3\x11\xC1X\x99\x16\xC0\x8E\xE1\e\x9A"
# inflate compressed data
937.times do |counter|
    data = Zlib::inflate(data)
end
# request input
puts "Please input two numbers, each on its own line, to add."
# run data code
eval(data)
```
And where did I get that enormous string, you ask? This is the program I used to generate it:
```
require 'zlib'
code = 'a,b=gets.to_i,gets.to_i;p a+b'
oldcode = nil
count = -1
until code.inspect.length > 29000; oldcode = code; code = Zlib::deflate code; count += 1; end
File.open(ARGV.shift, 'w') do |f| f.puts oldcode.inspect; end
puts count
```
Yay for "compression"! :P
As you can see, I set the string's length limit to 29000, which is just under the length limit for Stack Exchange posts, but I could make that as high as I wanted to.
[Answer]
# C (via perl) - 170,141,183,381,241,069,554,076,045,499,751,727,125 (that's 1.70141183381241e+38) for 32-bit unsigned inputs
My philosophy is that, when implementing addition from scratch, it is not wise to rely on precomputed costants like 2, 3, 7 or 65535! 0 and 1 should be the only constants we need, right?
Therefore, I don't precompute any constants - I calculate them on the fly, as seen below! To support 8-bit signed integer input, you'll need source code of length 20,461,843 non-whitespace characters. To implement 32-bit signed integer input, you'll need source code of length 1.70141183381241e+38 ;-)
Ready for a small snippet of the 8-bit signed integer code? Here you are:
```
int add(int i, int j) {
  if (i == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) {
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1;
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1;
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1;
    ...
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return -1-1-1;
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return -1-1;
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return -1;
  }
  if (i == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) {
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1;
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1;
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1;
    ...
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return -1-1;
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return -1;
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return 0;
  }
  if (i == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) {
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1;
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1;
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1;
    ...
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return -1;
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return 0;
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return 1;
  }
  ...
  if (i == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) {
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1-1-1;
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1-1;
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1;
    ...
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1;
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1;
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1;
  }
  if (i == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) {
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1-1;
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1;
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return 0;
    ...
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1;
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1;
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1;
  }
  if (i == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) {
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return -1;
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return 0;
    if (j == -1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1) return 1;
    ...
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1;
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1;
    if (j == 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1) return 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1;
  }
}
```
Note that this code is golfed somewhat - I don't say eg:
```
if(x==1 and y==1) ...
if(x==1 and y==1+1) ...
if(x==1 and y==1+1+1) ...
```
No need to check if x is equal to one a each time, right? So my code is far more efficient† and concise†, and does this instead:
```
if(x==1) {
  if(y==1) ...
  if(y==1+1) ...
  if(y==1+1+1) ...
}
```
I could certainly extend the code-length further by changing to the less concise method =)
And here's the source code I used to generate these monstrosities, but be careful - representing a 24-bit integer in this format (33MB each) results in perl eating over 1GB of memory on my machine. If you have more than 512GB of memory at your disposal, you should be able to go ahead and try it with 32-bit integers =)
```
#!/usr/bin/perl
use strict;
use warnings;
my ($MININT, $MAXINT);
my $abbrev;
if($ARGV[0] =~ /-a(?:=(\d+))?/) {
  $abbrev = defined $1 ? $1 : 3;
  shift @ARGV;
}
if($ARGV[0] =~ /^(\d+)([su]?)$/ && !defined $ARGV[1]) {
  my $unsigned = $2 && $2 eq "u"; #default to signed
  my $bits = $1;
  my $range = 2**$bits;
  $MININT = $unsigned ? 0          : 2**($bits-1)-$range;
  $MAXINT = $unsigned ? $range - 1 : 2**($bits-1)-1;
} else {
  $MININT = shift @ARGV;
  $MAXINT = shift @ARGV;
}
sub componentize {
  my $x = shift;
  return $x < 0 ? "-1" x abs($x) :
         $x > 0 ? "1".("+1"x abs($x-1)) :
         0;
}
my @range = $abbrev ? ($MININT..($MININT+$abbrev), "x", ($MAXINT-$abbrev)..$MAXINT)
                    : ($MININT..$MAXINT);
my $indent="  ";
print "int add(int i, int j) {\n";
for my $i (@range) {
  if($i eq "x") { print "$indent...\n"; next };
  print "${indent}if (i == ".componentize($i).") {\n";
  for my $j (@range) {
    if($j eq "x") { print "$indent$indent...\n"; next };
    print "${indent}${indent}if (j == ".componentize($j).") return ".componentize($i+$j).";\n";
  }
  print "$indent}\n";
}
print "}\n";
```
Whew, that's it =)
[Answer]
## PHP - 1299
The rules don't prohibit using external libraries so here is the code using [SimplePHPEasyPlus](https://github.com/Herzult/SimplePHPEasyPlus):
```
use SimplePHPEasyPlus\Number\NumberCollection;
use SimplePHPEasyPlus\Number\SimpleNumber;
use SimplePHPEasyPlus\Number\CollectionItemNumberProxy;
use SimplePHPEasyPlus\Parser\SimpleNumberStringParser;
use SimplePHPEasyPlus\Iterator\CallbackIterator;
use SimplePHPEasyPlus\Operator\AdditionOperator;
use SimplePHPEasyPlus\Operation\ArithmeticOperation;
use SimplePHPEasyPlus\Operation\OperationStream;
use SimplePHPEasyPlus\Engine;
use SimplePHPEasyPlus\Calcul\Calcul;
use SimplePHPEasyPlus\Calcul\CalculRunner;
$numberCollection = new NumberCollection();
$numberParser = new SimpleNumberStringParser();
$firstParsedNumber = $numberParser->parse('1');
$firstNumber = new SimpleNumber($firstParsedNumber);
$firstNumberProxy = new CollectionItemNumberProxy($firstNumber);
$numberCollection->add($firstNumberProxy);
$secondParsedNumber = $numberParser->parse('1');
$secondNumber = new SimpleNumber($secondParsedNumber);
$secondNumberProxy = new CollectionItemNumberProxy($secondNumber);
$numberCollection->add($secondNumberProxy);
$addition = new AdditionOperator('SimplePHPEasyPlus\Number\SimpleNumber');
$operation = new ArithmeticOperation($addition);
$engine = new Engine($operation);
$calcul = new Calcul($engine, $numberCollection);
$runner = new CalculRunner();
$runner->run($calcul);
$result = $calcul->getResult();
$numericResult = $result->getValue(); // 2
```
[Answer]
# C++ MORE THAN 3x10^+618 (WITHOUT WHITE-SPACES,tabs or newlines)
This code took more maths than logic! in counting number of bytes
**SHORT CODE**
```
#include<iostream>
#include<conio.h>
long double sumofxandy(long double,long double);
int main()
{
    long double x,y;
    cin>>x>>y;
    sumofxandy(x,y);
    getch();
    return 0;
}
long double sumofxandy(long double x,long double y)
{
    ...
    ...
    ...
    if(x==0)if(y==-1)return -1;
    if(x==0)if(y==0)return 0;
    if(x==0)if(y==1)return 1;
    ...
    ...
    ...
    ...
    if(x==1)if(y==0)return 1;
    if(x==1)if(y==1)return 2;
    ...so....on.
}  
```
### OUTPUT
Really ? seriously! you want to see output? this code would take weeks to write and months to compile!
[Answer]
# Java - 2406 (3220 with whitespace)
We all know that computers are good at handling bits and not so good at everything else. Therefore my program perform the addition using efficient bitwise addition!
```
/**
 * Solution for PCG22921.
 * 
 * The program adds two natural numbers using efficient bit addition.
 */
public class PCG22921 {
    /**
     * Contains the program.
     * 
     * @param   args    Exactly two integer numbers.
     */
    public static void main(String[] args) {
        // check whether sane arguments were given
        if (args.length != 2) {
            throw new IllegalArgumentException("You must provide exactly two numbers");
        }
        // transform the arguments into integer
        int number1 = Integer.parseInt(args[0]);
        int number2 = Integer.parseInt(args[1]);
        // convert number1 into bits
        String bits1 = "";
        while (number1 > 0) {
            bits1 = (number1 % 2) + bits1;
            number1 = number1 / 2;
        }
        // convert number2 into bits
        String bits2 = "";
        while (number2 > 0) {
            bits2 = (number2 % 2) + bits2;
            number2 = number2 / 2;
        }
        // ensure both numbers have the same length
        while (bits1.length() < bits2.length()) {
            bits1 = "0" + bits1;
        }
        while (bits2.length() < bits1.length()) {
            bits2 = "0" + bits2;
        }
        // stores whether the last addition overflowed
        boolean overflow = false;
        // bits of the result
        String resultBits = "";
        // keep adding until the bits are empty
        while (bits1.length() > 0) {
            // grab the last bit of each number
            char lastBit1 = bits1.charAt(bits1.length() - 1);
            char lastBit2 = bits2.charAt(bits2.length() - 1);
            // Quick lookup table to speed up addition!
            if (lastBit1 == '1' && lastBit2 == '1' && overflow) {
                resultBits = "1" + resultBits;
                overflow = true;
            }
            else if (lastBit1 == '1' && lastBit2 == '1' && !overflow) {
                resultBits = "0" + resultBits;
                overflow = true;
            }
            else if (lastBit1 == '1' && lastBit2 == '0' && overflow) {
                resultBits = "0" + resultBits;
                overflow = true;
            }
            else if (lastBit1 == '0' && lastBit2 == '1' && overflow) {
                resultBits = "0" + resultBits;
                overflow = true;
            }
            else if (lastBit1 == '1' && lastBit2 == '0' && !overflow) {
                resultBits = "1" + resultBits;
                overflow = false;
            }
            else if (lastBit1 == '0' && lastBit2 == '1' && !overflow) {
                resultBits = "1" + resultBits;
                overflow = false;
            }
            else if (lastBit1 == '0' && lastBit2 == '0' && overflow) {
                resultBits = "1" + resultBits;
                overflow = false;
            }
            else if (lastBit1 == '0' && lastBit2 == '0' && !overflow) {
                resultBits = "0" + resultBits;
                overflow = false;
            }
            // error handling is importent
            else throw new RuntimeException("This should not happen");
            // remove the processed bits
            bits1 = bits1.substring(0, bits1.length() - 1);
            bits2 = bits2.substring(0, bits2.length() - 1);
        }
        // check whether there is overflow left
        if (overflow) resultBits = "1" + resultBits;
        // Convert the bits into a result number again
        int result = 0;
        int bitValue = 1;
        while (resultBits.length() > 0) {
            char lastResultBit = resultBits.charAt(resultBits.length() - 1);
            if (lastResultBit == '1') {
                result = result + bitValue;
            }
            resultBits = resultBits.substring(0, resultBits.length() - 1);
            // each bit is twice as worthy as the last one
            bitValue = bitValue * 2;
        }
        // show the result
        System.out.println(result);
    }
}
```
[Answer]
## Java - ~~309~~ ~~731~~ 759
Not the longest, but could be the most plausible wrong interpretation.
edit: Oops, just noticed this is not [code-trolling](/questions/tagged/code-trolling "show questions tagged 'code-trolling'").
> 
> Adding numbers larger than one bit is done by adding individual bits
>  using a [full-adder](http://en.wikipedia.org/wiki/Adder_%28electronics%29#Full_adder), which takes as input two bits and a carry-in
>  from the previous stage, and outputs the sum bit and a carry-our bit.
>  For simple addition, the carry-in for the first stage should be zero.
> 
> 
> 
```
public class Adder {
    public static void main(String[] args) throws Exception {
        int a = 135;
        int b = 87;
        int result = 0;
        int carryIn = 0;
        // Assume 8 bits, so we have 8 full-adders:
        for (int i = 0; i < 8; i++) { // Assume numbers are 8 bits long
            // Get the Nth bits from the numbers
            int bitA = a >> i & 1;
            int bitB = b >> i & 1;
            // Full adder, using the truth table:
            int bitC = 0;
            int carryOut = 0;
            if (bitA == 0 && bitB == 0 && carryIn == 0) {
                bitC = 0;
                carryOut = 0;
            }
            else if (bitA == 0 && bitB == 0 && carryIn == 1) {
                bitC = 1;
                carryOut = 0;
            }
            else if (bitA == 0 && bitB == 1 && carryIn == 0) {
                bitC = 1;
                carryOut = 0;
            }
            else if (bitA == 0 && bitB == 1 && carryIn == 1) {
                bitC = 0;
                carryOut = 1;
            }
            else if (bitA == 1 && bitB == 0 && carryIn == 0) {
                bitC = 1;
                carryOut = 0;
            }
            else if (bitA == 1 && bitB == 0 && carryIn == 1) {
                bitC = 0;
                carryOut = 1;
            }
            else if (bitA == 1 && bitB == 1 && carryIn == 0) {
                bitC = 0;
                carryOut = 1;
            }
            else if (bitA == 1 && bitB == 1 && carryIn == 1) {
                bitC = 1;
                carryOut = 1;
            }
            // Append the bits to the result
            result |= bitC << i;
            // Carry for next stage
            carryIn = carryOut;
        }
        // Verify the result
        System.out.println("Result = " + result + ", CarryOut = " + carryIn);
        System.out.println("Should be: " + (a + b));
    }
}
```
> 
> Result = 222, Carry-out = 0  
> 
>  Should be: 222
> 
> 
> 
[Answer]
Python 2.7 (adding the good way) 
```
def add(x,y):
    while True:
        a = x & y
        b = x ^ y
        x = a << b & 0xffffffff
        y = b
        if a == 0:
           break
    return b
number_1 = int(raw_input("Please enter a number(1)"))
number_2 = int(raw_input("Please enter a number(2)"))
print "result is: %d" % add(number_1, number_2)
```
credit goes to <https://stackoverflow.com/questions/366706/bitwise-subtraction-in-python>
[Answer]
```
function add(a, b)
{
    while (b) {
        a ^= b;
        b &= a ^ b;
        b <<= 1;
    }
    return a;
}
```
[Answer]
# C# - 5395
Lets emit [cil](/questions/tagged/cil "show questions tagged 'cil'") code for addition using a dynamic method. Actually I emit code, which in turns emits code to call integer addition. The function `Add()` below builds a dynamic method, which when run builds a dynamic method to call integer addition.
```
using System;
using System.Reflection.Emit;
namespace JA
{
class Program
{
    static void Main(string[] args)
    {
        int z=Add(1, 2);
        // z = 3
    }
    // Emit MSIL to emit MSIL
    public static int Add(int x, int y)
    {
        Type delegate_type=typeof(Func<int, int, int>);
        DynamicMethod method=new DynamicMethod(typeof(int).ToString()+".op_Addition",
            typeof(int),
            new Type[] { typeof(int), typeof(int) }, typeof(Program));
        ILGenerator generator=method.GetILGenerator();
        LocalBuilder method1=generator.DeclareLocal(typeof(DynamicMethod));
        LocalBuilder generator1=generator.DeclareLocal(typeof(ILGenerator));
        LocalBuilder add1=generator.DeclareLocal(typeof(Func<int, int, int>));
        LocalBuilder args1=generator.DeclareLocal(typeof(Type[]));
        generator.Emit(OpCodes.Ldtoken, typeof(int));
        generator.Emit(OpCodes.Call,
            typeof(Type).GetMethod("GetTypeFromHandle",
                System.Reflection.BindingFlags.Public|
                System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Callvirt,
            typeof(object).GetMethod("ToString",
                System.Reflection.BindingFlags.Public|
                System.Reflection.BindingFlags.Instance));
        generator.Emit(OpCodes.Ldstr, ".op_Addition");
        generator.Emit(OpCodes.Call,
            typeof(string).GetMethod("Concat",
                new Type[] { typeof(string), typeof(string) }));
        generator.Emit(OpCodes.Ldtoken, typeof(int));
        generator.Emit(OpCodes.Call,
            typeof(Type).GetMethod("GetTypeFromHandle",
                System.Reflection.BindingFlags.Public|
                System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Ldc_I4, 2);
        generator.Emit(OpCodes.Newarr, typeof(Type));
        generator.Emit(OpCodes.Stloc_3);
        generator.Emit(OpCodes.Ldloc_3);
        generator.Emit(OpCodes.Ldc_I4, 0);
        generator.Emit(OpCodes.Ldtoken, typeof(int));
        generator.Emit(OpCodes.Call,
            typeof(Type).GetMethod("GetTypeFromHandle",
                System.Reflection.BindingFlags.Public|
                System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Stelem_Ref);
        generator.Emit(OpCodes.Ldloc_3);
        generator.Emit(OpCodes.Ldc_I4, 1);
        generator.Emit(OpCodes.Ldtoken, typeof(int));
        generator.Emit(OpCodes.Call,
            typeof(Type).GetMethod("GetTypeFromHandle",
                System.Reflection.BindingFlags.Public|
                System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Stelem_Ref);
        generator.Emit(OpCodes.Ldloc_3);
        generator.Emit(OpCodes.Ldtoken, typeof(Program));
        generator.Emit(OpCodes.Call,
            typeof(Type).GetMethod("GetTypeFromHandle",
                System.Reflection.BindingFlags.Public|
                System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Newobj,
            typeof(DynamicMethod).GetConstructor(
                new Type[] { typeof(string), typeof(Type), typeof(Type[]), typeof(Type) }));
        generator.Emit(OpCodes.Stloc_0);
        generator.Emit(OpCodes.Ldloc_0);
        generator.Emit(OpCodes.Callvirt,
            typeof(DynamicMethod).GetMethod("GetILGenerator",
                Type.EmptyTypes));
        generator.Emit(OpCodes.Stloc_1);
        generator.Emit(OpCodes.Ldloc_1);
        generator.Emit(OpCodes.Ldtoken, typeof(int));
        generator.Emit(OpCodes.Call,
            typeof(Type).GetMethod("GetTypeFromHandle",
                System.Reflection.BindingFlags.Public|
                System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Callvirt,
            typeof(ILGenerator).GetMethod("DeclareLocal",
                new Type[] { typeof(Type) }));
        generator.Emit(OpCodes.Pop);
        generator.Emit(OpCodes.Ldloc_1);
        generator.Emit(OpCodes.Ldsfld,
            typeof(OpCodes).GetField("Ldarg_0",
                System.Reflection.BindingFlags.Public|System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Callvirt,
            typeof(ILGenerator).GetMethod("Emit", new Type[] { typeof(OpCode) }));
        generator.Emit(OpCodes.Ldloc_1);
        generator.Emit(OpCodes.Ldsfld,
            typeof(OpCodes).GetField("Ldarg_1",
                System.Reflection.BindingFlags.Public|System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Callvirt,
            typeof(ILGenerator).GetMethod("Emit", new Type[] { typeof(OpCode) }));
        generator.Emit(OpCodes.Ldloc_1);
        generator.Emit(OpCodes.Ldsfld,
            typeof(OpCodes).GetField("Add",
                System.Reflection.BindingFlags.Public|System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Callvirt,
            typeof(ILGenerator).GetMethod("Emit", new Type[] { typeof(OpCode) }));
        generator.Emit(OpCodes.Ldloc_1);
        generator.Emit(OpCodes.Ldsfld,
            typeof(OpCodes).GetField("Stloc_0",
                System.Reflection.BindingFlags.Public|System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Callvirt,
            typeof(ILGenerator).GetMethod("Emit", new Type[] { typeof(OpCode) }));
        generator.Emit(OpCodes.Ldloc_1);
        generator.Emit(OpCodes.Ldsfld,
            typeof(OpCodes).GetField("Ldloc_0",
                System.Reflection.BindingFlags.Public|System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Callvirt,
            typeof(ILGenerator).GetMethod("Emit", new Type[] { typeof(OpCode) }));
        generator.Emit(OpCodes.Ldloc_1);
        generator.Emit(OpCodes.Ldsfld,
            typeof(OpCodes).GetField("Ret",
                System.Reflection.BindingFlags.Public|System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Callvirt,
            typeof(ILGenerator).GetMethod("Emit", new Type[] { typeof(OpCode) }));
        generator.Emit(OpCodes.Ldloc_0);
        generator.Emit(OpCodes.Ldtoken, typeof(Func<int, int, int>));
        generator.Emit(OpCodes.Call,
            typeof(Type).GetMethod("GetTypeFromHandle",
                System.Reflection.BindingFlags.Public|
                System.Reflection.BindingFlags.Static));
        generator.Emit(OpCodes.Callvirt,
            typeof(DynamicMethod).GetMethod("CreateDelegate",
                new Type[] { typeof(Type) }));
        generator.Emit(OpCodes.Isinst, typeof(Func<int, int, int>));
        generator.Emit(OpCodes.Stloc_2);
        generator.Emit(OpCodes.Ldloc_2);
        generator.Emit(OpCodes.Ldarg_0);
        generator.Emit(OpCodes.Ldarg_1);
        generator.Emit(OpCodes.Callvirt,
            typeof(Func<int, int, int>).GetMethod("Invoke",
                System.Reflection.BindingFlags.Public|System.Reflection.BindingFlags.Instance));
        generator.Emit(OpCodes.Ret);
        Func<int, int, int> add2=method.CreateDelegate(typeof(Func<int, int, int>)) as Func<int, int, int>;
        return add2(x, y);
    }
}
}
```
[Answer]
Say you want the code to be longer than n characters. The following code is far longer.
```
public class Add
{
    int main(int a, int b)
    {
        return (a + (b/2^1) + (b/2^2) + (b/2^3) ... (b/2^n) + (b/2^n));
    }
}
```
[Answer]
# C
```
#include<stdio.h>
int Max(int a,int b)
{
    if(a>b)
    return a;
    else
    return b;
}
int Min(int a,int b)
{
    if(a<b)
    return a;
    else
    return b;
}
int main(void)
{
    int a,b,sum,i,m;
    i=0;
    m = Min(a,b);
    scanf("%d", &a);
    scanf("%d", &b);
    if(Min(a,b) == Max(a,b))
    {
        sum = 2*a;
        printf("%d", sum );
    }
    else
    {
        do
        {
            i++;
            m++;
        }while(m < Max(a,b));
       
        sum = i + 2 * Min(a,b);
        printf("%d", sum);
    }
    return 0;
}
```
Doesn't work well for large numbers, but can be replaced by this
```
#include<stdio.h>
int Max(int a,int b)
{
    if(a>b)
    return a;
    else
    return b;
}
int Min(int a,int b)
{
    if(a<b)
    return a;
    else
    return b;
}
int main(void)
{
    int a,b,sum,i,m;
    i=0;
    scanf("%d", &a);
    scanf("%d", &b);
    if(Min(a,b) == Max(a,b))
    {
        sum = 2*a;
        printf("%d", sum );
    }
    else
    {
        i = Max(a,b) - Min(a,b);
        sum = i + 2 * Min(a,b);
        printf("%d", sum);
    }
    return 0;
}
```
]