Obfuscated Hello World

125

42

Create the shortest possible obfuscated program that displays the text "Hello World".

In order to be considered an obfuscated program, it must meet at least two of the following requirements:

  • Does not contain the characters: h, l, w and d in any case
  • Does not contain the characters: e, o, r, 0, and 1 in any case
  • Does not contain the characters: 2 or 7

Input:
none

Output:
Hello World

Leaderboard

Here is a Stack Snippet to generate both a regular leaderboard and an overview of winners by language.

/* Configuration */

var QUESTION_ID = 307; // Obtain this from the url
// It will be like https://XYZ.stackexchange.com/questions/QUESTION_ID/... on any question page
var ANSWER_FILTER = "!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe";
var COMMENT_FILTER = "!)Q2B_A2kjfAiU78X(md6BoYk";
var OVERRIDE_USER = 48934; // This should be the user ID of the challenge author.

/* App */

var answers = [], answers_hash, answer_ids, answer_page = 1, more_answers = true, comment_page;

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;
}

function commentUrl(index, answers) {
  return "https://api.stackexchange.com/2.2/answers/" + answers.join(';') + "/comments?page=" + index + "&pagesize=100&order=desc&sort=creation&site=codegolf&filter=" + COMMENT_FILTER;
}

function getAnswers() {
  jQuery.ajax({
    url: answersUrl(answer_page++),
    method: "get",
    dataType: "jsonp",
    crossDomain: true,
    success: function (data) {
      answers.push.apply(answers, data.items);
      answers_hash = [];
      answer_ids = [];
      data.items.forEach(function(a) {
        a.comments = [];
        var id = +a.share_link.match(/\d+/);
        answer_ids.push(id);
        answers_hash[id] = a;
      });
      if (!data.has_more) more_answers = false;
      comment_page = 1;
      getComments();
    }
  });
}

function getComments() {
  jQuery.ajax({
    url: commentUrl(comment_page++, answer_ids),
    method: "get",
    dataType: "jsonp",
    crossDomain: true,
    success: function (data) {
      data.items.forEach(function(c) {
        if (c.owner.user_id === OVERRIDE_USER)
          answers_hash[c.post_id].comments.push(c);
      });
      if (data.has_more) getComments();
      else if (more_answers) getAnswers();
      else process();
    }
  });  
}

getAnswers();

var SCORE_REG = /<h\d>\s*([^\n,]*[^\s,]),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/;

var OVERRIDE_REG = /^Override\s*header:\s*/i;

function getAuthorName(a) {
  return a.owner.display_name;
}

function process() {
  var valid = [];
  
  answers.forEach(function(a) {
    var body = a.body;
    a.comments.forEach(function(c) {
      if(OVERRIDE_REG.test(c.body))
        body = '<h1>' + c.body.replace(OVERRIDE_REG, '') + '</h1>';
    });
    
    var match = body.match(SCORE_REG);
    if (match)
      valid.push({
        user: getAuthorName(a),
        size: +match[2],
        language: match[1],
        link: a.share_link,
      });
    
  });
  
  valid.sort(function (a, b) {
    var aB = a.size,
        bB = b.size;
    return aB - bB
  });

  var languages = {};
  var place = 1;
  var lastSize = null;
  var lastPlace = 1;
  valid.forEach(function (a) {
    if (a.size != lastSize)
      lastPlace = place;
    lastSize = a.size;
    ++place;
    
    var answer = jQuery("#answer-template").html();
    answer = answer.replace("{{PLACE}}", lastPlace + ".")
                   .replace("{{NAME}}", a.user)
                   .replace("{{LANGUAGE}}", a.language)
                   .replace("{{SIZE}}", a.size)
                   .replace("{{LINK}}", a.link);
    answer = jQuery(answer);
    jQuery("#answers").append(answer);

    var lang = a.language;
    if (/<a/.test(lang)) lang = jQuery(lang).text();
    
    languages[lang] = languages[lang] || {lang: a.language, user: a.user, size: a.size, link: a.link};
  });

  var langs = [];
  for (var lang in languages)
    if (languages.hasOwnProperty(lang))
      langs.push(languages[lang]);

  langs.sort(function (a, b) {
    if (a.lang > b.lang) return 1;
    if (a.lang < b.lang) return -1;
    return 0;
  });

  for (var i = 0; i < langs.length; ++i)
  {
    var language = jQuery("#language-template").html();
    var lang = langs[i];
    language = language.replace("{{LANGUAGE}}", lang.lang)
                       .replace("{{NAME}}", lang.user)
                       .replace("{{SIZE}}", lang.size)
                       .replace("{{LINK}}", lang.link);
    language = jQuery(language);
    jQuery("#languages").append(language);
  }

}
body { text-align: left !important}

#answer-list {
  padding: 10px;
  width: 290px;
  float: left;
}

#language-list {
  padding: 10px;
  width: 290px;
  float: left;
}

table thead {
  font-weight: bold;
}

table td {
  padding: 5px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b">
<div id="answer-list">
  <h2>Leaderboard</h2>
  <table class="answer-list">
    <thead>
      <tr><td></td><td>Author</td><td>Language</td><td>Size</td></tr>
    </thead>
    <tbody id="answers">

    </tbody>
  </table>
</div>
<div id="language-list">
  <h2>Winners by Language</h2>
  <table class="language-list">
    <thead>
      <tr><td>Language</td><td>User</td><td>Score</td></tr>
    </thead>
    <tbody id="languages">

    </tbody>
  </table>
</div>
<table style="display: none">
  <tbody id="answer-template">
    <tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr>
  </tbody>
</table>
<table style="display: none">
  <tbody id="language-template">
    <tr><td>{{LANGUAGE}}</td><td>{{NAME}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr>
  </tbody>
</table>

Kevin Brown

Posted 2011-01-31T23:33:34.077

Reputation: 5 756

Is use of external files allowed? – elssar – 2012-07-18T12:59:31.703

Are the numbers 2 and 7 allowed? – Mateen Ulhaq – 2011-03-10T04:53:27.833

1:( Can't make a VBA solution because of End Sub or End Function – Taylor Scott – 2016-12-27T22:57:26.087

@muntoo: Only if the code doesn't contain: h, l, w, r, d, o, e, 1, or 0 – Kevin Brown – 2011-03-10T21:05:05.740

Ah, no o means I can't print in IPEL... – bigyihsuan – 2019-10-01T01:22:21.853

6I guess import in python is not permitted. – Alexandru – 2011-02-01T00:07:54.037

What is the difference between letters, characters and numbers. – Alexandru – 2011-02-01T00:08:19.700

@Alexandru: Just consider them all to be characters, and you'll be fine. – Chris Jester-Young – 2011-02-01T00:10:32.077

@Alexandru: I don't see why not. Just keep in mind that you'll have to satisfy the first and third requirements, as you're already including "r" – Anon. – 2011-02-01T00:11:00.223

26Does these rules apply to language keywords as well? – hallvabo – 2011-02-01T13:04:44.323

8are those case insensitive restrictions? – oenone – 2011-08-04T14:22:09.723

1@hallvabo: I guess so, since the task description states »In order to be considered an obfuscated program«, meaning the rules apply to the program as a whole, not just a subset. – Joey – 2011-02-02T20:30:57.063

20Could someone explain why 2 and 7 are not allowed? I'm just curious as I don't see why those were chosen in particular. – Thomas Eding – 2011-08-05T23:01:29.753

4@trinithis, and others, ASCII character 72 is "H" which is why I chose those two – Kevin Brown – 2011-09-18T23:18:32.507

Answers

52

GolfScript, 17 chars

'·š““ß¨“›'{~}%

When testing this submission, please save the file as straight binary, not UTF-8. Having trouble recreating the file? Here's the hexdump of it:

00000000  27 b7 9a 93 93 90 df a8  90 8d 93 9b 27 7b 7e 7d  |'...........'{~}|
00000010  25                                                |%|

Chris Jester-Young

Posted 2011-01-31T23:33:34.077

Reputation: 4 464

12It's not ISO-8859-1, it's actually Windows-1252. – Konrad Borowski – 2012-04-27T11:57:28.473

@GlitchMr: I'm actually pretty certain the submission contains characters that are outside of Windows-1252 too. ;-) – Chris Jester-Young – 2012-04-27T12:40:51.907

@xfix It really isn't Windows-1252 either. Although Windows-1252 has more valid characters than ISO-8859-1, my entry contains characters, such as 0x8D and 0x90, that aren't valid in Windows-1252 either. – Chris Jester-Young – 2015-09-25T00:45:44.493

Fair enough, forgot that some characters are disallowed in Windows-1252. – Konrad Borowski – 2015-09-26T08:36:19.100

1

Although I'd like to think it's an obvious solution, if you're at all unclear about how this entry works, you can read this spoiler: http://chat.stackexchange.com/transcript/message/442257#442257 :-)

– Chris Jester-Young – 2011-02-01T00:08:34.153

173

Perl

Since the obvious answer uses shifting of some kind, I feel obligated to post something using Acme::EyeDrops, however with the extra power I thought mine ought to be a little more fun.

                            ''=~('('."\?".
                        '{'.('`'|'%').('['^'-'
                    ).('`'|'!').  ("\`"|       ','
                 ).'"'.('['^'.').   (((           '['
              ))^'(').('`'|('%')).(                  '{'
            ^'[').('{'^'/').('`'|')')                  .+(
          '`'|'-').('`'|'%').':'.':'.(                   '`'
         ^'(').('`'|')').('{'^')').(                      '`'
       |((  '%'))).('['^'(').'\\'.'"'                       .+(
      '['   ^'.').('['^'(').("\`"|                           ','
     ).(    '`'|'%').('`'|"\%").(                             '['
    ^((      '+'))).'\\'.'"'.';'.                              (((
   (((        '\\')))))).('$').                                 '|'
   .((         '+')).'+'.(';').                                 (((
  (((           '\\'))))      )                                  ).+
  '$'            .'\\'.                                          '"'
 .((               '=')    ). "'".                                "'"
 .((                (';'))).       '\\'                           .((
'@'                   )).('`'|                                     '#'
).+                        '='                                     .+(
'`'                          |+    "\-").(                         '`'
|((                            '!'))).("\["^                       '+'
).+                              '\\'.'{'."\[".                    (((
(((                              '\\'))))))."\$".                  '_'
.((                             ',')).'\\'.'$'.('`'|               '*'
).+                             ','.('^'^('`'|('+'))).(            '^'
^+(                              '`'|'.')).'+'.('^'^('`'           |((
'+'                               )))).'*'.'\\'.('$').(            '`'
 |((                               '*'))).'+'.'+'.']'.            (((
 (((                                '\\'))))))."\}".(             '['
  ^((                                '('))).('['^'+')            .+(
  '`'                                |',').('`'|')')             .+(
   '['                                ^'/').('/').              '/'
   .((                                ',')).'\\'.               '"'
    .+(                               '`'^'(').                (((
     '`'                              ))|'%')                 .+(
      '`'                             |',').                 (((
       '`'                           ))|','                 ).(
         '`'                         |'/')                .+(
          '{'                        ^'['                ).(
            '{'                      ^((               ','
              )))                     .(  (          '`'
                 )|+                   ((         '/'
                    )))                        .+(
                        '['                ^((
                            ')'))).(('`')|

                            ',').('`'|'$')
                        .((        '\\')).'"'.
                    ';'       .  ('['^',').(('`')|
                 '('         ). ('`'|')').('`'|',').(
              '`'              |'%').'('.('^'^('`'|'/'))
            .((             ')')).'\\'.'{'.('`'|'-').('['^
          '"'             ).((   (  '\\'))).'$'.('`'|('*')).
         ';'             .+(      ( ( '`'))|'-').('['^('"')).
       '\\'              .+            '@'.('['^'(').'='.("\`"|
      '-').             ('`'|'!'           ).('['^'+').'\\'.'{'.
     "'".(             '{'^"\[").   ((     "'")).'\\'.'}'.('(').(
    '^'^(             '`'|'.')).'.'.'.'.('^'^('`'|'+')).('^'^('`'|
   '.'))            .')'.';'.('`'|'&').('`'|'/').('['^')').'('.'\\'
   .'@'            .('`'|'#').')'.'\\'.'{'.'\\'."\$".(   '['^"\(").
  '['              .'\\'.'$'.'_'.'-'.'>'.'['.('^'^('`'     |',') ).+
  ']'             .']'.'='.'\\'.'$'.'_'.'-'.'>'."\[".(      '^'^ (((
 '`'              ))|'.')).']'.('`'|')').('`'|('&')).        (((  (((
 (((             '\\'))))))))).'$'.'_'.'-'.'>'.'['.           +(  '^'
^+(              '`'|',')).']'.'<'.'='.('^'^('`'|         (    (   '+'
)))               ).('^'^('`'|'.')).';'.'\\'.'$'.'_'.     (    (   '-'
)).                '>'.'['.('^'^('`'|'/')).']'."\>".       (       (((
(((                  '\\')   )))))).'$'.'_'.'-'.'>'                .((
'['                           )).('^'^('`'|(','))).                ']'
.((                           '?')).'\\'.'$'.('`'|                 '*'
).((                          '+')).'+'.':'.'\\'.                  '$'
.('_').                        '-'.'>'.'['.('^'^                   (((
'`'))|','                       )).']'.'-'."\-".                   (((
'\\'))).+                       '}'.('['^'+').(                   '['^
 "\)").(                        '`'|')').("\`"|              (   '.')
 ).('['^                        '/').'\\'."\"".                   (((
  '\\'))                        ).'\\'.('['^')'    )             .((
  '\\')).                      '@'.('['^"\(").   ((              (((
   '\\'))                       ))).'"'.';'.(   '['        ^    '.'
   ).('['                        ^'(').('`'|    ((        (     ','
    )))).                         ('`'|'%')     .              (((
     '`')                         )|'%').(                    '['
      ^((                          '+')))                    .((
       '('                         )).                      (((
         '^'                                          )   )^(
          '`'                                         |  '/'
            )).                                       ('`'
              |((                                    '%'
                 )))                              .+(
                    '^'                        ^+(
                        '`'                |((
                            '+')))).(')').

                            ';'.('`'|',').
                        ('`'|'!').('['^    '('
                    ).('['^'/').(('{')^        '['
                 ).('`'|')').("\`"|    (          '&'
              )).'\\'.'$'.('`'|"\*").                '='
            .'='.'\\'.'@'.('`'|"\#").                  (((
          '\\'))).'}'.('['^'+').('['^  (                 ')'
         )).('`'|')').('`'|'.').('['^   (                 '/'
       )).'\\'.'"'.'\\'.'\\'.('`'      |+                   '.'
      ).'\\'.'"'.('!'^'+').'"'.'}'.   ')'                    );(
     $:)='.'^'~';$~='@'|'(';$^=')'^                           '['
    ;$/='`'|'.';$,='('^'}';$\="\`"|                            '!'
   ;$:=')'^'}';$~='*'|'`';$^=('+')^                             '_'
   ;($/)    ='&'|'@';$,='['&'~';$\                              =((
  "\,"))^    '|';$:  ='.'^'~'; $~                                =((
  '@'))|     "\(";    $^=')'^                                    '['
 ;($/)=      '`'|       '.';$,                                    =((
 '(')        )^+         '}';$\                                   =((
'`')          )|          "\!";      (           (                 $:)
)=')'         ^+        (   (         (                   (        '}'
))));          (           (          (                            $~)
))=(                    (   (    (        (                        '*'
))))                     )   |  ((      (                          '`'
)))                      ;     $^=         (                       '+'
)^+                       ((    ((  ((     '_'                     )))
)))                                          ;($/)                 =((
'&'                          ) )               |'@';               $,=
'['                                                                &((
 '~'                                      ))   ;                  $\=
 ','                                  ^"\|";  $:                  =((
  '.'                               ))^"\~"; $~=                 '@'
  |((                              '('));$^=')'^       (         '['
   );(                          $/)='`'|"\.";$,=    (           '('
   )^+                         '}';$\='`'|'!';$:                =((
    ')'                        ))^'}';$~='*'|'`'               ;$^
     =((                       '+'))^'_';$/='&'               |((
      '@'                      ));$,   =('[')&               '~'
       ;$\                              =','^               '|'
         ;$:                              =(      ((      '.'
          )))                                   ^+       '~'
            ;$~                               =(       '@'
              )|+                                    '('
                 ;$^                              =((
                    ')'                        ))^
                        '['                ;$/
                            ='`'|('.');#;#

Caveat

Since Perl version 5.18, the mechanism that allows this code to run has become so powerful that it has been disabled by default to prevent misuse. Therefore on versions 5.18+ you can either add use re 'eval'; to the top of the script or, if the script is named world.pl you can run it like perl -Mre=eval world.pl. It is unfortunate that these unsightly characters must be added, but c'est la vie. (Note: I want to emphasize that enabling this feature is not using some library or addon, the code displayed is valid Perl code, the mechanism is simply no longer enabled by default).

Joel Berger

Posted 2011-01-31T23:33:34.077

Reputation: 2 261

A point for including the island where I come from. – Penguino – 2015-03-09T02:28:41.710

@Penguino which island is that? I'm curious now. – Joel Berger – 2015-03-15T15:41:45.353

@Joel Berger I live in one of the two (and a bit) islands represented by the ((, ^+, and =( ... situated south east of Australia in your view of the globe centered on the "Asian" hemisphere. – Penguino – 2015-03-15T21:09:12.850

1FYI It uses the Perl regexp feature (?{ code }) to evaluate custom Perl code while regexp matching. The custom Perl code prints the message. It's nice because it doesn't violate any of the rules. – pts – 2013-08-23T22:54:24.250

1Wow! Just wow! Now I need to learn Perl just to see how on earth you did that. – Gryphon – 2017-06-10T13:39:56.027

5You sir, are the hello world king! – recursion.ninja – 2014-01-04T15:27:16.170

1I tried it and it is just great! +1 – Tomas – 2011-10-10T17:55:01.630

2@TomasT. thanks, it was fun to do, and it actually did take some golfing to get that to run in only 3 pictures! – Joel Berger – 2011-10-10T18:15:24.210

68

C# (175 chars)

It was quite a challenge to do this in C# because the restrictions preclude any use of quite a lot of the common keywords. It is possible in C# to use \uxxxx Unicode escape sequences in identifiers, but unfortunately not in keywords.

I suspect that this solution only works when compiled against .NET 4.0. See explanation for why.

using System;struct a{static int Main(){object[]c={"\u0048e\x6c\x6co "+(C\u0068ar)(86+1)+"or\x6c\x64"};typeof(Conso\u006ce).GetMet\u0068o\u0064s()[101].Invoke(c,c);return 0;}}

Explanation

// I won’t be able to get anywhere without using “System”.
// Even if I write it as “Syst\u0065m”, it still violates rule 2.
// Therefore, that is the rule we’ll violate.
using System;

// Thus, we can’t use: H L W D 2 7
// We can’t write “class”, so the Main type must be a struct.
struct a
{
    // We can’t write “void”, so Main needs to return an int.
    static int Main()
    {
        // We can’t write “new”, but we can instantiate an array
        // using the initialisation syntax.
        object[] c = {
            "\u0048e\x6c\x6co " + (C\u0068ar) (86 + 1) + "or\x6c\x64"
        };

        // We can use the character escape sequence to write “Console”, but not
        // “Write” because W is \u0057, which contains a 7. Therefore, we have to
        // use Reflection to get it. This relies on the fact that Console.Write(string)
        // is the 102nd method of the type Console in my copy of the framework.
        // Also, the first argument to Invoke can be anything for a static method
        // (needn’t be null). The second one is the actual argument to Console.Write.
        typeof(Conso\u006ce).GetMet\u0068o\u0064s()[101].Invoke(c, c);

        // Since Main returns int, we have to return something.
        return 0;
    }
}

Timwi

Posted 2011-01-31T23:33:34.077

Reputation: 12 158

1Very intelligent thing you did with GetMethods. +1 – Soham Chowdhury – 2013-04-27T14:29:01.240

You can use Uri instead of object for b. You can use \xHH in strings instead of \u00HH where it's unambiguous (\x is variable-length). On second thought, you don't need b at all and can just reuse c as the first argument to Invoke. MSDN states that for static methods the first argument is ignored. This brings it down to 175 for me. – Joey – 2011-04-04T12:58:28.753

@Joey: Whoa, thanks! Although if the first argument to Invoke can be anything, it needn’t even be c, it could be 0... :) – Timwi – 2011-04-04T13:27:29.410

Yes, noticed that when I tried to inline c (which sadly doesn't work since new requires an e and .Split('x') is too long (came out at 177). – Joey – 2011-04-04T13:31:21.577

I had no idea this was possible. +1 – Igby Largeman – 2011-06-04T20:58:22.157

52

BrainFuck, 106 strokes

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

Meets all the rules and it sure is obfuscated.

R. Martinho Fernandes

Posted 2011-01-31T23:33:34.077

Reputation: 2 135

8Brah, Protected by community, whatever, ++++++++++[>++++++>+++<<-]>++++++++++++.---.+++++++..+++.>++.<++++++++.--------.+++.------.--------. is just 100 strokes, mine is better than yours – OverCoder – 2015-08-13T14:12:20.593

@OverCoder -[------->+<]>-.---.+++++++..+++.+[----->++<]>.---[->+++<]>.--------.+++.------.--------. - 89 bytes. – Krzysztof Szewczyk – 2020-01-21T10:24:26.610

34Isn't BrainFuck obfuscated by its definition? – mbx – 2011-07-13T11:17:29.430

2I think I can still golf it down a bit, but that will have to wait until I get some sleep. – R. Martinho Fernandes – 2011-02-02T01:25:35.650

18Any competent BF programmer would be able to recognize this... – user541686 – 2011-08-05T04:10:23.383

This breaks both rules 1 and 2 :D – Thomas Eding – 2011-08-05T23:04:18.487

45

Javascript, 2595

This only breaks rule 2.

゚ω゚ノ=/`m´)ノ~┻━┻//*´∇`*/['_'];o=(゚ー゚)=_=3;c=(゚Θ゚)=(゚ー゚)-(゚ー゚);(゚Д゚)=(゚Θ゚)=(o^_^o)/(o^_^o);(゚Д゚)={゚Θ゚:'_',゚ω゚ノ:((゚ω゚ノ==3)+'_')[゚Θ゚],゚ー゚ノ:(゚ω゚ノ+'_')[o^_^o-(゚Θ゚)],゚Д゚ノ:((゚ー゚==3)+'_')[゚ー゚]};(゚Д゚)[゚Θ゚]=((゚ω゚ノ==3)+'_')[c^_^o];(゚Д゚)['c']=((゚Д゚)+'_')[(゚ー゚)+(゚ー゚)-(゚Θ゚)];(゚Д゚)['o']=((゚Д゚)+'_')[゚Θ゚];(゚o゚)=(゚Д゚)['c']+(゚Д゚)['o']+(゚ω゚ノ+'_')[゚Θ゚]+((゚ω゚ノ==3)+'_')[゚ー゚]+((゚Д゚)+'_')[(゚ー゚)+(゚ー゚)]+((゚ー゚==3)+'_')[゚Θ゚]+((゚ー゚==3)+'_')[(゚ー゚)-(゚Θ゚)]+(゚Д゚)['c']+((゚Д゚)+'_')[(゚ー゚)+(゚ー゚)]+(゚Д゚)['o']+((゚ー゚==3)+'_')[゚Θ゚];(゚Д゚)['_']=(o^_^o)[゚o゚][゚o゚];(゚ε゚)=((゚ー゚==3)+'_')[゚Θ゚]+(゚Д゚).゚Д゚ノ+((゚Д゚)+'_')[(゚ー゚)+(゚ー゚)]+((゚ー゚==3)+'_')[o^_^o-゚Θ゚]+((゚ー゚==3)+'_')[゚Θ゚]+(゚ω゚ノ+'_')[゚Θ゚];(゚ー゚)+=(゚Θ゚);(゚Д゚)[゚ε゚]='\\';(゚Д゚).゚Θ゚ノ=(゚Д゚+゚ー゚)[o^_^o-(゚Θ゚)];(o゚ー゚o)=(゚ω゚ノ+'_')[c^_^o];(゚Д゚)[゚o゚]='\"';(゚Д゚)['_']((゚Д゚)['_'](゚ε゚+(゚Д゚)[゚o゚]+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+(゚Θ゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚)+(゚Θ゚))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+((゚ー゚)+(゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o)+(o^_^o))+((o^_^o)-(゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o)+(o^_^o))+(゚ー゚)+(゚Д゚)[゚ε゚]+((゚ー゚)+(゚Θ゚))+(c^_^o)+(゚Д゚)[゚ε゚]+(゚ー゚)+((o^_^o)-(゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚Θ゚)+(c^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+((゚ー゚)+(゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚)+(゚Θ゚))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚)+(゚Θ゚))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚)+(゚Θ゚))+((゚ー゚)+(o^_^o))+(゚Д゚)[゚ε゚]+(゚ー゚)+(c^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o)-(゚Θ゚))+((゚ー゚)+(o^_^o))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚)+(゚Θ゚))+((゚ー゚)+(o^_^o))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o)+(o^_^o))+((o^_^o)-(゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚)+(゚Θ゚))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚ー゚)+((o^_^o)-(゚Θ゚))+(゚Д゚)[゚ε゚]+((゚ー゚)+(゚Θ゚))+(゚Θ゚)+(゚Д゚)[゚o゚])(゚Θ゚))('_');

