#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
int /*<<< orphan*/ printf(char *);
void print_falcon() {
  printf(
      "                           ____          ____\n                         "
      " / --.|        |.-- \\\n                         /,---||        "
      "||---.\\\n                        //    ||        ||    \\\\\n          "
      "             //     ||        ||     \\\\\n                      // __  "
      " ||        ||   __ \\\\\n                     //,'  `. ||        || "
      ",'||`.\\\\\n                    //( \\`--|)||        ||( \'|  )\\\\\n   "
      "                //  `.-_,' ||________|| `.-_,'  \\\\\n                  "
      "//        | ||   _|   ||          \\\\\n                 //         | "
      "|| | .. | ||           \\\\\n                //          | || | :: | || "
      "           \\\\\n               /    __     888|| |  _ | ||        __   "
      " \\\n              /   ,'|_'. _ 888|| |  | | ||  _   ,'-.`.   \\\n      "
      "       /   ( ,-._ | |888|| | -| | || |_| (   |==)   \\\n            /   "
      "  `O__,'|_|8@ || | [| | |@ |_|  `._|,'     \\\n           /            "
      "__..|--| | )| | |--|_|__            \\           ,==.\n          /      "
      "__,--''      |  |  | |  |      ``--.__      \\         //[]\\\\\n       "
      "  /    ,::::'          |-=|  | |  |::::..       `-.    \\       "
      "//||||\\\\\n        /  ,-':::::       ..::|  | /| |  |::::::::        "
      "`-.  \\     ||,'  `.||\n       / ,'    ''       ::::::|  | \\| |  |  "
      "''::::     oo    `. \\    |--------|\n      /,'           ,'\\ :::'''|] "
      "|  | |  |   ....    o8888o    `.\\   |:::_[[[[]\n     /'           ,'   "
      ")      |> |  | | [|  ::::::     88888  ..  \\  |    |   ]\n    /        "
      "   ,'     |      |] |=_| | [|  '::::'oo     8   ::::  \\-'    |---|\n   "
      ".'     o   ,'    \\_/       | :| \\| |.[|      o8888o        ::;-'      "
      ",'   |\n  ,'     o88,'   `._/:\\|      | :|  | |: |     88888888      "
      ",-'  \\  _,-'     |\n  |     8888 ``--'|::::|      |_:|  | |:_|       "
      "8888     ,-'   \\ ,-'   .::_,-'\n ,'    8888      ''--"
      "      || || [| || ||            ,-'    _,-'   \\ _::'\n |               "
      "            || |_,--._| ||         ,-'  \\ ,-'     _,-'\n |             "
      "              |__(______)__|      ,-'   _,-' .::_,-'   |\n|'            "
      "      88o     =====,,--..=====  .-'   ,-' \\  _::'       `|\n|          "
      "        888888o    ,-'\\    /`-.     \\ \\-' . _,-'            "
      "|\n`---._____        888888888 ,' / [HHHH[=====-   \\ |_::'       "
      "_____.---'\n  __|_____`=======._____   /   \\ [HHHH[=====-    "
      "`'__.======='_____|__\n {I |  _______________ || /    /\\/____\\/\\:.  "
      "\\ || _______________  | I}\n [I |  :___]__[_______ ||(    /   _.._   "
      "\\:.  )|| ______]___[___:  | I]\n {I_|____________o8o___|| \\  /:  /\\  "
      "/\\   \\: / ||__________________|_I}\n    |_____,------'         \\/:'  "
      "\\ \\/ /    \\/:..   88`-------._____|\n.---'   ::::::              `.  "
      " [||||]   ,'  '::..                `---.\n|          '::..::        ,'  "
      "`-.      ,-'  `.  ':'                    |\n|.        .:::''        ,' "
      "__    ``--''    __ `.     .::.             ,|\n |        '''         ,' "
      ",'||`.    __    ,'||`. `.    '::::.          |\n |                  ,'  "
      "(||||||) ,'||`. (||||||) 88.    '::::.        |\n `.               ,'   "
      "  `.||,' (||||||) `.||,' 88888.    ':'        ,'\n  |             ,'    "
      "  __       `.||,'       __  88  `.             |\n  `.          ,'      "
      ",'||`.       __       ,'||`.      `.          ,'\n   `.       ,'       "
      "(||||||)    ,'||`.    (||||||)       `.       ,'\n     \\    ,'         "
      " `.||,'    (||||||)    `.||,'          `.    /\n      `.  |             "
      "         `.||,'                      |  ,'\n        `-|                 "
      "                                 |-'\n          `.   ,'.                "
      "                    .`.   ,'\n            `-:,'o88o ,/                  "
      "      \\.     `.;-'\n               `-888 //      /     ||ooo  \\ oo88 "
      "\\ __,-' \n                    `--..__ /'     ||888  `\\ oo8;--'\n      "
      "                     ```-----''-----''''\n\n");
}