Peter Olson

Posted 2011-01-31T23:33:34.077

Reputation: 7 412

13I tried it on UglifyJS on it but it saved -2574 bytes. – Konrad Borowski – 2012-04-27T11:53:50.520

12I have no idea what I'm looking at here. – Bob – 2014-01-13T05:59:26.447

6@Bob = obfuscated Javascript. Hint: it starts by assigning a regular expression literal (namely '/`m´)ノ~┻━┻/') to a variable with the name ゚ω゚ノ. That's followed by a comment and the expression ['_'] in void context. Then the variable o (along with _ and (゚ー゚)) is assigned the value 3. It continues in that vein, doing lots of extra harmless work that is effectively no-ops, and using roundabout ways to do the intended work (calling alert("Hello world")) in a non-obvious fashion. – Mark Reed – 2014-01-21T03:15:43.387

6

Source: http://utf-8.jp/public/aaencode.html

– Jason C – 2014-03-24T05:27:50.813

40

Befunge-93 - 10x9 block

va:)/v<>#<
9A:)."c:P^
>"iqwt\%"^
bv"Mjq"<.<
c>v<-"x^x]
(C:,3>>^:(
$,9^;)|:O]
>5-^-.--.-
^<_#?>@_@<

Sorry. :D

I wasn't going for small size here, I was trying to really OBFUSCATE the code by including as many smiley faces and noise as possible! :D

Should go with rules 2 and 3.

Aurel Bílý

Posted 2011-01-31T23:33:34.077

Reputation: 1 083

18"@_@" I laughed. – Wug – 2012-08-03T15:06:12.663

35

Golfscript - 17 chars

Easier to copy/paste than Chris'

'Ifmmp!Xpsme'{(}%

Basically a caesar cipher shifting by 1 char

gnibbler

Posted 2011-01-31T23:33:34.077

Reputation: 14 170

How does this break a rule? – d-_-b – 2011-02-10T14:47:11.440

11@sims, it has an e in it – gnibbler – 2011-02-10T20:05:56.767

4+1 Nice for being simpler to copy. Mine has the advantage of breaking none of the rules, and also (probably, depending on whether high-bit characters count as symbols) fulfilling symbol golf also. :-) – Chris Jester-Young – 2011-02-01T03:30:37.210

2TWO of the three. :D – Rob – 2011-10-04T14:08:15.787

30

Python

Rule I & III (34 chars)

print'Uryyb Jbeyq'.decode('rot13')

Rule I & III, alternative (39 chars)

print"\110e\154\154o %cor\154\144"%~-88

Rule II & III (37 chars)

input("H\x65ll\x64 W\x64%cld"%(3*38))

Rule I and II (50 chars)

input('\x48\x65\x6c\x6c\x6f \x57\x6f\x72\x6c\x64')

All three rules (58 chars)

input("\x48\x65\x6c\x6c\x6f %c\x6f%c\x6c\x64"%(84+3,3*38))

hallvabo

Posted 2011-01-31T23:33:34.077

Reputation: 1 640

You need to import codecs before you can codecs.decode – cat – 2015-10-22T23:45:11.393

+1,great piece but no surprise I have seen you golfing :-) – Quixotic – 2011-03-08T23:05:51.650

You can remove the parens in the first solution – Cyoce – 2016-10-17T02:38:36.740

1deleted my answer, i think yours is more comprehensive. – st0le – 2011-02-01T13:37:52.630

24

JavaScript, 366 chars

After seeing Joel Berger's Perl solution, I felt compelled to do some ASCII art prettiness myself... JavaScript, uses no alphanumerics, and contrary to JSFuck output it's actually reasonably sized.

                   $$
                  =-~-
                 ~[];$_
                =$$+ $$;
               _$=$$+$$+-
              ~[];_=-~[];$
             =!![]+[];__={}
            +[];$$_=/\\ /+[]
           _$$=(![]+[])[_]+(!
          []+[])[$$]+$[$_+~[]]
         +$[_]+$[+[]];$=__[_$]+
        __[_]+($[$]+[])[_]+(![]+
       [])[$_+~[]]+$[+[]]+$[_]+$[
      $$]+__[_$]+$[+[]]+__[_]+$[_]
     _=$$_[_]+-~[];$[$][$](_$$+'("'
    +_+-~[]+-[]+_+$_+_$+_+_$+$_+_+_$
   +$_+_+_$+[$$+_$]+$$_[-~[]]+$_+-[]+
  _+$$+[$$+_$]+_+_$+[$$+_$]+_+[$$+$_]+
                $$+ _+_$
                +$_+_+$_
                +$_+'")'
                  )($)

FireFly

Posted 2011-01-31T23:33:34.077

Reputation: 7 107

could you please display the number of characters in your code in the heading? I'm curious to see how many you got it to... – WallyWest – 2014-01-20T22:32:20.937

@Eliseod'Annunzio there you go, I forgot that this was code-golf. Length is given with whitespace stripped and the last ($) turned into () (because I added $ for symmetry). – FireFly – 2014-01-20T22:53:58.190

Thanks for your tips... I had to resize my code out to account for the "W" and then shrunk it down using your advice... – WallyWest – 2014-01-21T00:58:35.447

21

rot13 - 11 chars

Uryyb Jbeyq

2019/2/12: This answer is being kept for historical reasons, and is no longer a valid answer under current site rules.

gnibbler

Posted 2011-01-31T23:33:34.077

Reputation: 14 170

3Is rot13 a language? :/ – Santosh Kumar – 2015-11-16T08:12:53.917

3yes and I can create its interpreter :P – oddcoder – 2016-03-14T17:07:19.553

6

Technically, rot13 is just a cipher. It is as much a langauge as a Vigenère cipher.

– XiKuuKy – 2016-09-14T10:47:28.687

19

Bash, 30 25 characters

tr G-t F-s<<<Ifmmp\ Xpsme

With thanks to Peter Taylor for the herestring usage.

Anon.

Posted 2011-01-31T23:33:34.077

Reputation: 1 799

2You can save 5 characters using a here string: tr G-t F-s<<<Ifmmp\ Xpsme – Peter Taylor – 2011-02-05T20:35:14.710

19

Scala, 39

Solutions like print("Qnuux)`x{um"map(_-9 toChar)) (35 chars) fall foul of rules 1 and 2 ("toChar" contains both "h" and "r"), which makes this a bit tough.

Finally came up with this:

print("䠀攀氀氀漀 圀漀爀氀搀"map(_.reverseBytes))

Suggestions for improvement welcome

Luigi Plinge

Posted 2011-01-31T23:33:34.077

Reputation: 631

18

TeX, 95 Bytes

Breaks the third rule.

\^^5pp^^%^^2^^#^^!^^3^^%{^^(}^^%^^,^^,^^/
\^^5pp^^%^^2^^#^^!^^3^^%{^^7}^^/^^2^^,^^$!
\^^%^^.^^$

Run with tex filename.tex to get a dvi output, or pdftex filename.tex to get a pdf.

Bruno Le Floch

Posted 2011-01-31T23:33:34.077

Reputation: 1 181

1Wow, never knew TeX can be so obfuscated! – gar – 2014-06-02T18:04:51.203

14

><>, 2×20 = 40 characters

'mu{x`)xuunQ'>9-o?v;
            ;^?o-9< 

Violates Rule II, since I cannot output a character without using o.

Joey

Posted 2011-01-31T23:33:34.077

Reputation: 12 260

11

Windows PowerShell, 91 95 97 98

($OFS='')+('Qnuux)`x{um'|% t*y|%{"[convert]::"+([convert]|gm -s t*r).name+"($($_-9))"|iex})

Violates only Rule II.

It's very evil that char violates two rules on its own already.

And yikes, this one was hard to get working.

  • The first line sets $OFS to '' so when casting an array to a string no spaces appear between items.
  • Casting to char actually was the hardest part of all and I spend around a day searching for a way. I got all the rest working nicely but once I do calculations on them I have ints, not chars. Putting those back in a string was kinda hard.
  • I found a way of invoking Invoke-Expression without needing the e as well:

    &(gcm i?x)
    

    but that still lacked the arguments. And I've thrown away my goal of satifying all three rules by then already. Also it didn't particularly help me in casting to char.

  • Shortened a bit with a newer PowerShell version. No useful different way of creating the result emerged, though, sadly.

Joey

Posted 2011-01-31T23:33:34.077

Reputation: 12 260

There's still lots of "o"s and "e"s in here, and an "r". Not sure I'd have much better luck cleaning that out either, though. Might yet have to give it a shot sometime. – Iszi – 2013-11-17T05:01:11.727

Just re-read the rules - only needed two of the three rulesets met, and this does qualify. Good show! Would be uber-awesome if we could come up with one that takes 3/3, but I doubt that's very possible. – Iszi – 2013-11-17T08:03:55.903

Took me plenty of time to get to this point already, and I still doubt it's possible to follow all rules. – Joey – 2013-11-17T11:43:34.350

10

Whitespace (167 characters)

To obtain the WS program, substitute a Space, Tab, or Linefeed character for S, T, L, respectively, in the following string:

SSSTSSTSSSLTLSSSSSTTSSTSTLTLSSSSSTTSTTSSLTLSSSSSTTSTTSSLTLSSSSSTTSTTTTLTLSSSSSTSSSSSLTLSSSSSTSTSTTTLTLSSSSSTTSTTTTLTLSSSSSTTTSSTSLTLSSSSSTTSTTSSLTLSSSSSTTSSTSSLTLSSLLL

or download the "raw" whitespace-only program in the text-file hello.ws.

When executed by this WS interpreter, this program prints "Hello World".

Explanation (ignore the whitespace here!):

SSS TSSTSSSL TLSS  <-- output H (ascii code 72 in decimal, 1001000 in binary) 
SSS TTSSTSTL TLSS  <-- output e (ascii code 101 in decimal, 1100101 in binary) 
SSS TTSTTSSL TLSS  <-- etc
SSS TTSTTSSL TLSS
SSS TTSTTTTL TLSS
SSS TSSSSSL TLSS
SSS TSTSTTTL TLSS
SSS TTSTTTTL TLSS 
SSS TTTSSTSL TLSS 
SSS TTSTTSSL TLSS
SSS TTSSTSSL TLSS 
LLL                <-- end the program

The "middle" strings (e.g. TSSTSSSL) are the ascii codes (in binary, with S denoting 0, T denoting 1) for the successive letters in "Hello World". The prefix SSS pushes the number that follows it (terminated by an L) onto the stack. TLSS outputs the character whose ascii code is on top of the stack. Finally, according to this tutorial, a program must end with LLL for a clean exit by the interpreter.

NB: I'm entering this as a separate answer, because the other WS program entry is a 1287-character program that prints "Hello, world of spaces!" instead of the required "Hello World".

r.e.s.

Posted 2011-01-31T23:33:34.077

Reputation: 2 872

10

PHP (16 bytes)

I've noticed that my previous PHP example wasn't obfuscated enough, so let's see more blatantly obfuscated examples (warning, obfuscation!). Also, blatantly copying GolfScript example, except making it smaller (is it even possible?). This entry requires either PHP 5.4 or short_open_tag enabled. No rule was broken while making this. In fact, this entry doesn't contain any ASCII letters or digits.

This example doesn't break any of the rules. Have fun. To generate file, run following command.

printf "<?=~\xb7\x9a\x93\x93\x90\xdf\xa8\x90\x8d\x93\x9b;" > obfus.php

Or, in case you don't trust running printf command, I've prepared Base64 dump of the file.

PD89freak5OQ36iQjZObOw==

If you think that both methods to generate it break rules, I also have generated file on Dropbox.

And to run it.

php obfus.php

The resulting file should have 16 bytes. Have fun running it. Please note that if you have E_NOTICE warnings enabled, it will show notice. Just ignore it, fixing it would waste two characters one character (I can use @ operator, after all) and would make resulting Base64 look less awesome.

Konrad Borowski

Posted 2011-01-31T23:33:34.077

Reputation: 11 185

8

Ruby - 63 characters

puts [%w{G d k k n},%w{V n q k c}].map{|l|l.map(&:succ)*''}*' '

Nemo157

Posted 2011-01-31T23:33:34.077

Reputation: 1 891

And even shorter: puts "Gdkkn~Vnqkc".split("").map(&:succ)*'' - 43 – Biketire – 2015-07-07T13:59:51.040

breaks #1, though – John Dvorak – 2013-04-29T05:54:23.320

7

C, 160 chars

Works only on little-endian machines with 4-byte int:

main(){int a='a',b=a/a,c=b+b,f=c+c,g=f+f,i=g+g,j=i*i,k=j*j,m=a+g+b+c,n=m+b+c;int p[]={a+g-b+(a+f)*j+m*k*(j+b),n+i*c*j+k*(n+g+n*j),a+i+b+m*j+(a+f-b)*k};puts(p);}

Satisfies all three rules.

grep

Posted 2011-01-31T23:33:34.077

Reputation: 171

1You could just use numeric constants without 0,1,2,7: p[];main(){p={(5*5*5*5*5*64+96696)*(443+5688),(5*3*4*3+4-3)*(66*45*6-6*6-4+3)*8‌​3*(3+4),6544494+36868};puts(p);} -- 111 chars. – None – 2015-06-13T03:44:15.283

1Similar vein (actually tackled the problem in a few different ways before settling on this). x[]={45483*39994-3958,48465*38543-5584,6584695-3333};main(){puts(x);} - 69 characters. I'm sure I could shave a few more off given more time to mathify the literals some more. Was a fun way to spend a couple hours, anyway :) – Cole Cameron – 2015-07-07T19:11:08.570

7

PHP, 28 bytes

Not exactly obfuscated, but very short and obvious :). Showing that even when limiting characters you can make very easy to follow programs. Constraints 1 and 3 followed. Constraint 2 was abused.

<?=str_rot13('Uryyb Jbeyq');

Note that this requires short_open_tag being set, unless you're using PHP 5.4 or higher. Maybe some examples are shorter, but I think that this example is pretty short.

Konrad Borowski

Posted 2011-01-31T23:33:34.077

Reputation: 11 185

7

bash 28 chars:

printf 'p|ɹ°M ο||ǝ%b'"\x48"

p|ɹοM ο||ǝH

alternatively with /bin/echo (18 chars) *) see discussion below.

/bin/echo -e 'p|ɹοM ο||ǝ\0110'

Selftest:

echo "printf 'p|ɹοM ο||ǝ%b' "\x48"" | egrep -i "[^hlwd27eor01]"

Harder than thougth! Tools, for turning Words upside down, the tools think an 'H' or 'o' turned upside down is best displayed as H or o. This would be in conflict with group 1 (Hlwd:27:eor01) respectively 3.

H can be displayed with

echo -e "\0127"

but 01 and 2 are poisoned too. Gee! But the bash-buildin echo has not only the option to display octal ascii values, but hexadecimal too:

echo -e "\x48"

But if we use bash as a programming language, the echo command is part of the program, which not only counts to the character count, but also contains the poisoned characters (hlwd:27:eor01) eho from groups 1 and 3.

So this is moment the echo died. Fortunately, there is printf, which knows "%b" to display .

The r is the only problematic character in printf, and belongs to group 3. Since 'o' is in the last group, we could leave it in Hello and in World, but we can use the omicron ο which looks like an o, or ° &deg;.

Links:

user unknown

Posted 2011-01-31T23:33:34.077

Reputation: 4 210

Would upvote this, but your reputation is too leet. – Konrad Borowski – 2012-04-28T07:18:24.277

@GlitchMr: Now you can - I voted something down, and should be seet 500N. :) – user unknown – 2012-04-28T09:20:29.320

http://dl.dropbox.com/u/63913412/stilltooleet.png. Also, downvoting questions doesn't decrease reputation. Downvoting answers does nevertheless. – Konrad Borowski – 2012-04-28T09:32:51.633

@GlitchMr: Ah, that's it! :) – user unknown – 2012-04-28T12:34:21.280

6

C: 162 characters (excluding unnecessary newlines)

I opted for readability and transparency when writing this.

a[3],b;main(){b=99
+9;b+=b<<8;b=b<<8|
97|4;b=b<<8|64|8;a
[3^3]=b;b=78+33<<8
;b+=87;b=b<<8|35^3
;b=b<<8|64|47;a[5^
4]=b;b=97+3<<8;b+=
99+9;b=b<<8|66|48;
a[6^4]=b;puts(a);}

It satisfies all three requirements.

Fors

Posted 2011-01-31T23:33:34.077

Reputation: 3 020

1I like this, but unfortunately it doesn't satisfy all the rules, because it contains the digit 7, violating rule #3. But it would be easy to get rid of 7. Also by adding a few ints, and adding a few extra parentheses, and adding int puts(int*); to the beginning, it compiles with gcc -ansi -W -Wall only with a single warning: control reaches end of non-void function. – pts – 2013-08-24T07:05:54.813

6

Dis, 102 83 chars

Unrolled the code loop since the letters can be generated with less than five consecutive operations. Saved a few characters by reusing the accumulator value: two l are consecutive , SPACE can be generated from o and d can be generated from l.