x86 assembly (clang, -O0):
<print_falcon>:
push   %rbp
mov    %rsp,%rbp
lea    0xee5(%rip),%rdi
call   1030 <printf@plt>
pop    %rbp
ret

x86 assembly (clang, -O2):
<print_falcon>:
lea    0xee9(%rip),%rdi
jmp    1030 <puts@plt>

LLVM IR (-O0):
@.str = [3653 x i8] c" ____ ____\0A / --.| |.-- \\\0A /,---|| ||---.\\\0A // || || \\\\\0A // || || \\\\\0A // __ || || __ \\\\\0A //,' `. || || ,'||`.\\\\\0A //( \\`--|)|| ||( '| )\\\\\0A // `.-_,' ||________|| `.-_,' \\\\\0A // | || _| || \\\\\0A // | || | .. | || \\\\\0A // | || | :: | || \\\\\0A / __ 888|| | _ | || __ \\\0A / ,'|_'. _ 888|| | | | || _ ,'-.`. \\\0A / ( ,-._ | |888|| | -| | || |_| ( |==) \\\0A / `O__,'|_|8@ || | [| | |@ |_| `._|,' \\\0A / __..|--| | )| | |--|_|__ \\ ,==.\0A / __,--'' | | | | | ``--.__ \\ //[]\\\\\0A / ,::::' |-=| | | |::::.. `-. \\ //||||\\\\\0A / ,-'::::: ..::| | /| | |:::::::: `-. \\ ||,' `.||\0A / ,' '' ::::::| | \\| | | '':::: oo `. \\ |--------|\0A /,' ,'\\ :::'''|] | | | | .... o8888o `.\\ |:::_[[[[]\0A /' ,' ) |> | | | [| :::::: 88888 .. \\ | | ]\0A / ,' | |] |=_| | [| '::::'oo 8 :::: \\-' |---|\0A .' o ,' \\_/ | :| \\| |.[| o8888o ::;-' ,' |\0A ,' o88,' `._/:\\| | :| | |: | 88888888 ,-' \\ _,-' |\0A | 8888 ``--'|::::| |_:| | |:_| 8888 ,-' \\ ,-' .::_,-'\0A ,' 8888 ''-- || || [| || || ,-' _,-' \\ _::'\0A | || |_,--._| || ,-' \\ ,-' _,-'\0A | |__(______)__| ,-' _,-' .::_,-' |\0A|' 88o =====,,--..===== .-' ,-' \\ _::' `|\0A| 888888o ,-'\\ /`-. \\ \\-' . _,-' |\0A`---._____ 888888888 ,' / [HHHH[=====- \\ |_::' _____.---'\0A __|_____`=======._____ / \\ [HHHH[=====- `'__.======='_____|__\0A {I | _______________ || / /\\/____\\/\\:. \\ || _______________ | I}\0A [I | :___]__[_______ ||( / _.._ \\:. )|| ______]___[___: | I]\0A {I_|____________o8o___|| \\ /: /\\ /\\ \\: / ||__________________|_I}\0A |_____,------' \\/:' \\ \\/ / \\/:.. 88`-------._____|\0A.---' :::::: `. [||||] ,' '::.. `---.\0A| '::..:: ,' `-. ,-' `. ':' |\0A|. .:::'' ,' __ ``--'' __ `. .::. ,|\0A | ''' ,' ,'||`. __ ,'||`. `. '::::. |\0A | ,' (||||||) ,'||`. (||||||) 88. '::::. |\0A `. ,' `.||,' (||||||) `.||,' 88888. ':' ,'\0A | ,' __ `.||,' __ 88 `. |\0A `. ,' ,'||`. __ ,'||`. `. ,'\0A `. ,' (||||||) ,'||`. (||||||) `. ,'\0A \\ ,' `.||,' (||||||) `.||,' `. /\0A `. | `.||,' | ,'\0A `-| |-'\0A `. ,'. .`. ,'\0A `-:,'o88o ,/ \\. `.;-'\0A `-888 // / ||ooo \\ oo88 \\ __,-' \0A `--..__ /' ||888 `\\ oo8;--'\0A ```-----''-----''''\0A\0A\00"
define void @print_falcon() {
%1 = call i32 @printf(i8* getelementptr inbounds ([3653 x i8], [3653 x i8]* @.str, i64 0, i64 0))
ret void
}