*>|||{>|||{>||{{>|{|||{>||{>|{>|||{>||{||{!!>**_!!}|_}!^__}|__>*__}|_}|_>!!|_}!^__!

Old version

^}!>^^_^!__!>_^!^^**_^!^^**_
^_!{**_^__!{>_^__{>>!^_!{**_
^_!>^*_^!^^**_^_^^**_*______
___________>||||{^

With comments below. It is using a sequence of five identical operations to generate all the characters in Hello World: one rotation and four subtractions.

^     (move code pointer to data pointer value '^')
}!>^^ (store 'H' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
!__!> (store 'e' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
!^^** (store 'l' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
!^^** (store 'l' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
_!{** (store 'o' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
__!{> (store ' ' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
__{>> (store 'W' in accumulator)
!     (program termination)
^     (data pointer value used by code pointer jump)
_!{** (store 'o' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
_!>^* (store 'r' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
!^^** (store 'l' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
_^^** (store 'd' in accumulator)
_     (no-op)
*     (data pointer value used by code pointer jump to reach '!' between 'W' and 'o')
________________ (no-ops)
_     (no-op, address '^')
>|||| (rotate data value and perform four subtractions)
{     (print value in accumulator)
^     (move code pointer to data pointer value '^' except for the last jump '*')

Mark Jayxcela

Posted 2011-01-31T23:33:34.077

Reputation: 161

6

JavaScript - 132 characters

(_=(_=[][(f=!!(_='')+_)[3]+(b=({}+_)[(I=-~(z=_-_))])+($=(c=(d=!_+_)[I])+d[z])])())[f[I]+'l'+(a=d[3])+$]("H"+a+'ll'+b+' W'+b+c+'ld')

Breaks rule I

Usage:

  • Paste "javascript: [script]" into browser address bar
  • Make a blank html page, paste the script into a tag

m0sa

Posted 2011-01-31T23:33:34.077

Reputation: 549

If you will use it on this page, whole site will be destroyed because of jQuery. But otherwise nice. – Konrad Borowski – 2012-04-28T17:05:13.673

Why do you think that? The $ variable is (re)assigned, so even if jquery would be loaded the $ would not be a jQuery object anymore. – m0sa – 2012-04-29T09:27:38.520

You can replace 1 by !![]+![] and 0 by ""-"" to don't break rule #2. – HoLyVieR – 2011-02-15T21:13:31.130

Thanks @Bass5098 and @HoLyVieR, I kind of missed the 1 and 0 when minimizing the script. I replaced 0 with z=- and 1 with I=-~z, I could also use ++z, but -~ looks nicer :) – m0sa – 2011-02-16T07:46:19.457

3Huh? !![]+![]? Why not just 4-3? – Timwi – 2011-03-09T01:32:11.083

As already said, I already have the following: I=-~(z=-) - 11 chars. If I would do z=(I=4-3)-I - I also get 11 chars. – m0sa – 2011-03-09T02:12:36.027

4@Timwi: More obfuscation – Thomas Eding – 2011-08-05T23:06:12.370

Breaks both rule 1 and 2. You are using the number 1 for the arrays. – Kevin Brown – 2011-02-04T20:30:16.340

6

C (94)

On little Endian machines:

main(){int i[]={1819043144,((0x1bc5c81b|1<<0x14)*4)+3,0xa646c00|(0x39<<1),0};printf("%s",i);}

Violates rule II, but satisfies the rest.

Hoa Long Tam

Posted 2011-01-31T23:33:34.077

Reputation: 1 902

5

JavaScript, 66 chars

Another JavaScript solution, this time breaking rule #2.

top[(U=unescape)('a%6cert')](U('%48e%6c%6co %5'+(6+1)+'or%6c%64'))

The above follows the concept behind hallvabo's answer. Before I caught on to that approach, I had the arguably-more obfuscated version:

top[8680439[n='toString'](30)]((16+1)[n](z=8*4)[u='toUpperCase']()
+15960[n](33)+'o '+z[n](33)[u]()+1155505[n](36))

which also breaks rule #2 and comes in at 114 chars. (Remove the carriage return in this second solution as it is just there for readability.)

DocMax

Posted 2011-01-31T23:33:34.077

Reputation: 704

@MateenUlhaq I always read it as Runescape, and I only played for a year over a decade ago... What's wrong with me? – Mwr247 – 2015-09-16T16:30:13.753

4I read that as Runescape. – Mateen Ulhaq – 2011-11-01T23:43:52.163

5

Bash, 24 20 characters

You need to have the "bsdgames" package installed.

rot13<<<Uryyb\ Jbeyq

Thanks gnibbler :)

PleaseStand

Posted 2011-01-31T23:33:34.077

Reputation: 5 369

5

Haskell, 38

Constraints 1 and 3 followed.

main=putStr$map succ"G\x64kkn\USVnqkc"

Thomas Eding

Posted 2011-01-31T23:33:34.077

Reputation: 796

5

PostScript, 41 chars

<64><~+BNK%C]~><48656c6c6f>3{print}repeat

Usage: $ gs -q -dNOPROMPT -dNODISPLAY filename.ps

KirarinSnow

Posted 2011-01-31T23:33:34.077

Reputation: 801

1you could also run it like: gsnd -q -- filename.ps – luser droog – 2011-11-24T03:47:09.080

4

Fourier, 39 bytes

8*9a99^^a+6^aa~q+3a33va86^aq+3a+3aqa-8a

Fourier is always obfuscated. This follows all of the rules.

Breakdown:

8*9a    Set the accumulator to 8, multiply it by 9, and print the 
        corresponding ASCII code.

99^^a   Set the accumulator to 99, increment it twice, and print the
        corresponding ASCII code.

+6^aa   Add 6 to the accumulator, increment it, and print the
        corresponding ASCII code twice.

~q      Set the variable q to the current value of the accumulator.

+3a     Add 3 to the accumulator and... I think you get the idea.

33va    Set the accumulator to 33, decrement it, and print ASCII.

86^a    Yes, okay, I think it's obvious by this point.

q+3a    Set the accumulator to the value of q (earlier set to 108),
        add 3, and print ASCII.

+3a     ...

qa      Invoke q again and print ASCII.

-8a     Subtract 8 from the accumulator and print ASCII.

This could maybe be refined a little.

jqblz

Posted 2011-01-31T23:33:34.077

Reputation: 2 062

Woah, I've only just realised that someone else has used Fourier :D Nice one, +1 – Beta Decay – 2016-05-10T13:30:03.180

4

C (79*12=948)

Using no strings or characters, and only the number one.
I was a little creative with the bitshifts and subtractions to make them fit onto at 80x12 console. Ask me in the comments if you can't figure it out.

int i[(1+1)+1],*I=i;main(){*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)*(111-(((1<<(1<<(1+1)))-
1)^(1<<1+1))))))*(((((1<<(1+1))*(1<<(1+1)))*(1<<1)-((1<<(1+1))|1))*(((((1<<(1<<
(1+1)))-1)^(1<<1+1))*((((1<<(1<<(1+1)))-1)^(1<<1+1))-1)*((((1<<(1<<(1+1)))-1)^(
1<<1+1))-1)+(((1<<(1<<(1+1)))-1)^(1<<1+1)))-((((1<<(1<<(1+1)))-1)^(1<<1+1))*(((
(1<<(1<<(1+1)))-1)^(1<<1+1))-1)+1)))+((1<<1)|(1<<(1+1))))+(1<<1));*I++=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<<2)*(1<<2)*
((1<<(1+(1<<(1-1))))-1))*((((1<<(1<<(1+1)))-1)^(1<<1+1))-1)*((((1<<(1<<(1+1)))-
1)^(1<<1+1))-1)+(1<<1)+1));*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));puts(i);}

YoYoYonnY

Posted 2011-01-31T23:33:34.077

Reputation: 1 173

3

Befunge-93, 8x6 grid

I know I'm a little late to the party, but I saw the Befunge-93 solutions and decided to see how small I could make one while still following all the rules.

"[uixn"v
Qv:,-9<"
v_vQQQ^)
>9+,>:|f
^Q>>^Q@"
^"?ncu"<

MDS

Posted 2011-01-31T23:33:34.077

Reputation: 61

3

Minecraft command, 776 bytes

Let's do something explosive. These commands (break rule #1) generate "Hello World" made by TNT in a Minecraft superflat world.

Screenshot: enter image description here

/tp 33 4 3
/fill ~4 4 5 ~4 4 9 TNT
/fill ~4 4 5 ~6 4 5 TNT
/fill ~4 4 9 ~6 4 9 TNT
/fill ~6 4 5 ~6 4 6 TNT
/fill ~5 4 ~4 ~6 4 ~4 TNT
/fill ~8 4 3 ~8 4 9 TNT
/fill ~34 4 3 ~34 4 9 TNT
/fill ~38 4 3 ~38 4 9 TNT
/tp 3 4 3
/fill ~44 4 6 ~44 4 9 TNT
/fill ~54 4 3 ~54 4 9 TNT
/fill ~58 4 6 ~58 4 9 TNT
/tp 56 4 3
/fill ~4 4 6 ~4 4 6 TNT
/fill ~4 4 9 ~4 4 9 TNT
/fill ~8 4 ~4 ~8 4 ~4 TNT
/tp 66 4 3
/fill ~4 4 6 ~4 4 6 TNT
/fill ~4 4 9 ~4 4 9 TNT
/fill 33 4 3 33 4 9 TNT
/fill 34 4 6 34 4 6 TNT
/fill 35 4 3 35 4 9 TNT
/fill 43 4 3 43 4 9 TNT
/fill 45 4 6 45 4 9 TNT
/fill 46 4 6 46 4 6 TNT
/fill 46 4 9 46 4 9 TNT
/fill 53 4 9 56 4 9 TNT
/fill 53 4 3 53 4 9 TNT
/fill 55 4 3 55 4 9 TNT
/fill 59 4 6 59 4 9 TNT
/fill 63 4 6 63 4 9 TNT
/fill 65 4 6 65 4 6 TNT
/fill 69 4 6 69 4 9 TNT

Bonus: After explosion enter image description here

Colera Su

Posted 2011-01-31T23:33:34.077

Reputation: 2 291

Why are you teleporting? Can't you just increase the relative coordinates in the fill command? – Luca H – 2017-11-23T15:22:31.323

@LucaH I must avoid number 0, 1, 2 and 7. – Colera Su – 2017-11-23T15:23:57.543

Oh man, I feel stupid... It's not like I didn't read the challenge, I just forgot about it... Thanks for clarifying! – Luca H – 2017-11-23T15:30:53.357

Wouldn't 1 work instead of TNT? – NieDzejkob – 2018-12-09T18:24:36.390

@NieDzejkob he has to avoid 1 – Sagittarius – 2019-12-24T21:43:46.180

@Sagittarius Okay, then 3. – NieDzejkob – 2019-12-24T22:42:52.763

3

Perl

my @txt = (
  -38,
  -9,
  -6/3,
  -6/3,
  3/3,
  -468/6,
  -69/3,
  3/3,
  4,
  -6/3,
  -30/3,
);

$\ = "\n";
print map{pack 'C', 330/3 + $_} @txt;

I would have been able to do it without any of the of the "forbidden" characters, except there is no easy way, that I can think of to enable the use of anything other than print or die, without using, at least one of the "forbidden" characters.

use feature 'say' # e
use 5.010; # 10
BEGIN{ $^H{'feature_say'} = !'' } # eh
use Modern::Perl # ero

say ...
use IO::Handle; # e
STDOUT->say( ... )

So the only way is to load a module, that internally loads IO::Handle. Which will indirectly enable the use of STDOUT->say.

Brad Gilbert b2gills

Posted 2011-01-31T23:33:34.077

Reputation: 12 713

3

Befunge-93 - 57 characters

554553943346**,"b"3+,366**::,,3+::,48*,699*+,,+,**,**,+,@

Should meet all three requirements.

MiffTheFox

Posted 2011-01-31T23:33:34.077

Reputation: 631

3

><> (Fish), 80 bytes

Wait, I'm not the only one that uses ><>?

33-aa*:8+:6+:3-8a*843--+48*aa*:b+$8+::843---89*ab*43-+543-p33-43-.
 :?!;_33-43-.

Thanks to @Sp3000 for a method to print without "o".


Try it here.

clap

Posted 2011-01-31T23:33:34.077

Reputation: 834

Quite a few people use it, there is even a question for building interpreters.

– Kevin Brown – 2015-07-06T17:41:31.250

Actually, printing without o is perfectly possible - you just need to place an o somewhere with p – Sp3000 – 2015-07-06T17:53:39.180

3

C, ??? characters

Not very heavily golfed, but I was going more for obfuscation anyway. Your mileage may vary, you'll probably have to do some crap to get the hardcoded address of printf right. No forbidden characters. You could easily shorten up a lot of stuff by not using different numbers of underscores as variable names and instead using 1 letter things, but I think it looks uglier this way.

int main()
{
    int(*f)(int*,...)=467846797-333333333;
    int _=9-8,__=_<<_,___=__<<_,____=___<<_,_____=____<<_,______=_____<<_,$=_|((_____|____)<<__);

    f("%c", $+(_|__|___)^______);
    f("%c", $+(___));
    f("%c", $+(_|__|____));
    f("%c", $+(_|__|____));
    f("%c", $+(__|___|____));
    f("%c", ______);
    f("%c", $+(__|___|_____)^______);
    f("%c", $+(__|___|____));
    f("%c", $+(_|_____));
    f("%c", $+(_|__|____));
    f("%c", $+(_|__));
    f("%c", ______|_);
}

Wug

Posted 2011-01-31T23:33:34.077

Reputation: 1 607

2

Befunge-93, 49 45 bytes

Thanks to James Holderness for saving me two four bytes! (I don't know how to count)

Why is this 7-year-old challenge in the front page? I don't know! What I do know is that I came up with an answer before I realized the thread is ancient, so here goes:

554**:8+:6+:3-:83*-48*"q"2-:3-::7-"F"2+>:#,_@

Works in complete disregard to the third rule, but that's fine because rules are made to be broken anyway it meets 1 and 2.

Try it online!

osuka_

Posted 2011-01-31T23:33:34.077

Reputation: 391

2

C, 2066 bytes

NOTE: Little-endian only. (That should give readers a hint at what this strange code does.)

Certainly not going to win, but it's kinda neat anyway (IMO). Satisfies first and third requirements.

int _(){return 0;}int __(_){return(1+_);}int _____(_
,__){return(_+__);}int ______(_,___){return(_*___);}
int ___(_,__){return _<<__;}int main(){int ____[4]={
___(_____(______(__(___(__(_()),__(_()))),______(__(
___(__(_()),__(__(___(__(_()),__(_())))))),______(_\
____(___(______(__(___(__(_()),__(___(__(_()),__(_()
))))),__(___(__(_()),__(_())))),__(___(__(_()),__(_(
))))),__(__(__(___(__(_()),__(__(_()))))))),__(___(\
__(__(__(___(_____(___(__(_()),__(___(__(_()),___(_\
_(_()),__(_()))))),__(__(__(___(__(_()),___(__(_()),
__(_()))))))),___(__(___(__(_()),__(_()))),__(_())))
))),__(___(__(_()),__(_())))))))),___(__(_()),___(__
(_()),__(_())))),(_____(___(__(_()),__(_())),__(_())
))),______(_____(___(__(___(_____(___(_____(___(__(_
()),___(__(_()),___(__(_()),__(_())))),__(__(__(___(
__(_()),__(___(__(_()),__(_())))))))),___(__(_()),__
(_()))),__(___(__(_()),__(_())))),___(__(_()),__(_()
)))),___(___(__(_()),__(_())),__(_()))),__(___(__(_\
__(__(_()),__(_()))),__(_())))),(_____(___(______(_\
____(___(__(___(__(___(__(___(__(_()),__(_()))),__(_
()))),__(_()))),___(___(__(_()),__(_())),__(_()))),\
__(___(__(_()),__(_())))),__(___(______(__(___(__(_(
)),__(_()))),______(__(___(__(_()),___(__(_()),__(_(
))))),__(___(__(___(__(_()),__(_()))),__(_()))))),__
(_())))),___(__(_()),__(_()))),(__(___(__(_()),___(\
__(_()),__(_())))))))),______(__(__(__(___(__(_()),\
__(___(__(_()),__(_()))))))),______(__(______(___(__
(_()),__(_())),______(__(___(__(_()),__(_()))),__(_\
__(__(_()),___(__(_()),___(__(_()),__(_())))))))),__
(___(__(___(______(__(___(__(___(__(___(__(___(__(_(
)),__(___(__(_()),__(_()))))),___(__(_()),__(_()))))
,__(_()))),__(_()))),__(______(___(__(_()),__(_())),
______(__(___(__(_()),__(_()))),______(__(___(___(__
(_()),__(_())),__(_()))),__(___(__(___(___(__(_()),\
__(_())),__(_()))),__(___(__(_()),__(_())))))))))),\
___(__(_()),__(_())))),__(_()))))),__(___(__(___(__(
___(___(__(_()),__(_())),__(_()))),___(___(__(_()),\
__(_())),__(_())))),__(___(___(__(_()),__(_())),__(_
())))))};printf("%s",____);return(______(_(),_()));}

pr1268

Posted 2011-01-31T23:33:34.077

Reputation: 121

1Yes, but the original problem statement stipulated that answers "...must meet at least two of the following [3] requirements." Mine does this. – pr1268 – 2017-01-27T18:18:25.073

1@pr1286 Sorry, my bad, goes to show everyone is capable of misreading questions. Anyway the welcoming to the site still stands. – 0 ' – 2017-01-27T22:45:16.703

2Oh my, CFuck? I didn't know such a thing existed. – Matthew Roh – 2017-03-31T08:05:30.420

2

"C++"

329 bytes including newlines and extraneous backslashes on newlines (which are 7 bytes).

C++ is in scare quotes because of all the implementation dependent details (gcc, appropriate linux kernel, x86). Doing this challenge in C++ is difficult because right off the bat #include is forbidden.

int main(){int r[]={1819043144,1866980911+1000000,164353511+10000011};asm("sub \
$31,%%esp\nsub $1,%%esp\nmov $4,%%eax\nmov %%eax,0x1C(%%esp)\nmov %0,%%eax\nmov\
 %%eax,0x18(%%esp)\nmov %1,%%eax\nmov %%eax,0x14(%%esp)\nmov $1,%%eax\nmov %%ea\
x,16(%%esp)\npopa\nint $0x80"::"r"(r),"r"(9+3):"%eax","%ebx","%ecx","%esi",
"%ebx");}

I think there's technically a bit of undefined behavior here as well, since I don't tell gcc all the registers I clobber (Things like %edx cannot be referred to directly) which is unfortunate.

Miss Blit

Posted 2011-01-31T23:33:34.077

Reputation: 121

2

17, 80 bytes

It isn't much bigger than the normal hello world for 17 due to it using base 17. I have to break rule 3 since the "main" function for 17 is 777, so all 17 programs must contain 7, so I am following the other 2.

777{44 $ 5g $ 66 : : $ $ 69 : $
22 4 - $ 52 $ $ 6c $ $ 5f $ 22 3 - $ a $ - @}

Hugh Williams

Posted 2011-01-31T23:33:34.077

Reputation: 51

Welcome to PPCG! Nice first post! Is that your language as well? – Rɪᴋᴇʀ – 2018-02-04T18:33:27.037

Thanks, yes, I made 17, though not for this challenge – Hugh Williams – 2018-02-04T18:42:07.573

2

JavaScript 155 142 122

This satisfies ALL the rules provided.

_=(!!4+"")[5-4],3[C="c\x6fnst"+_+"uct\x6f"+_][C]("a\x6c\x65"+_+
"t('\x48\x65\x6c\x6c\x6f \\x5"+-~6+"\x6f'+_+'\x6c\x64')")()

WallyWest

Posted 2011-01-31T23:33:34.077

Reputation: 6 949

1You can do -~[] to get 1. Also, using my approach with constructor twice instead of going via []["sort"] saves you even more: 3[$="c\x6fnst"+(_=(!+[]+"")[-~[]])+"uct\x6f"+_][$] gets you Function and saves 14 chars. – FireFly – 2014-01-20T23:08:29.210

@FireFly, nice spotting... All rules now done in 142 characters... I had to account for the "W"... Damn hard character to get with the restrictions... – WallyWest – 2014-01-21T00:54:36.617

1I took the liberty to edit the post with some more changes, I hope you don't mind... get boolean true via !!4, the number 1 via 5-4, and by making use of double-escaping (once because of the string literal, and then a second time due to the string literal inside the alert in the function body) we could simply concatenate the -~6 into the string instead of having to unescape. – FireFly – 2014-01-21T12:31:06.950

@FireFly As Humphrey Bogart said in Casablanca "This looks like the start of a beautiful friendship." :)

But I have to ask, what the hell is the use of the 3? I see ',3[C="' but don't understand the number's importance in the code? – WallyWest – 2014-01-21T22:15:37.293

1Haha. The 3 replaces [] in your code because both numbers and arrays (like all other types constructed via constructor functions) inherit a 'constructor' property from their prototype. It doesn't matter which of these that we use, so I switched to 3 since it saves a character. In the end, it's just a stepping stone to reach Function (as the constructor of the Number function, i.e. Number.constructor). If you want to discuss further we should probably use the chatroom instead... – FireFly – 2014-01-21T22:33:49.417

I'm having trouble finding the chatroom... Where the hell is that? – WallyWest – 2014-01-21T23:01:55.867

http://chat.stackexchange.com/rooms/240/code-golf – FireFly – 2014-01-21T23:21:05.927

2

Sclipting, 8 characters

낆녬닆묠녶뭲닆밄

Of course, this doesn’t contain any of the restricted characters.

(This answer is technically cheating because Sclipting was invented after this challenge was posted.)

Timwi

Posted 2011-01-31T23:33:34.077

Reputation: 12 158

Violates rule three: Contains 7 twice. http://i.imgur.com/SlE1XOZ.png

– Metoniem – 2017-02-21T10:15:46.420

2

C (333 characters)

I decided to emphasize on obfuscate, with golf secondary. This is written entirely in C, and it only breaks rule #2 laid out in the original post. It also breaks I don't know how many C programming rules...

int main(){
int a[]={0x0a004000,0x0fc00109,0x04e01500,0x09e08400,0x03506a61,0x00f00000,0x0f010ae3,0x05f0fb16,0x0beb0030,0x0130a300,0x0bc00500,0x00000000};
int b,c=13,e,x,an;
goto _XX;
_00:an=e,x^=x,b^=b;
_10:if(!an)goto _XX;
b|=!!(an&0xf)<<x++;
an>>=4;
goto _10;
_XX:if(c<=1)goto _40;
if(c<13)printf("%c",b);
e=a[13-c--];
goto _00;
_40:return 0;
}

Ben Richards

Posted 2011-01-31T23:33:34.077

Reputation: 291

2

Haskell (genetic programming), 306 chars

This is not really genetic programming. It's just a pun. The only violation of the rules is the function name putStrLn, which is a builtin I/O function, and follows the spirit of the rules even if it doesn't quite match the letter.

a=(['~','}'..]!!)
t=(succ)
y= \x->x-x
c=(y)$3
g=((t.t$c)*)
q=(a.g.t.g.t.g.g.t.g.t$c):(a.t.g.g.g.t.g.t$c):(a.g.t.g.g.g.t$c):(a.g.t.g.g.g.t$c):(a.t.g.t.g.t.g.t$c):(a.g.t.g.t.g.t.g.t.g.g.t$c):(a.t.g.t.g.t.g.g.g.t$c):(a.t.g.t.g.t.g.t$c):(a.g.g.t.g.t$c):(a.g.t.g.g.g.t$c):(a.g.t.g.g.t.g.t$c):[]
main=putStrLn$q

archaephyrryx

Posted 2011-01-31T23:33:34.077

Reputation: 1 035

+1. But what's the significance of the parens around y on line 4? – YoYoYonnY – 2016-01-30T00:15:34.143

1None whatsoever. I suppose you could shave off a couple extra chars, but this isnt a competitive answer in any case. – archaephyrryx – 2016-01-30T04:58:48.980

2

Golfscript 18 bytes

New code (saved 4 bytes thanks to Martin Büttner):

'Jgnnq"Yqtnf'{((}%

Old code (22 bytes):

"Jgnnq\"Yqtnf"{1 1+-}%

It basically preforms a Caesar cipher two times. Because you can't have a 2 in your code, I just used 1+1. It doesn't break any of the rules.

Loovjo

Posted 2011-01-31T23:33:34.077

Reputation: 7 357

(( (decrement twice) is shorter than 1 1+-. Also, does GolfScript support ' to delimit strings? In that case you wouldn't need to escape the " in the string. – Martin Ender – 2015-03-09T12:47:39.140

2

Clip, 17 chars

All rules followed.

m+'☻`"Fcjjm▲Umpjb

This just means, in a more readable form, map (add 2 to ascii value) "Fcjjm▲Umpjb".

bcsb1001

Posted 2011-01-31T23:33:34.077

Reputation: 450

2

J (23 characters)

a.{~<:a.i.'Ifmmp!Xpsme'

It doesn't beat Golfscript, but I figure J deserves an entry anyway. (This is just a minor tweak of the second example on the J vocabulary page for the word i..

r.e.s.

Posted 2011-01-31T23:33:34.077

Reputation: 2 872

2

C Program (83 Characters)

#include<stdio.h>
void main(){printf("%ce%c%co %cor%c%c",104,108,108,119,108,100);}

Aniket Suryavanshi

Posted 2011-01-31T23:33:34.077

Reputation: 121

1This program satisfies rules 1 and 3. – Aniket Suryavanshi – 2012-05-01T17:46:26.963

2

Pyth - 24 bytes. All 3 rules

Noticed there wasn't a Pyth entry yet (probably because the question's been around longer), but wanted to add one for completion's sake!

V"Qnuux)`x{um"=+kC-CN9;k

Try it out.

Explanation

# basically just a -9 int value translation on each character

V"Qnuux)`x{um"        ;     # for each chr (N) in the string "Qnuux)`x{um"
              =+k           #   append to k (initially an empty string)
                 C          #   the character value of the integer
                  -  9      #   that results from subtracting 9 from
                   CN       #   the integer value of the current chr (N)
                       k    # print k

Taylor Lopez

Posted 2011-01-31T23:33:34.077

Reputation: 411

2

pb, 72 bytes

b[69+3]>b[101]>b[108]>b[108]>b[111]>>b[86+1]>b[111]>b[114]>b[108]>b[100]

Violates rule II

Erik the Outgolfer

Posted 2011-01-31T23:33:34.077

Reputation: 38 134

oh hey, someone else wrote a pb answer! (i'm a little late) – undergroundmonorail – 2017-09-08T06:13:36.567

@undergroundmonorail hey you're back! (?) – Erik the Outgolfer – 2017-09-08T09:16:08.017

i check this site every day... has it really been that long since i posted anything? o_o – undergroundmonorail – 2017-09-09T05:55:21.613

2

Java, 88

I'm surprised, nobody used java.

System.out.print\u006Cn("\u0048e\u006C\u006Co "+((c\u0068ar)(11*8-1))+"or\u006C\u0064");

user902383

Posted 2011-01-31T23:33:34.077

Reputation: 1 360

>

  • this is not a complete function; 2) byte count is wrong. See my answer.
  • < – Andrey – 2017-01-18T08:04:34.140

    @Andrey 1) it won't compile, but you can run it in jshell under java 9, as for 2 i fixed it. – user902383 – 2017-01-18T08:17:34.863

    2

    C 61 Bytes

    main(){printf("%ce%c%co %cor%c%c",9*8,108,108,86+1,108,100);}
    

    Went as small as possible on this guy. Hopefully y'all can see that. This breaks rule 2.

    bioweasel

    Posted 2011-01-31T23:33:34.077

    Reputation: 307

    The rules say you have to comply with two of the three rules. I follow rule 1 and 3 – bioweasel – 2016-10-20T19:47:11.977

    1

    Perl 6, 86 bytes

    I chose to break the second rule.

    my &a={$*IN.gist.substr($_,1)};say a(4)~"e"~a(8)~a(8)~"o "~a(36-9).uc~"or"~a(8)~a(8-1)
    

    Calling gist on $*IN (neither of which has any forbidden characters) gives this string:

    IO::Handle<IO::Special.new(what => "<STDIN>")>(opened, at octet 0)
    

    So I pieced together parts of this string to get the desired message. There is no capital W, but luckily uc doesn't have any forbidden characters either.

    bb94

    Posted 2011-01-31T23:33:34.077

    Reputation: 1 831

    1

    Pushy, 16 bytes

    Note that this solution is non-competing as the language postdates the challenge.

    `Ifmmp!Xpsme`Kt"
    

    Try it online! Here's the basic rundown:

    `Ifmmp!Xpsme`     \ Push these character codes to the stack
                 Kt   \ Subtract one from all
                   "  \ Print as string
    

    The main string is just Hello, World!, with all its characters moved 1 space up the ASCII table - hence why we subtract 1 from all the character codes.

    This solution satisfies the first and third criteria - it would even match the second, if not for that single e at the end of the string.

    FlipTack

    Posted 2011-01-31T23:33:34.077

    Reputation: 13 242

    1

    ><> (Fish), 39 bytes

    'Tqxx{,c{~xp'bv
    ii*p:?!;{c-þi+>aa*b+b
    

    I wanted to add a shorter solution that does not violate any rules. First line adds each letter of the encoded 'Hello World' and initializes the 'counter'.

    The second line loops, outputting the next letter until counter hits 0. The thorn is overwritten with 'o', ><>'s output instruction once every loop, but that doesn't hurt anybody.

    To get around the inability to use '1' while saving characters, I used the operation 'i', which tries to read stdin and pushes '-1' to the stack when it finds nothing there.

    Joseph J

    Posted 2011-01-31T23:33:34.077

    Reputation: 11

    I like that you stayed within the rules more so than the earlier one. – Abraxas – 2017-01-17T05:54:05.867

    1

    Java, 71 bytes

    Violates restriction #2, but doesn't contain [HLWDhlwd27].

    String m(){return String.format("\u0048e\154\154o %cor\154\144",86+1);}
    

    OR to print to stdout (the same length)

    voi\u0064 m(){System.out.printf("\u0048e\154\154o %cor\154\144",86+1);}
    

    Andrey

    Posted 2011-01-31T23:33:34.077

    Reputation: 121

    task is to "Create the shortest possible obfuscated program that displays the text "Hello World"." and you are not displaying it – user902383 – 2017-01-18T08:19:45.110

    @user902383 function can use its return value for output. Anyway, I've updated the answer. – Andrey – 2017-01-18T08:53:02.520

    1

    PHP, 36 34 bytes

    not the shortest PHP answer, but unique enough for a post.

    H<?=hhhh3lll^zsspw_gz^wwwwdddd,ld;
    

    and

    H<?=hhhh3lll^zsspw_gz^wwwwdddd?>ld
    

    violate rule #1.

    There are of course less "violent" operand combinations; but if you must sin, make it worth it!

    other versions:

    for(;$c="Fkbba.Ya|bj"[$i++];)echo$c^_^Q;    # 40 bytes, violates rules #1 and  #2
    for(;$c="Fkbba.Ya|bj"[$i++];)print$c^_^Q;   # 41 bytes, violates rule #2
    <?="Fkbba.Ya|bj"^___________^QQQQQQQQQQQ;   # 41 bytes, no violation
    <?=____YzffR__^TQQQF3nnQQQ^Ckbbpi_gqbj;     # 39 bytes, no violation
    H<?="kbba.Ya|"^________^QQQQQQQQ,ld;        # 36 bytes, violates rule #1
    

    Titus

    Posted 2011-01-31T23:33:34.077

    Reputation: 13 814

    1

    Octave, 103 bytes

    This one adheres to all three rules and should be fairly obfuscated.

    Strings can be created in Octave by concatenating a vector with a string. So, why not concatenate it with the string 'PPCG'? I added ... so that it's possible to read it without scrolling to the side. It can be removed along with the line break.

    ['PPCG',3336,3848,5384,6664,584,5896,584,869,364,364,3848,364,4463,544,343,343, ...
    3336,4463,3954,3948,356]
    
    ans = Hello World
    

    I'll post an explanation for this in one week. Until then, try figuring it out by yourself. Note, this doesn't work on any of the online interpreters I tried, but it works fine on GNU Octave 4.2.0.

    Stewie Griffin

    Posted 2011-01-31T23:33:34.077

    Reputation: 43 471

    Just curious, do you have any idea why the online interpreters output differently? (I got PPCGHHelllo WWorld from TIO) – user41805 – 2017-01-27T18:25:06.877

    I'm guessing they can't handle ASCII control characters, but I'm not sure... – Stewie Griffin – 2017-01-27T18:31:27.333

    Aah, the famous backspace, nice idea :) – user41805 – 2017-01-27T18:38:05.017

    But where's the backspace? :-P – Stewie Griffin – 2017-01-27T19:08:10.587

    1

    Javascript 54

    (Violates only rule 3)

    c="c\x6fnst\x72uct\x6f\x72",f=""[c][c],f("a\x6c\x65\x72t(\"\x48\x65\x6c\x6c\x6f \x57\x6f\x72\x6c\x64\")")()

    Test if any character of rule 1,2 contained

    /[hlwdeor01]/ig.test('c="c\\x6fnst\\x72uct\\x6f\\x72",f=""[c][c],f("a\\x6c\\x65\\x72t(\\"\\x48\\x65\\x6c\\x6c\\x6f \\x57\\x6f\\x72\\x6c\\x64\\")")()') // false

    C5H8NNaO4

    Posted 2011-01-31T23:33:34.077

    Reputation: 1 340

    1

    Pyt, 161 bytes

    é⎶⁻Đ²ř₊↔Áŕŕá↔ƖǰƇ5!Ś!!ɓąžƩ3*Ḟ533/Ɩ»/⎶Đąµ+ĐąҏҏžΠ-3Ḟ-Ƈ5³ĐðŚƩ-533/Ɩ»²+ƇĐ533/Ɩ»3*⁺ɓƇ84*Ƈ9²3!+Ƈ6⁺ɓƇ9⬠3-Ƈ533/Ɩ»Đ³⇹⁺!‼⁺⁺533/Ɩ»*⁰⁰533/Ɩ»/Ḷ⎶533/Ɩ»/533/Ɩ»³+⇹ŕƇ6Ć533/Ɩ»⁵-Ƈáǰ
    

    Try it online!

    I'd say just the language itself obfuscates it, but I tried to do this in as much of a roundabout way as possible

    FantaC

    Posted 2011-01-31T23:33:34.077

    Reputation: 1 425

    1

    APL (NARS200 dialect), 154 character

    ((⍵⍴⍨∆+⌊√⍵)⊤⌈⍺+○∆×⍺*⍙)\⎕AV[⍙-⍨⍵+(+/⍳∆-⍙-⍺)+,⍵⌽(⍺×⍙),⍙⌽((⍵×⍳⍺)+(⍺⍴⍺+⍺)⊤⌊○(⍺×⍺)+∆*⍙),[÷⍺]((⍵+⍺×⍺)+(⍺⍴⍵-⍨⍺×⍺)⊤⌈(((∆←+/⍳⍺)*⍵+⍙)÷!⍙)-⍺*⍙)-⍙*(⍵-⍙←+/⍳⍵←√⍺)+⍳⍺←4]
    

    (However, this outputs HELLO WORLD)

    One character shorter than marinus' APL approach, and it only uses a single digit, and two (English) letters.

    I wrote this originally in Jan 2012, but just searched for 'obfuscated hello world' today :-)

    turnip

    Posted 2011-01-31T23:33:34.077

    Reputation: 11

    1

    Ruby, 46 bytes

    Aims to match all rules, unlike the other Ruby answers that only match 2. Based on @Nemo157's original answer and subsequent improvement suggestions, but uses succ twice to avoid breaking rule 1.

    Note that the TIO link creates a string and compares it to a regex (proving that it matches all the rules) and then evals it, instead of just running the code directly. Running it directly will still work, of course.

    $><<"Fcjjm Umpjb".gsub(/[a-z]/i){$&.succ.succ}
    

    Try it online!

    Ruby, 31 bytes

    Same technique, but using tricks with tr to make it shorter than the other Ruby answers. (Unfortunately, tr causes it to break rule 2.)

    puts"Fcjjm Umpjb".tr'A-x','C-z'
    

    Try it online!

    Value Ink

    Posted 2011-01-31T23:33:34.077

    Reputation: 10 608

    1

    Help, Wardoq!, 1 byte, Rules #2 and #3

    l
    

    This esolang has a 1-byte solution for most spellings of Hello, World.

    VFDan

    Posted 2011-01-31T23:33:34.077

    Reputation: 173

    1

    ~-~!, 191

    Not the shortest but there's no entry in this language:

    '=~~~:''=~~~~:'''=~~~~~:@~~,'',',':@''',''',''+~:@'',',',':@'',',',':@''',''',''+<''',~~+~>:@'','',~~:@'',~~,<''',~~>+'+'':@''',''',''+<''',~~+~>:@''',''',''+<<'+''>,~~>:@'',',',':@''',''',''
    

    Note it's untested due to the unimplemented state of ~-~!

    Doesn't break any of the rules.

    cjfaure

    Posted 2011-01-31T23:33:34.077

    Reputation: 4 213

    1

    (K+R)eg, 16 bytes

    1 byte shorter than the accepted solution (GolfScript).

    Jgnnq\"Yqtnf(;;'
    

    This encodes the string by adding all characters by 2.

    user85052

    Posted 2011-01-31T23:33:34.077

    Reputation:

    1

    k4/q (20)

    meets all rules

    valid as either k4 or q

    "c"$"Qnuux)`x{um"-9f

    Aaron Davies

    Posted 2011-01-31T23:33:34.077

    Reputation: 881

    1

    naz, 80 bytes

    9a8m1o9a9a8a3a1o6a1a1o1o3a1o0m9a4m8a1o9s3s1o3m9s1o9a9a6a1o3a1o6s1o8s1o0m4a8m1a1o
    

    Breaks rule 2 only.

    sporeball

    Posted 2011-01-31T23:33:34.077

    Reputation: 461

    1

    W d, 10 bytes

    Glad that none of the characters appear in the compressed source.

    ,├▌♥♀√╫◙g5
    

    user85052

    Posted 2011-01-31T23:33:34.077

    Reputation:

    1

    Smalltalk (18 characters):

    "C`ggjRjmg_"rot:5
    

    Note: Between the two words, there's a non-printable character (escape - ASCII character 27).

    It only breaks rule 2.

    Toothbrush

    Posted 2011-01-31T23:33:34.077

    Reputation: 3 197

    1

    JSFuck - 18511 chars (so small)

    [][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[+[]]+(![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+!+[]]]+([][[]]+[])[+[]]+([][[]]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+(+(!+[]+!+[]+[+!+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[+!+[]])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]])()([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+!+[]]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+(+(!+[]+!+[]+[+!+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[+!+[]])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]])()(([]+[])[([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()[+[]])[+[]]+(!+[]+!+[]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]])+[])+(+(+!+[]+[+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+[+!+[]])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+!+[]]]+(+(!+[]+!+[]+!+[]+[!+[]+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[!+[]+!+[]+!+[]])+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([][[]]+[])[!+[]+!+[]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+!+[]]]+([][[]]+[])[+[]]+([][[]]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+(+(!+[]+!+[]+[+!+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[+!+[]])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]])()([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+!+[]]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+(+(!+[]+!+[]+[+!+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[+!+[]])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]])()(([]+[])[([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()[+[]])[+[]]+(!+[]+!+[]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]])+[])+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]])()
    

    rahulroy9202

    Posted 2011-01-31T23:33:34.077

    Reputation: 315

    1

    VBScript, 58 Bytes

    Only breaks rule 2:

    msgbox unescape("%48e%6C%6Co%"&19+1&"%5"&(6+1)&"or%6C%64")
    

    AutomatedChaos

    Posted 2011-01-31T23:33:34.077

    Reputation: 291

    1

    FSharp, 83

    ("(())(((()("|>String.mapi(fun i c->" =CCG/GJC<".[i]+c)).Insert(5," ")|>printf "%s"
    

    Breaks the second rule to use some F# keywords.

    sideproject

    Posted 2011-01-31T23:33:34.077

    Reputation: 21

    1

    T-SQL, 75

    PRINT RTRIM(0x48656C6C6F+CAST(CAST(35559904013411+1AS BIGINT)AS BINARY(6)))
    

    Try the SELECT version in SQL Server 2008 here.

    This code thoroughly violates rule #2. It uses hex ASCII values implicitly cast into a varchar type to adhere to rule #1. I had to use the decimal representation of the hex number representing the last six characters to get around rule #3.

    Muqo

    Posted 2011-01-31T23:33:34.077

    Reputation: 499

    1

    Groovy - 50 93 96 Characters

    'GdkknVnqkc'.bytes.each{System.out<<(char)(it+1)}

    Breaks rule 2. I don't see any other option than breaking rule 2, as AFAIK it's necessary to use either System.out or println, and using println will break both rules 1 and 2.

    Edit:

    s={k,v->for(;v>0;v>>=6)System.out<<(k-(v&63) as byte[])}
    s 113,34886441
    s 48,16
    s 130,509150443
    

    Second attempt: much longer, more obfuscated, and hopefully passes all the rules!

    Rule Check:

    ['2','7','H','h','L','l','W','w','D','d'].collect{
        it in ("""s={k,v->for(;v>0;v>>=6)System.out<<(k-(v&63) as byte[])}
        s 113,34886441
        s 48,16
        s 130,509150443""" as List)
    }
    

    Armand

    Posted 2011-01-31T23:33:34.077

    Reputation: 499

    Also breaks rule 1, because "char" contains an "h". – Luigi Plinge – 2011-11-20T15:54:57.110

    ouch, will take a look – Armand – 2011-11-20T18:15:10.577

    each breaks rules 1 and 2 ... but they are pretty stupid rules, IMO – Luigi Plinge – 2011-11-21T17:53:02.843

    @Luigi good point - have removed each, and corrected the rule check so it actually works – Armand – 2011-11-22T06:43:11.843

    1

    BrainFuck (96 char)

    Beside @R. Martinho Fernandes's BrainFuck answer, this is another BF program with 10 less characters

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

    saeedn

    Posted 2011-01-31T23:33:34.077

    Reputation: 1 241

    1I say this fails, it outputs "hello world" not "Hello World". – user3710044 – 2015-03-05T08:48:12.733

    1

    TinyMUSH, 23

    This entry violates rule #2.

    \encrypt(Fcjjm}Umpjb,")
    

    Muqo

    Posted 2011-01-31T23:33:34.077

    Reputation: 499

    1

    Commodore 64 Basic, 22 21 characters

    3?C|(6+8)"|─└└┌ ○┌_└‾
    

    PETSCII substitutions: = SHIFT+D, = SHIFT+E, | = SHIFT+H, = SHIFT+L, = SHIFT+O, _ = SHIFT+R = SHIFT+W

    The Commodore 64 has two default character sets, the "unshifted" set it boots up in (uppercase letters, numbers, and a wide range of box-drawing and graphical characters), and the "shifted" set (lowercase letters, uppercase letters, numbers, and a smaller set of box-drawing and graphical characters). Printing character 14 switches the display from "unshifted" set (which I wrote the program in) into the "shifted" set.

    This program meets all three requirements.

    Edit: In attempting to write a sorted "hello world", I discovered that the end quote is optional. Golfed off a character.

    Mark

    Posted 2011-01-31T23:33:34.077

    Reputation: 2 099

    1

    Pip, 49 bytes

    (Not officially competing, since language is newer than question.)

    Follows all three rules.

    C[--t*--tt+3Jiy:9*J,3yx:#3X3t*4++86xx+3y(TBt)@<3]
    

    The basic strategy is generating a list of all the character codes and converting them with C.

    • --t*--t: No undefined behavior here! Subexpressions are evaluated left to right, so this is equivalent to 9*8, or 72.
    • t+3Ji: Since we decremented t in the previous step, t+3 is 11. Numbers are strings and strings are numbers in Pip, so we then join the characters on i (preinitialized to 0): 101.
    • y:9*J,3: Unary , creates a range, equivalent to [0 1 2]. J joins it into 012. 9*12 = 108. Store it in y for future use.
    • Repeat y.
    • x:#3X3: # is the unary length operator, and X is string repetition, so this boils down to (length of "3") repeated 3 times, or 111. Store it in x because we'll use it twice.
    • t*4: 32.
    • ++86: It's perfectly legal to increment literal values in Pip (though the number itself doesn't change). If you use the -w flag, it will give you a warning, though. 87.
    • x from earlier.
    • x+3: 114.
    • y from earlier.
    • (TBt)@<3: TB converts to a specified base when given two arguments; when given one, as here, it converts to binary. So we get 82 = 1000; then we slice the first three characters, for 100.

    C applies memberwise to the list, resulting in a list of single-character strings. By default, Pip outputs lists by concatenating their items together without delimiters; so when this expression is auto-printed at the end of the program, the result is... Hello World.

    DLosc

    Posted 2011-01-31T23:33:34.077

    Reputation: 21 213

    1

    www = ~[];
    
    www = {
      WHAKWHAKWHAK:++www,
      comcomcomcom:(![] + "")[www],
      WHAKWHAKcom:++www,
      comWHAKcomWHAK:(![] + "")[www],
      WHAKcomWHAK:++www,
      comWHAKcomcom:({} + "")[www],
      comcomWHAKcom:(www[www] + "")[www],
      WHAKcomcom:++www,
      comcomcomWHAK:(!"" + "")[www],
      comWHAKWHAK:++www,
      comWHAKcom:++www,
      comcomWHAKWHAK:({} + "")[www],
      comcomWHAK:++www,
      comcomcom:++www,
      comWHAKWHAKWHAK:++www,
      comWHAKWHAKcom:++www
    };
    
    www.comWHAK = (www.comWHAK = www + "")[www.comWHAKcom] + (www.WHAKcom = www.comWHAK[www.WHAKWHAKcom]) + (www.comcom = (www.com + "")[www.WHAKWHAKcom]) + (!www + "")[www.WHAKcomcom] + (www.WHAKWHAK = www.comWHAK[www.comcomWHAK]) + (www.com = (!"" + "")[www.WHAKWHAKcom]) + (www.WHAK = (!"" + "")[www.WHAKcomWHAK]) + www.comWHAK[www.comWHAKcom] + www.WHAKWHAK + www.WHAKcom + www.com;
    
    www.comcom = www.com + (!"" + "")[www.WHAKcomcom] + www.WHAKWHAK + www.WHAK + www.com + www.comcom;
    
    www.com = www.WHAKWHAKWHAK[www.comWHAK][www.comWHAK];
    
    www.com(www.com(www.comcom + '"' + www.comcomWHAKcom + www.WHAKcom + www.comcomWHAKWHAK + www.WHAK + "\\" + www.WHAKWHAKcom + www.comWHAKcom + www.comWHAKcom + www.comcomcomWHAK + "\\" + www.WHAKWHAKcom + www.comWHAKcom + www.comcomWHAK + www.WHAKWHAK + ".\\" + www.WHAKWHAKcom + www.comcomWHAK + www.comcomcom + "\\" + www.WHAKWHAKcom + www.comcomWHAK + www.WHAKcomWHAK + "\\" + www.WHAKWHAKcom + www.comWHAKcom + www.WHAKWHAKcom + www.WHAKWHAK + www.comcomcomWHAK + "('\\" + www.WHAKWHAKcom + www.WHAKWHAKcom + www.WHAKWHAKWHAK + www.comcomcomWHAK + (![] + "")[www.WHAKcomWHAK] + (![] + "")[www.WHAKcomWHAK] + www.WHAKcom + "\\" + www.comWHAKWHAK + www.WHAKWHAKWHAK + "\\" + www.WHAKWHAKcom + www.WHAKcomWHAK + www.comcomcom + www.WHAKcom + "\\" + www.WHAKWHAKcom + www.comcomWHAK + www.WHAKcomWHAK + (![] + "")[www.WHAKcomWHAK] + www.comcomWHAKcom + "!');" + '"')())();

    Dave Brown

    Posted 2011-01-31T23:33:34.077

    Reputation: 129

    2Hey and welcome to PPCG, this type of challenge is known as [tag:code-golf], which means that you have to make your program as short as possible. Also, general formatting rules require a title which tells us the programming language name and the length of your program in characters or bytes. Thanks – Beta Decay – 2015-07-07T09:14:50.250

    Sorry, got carried away> I am familiar with golfing code. It won't happen again. – Dave Brown – 2015-07-08T13:17:16.820

    1How did you WRITE this? lol. I followed it through the assignment of the www attributes, but then I got lost. – Taylor Lopez – 2015-10-06T15:12:41.807

    1

    This little BIG diddy (JavaScript) clocks in at 27KB just to do simple document.write("Hello World!");

    [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]][([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]]((!![] + [])[+!+[]] + ([] + [])[(![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (!![] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]]()[+!+[] + [ +!+[] ]] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]][([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]]((!![] + [])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + ([][[]] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+!+[]] + (+[ ![] ] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +!+[] ]] + ([][[]] + [])[+[]] + ([][[]] + [])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (![] + [])[!+[] + !+[] + !+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (![] + [])[+!+[]] + (+(!+[] + !+[] + [ +!+[] ] + [ +!+[] ]))[(!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (+[] + ([] + [])[([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [ +[] ] + ([] + [])[([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]])[!+[] + !+[] + [ +[] ]]](!+[] + !+[] + !+[] + [ +!+[] ])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]])()([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]][([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]]((!![] + [])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + ([][[]] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+!+[]] + (+[ ![] ] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +!+[] ]] + (!![] + [])[!+[] + !+[] + !+[]] + (![] + [])[!+[] + !+[] + !+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (![] + [])[+!+[]] + (+(!+[] + !+[] + [ +!+[] ] + [ +!+[] ]))[(!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (+[] + ([] + [])[([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [ +[] ] + ([] + [])[([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]])[!+[] + !+[] + [ +[] ]]](!+[] + !+[] + !+[] + [ +!+[] ])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]])()([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[!+[] + !+[] + [ +[] ]] + (!+[] + !+[] + [ !+[] + !+[] + !+[] + !+[] + !+[] + !+[] + !+[] ]) + []) + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]][([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]]((!![] + [])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + ([][[]] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+!+[]] + (+[ ![] ] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +!+[] ]] + ([][[]] + [])[+[]] + ([][[]] + [])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (![] + [])[!+[] + !+[] + !+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (![] + [])[+!+[]] + (+(!+[] + !+[] + [ +!+[] ] + [ +!+[] ]))[(!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (+[] + ([] + [])[([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [ +[] ] + ([] + [])[([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]])[!+[] + !+[] + [ +[] ]]](!+[] + !+[] + !+[] + [ +!+[] ])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]])()([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]][([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]]((!![] + [])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + ([][[]] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+!+[]] + (+[ ![] ] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +!+[] ]] + (!![] + [])[!+[] + !+[] + !+[]] + (![] + [])[!+[] + !+[] + !+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (![] + [])[+!+[]] + (+(!+[] + !+[] + [ +!+[] ] + [ +!+[] ]))[(!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (+[] + ([] + [])[([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [ +[] ] + ([] + [])[([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]])[!+[] + !+[] + [ +[] ]]](!+[] + !+[] + !+[] + [ +!+[] ])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]])()([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[!+[] + !+[] + [ +[] ]] + (!+[] + !+[] + !+[] + !+[] + [ !+[] + !+[] + !+[] + !+[] + !+[] + !+[] + !+[] + !+[] ]) + []) + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]][([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]]((!![] + [])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + ([][[]] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+!+[]] + (+[ ![] ] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +!+[] ]] + ([][[]] + [])[+[]] + ([][[]] + [])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (![] + [])[!+[] + !+[] + !+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (![] + [])[+!+[]] + (+(!+[] + !+[] + [ +!+[] ] + [ +!+[] ]))[(!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (+[] + ([] + [])[([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [ +[] ] + ([] + [])[([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]])[!+[] + !+[] + [ +[] ]]](!+[] + !+[] + !+[] + [ +!+[] ])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]])()([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]][([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]]((!![] + [])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + ([][[]] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+!+[]] + (+[ ![] ] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +!+[] ]] + (!![] + [])[!+[] + !+[] + !+[]] + (![] + [])[!+[] + !+[] + !+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (![] + [])[+!+[]] + (+(!+[] + !+[] + [ +!+[] ] + [ +!+[] ]))[(!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (+[] + ([] + [])[([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [ +[] ] + ([] + [])[([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + ([][[]] + [])[+!+[]] + (![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[+!+[]] + ([][[]] + [])[+[]] + ([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+[]] + (!![] + [][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[+!+[] + [ +[] ]] + (!![] + [])[+!+[]]])[!+[] + !+[] + [ +[] ]]](!+[] + !+[] + !+[] + [ +!+[] ])[+!+[]] + (!![] + [])[!+[] + !+[] + !+[]])()([][(![] + [])[+[]] + ([ ![] ] + [][[]])[+!+[] + [ +[] ]] + (![] + [])[!+[] + !+[]] + (!![] + [])[+[]] + (!![] + [])[!+[] + !+[] + !+[]] + (!![] + [])[+!+[]]])[!+[] + !+[] + [ +[] ]] + (!+[] + !+[] + [ !+[] + !+[] + !+[] + !+[] + !+[] + !+[] + !+[] ]) + []))();
    
    x = ~[];
    
    x = {
      yyy:++x,
      zzzz:(![] + "")[x],
      yyz:++x,
      zyzy:(![] + "")[x],
      yzy:++x,
      zyzz:({} + "")[x],
      zzyz:(x[x] + "")[x],
      yzz:++x,
      zzzy:(!"" + "")[x],
      zyy:++x,
      zyz:++x,
      zzyy:({} + "")[x],
      zzy:++x,
      zzz:++x,
      zyyy:++x,
      zyyz:++x
    };
    
    x.zy = (x.zy = x + "")[x.zyz] + (x.yz = x.zy[x.yyz]) + (x.zz = (x.z + "")[x.yyz]) + (!x + "")[x.yzz] + (x.yy = x.zy[x.zzy]) + (x.z = (!"" + "")[x.yyz]) + (x.y = (!"" + "")[x.yzy]) + x.zy[x.zyz] + x.yy + x.yz + x.z;
    
    x.zz = x.z + (!"" + "")[x.yzz] + x.yy + x.y + x.z + x.zz;
    
    x.z = x.yyy[x.zy][x.zy];
    
    x.z(x.z(x.zz + '"' + x.zzyz + x.yz + x.zzyy + x.y + "\\" + x.yyz + x.zyz + x.zyz + x.zzzy + "\\" + x.yyz + x.zyz + x.zzy + x.yy + ".\\" + x.yyz + x.zzy + x.zzz + "\\" + x.yyz + x.zzy + x.yzy + "\\" + x.yyz + x.zyz + x.yyz + x.yy + x.zzzy + "(\\" + x.yyz + x.zzy + x.yzy + "+'" + x.zzzy + (![] + "")[x.yzy] + (![] + "")[x.yzy] + x.yz + "\\" + x.zyy + x.yyy + "\\" + x.yyz + x.yzy + x.zzz + x.yz + "\\" + x.yyz + x.zzy + x.yzy + (![] + "")[x.yzy] + x.zzyz + "!')" + '"')())();

    Dave Brown

    Posted 2011-01-31T23:33:34.077

    Reputation: 129

    Since this is code golf, you may want to remove extra whitespace to improve your byte count (and make it look more obfuscated). – NinjaBearMonkey – 2015-07-08T14:32:52.767

    If the last code block with the coms and the WHAKs and the wwws was sufficient to run the program, what does that first line do in this one? Removing it makes the code non-functional. whazido? – Taylor Lopez – 2015-10-06T16:37:47.130

    That first line... It defines a variable called r doesn't it?... The value of that variable r is just "H" right?... 26,789 byes just to set r="H". This is madness... – Taylor Lopez – 2015-10-06T17:38:23.913

    1

    Q (40 chars)

    Silly answer but it satisfies rule 1 & 2

    "c"$(+\)(8*9;10+19;6+1;0;3;10-89;55;10+14;3;-6;-8)
    

    skeevey

    Posted 2011-01-31T23:33:34.077

    Reputation: 4 139

    1

    APL (157 155)

    No h, l, r, w, d, 2, 7, e, o, or r, but there is 0 and 1 (so it meets two out of three requirements).

    I went for obfuscation rather than size. (If you can't figure out how it works, it is a variation of this guy's method).

    ⎕UCS{⌈+/96,⍵{⊃a×b○c×1.118×⍺,a b c←⍵}¨,⌿((11-33)13.3 ¯8.5 18(.3×4)16.5 4 8.5 .4 6,[0]10⍴(⍴'⍴⍴')1),[1]⌈.5×⍳10}¨(⍳11)-1
    

    APL (28)

    Boring straightforward one, but meets all requirements and is short-ish.

    ⎕UCS(⎕UCS'Jgnnq"Yqtnf')-.5×4
    

    marinus

    Posted 2011-01-31T23:33:34.077

    Reputation: 30 224

    Save a byte on the bottom one with -⍴⍬⍬ – Adám – 2016-07-20T15:55:26.280

    +1 That's a great link. But your code's greek to me. :) (Don't worry, I'll get there. Just got some Iverson from Amazon.) – luser droog – 2013-04-10T03:58:37.010

    1

    int main()
    {printf("%c%c%c%c%c%c%c%c%c%c%c", ('C'+5), ('a'+4), ('i'+3), ('f'+6), ('i'+6), (35-3), ('T'+3), ('j'+5), ('k'+7), ('g'+5), ('f'-2));}
    

    parmar

    Posted 2011-01-31T23:33:34.077

    Reputation: 11

    1

    Processing, 189 characters

    int[]z={104,101,108,108,111,119,111,114,108,100};for(int i=0;i<z.length;i++)if(i==0||i==5)print((char)Character.toUpperCase(z[i]));else if(i==4)print((char)z[i]+" ");else print((char)z[i]);
    

    If I'm not mistaken, this program only violates rule number two... unless of course the 'h' in "Character" is ruled as a violation. First post to CodeGolf!

    Ungolfed

    int[] z = {104, 101, 108, 108, 111, 119, 111, 114, 108, 100};
    
    for (int i = 0; i < z.length; i++)
    {
        if (i == 0 || i == 5) print((char) Character.toUpperCase(z[i]));
        else if (i == 4) print((char) z[i] + " ");
        else print((char) z[i]);
    }
    

    Rob

    Posted 2011-01-31T23:33:34.077

    Reputation: 1 277

    1Yes, h is a violation. – pts – 2013-08-24T06:59:07.897

    1

    05AB1E, 5 bytes (non-competing)

    Breaks none of the rules, code:

    ”Ÿ™‚ï
    

    Uses CP-1252 encoding. Try it online!

    Adnan

    Posted 2011-01-31T23:33:34.077

    Reputation: 41 965

    This is invalid. The expected output isn't Hello Dc. You must use ”Ÿ™‚ï instead. – Erik the Outgolfer – 2017-04-26T16:44:06.473

    @EriktheOutgolfer Thanks, I have corrected it. – Adnan – 2017-04-26T16:55:02.623

    1

    Tellurium, 16 bytes

    µUryyb Jbeyq~r^
    

    This basically encodes "Uryyb Jbeyq" with ROT-13 (Hello World) and displays the result.

    m654

    Posted 2011-01-31T23:33:34.077

    Reputation: 765

    1

    Python 2, 39 chars

    print'\x48e\x6c\x6co %cor\x6c\x64'%-~86
    

    Breaks rule 3-1.

    Ungolfed versions

    print '%ce%c%co %cor%c%c' % (0x48, 0x6c, 0x6c, 0x56 + 0x1, 0x6c, 0x64)
    
    print '%ce%c%co %cor%c%c' % (68 + 4, 108, 108, 86 + 1, 108, 100)

    Normal version (-2) (18 chars)

    print'Hello World'
    

    Ungolfed

    print 'Hello World'
    

    Erik the Outgolfer

    Posted 2011-01-31T23:33:34.077

    Reputation: 38 134

    1

    Hexagony, 42 bytes (non-competing)

    G\._.[\[c)[_\V[n[q.\[k[c[@.$>);]._.k[;n[i5
    

    Try it Online!

    If violating 1 rule (Rule 1), it is not hard to do it with 31 bytes:

    H;d);d;@/6;W;n/;l;;n)/);q);l;i 
    

    However as to make it more obfuscated and cute with 2 ._.s, I made it 42 bytes.

    Enjoy!

    Sunny Pun

    Posted 2011-01-31T23:33:34.077

    Reputation: 821

    0

    tcl, 104

    \u6cmap x {G d k k n \U1F V n q k c} {scan $x %c n;incr n;puts -n\u6Fn\u65w\u6cin\u65 [f\U6Frmat %c $n]}
    

    Almost meets 3 requirements. Unfortunately I am not successful when I try to use directly the char by key pressing Alt+Num 31, representable as:

    Dec U-Hex  Oct
    \31 \U1F   \037
    

    which happens to have forbidden chars in all number bases!

    Available to run on: http://rextester.com/live/GQBHU26987

    sergiol

    Posted 2011-01-31T23:33:34.077

    Reputation: 3 055

    0

    Ruby, 51 bytes

    Chars not used: hlwd27

    puts "Ifmmp!Xpsme".chars.map{|i|(i.ord-1).chr}.join
    

    dkudriavtsev

    Posted 2011-01-31T23:33:34.077

    Reputation: 5 781

    0

    Perl, 33 bytes

    print 'Ifmmp Xpsme'=~y/G-t/F-s/r
    

    Breaks rule 2.

    Alternatively:

    perl -E "say 'Ifmmp Xpsme'=~y/G-t/F-s/r"
    

    I think this counts as one byte shorter...

    BenGoldberg

    Posted 2011-01-31T23:33:34.077

    Reputation: 389

    0

    AWK, 164 bytes

    #!/bin/awk -f
    BEGIN{n++
    system("awk 'printf(\"%c",$n)}'<<<\""69+3"\n"98+3"\n"36*3"\n"36*3"\n"36*3+3"\n"35-3"\n"84+3"\n"36*3+3"\n"36*3+6"\n"36*3"\n"94+6"\n"6+4"\"")}
    

    Usage: Place the code in a file, FILE, and set the 'executable-bit' to true. Sending a single string input will print Hello World. Multi-line input results in the string being printed once for each line.

    Example:

    File <<< "42"
    

    Since a program was requested, I assume the code is running on some UNIX-like environment with the awk executable available at /bin/awk. I further assume that /bin is in your path.

    Not sure if this really counts as just an AWK program, since it is using the system command, but at least the system call is calling AWK. :)

    I do violate the second rule, simply because I couldn't come up with a way around using the printf command. :(

    Robert Benson

    Posted 2011-01-31T23:33:34.077

    Reputation: 1 339

    0

    Excel 138

    (Not actually a language and not really obfuscated, but why not)

    =CONCAT(CHAR(69+3),CHAR(98+3),CHAR(99+9),CHAR(99+9),CHAR(45+66),CHAR(35-3),CHAR(33+86),CHAR(43+68),CHAR(48+66),CHAR(44+64),CHAR(45+55))
    

    Violates rule #2 tho, as it contains 'o' and 'r'

    RWang

    Posted 2011-01-31T23:33:34.077

    Reputation: 1

    3it also contains H (rule #1). – Andrey – 2017-01-18T09:27:12.220

    0

    Mathematica 144 Bytes

    StringJoin@Insert[ToUpperCase@StringPart[#,1]<>StringPart[#,5-3;;]&/@IntegerString[{349644888483444,656639565449499}/(498331*8*3+3),36]," ",5-3]
    

    This is a pain in Mathematica because so few functions adhere to rules 2 & 3. This answer adheres to rules 1 & 2 and also takes care to do the Capitalization. I couldn't even use the built in Capitalize function. The basic idea is to find the base 10 representation of the string assuming it's in base 36.

    as can be seen by running

    Select[Names["System`*"],StringFreeQ[#,{"h","l","w","d"},IgnoreCase->True]&&StringFreeQ[#,{"e","o","r","0","1"},IgnoreCase->True]&&UpperCaseQ[StringPart[#,1]]&]

    which yields a handful of built in symbols, only some of which are functions, and none of which are helpful with string manipulation.

    {Abs,Annuity,Ask,Assuming,Axis,Back,C,Cap,Csc,Cubics,Cup,CupCap,Cyan,Fit,Gamma,I,If,Im,In,Infinity,Infix,Inpaint,Input,K,Magnify,Map,MapAt,Masking,Max,Min,MinMax,Minus,Missing,MissingQ,N,NSum,Pi,Pick,Pink,Put,QGamma,Quantity,QuantityQ,QuantityUnit,Quit,Scan,Sign,Sin,Sinc,Skip,Spacings,Span,Stack,Stub,SubMinus,Sum,Syntax,SyntaxQ,Tab,TabSpacings,Tan,Ticks,Timing,Tiny,Up,Using}
    

    A single function solution that came to mind was:

    Transliterate["הֶללֳ וֳרלד"]
    

    which translates from Hebrew characters, but as you can see it it violates rules 2 and 3.

    Kelly Lowder

    Posted 2011-01-31T23:33:34.077

    Reputation: 3 225

    0

    dc 48

    8 9*P101P108P108P111P4 8*P81 6+P111P114P108P100P
    

    One way how to execute:

    dc<<<"8 9*P101P108P108P111P4 8*P81 6+P111P114P108P100P"
    

    The solution conforms to the first and the third rule.

    Hynek -Pichi- Vychodil

    Posted 2011-01-31T23:33:34.077

    Reputation: 350

    0

    C code:

    #include
    main(){int x=0,y[14],*z=&y;*(z++)=0x48;*(z++)=y[x++]+0x1D;*(z++)=y[x++]+0x07;*(z++)=y[x++]+0x00;*(z++)=y[x++]+0x03;*(z++)=y[x++]-0x43;*(z++)=y[x++]-0x0C;*(z++)=y[x++]+0x57;*(z++)=y[x++]-0x08;*(z++)=y[x++]+0x03;*(z++)=y[x++]-0x06;*(z++)=y[x++]-0x08;*(z++)=y[x++]-0x43;*(z++)=y[x]-0x21;x=*(--z);while(y[x]!=NULL)putchar(y[x++]);}
    

    Output :

    Hello, world!
    

    tusharmakkar08

    Posted 2011-01-31T23:33:34.077

    Reputation: 179

    0

    Ruby (42 chars, rules I & III)

    puts"\x48e\x6c\x6co #{'V'.succ}or\x6c\x64"
    

    AlexRath

    Posted 2011-01-31T23:33:34.077

    Reputation: 139

    0

    Python: 66 characters

    op=""
    for i in "Tqxx{,c{~xp":
        op=op+chr(ord(i)-(4*3))
    print op
    

    OptimusPrime

    Posted 2011-01-31T23:33:34.077

    Reputation: 1

    0

    Jelly, 7 bytes (non-competing)

    “½,⁾ẇṭ»
    

    Try it online!

    Erik the Outgolfer

    Posted 2011-01-31T23:33:34.077

    Reputation: 38 134

    0

    PHP, 41 bytes

    <?for(;$a='Gdkkn vnqkc'[$p++];print++$a);
    

    Complies with rules 1 and 3.

    Élektra

    Posted 2011-01-31T23:33:34.077

    Reputation: 284

    0

    Brainf*** (106 characters)

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

    aaay aaay

    Posted 2011-01-31T23:33:34.077

    Reputation: 71

    Welcome to PPCG! – FlipTack – 2017-11-11T19:53:43.463

    1

    BTW, there's an open-ended +500 bounty for anyone beating the current Brainfuck "Hello, World!" record (78 bytes -- with a comma and an exclamation point).

    – Arnauld – 2017-11-11T20:01:19.837

    0

    Data URI 28 bytes

    data:;base64,SGVsbG8gV29ybGQK

    Copy and paste into the browser url bar

    Noskcaj

    Posted 2011-01-31T23:33:34.077

    Reputation: 421

    0

    Befunge-93, 24 bytes

    9"mu{x`)xuunQ">9#,-#$:_@
    

    Try it online!

    Violates no rules. Simply pushes the text shifted by 9 and subtracts 9 from each character before printing.

    Jo King

    Posted 2011-01-31T23:33:34.077

    Reputation: 38 234

    0

    Japt, 9 bytes

    `HÁM WŽld
    

    Try it online!

    The built-in shoco compressor just did the perfect job to remove eor.

    Alternatively, slightly less obvious:

    16 bytes

    "Ifmmp!Xpsme"c_É
    

    Try it online!

    c maps over the charcodes, and is a decrement function. É is a shorthand for -1.

    Bubbler

    Posted 2011-01-31T23:33:34.077

    Reputation: 16 616

    0

    PI based program: 168 char

    #!/bin/bash  
    
    pi=$(bc -l <<<'scale=4000;4*a(1)')
    pi=${pi//[$'\n\\']}
    for v in aF Fb e3d F78 67a 172 496 12A 867 52D E3d 667 eAc;do
        printf -vv %b \\${pi:16#$v:3}
        o+=$v
    done
    echo $o  
    

    Do render:

    Hello, World!
    

    Nota: in order to prevent long time compute, you could use pre-computed 4k pi value:

    #!/bin/bash  
    
    pi=$(gunzip < <(base64 -d <<-eof
    H4sIAHM1DVwCAyXXB3IDMQwDwB9lJFH1/x/L4pxJcWwVEgRAXv312dcbe9W677wadecee1bdGuetNu6d/Z2+X71XZ/W27mjvzDenjdXO7Xu2Pe4e7b7nz20171g1R++n7fPu6PO2u1evcW3Ze5723DR3e2vlxFH92LLebLePO2+3d+b62ds4rVu+nNfWWm/bOMab9635qtXt
    eUukXWBr7/WqLMk5/hVL1bn73Op7jdOH09rrMx9ZLQlxCHn3NtessbOlV73a7YzdxrS4j1NnzHVPE3/b1ddy4Zl+LYD4lvl4Y01nn74KiO70xmsOat2Jbfm2Y7QpSnfIbu63+lOF3qExs+hIuPY6663Xnz1vdNH1k0zF59UrUPR+ndZO4KjzBKAsa59a/V7bh4Dv60Mh7bwl
    hieX8W4Jzc+YKgeCWarTxOPjueutMaZ0wXS8q4BfZF6fIwXRnH72EMPZbgll4NDzB5yzpc6ttbWV8sB57Fq7XbtFdTpiHH/v20GqtovOPTiyMaK9JmBplKC8pcLrLkvaaucllR1M/dSaqaSEex+SEqkTLzIqfleVd7sU3zkzlzb4iEz9XCWG931dRX3nNv+G2u/ICUlTCiW+
    KwoI0ecS0H4NiNQxAAQyhA3P7molR6VREJTorcu+OtLVhc/FfH8LKN7oot4BMFh1MNv8Prm8hsNnLScKQ/wrqip0KQD45NPfC3Q9QF61SCnG2BcnpQiOYaHXKo13KrU/kC4CkNpALcEB9S4nW3sjlo2tIcgHrsQAb624vKC6IJ5bgYnMqFoh1XxwPEmv5nmdHigCDVwx6QSh
    G2bDjygcj90ojNk3ukGs1V7QONKtMzchw09lbWuzCR3X+j5K9fx3o5qJGgIXL70u25pU5TMDOWlMN8Uekm+4CH/aYFTgheDHBFhl+bQpFZ1xrajxzgh1//QhXALB9+sk8s4Vflu79ttxBJ4V31kxJjoME8SnAiW9g4MENLkSMtET+3gS4iVz7Pdj8UlZZ9wz7vBqAke1UNmC
    mfI4HdugBkFeCF1mOoMay5QWHC17OVFYQUygsoSsfaDADo6Hoo+8iDfYtMGYQhcnPCy5MYYZbLjvFsuLoWgIITnXhFyPtBVKlQ5EeKyvz1PQPO4vLtTbUTr4Yg/hJUFbViBicukhzo9fWaiCffnf4THambPd8eIA8XlSUfXDjjpDLGyiljFDoSEcEEgY1QiErCE2BodkK6HP
    SOj7qgKR0ZRT2weDIvsP5a1Lc+M6/GKd3Fkf+cFgUQ97lWSRXhpHpUs1mxsxuR8w8V7hjfAypjO/nuVkYa1UWb4MXqESWcTJwCvlmx+oxPXixTocNjLvmMWOIaI1O2a9ALxBHJnSCtwWBEgvjVRz3lyJNaZPOeOmvBHKy2r8Y68i3YG0ghd240+MRrMNkUd6g3VY6TYnRBl+
    KdfBKD7siqZUqiCgGGALCkJHbBjMpftlKtDXZ7E1zJEUd6FiFDwyl5I+zBly9Yodzs9lb5wVjxAbD7lT6HPSWjQROSUYgfsharJlLdiq4O+7WGlsd2l8++Qt1bnex3M2NdNTJaPoN40O3lIGbmxLtVSPVg02gS6v4Ro94Bggo4W+4s2M2WvUZoEsRywoiHdovHK+5lkZc4aW
    MgLsxwEM9yEWpPyhXogJRIjv87OlGytO+/dedMgD9443or0D1o6JMYb1cSoTwcm0AmD2wq8pYmf2KIxAR0ZxdrzruMUMlO0adkubogPTm9grA4+sCrLCVYmUf8U/YzSZAMiF3dwMMz4+X3vmahm9brill+OFlq+WIypeAY07ODxdNGMTgrzYr0owkUtxmUTCJCggKhPKeMCN
    eZ1oif1kfDEskV3sfU55rGyOR35jjvqwgIoIrO/fBNGJKiOLXNHBCUyG6WG1gI8+b1h0wVHYdFj6ML+aL1xnODmZn/QiDNj842NmVKQ5fJI2IfEv23tImLaLDS2DUoxm6VS4lzHVmKMP7Qwvnzt/HbjHWU+0sdLsYwZqluY+M3F9cvpUfz+3/OaQlzpk3OP3TnNleoVV71cp
    fshDWIZMscOYF0q1tPWMSXGaYKMz3kyJwTsilF2l576Yu0IZG06mmCQuRNQ9FV+XFtdMf4drPHt87WenzUHmxIStpqKVmfUTuVlC/TN5I2DFmdG4pSjkZZC/GSCD066MVWny8YqAvtSfxiULQDNCPFLjVMuXjqgfZDCksMwstkBH6wG0y42x4eLIQ0eLhkEkv0BCuBGs1L+R
    /2WEJ04KSlfOvJpHDLmqv3jjvRmi0F7JmE7G7BHiqb4QEcN93+zx9Lmv0b1vsM5sA7QoZGVICYJiTPB5tmD9TcYY44YMRQw7mutxYmUBAZtOLyHNyk1EofXm0QrtRKjZ5GGrUhz5Vp5A8irLfi1gwQlvvhkko9L6HiG8DS91x/zcxjk3fG+US5d8Vw/AdvXM6FYBO/aRGe5+
    T4Ei3d+DhQk4pXzxBhsDfh5cTnqJBwMx4z9HjINDlUWG0XlaA4NGlJGbt8bt9C8dMsNDnhnT3wHJ/b8y4ldF2xk6MqiifM9zjgZhNmSMysfHm1KM9IawV4HjTNS8EtuIpMwoxh4RS14GYb80I3nROorUvmc/g3L44YQgt/NU6bsZk+Sq7rF6HVzkvKUyprOHPBPdzI4QN9R8
    /gQdxZLdztSrPdf35JFHUg4Crbyl4QkDpnnMQAvMy0xpYZ4T8vgAkDyW7ozmOXdkkFPKnWP+AVkFcIuiDwAA
    eof
    ))
    for v in af fB e3D F78 67a 172 496 12A 867 {52,E3}d 667 EaC;do
        printf -vv %b \\${pi:16#$v:3}
        o+=$v
    done 
    echo $o
    

    Will render (same, but quicker):

    Hello, World!
    

    F. Hauri

    Posted 2011-01-31T23:33:34.077

    Reputation: 2 654

    0

    Z80Golf, 21 bytes

    Contains unprintable bytes, so here's xxd (breaks rule 1):

    00000000: 0063 6b71 6e56 1f6e 6b6b 6447 2e0b 7e3c  .ckqnV.nkkdG..~<
    00000010: ff2d 20fa 76                             .- .v
    

    Try it online!

        nop
        ld h, e ; 'Hello World' backwards if you add 1 to each byte
        ld l, e ; execution falls through
        ld (hl), c
        ld l, (hl)
        ld d, (hl)
        rra
        ld l, (hl)
        ld l, e
        ld l, e
        ld h, h
        ld b, a
        ld l, loop - 3
    loop:
        ld a, (hl)
        inc a
        rst $38
        dec l
        jr nz, loop
        halt
    

    NieDzejkob

    Posted 2011-01-31T23:33:34.077

    Reputation: 4 630

    0

    DOS .com executable: 31 bytes

    BE 13 01 AC B4 02 34 FF 88 C2 75 03 80 C4 4A CD
    21 EB F0 B7 9A 93 93 90 DF A8 90 8D 93 9B FF
    

    Stores the string byte-inverted, outputs using DOS syscalls. Contains none of the banned characters.

    source:

    .code16
    .org 0x100
    start:
     movw $str, %si
    l:
     lodsb
     mov $0x02, %ah
     xor $0xff, %al
     mov %al, %dl
     jnz 1f
     add $0x4a, %ah
    1: int $0x21
     jmp l
    str:
    .ascii "\xb7\x9a\x93\x93\x90\xdf\xa8\x90\x8d\x93\x9b\xff"
    

    pbfy0

    Posted 2011-01-31T23:33:34.077

    Reputation: 151

    0

    Gol><>, 21 bytes

    "mu{x`)xuunQ"T:Z;9-ot
    

    This is a program that JoKing made, golfing the heck out of it.

    Try it online!

    Old version, 37 bytes

    "Fcjjm"b3+s"Umpjb"c&rT&M:&33-)QPPot|;
    

    This is a really simple, not very creative way of doing this, all it does is just encode everything 2 below their actual ascii encoding, the hardest part is not using 'l', which in gol><> is the length of the stack!

    Try it online!

    KrystosTheOverlord

    Posted 2011-01-31T23:33:34.077

    Reputation: 681

    0

    Runic Enchantments, 39 bytes

    \>`''`
    \+kw+kwb8qn;' 83*´34 f-;@
    

    Try it online!

    As seen in Notepad++ to better distinguish the non-printing bytes:

    Notepad++ view

    Violates only rule 1. I had fun computing the first line (a sequence of raw byte values). Alternatively I could have violated rule 2, but I felt that doing so was less obfuscated. There's four different methods used in the 39 byte solution for generating integer values, making it hard to figure out what's going on (compared to just some mathematical operators in the 17 byte solution).

    39 byte solution must occupy two lines.

    Draco18s no longer trusts SE

    Posted 2011-01-31T23:33:34.077

    Reputation: 3 053

    0

    Python 3, 85 bytes

    Not golfed, but obfuscated.

    input(('%c'*11)%(9*8,93+8,99+9,9+99,3999//36,4*8,9*9+6,3996//36,4353//38,36*3,5*4*5))
    

    Try it online!

    alexz02

    Posted 2011-01-31T23:33:34.077

    Reputation: 89

    1From a golfing standpoint, the fact that you're already using 11 to break rule 2 means that every code point except 72, 32, and 87 are valid (since 0 will also be allowed). From an obfuscation standpoint, I'm sure there are more creative and fun numbers you can use, like idk, 33**3//399-3 for 87, 3225%346 for 111, etc. – Value Ink – 2019-06-07T21:45:17.287

    0

    C#, 143 bytes

    First i put in an array the decimal values for each letter in text

    Hello World.

    Then in each world i call (char)decimalValue

    Example

    (char)111
    

    returns o in C#.

    namespace N{class P{static void Main(){int[] i={13*8,69,36*3,36*3,111,119,111,114,19*4,68};foreach(int v in i)System.Console.Write((char)v);}}}
    

    PauloHDSousa

    Posted 2011-01-31T23:33:34.077

    Reputation: 119

    You should say a little something about how this works in your answer. – Justin – 2014-02-20T19:55:26.063

    Breaks the rules. Have a look at TimWi's solution. That's how it's done.

    – RobIII – 2014-02-21T01:15:34.530

    0

    void main(){
    int a[100]={4,1,8,8,11,-68,19,11,14,8,0,0,0};
    for(;a[13]<a[4];a[13]++)
    {
        printf("%c",100+a[a[13]]);
    }
    
    }
    

    Funny,isn't it?

    Sushant Parab

    Posted 2011-01-31T23:33:34.077

    Reputation: 11

    0

    XeTeX

    Compile with xetex, output is in generated PDF. Of course, this still breaks some of the rules (still uses forbidden digits) and could be obfuscated and compacted a lot more, but I am tired and have to go to bed. Well, maybe you like it anyway :-)

    \let~\def
    \toksdef\|0
    \let\ea\expandafter
    ~\>{\uppercase{\|\ea{\the\|.}}} 
    ~\.{\uccode`.\numexpr32+}
    ~\u#1{\|{}\ea\v\number`#1 \^^J{\iffalse}..\fi\relax}
    ~\v1#1#2#3#4{\.#1#2\>\.#3#4\>\ea\v\number`}
    \u{㛵䔌䘣䘾䔄}\the\|
    \bye
    

    Daniel

    Posted 2011-01-31T23:33:34.077

    Reputation: 231

    0

    Brainfuck, 94 Characters

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

    Obvious, being BF it breaks none of the rules.

    If I lowercase the output it's only 86, but I don't think that's allowed.

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

    The first one is a balanced nested loop generator, the second is a slipping (or sliding) loop generator

    NB: The newlines in the code are for this message, they should be removed for running or counting.

    user3710044

    Posted 2011-01-31T23:33:34.077

    Reputation: 101

    0

    PHP

    This is a very cheap trick (30 bytes):

    <?=cONSTAnTINO_^'+*"?;a9;;"+'
    

    Not much to see here.

    Rules broken: none (the O.P. said o, not O)


    Going really cheap on this one (25 bytes):

    Create a file called cONSTAnTINO_ and run:

    <?=__FILE__^'+*"?;a9;;"+'
    

    There's nothing saying about file names being forbidden.


    But if we want to go REALLY dirty, just do (10 bytes):

    <?=__DIR__
    

    And run a file from a directory called Hello World.


    Enough of being cheap!

    Here is another attempt (97 bytes):

    <?foreach([144,405,650,867,1114,389,1224,1783,2060,2169,2210]as$k=>$v)echo chr($v/(($k+1*2)+$k));
    

    Yeah, pretty huge, right?

    Sadly, it breaks 2 rules.

    Ismael Miguel

    Posted 2011-01-31T23:33:34.077

    Reputation: 6 797

    1

    You were successful in breaking the second restriction in your first one because the OP mentioned "in any case" (but it's only one restriction, so it's fine). But your second and third ones use a standard (forbidden) loophole and break restrictions 1 and 2.

    – Kevin Brown – 2015-07-06T01:19:09.200

    @KevinBrown Those aren't serious answers. The purpose of those is to show how much I can cut If I go really cheap (a.k.a.: cheat). – Ismael Miguel – 2015-07-06T01:28:08.520

    0

    Cardinal, 73 71 68 chars

    >----~n*,n*,n*,,n*,n*v
    - xx  Nj kr rx  u  &],
    \-%xx,*u,*u,*u,*u ,*u<
    

    My previous, less obfuscated version (73 chars) for better understanding:

    >--- ~n*,n*,n*,,n*,n*,n*,n*,n*,n*,n*,
    \---%xN  k  r   u  &  ]  u  x  r  j
    

    Start at %, first move to the left, decrement the active value by 3 (---). () reflects the IP upwards, (>) changes the direction to the right. Then decrement by 3 more (---), swap active and inactive value (~). Then read in the char below (n), store it as active value, add the inactive value to it (*) and output the result (,)... rinse and repeat.

    ‘n’ places the active value of the ip above the arc of the character n, u puts it below the arc of the character u, then picks up the value of the character above (u) or below (n) the “open” side of the letter and stores the value as new active value. The corresponding instructions in horizontal direction are ‘(’ and ‘)’.

    Cardinal is an esolang invented in 2010 http://esolangs.org/wiki/Cardinal

    The original interpreter has some bugs, but this example works without problems. I recompiled the source to get rid of the worst bugs so far, in case someone is interested.

    M L

    Posted 2011-01-31T23:33:34.077

    Reputation: 2 865

    0

    Swift 2.0, 243 bytes

    Works for Swift 2.0 on Xcode 7 and above.

    var s = " ".join(["Gdkkn", "Vnqkc"].map({
        var usv = String.UnicodeScalarView()
        for a in $0.unicodeScalars.map({ 
            UnicodeScalar(($0.value + 4 - 3)) }) { usv.append(a) }
        return String(usv)
    }));
    
    print(s, appendNewline: false)
    

    Joshua Finch

    Posted 2011-01-31T23:33:34.077

    Reputation: 101

    Welcome to PPCG, this challenge type is called code-golf, and for that we include the length of our program in bytes/characters in the title. Also, as a side challenge, you should try and get your program as short as possible by removing unnecessary whitespace, newlines etc. – Beta Decay – 2015-07-06T13:13:13.423

    0

    Ruby, 66

    puts ""<<(61+11)<<101<<108<<108<<111<<' '<<(31+56)<<111<<114<<108<<100
    

    It breaks rule 2

    Ruby, 43

    Also based upon @Nemo157 answer:

    puts "Gdkkn~Vnqkc".split("").map(&:succ)*''
    

    It breaks rule 1

    Biketire

    Posted 2011-01-31T23:33:34.077

    Reputation: 200

    0

    CBM BASIC v2.0 (66 characters)

    I think Mark's answer, while very clever, verges on cheating as it exploits the lack of lowercase letters in the machine's default non-ASCII character set. Here's a somewhat longer program that doesn't rely on the PETSCII quirk. It breaks only Rule 2.

    3a=44-33:a$="emspX!pmmfI
    4?cH(aS(mI(a$,a,a/a))-a/a);:a=a-a/a:ifagO4
    

    Psychonaut

    Posted 2011-01-31T23:33:34.077

    Reputation: 233

    0

    Detour, 18 bytes

    `<u
    @'Ifmmp!Xpsme'
    

    Basically the same as @gnibbler's answer, only breaks rule 2.

    Try it online!

    The 19-byte version breaks none of the rules:

    Detour, 19 bytes

    `<<u
    @'Jgnnq"Yqtnf'
    

    Try it online!

    Cyoce

    Posted 2011-01-31T23:33:34.077

    Reputation: 2 690

    0

    JavaScript, 77 70 69 characters

    This satisfies conditions number 2 and 3.

    "H"+([]+![])[4]+"ll"+([]+{})[+!![]]+" W"+([]+{})[+!![]]+([]+!![])[+!![]]+"ld"
    

    a=!![];b=([]+{});c=b[+a];"H"+([]+![])[4]+"ll"+c+" W"+c+([]+a)[+a]+"ld"
    

    a=!![];b=([]+{});c=b[+a];`H${([]+![])[4]}ll${c} W${c}${([]+a)[+a]}ld`
    

    Please help me shorten this up.

    ericw31415

    Posted 2011-01-31T23:33:34.077

    Reputation: 2 229

    0

    Assembly: 117 source chars, 29 byte .com file

    Assemble using A86.

    mov si,273
    mov ah,2
    mov dl,133
    lodsb
    add dl,al
    int 21h
    lodsb
    add dl,al
    jne 266
    ret
    sbb ax,7
    add si,[bx+di+6199]
    add di,dx
    clc
    pushf
    

    Skizz

    Posted 2011-01-31T23:33:34.077

    Reputation: 2 225

    I don't have A86. nasm assembles it, but in 31 bytes, and it crashes DOSBox when run. – J B – 2011-02-09T19:50:10.773

    1@J B: There's a link to A86 in the post. – Skizz – 2011-02-10T09:13:36.520

    2This contains the characters 1 and 2 and therefore violates the rules. Maybe you didn’t mean “assembly” but rather machine code and you only posted the assembly representation of it? You need to say this. Otherwise I can just post some C code and say that the entry is the compiled binary... – Timwi – 2011-03-08T20:33:13.680

    1@timwi: it contains 'h', 'd', 'l', '7', 'e' and 'o' as well. But then you'd be hard pressed to write any assembler code that didn't have those characters. Even the machine codes would have 0,1,2 or 7 somewhere. – Skizz – 2011-03-08T21:49:35.860

    I guess that means your entry violates the rules. Sorry. – Timwi – 2011-04-04T10:50:24.290

    0

    Molecule, 7 chars (18 bytes)

    "ৣ҆͢๡Ԫł"C
    

    Molecule uses Chocolate Compressor to compress strings.
    So I just decompress it.

    user47018

    Posted 2011-01-31T23:33:34.077

    Reputation:

    0

    Vim, 31 keystrokes

    ia<C-v><C-v>92<esc>22<C-a>SU<C-o>@"yyb Jb<C-v>x65yq<esc>g?g
    

    This was really fun! I'll write an explanation a little bit later.

    James

    Posted 2011-01-31T23:33:34.077

    Reputation: 54 537