LLVM IR (-O2):
@str = [3652 x i8] c" ____ ____\0A / --.| |.-- \\\0A /,---|| ||---.\\\0A // || || \\\\\0A // || || \\\\\0A // __ || || __ \\\\\0A //,' `. || || ,'||`.\\\\\0A //( \\`--|)|| ||( '| )\\\\\0A // `.-_,' ||________|| `.-_,' \\\\\0A // | || _| || \\\\\0A // | || | .. | || \\\\\0A // | || | :: | || \\\\\0A / __ 888|| | _ | || __ \\\0A / ,'|_'. _ 888|| | | | || _ ,'-.`. \\\0A / ( ,-._ | |888|| | -| | || |_| ( |==) \\\0A / `O__,'|_|8@ || | [| | |@ |_| `._|,' \\\0A / __..|--| | )| | |--|_|__ \\ ,==.\0A / __,--'' | | | | | ``--.__ \\ //[]\\\\\0A / ,::::' |-=| | | |::::.. `-. \\ //||||\\\\\0A / ,-'::::: ..::| | /| | |:::::::: `-. \\ ||,' `.||\0A / ,' '' ::::::| | \\| | | '':::: oo `. \\ |--------|\0A /,' ,'\\ :::'''|] | | | | .... o8888o `.\\ |:::_[[[[]\0A /' ,' ) |> | | | [| :::::: 88888 .. \\ | | ]\0A / ,' | |] |=_| | [| '::::'oo 8 :::: \\-' |---|\0A .' o ,' \\_/ | :| \\| |.[| o8888o ::;-' ,' |\0A ,' o88,' `._/:\\| | :| | |: | 88888888 ,-' \\ _,-' |\0A | 8888 ``--'|::::| |_:| | |:_| 8888 ,-' \\ ,-' .::_,-'\0A ,' 8888 ''-- || || [| || || ,-' _,-' \\ _::'\0A | || |_,--._| || ,-' \\ ,-' _,-'\0A | |__(______)__| ,-' _,-' .::_,-' |\0A|' 88o =====,,--..===== .-' ,-' \\ _::' `|\0A| 888888o ,-'\\ /`-. \\ \\-' . _,-' |\0A`---._____ 888888888 ,' / [HHHH[=====- \\ |_::' _____.---'\0A __|_____`=======._____ / \\ [HHHH[=====- `'__.======='_____|__\0A {I | _______________ || / /\\/____\\/\\:. \\ || _______________ | I}\0A [I | :___]__[_______ ||( / _.._ \\:. )|| ______]___[___: | I]\0A {I_|____________o8o___|| \\ /: /\\ /\\ \\: / ||__________________|_I}\0A |_____,------' \\/:' \\ \\/ / \\/:.. 88`-------._____|\0A.---' :::::: `. [||||] ,' '::.. `---.\0A| '::..:: ,' `-. ,-' `. ':' |\0A|. .:::'' ,' __ ``--'' __ `. .::. ,|\0A | ''' ,' ,'||`. __ ,'||`. `. '::::. |\0A | ,' (||||||) ,'||`. (||||||) 88. '::::. |\0A `. ,' `.||,' (||||||) `.||,' 88888. ':' ,'\0A | ,' __ `.||,' __ 88 `. |\0A `. ,' ,'||`. __ ,'||`. `. ,'\0A `. ,' (||||||) ,'||`. (||||||) `. ,'\0A \\ ,' `.||,' (||||||) `.||,' `. /\0A `. | `.||,' | ,'\0A `-| |-'\0A `. ,'. .`. ,'\0A `-:,'o88o ,/ \\. `.;-'\0A `-888 // / ||ooo \\ oo88 \\ __,-' \0A `--..__ /' ||888 `\\ oo8;--'\0A ```-----''-----''''\0A\00"
define void @print_falcon() {
%1 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([3652 x i8], [3652 x i8]* @str, i64 0, i64 0))
ret void
}