#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 report_styles(void) {
  printf("\\section{Style definitions}\n");
  printf("\\textrm{The reader should first note that a2ps is _not_ a");
  printf("powerful syntactical pretty-printer: it just handles lexical");
  printf("structures, i.e., if in your language IF IF == THEN THEN");
  printf("ELSE := IF ELSE ELSE := THEN, then a2ps is not the tool you");
  printf("need. It is for the same reason that you can't expect a2ps");
  printf("to highlight the function definitions in C.");
  printf("\n");
  printf("In the following is described how the style sheets are");
  printf("defined. You can skip this section if you don't care how");
  printf("a2ps does this, and if you don't expect to implement new");
  printf("styles.}");
  printf("\n\n");
  printf("\\subsection{Name and abbreviations}\n");
  printf("\\textrm{Every style has a unique name which is the one");
  printf("written in verbose mode. Any of the name or abbreviations");
  printf("can be used with option -k.  When automatic pretty-printing");
  printf("is enabled, first a2ps calls} file \\textrm{to see whether");
  printf("the language is recognizable. Otherwise, the suffix of the");
  printf("file is compared with every name and abbreviation. On");
  printf("failure, plain style is used.}");
  printf("\n\n");
  printf("\\subsection{Alphabets}\n");
  printf("\\textrm{a2ps needs to know the beginning and the end of a");
  printf("word, especially keywords. Alpha-numerical characters are");
  printf("always supposed to be in the alphabet. Hence it needs two");
  printf("alphabet extensions (lists of intervals): the first");
  printf("specifying by which letters an identifier can begin, and the");
  printf("second for the rest of the word.}");
  printf("\\subsection{Keywords, regular symbols}\n");
  printf("\\textrm{A keyword if recognized, is just written in a");
  printf("special font.  A symbol, when recognized, is replaced by the");
  printf("corresponding character in the symbol font. To be");
  printf("recognized, both need to start by a character in the first");
  printf("alphabet and to be immediately followed by a character which");
  printf("does not belong to the second alphabet.}");
  printf("\n\n");
  printf("\\subsection{Special symbols}\n");
  printf("\\textrm{They need not to be preceded and followed by");
  printf("characters belonging to the alphabet. For instance in caml,");
  printf("`not' is a regular symbol written} \\not\\textrm{; it is not");
  printf("the case of `nota' or `notnot'. But <> always means }");
  printf("\\neq\\textrm{, even if there are no spaces around.  \n Both");
  printf("regular and special symbols are transformed only if option");
  printf("-t was given.}");
  printf("\n\n");
  printf("\\subsection{Sequences}\n");
  printf("\\textrm{They start with one special sequence of characters");
  printf("and finish with another one, such as strings, comments");
  printf("etc. Three fonts are used: one for the initial marker, one");
  printf("for the core of the sequence, and a last one for the final");
  printf("maker.}");
  printf("\n\n");
  printf("\\subsection{Escapes and verbatims}\n");
  printf("\\textrm{Escapes are immediately copied when found in a");
  printf("sequence. Their main use is to avoid a sequence from being");
  printf("terminated too soon, e.g., the string} \\verb+\"\\\"\"+");
  printf("\\textrm{is legal in C, hence it is necessary to specify in");
  printf("a2ps that} \\verb+\\\\+ \\textrm{and} \\verb+\\\"+");
  printf("\\textrm{have to be written has such when in a sequence:");
  printf("they are escapes.");
  printf("\n");
  printf("Verbatims are immediately copied wherever they are met. It");
  printf("has been implemented for ada in which ''' is the character");
  printf("'. a2ps must not understand it as opening of a sequence");
  printf("(first quote), closing of the sequence (second quote),");
  printf("opening of a sequence (third quote). Nor is it possible to");
  printf("specify that ' is an escape...}");
  printf("\n\n");
  printf("\\subsection{Case sensitivity}\n");
  printf("\\textrm{If the style is case insensitive, the case does not");
  printf("matter for the keyword, symbol and sequence");
  printf("recognition. Other categories are not concerned by case");
  printf("sensitivity.}");
  printf("\n\n\n\n");
}


x86 assembly (clang, -O0):
<report_styles>:
push   %rbp
mov    %rsp,%rbp
lea    0xee5(%rip),%rdi
call   1030 <printf@plt>
lea    0xef6(%rip),%rdi
call   1030 <printf@plt>
lea    0xf24(%rip),%rdi
call   1030 <printf@plt>
lea    0xf55(%rip),%rdi
call   1030 <printf@plt>
lea    0xf82(%rip),%rdi
call   1030 <printf@plt>
lea    0xfb2(%rip),%rdi
call   1030 <printf@plt>
lea    0xfe1(%rip),%rdi
call   1030 <printf@plt>
lea    0x1b2c(%rip),%rdi
call   1030 <printf@plt>
lea    0xff5(%rip),%rdi
call   1030 <printf@plt>
lea    0x1020(%rip),%rdi
call   1030 <printf@plt>
lea    0x104d(%rip),%rdi
call   1030 <printf@plt>
lea    0x107a(%rip),%rdi
call   1030 <printf@plt>
lea    0x1aef(%rip),%rdi
call   1030 <printf@plt>
lea    0x106b(%rip),%rdi
call   1030 <printf@plt>
lea    0x1084(%rip),%rdi
call   1030 <printf@plt>
lea    0x10af(%rip),%rdi
call   1030 <printf@plt>
lea    0x10dd(%rip),%rdi
call   1030 <printf@plt>
lea    0x110d(%rip),%rdi
call   1030 <printf@plt>
lea    0x113b(%rip),%rdi
call   1030 <printf@plt>
lea    0x116a(%rip),%rdi
call   1030 <printf@plt>
lea    0x1194(%rip),%rdi
call   1030 <printf@plt>
lea    0x1a83(%rip),%rdi
call   1030 <printf@plt>
lea    0x119b(%rip),%rdi
call   1030 <printf@plt>
lea    0x11a7(%rip),%rdi
call   1030 <printf@plt>
lea    0x11d5(%rip),%rdi
call   1030 <printf@plt>
lea    0x1203(%rip),%rdi
call   1030 <printf@plt>
lea    0x1231(%rip),%rdi
call   1030 <printf@plt>
lea    0x1259(%rip),%rdi
call   1030 <printf@plt>
lea    0x128a(%rip),%rdi
call   1030 <printf@plt>
lea    0x12a0(%rip),%rdi
call   1030 <printf@plt>
lea    0x12bc(%rip),%rdi
call   1030 <printf@plt>
lea    0x12e6(%rip),%rdi
call   1030 <printf@plt>
lea    0x1317(%rip),%rdi
call   1030 <printf@plt>
lea    0x133d(%rip),%rdi
call   1030 <printf@plt>
lea    0x136c(%rip),%rdi
call   1030 <printf@plt>
lea    0x139d(%rip),%rdi
call   1030 <printf@plt>
lea    0x19cf(%rip),%rdi
call   1030 <printf@plt>
lea    0x13ae(%rip),%rdi
call   1030 <printf@plt>
lea    0x13c0(%rip),%rdi
call   1030 <printf@plt>
lea    0x13e9(%rip),%rdi
call   1030 <printf@plt>
lea    0x1419(%rip),%rdi
call   1030 <printf@plt>
lea    0x1448(%rip),%rdi
call   1030 <printf@plt>
lea    0x1472(%rip),%rdi
call   1030 <printf@plt>
lea    0x14a0(%rip),%rdi
call   1030 <printf@plt>
lea    0x14cf(%rip),%rdi
call   1030 <printf@plt>
lea    0x1963(%rip),%rdi
call   1030 <printf@plt>
lea    0x14c6(%rip),%rdi
call   1030 <printf@plt>
lea    0x14d2(%rip),%rdi
call   1030 <printf@plt>
lea    0x1501(%rip),%rdi
call   1030 <printf@plt>
lea    0x152c(%rip),%rdi
call   1030 <printf@plt>
lea    0x155b(%rip),%rdi
call   1030 <printf@plt>
lea    0x158a(%rip),%rdi
call   1030 <printf@plt>
lea    0x190f(%rip),%rdi
call   1030 <printf@plt>
lea    0x157a(%rip),%rdi
call   1030 <printf@plt>
lea    0x1592(%rip),%rdi
call   1030 <printf@plt>
lea    0x15bd(%rip),%rdi
call   1030 <printf@plt>
lea    0x15ec(%rip),%rdi
call   1030 <printf@plt>
lea    0x1613(%rip),%rdi
call   1030 <printf@plt>
lea    0x1642(%rip),%rdi
call   1030 <printf@plt>
lea    0x1662(%rip),%rdi
call   1030 <printf@plt>
lea    0x168e(%rip),%rdi
call   1030 <printf@plt>
lea    0x18a4(%rip),%rdi
call   1030 <printf@plt>
lea    0x1688(%rip),%rdi
call   1030 <printf@plt>
lea    0x16b7(%rip),%rdi
call   1030 <printf@plt>
lea    0x16e6(%rip),%rdi
call   1030 <printf@plt>
lea    0x1712(%rip),%rdi
call   1030 <printf@plt>
lea    0x173d(%rip),%rdi
call   1030 <printf@plt>
lea    0x176c(%rip),%rdi
call   1030 <printf@plt>
lea    0x184f(%rip),%rdi
call   1030 <printf@plt>
lea    0x1774(%rip),%rdi
call   1030 <printf@plt>
lea    0x1787(%rip),%rdi
call   1030 <printf@plt>
lea    0x17b7(%rip),%rdi
call   1030 <printf@plt>
lea    0x17d7(%rip),%rdi
call   1030 <printf@plt>
lea    0x1803(%rip),%rdi
call   1030 <printf@plt>
lea    0x1805(%rip),%rdi
call   1030 <printf@plt>
pop    %rbp
ret

x86 assembly (clang, -O2):
<report_styles>:
push   %rbx
lea    0x1a65(%rip),%rdi
call   1040 <puts@plt>
lea    0xebc(%rip),%rdi
call   1050 <printf@plt>
lea    0xeea(%rip),%rdi
call   1050 <printf@plt>
lea    0xf1b(%rip),%rdi
call   1050 <printf@plt>
lea    0xf48(%rip),%rdi
call   1050 <printf@plt>
lea    0xf78(%rip),%rdi
call   1050 <printf@plt>
lea    0xfa7(%rip),%rdi
call   1050 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0xfbd(%rip),%rdi
call   1050 <printf@plt>
lea    0xfe8(%rip),%rdi
call   1050 <printf@plt>
lea    0x1015(%rip),%rdi
call   1050 <printf@plt>
lea    0x1042(%rip),%rdi
call   1050 <printf@plt>
lea    0x1acc(%rip),%rbx
mov    %rbx,%rdi
call   1040 <puts@plt>
lea    0x19e4(%rip),%rdi
call   1040 <puts@plt>
lea    0x1024(%rip),%rdi
call   1050 <printf@plt>
lea    0x104f(%rip),%rdi
call   1050 <printf@plt>
lea    0x107d(%rip),%rdi
call   1050 <printf@plt>
lea    0x10ad(%rip),%rdi
call   1050 <printf@plt>
lea    0x10db(%rip),%rdi
call   1050 <printf@plt>
lea    0x110a(%rip),%rdi
call   1050 <printf@plt>
lea    0x1134(%rip),%rdi
call   1050 <printf@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
lea    0x19a0(%rip),%rdi
call   1040 <puts@plt>
lea    0x1133(%rip),%rdi
call   1050 <printf@plt>
lea    0x1161(%rip),%rdi
call   1050 <printf@plt>
lea    0x118f(%rip),%rdi
call   1050 <printf@plt>
lea    0x11bd(%rip),%rdi
call   1050 <printf@plt>
lea    0x11e5(%rip),%rdi
call   1050 <printf@plt>
lea    0x1216(%rip),%rdi
call   1050 <printf@plt>
lea    0x1963(%rip),%rdi
call   1040 <puts@plt>
lea    0x1220(%rip),%rdi
call   1050 <printf@plt>
lea    0x124a(%rip),%rdi
call   1050 <printf@plt>
lea    0x127b(%rip),%rdi
call   1050 <printf@plt>
lea    0x12a1(%rip),%rdi
call   1050 <printf@plt>
lea    0x12d0(%rip),%rdi
call   1050 <printf@plt>
lea    0x1301(%rip),%rdi
call   1050 <printf@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
lea    0x192e(%rip),%rdi
call   1040 <puts@plt>
lea    0x130a(%rip),%rdi
call   1050 <printf@plt>
lea    0x1333(%rip),%rdi
call   1050 <printf@plt>
lea    0x1363(%rip),%rdi
call   1050 <printf@plt>
lea    0x1392(%rip),%rdi
call   1050 <printf@plt>
lea    0x13bc(%rip),%rdi
call   1050 <printf@plt>
lea    0x13ea(%rip),%rdi
call   1050 <printf@plt>
lea    0x1419(%rip),%rdi
call   1050 <printf@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
lea    0x18e3(%rip),%rdi
call   1040 <puts@plt>
lea    0x1408(%rip),%rdi
call   1050 <printf@plt>
lea    0x1437(%rip),%rdi
call   1050 <printf@plt>
lea    0x1462(%rip),%rdi
call   1050 <printf@plt>
lea    0x1491(%rip),%rdi
call   1050 <printf@plt>
lea    0x14c0(%rip),%rdi
call   1050 <printf@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
lea    0x18aa(%rip),%rdi
call   1040 <puts@plt>
lea    0x14a8(%rip),%rdi
call   1050 <printf@plt>
lea    0x14d3(%rip),%rdi
call   1050 <printf@plt>
lea    0x1502(%rip),%rdi
call   1050 <printf@plt>
lea    0x1529(%rip),%rdi
call   1050 <printf@plt>
lea    0x1558(%rip),%rdi
call   1050 <printf@plt>
lea    0x1578(%rip),%rdi
call   1050 <printf@plt>
lea    0x15a4(%rip),%rdi
call   1050 <printf@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x15a0(%rip),%rdi
call   1050 <printf@plt>
lea    0x15cf(%rip),%rdi
call   1050 <printf@plt>
lea    0x15fe(%rip),%rdi
call   1050 <printf@plt>
lea    0x162a(%rip),%rdi
call   1050 <printf@plt>
lea    0x1655(%rip),%rdi
call   1050 <printf@plt>
lea    0x1684(%rip),%rdi
call   1050 <printf@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
lea    0x1813(%rip),%rdi
call   1040 <puts@plt>
lea    0x1684(%rip),%rdi
call   1050 <printf@plt>
lea    0x16b4(%rip),%rdi
call   1050 <printf@plt>
lea    0x16d4(%rip),%rdi
call   1050 <printf@plt>
lea    0x1700(%rip),%rdi
call   1050 <printf@plt>
lea    0x17f5(%rip),%rdi
pop    %rbx
jmp    1040 <puts@plt>

LLVM IR (-O0):
@.str = [29 x i8] c"\\section{Style definitions}\0A\00"
@.str.1 = [58 x i8] c"\\textrm{The reader should first note that a2ps is _not_ a\00"
@.str.2 = [61 x i8] c"powerful syntactical pretty-printer: it just handles lexical\00"
@.str.3 = [57 x i8] c"structures, i.e., if in your language IF IF == THEN THEN\00"
@.str.4 = [60 x i8] c"ELSE := IF ELSE ELSE := THEN, then a2ps is not the tool you\00"
@.str.5 = [59 x i8] c"need. It is for the same reason that you can't expect a2ps\00"
@.str.6 = [44 x i8] c"to highlight the function definitions in C.\00"
@.str.7 = [2 x i8] c"\0A\00"
@.str.8 = [55 x i8] c"In the following is described how the style sheets are\00"
@.str.9 = [57 x i8] c"defined. You can skip this section if you don't care how\00"
@.str.10 = [57 x i8] c"a2ps does this, and if you don't expect to implement new\00"
@.str.11 = [9 x i8] c"styles.}\00"
@.str.12 = [3 x i8] c"\0A\0A\00"
@.str.13 = [37 x i8] c"\\subsection{Name and abbreviations}\0A\00"
@.str.14 = [55 x i8] c"\\textrm{Every style has a unique name which is the one\00"
@.str.15 = [58 x i8] c"written in verbose mode. Any of the name or abbreviations\00"
@.str.16 = [60 x i8] c"can be used with option -k. When automatic pretty-printing\00"
@.str.17 = [58 x i8] c"is enabled, first a2ps calls} file \\textrm{to see whether\00"
@.str.18 = [59 x i8] c"the language is recognizable. Otherwise, the suffix of the\00"
@.str.19 = [54 x i8] c"file is compared with every name and abbreviation. On\00"
@.str.20 = [31 x i8] c"failure, plain style is used.}\00"
@.str.21 = [24 x i8] c"\\subsection{Alphabets}\0A\00"
@.str.22 = [58 x i8] c"\\textrm{a2ps needs to know the beginning and the end of a\00"
@.str.23 = [58 x i8] c"word, especially keywords. Alpha-numerical characters are\00"
@.str.24 = [58 x i8] c"always supposed to be in the alphabet. Hence it needs two\00"
@.str.25 = [52 x i8] c"alphabet extensions (lists of intervals): the first\00"
@.str.26 = [61 x i8] c"specifying by which letters an identifier can begin, and the\00"
@.str.27 = [34 x i8] c"second for the rest of the word.}\00"
@.str.28 = [40 x i8] c"\\subsection{Keywords, regular symbols}\0A\00"
@.str.29 = [54 x i8] c"\\textrm{A keyword if recognized, is just written in a\00"
@.str.30 = [61 x i8] c"special font. A symbol, when recognized, is replaced by the\00"
@.str.31 = [50 x i8] c"corresponding character in the symbol font. To be\00"
@.str.32 = [59 x i8] c"recognized, both need to start by a character in the first\00"
@.str.33 = [61 x i8] c"alphabet and to be immediately followed by a character which\00"
@.str.34 = [41 x i8] c"does not belong to the second alphabet.}\00"
@.str.35 = [30 x i8] c"\\subsection{Special symbols}\0A\00"
@.str.36 = [53 x i8] c"\\textrm{They need not to be preceded and followed by\00"
@.str.37 = [60 x i8] c"characters belonging to the alphabet. For instance in caml,\00"
@.str.38 = [59 x i8] c"`not' is a regular symbol written} \\not\\textrm{; it is not\00"
@.str.39 = [54 x i8] c"the case of `nota' or `notnot'. But <> always means }\00"
@.str.40 = [58 x i8] c"\\neq\\textrm{, even if there are no spaces around. \0A Both\00"
@.str.41 = [59 x i8] c"regular and special symbols are transformed only if option\00"
@.str.42 = [15 x i8] c"-t was given.}\00"
@.str.43 = [24 x i8] c"\\subsection{Sequences}\0A\00"
@.str.44 = [59 x i8] c"\\textrm{They start with one special sequence of characters\00"
@.str.45 = [55 x i8] c"and finish with another one, such as strings, comments\00"
@.str.46 = [59 x i8] c"etc. Three fonts are used: one for the initial marker, one\00"
@.str.47 = [59 x i8] c"for the core of the sequence, and a last one for the final\00"
@.str.48 = [8 x i8] c"maker.}\00"
@.str.49 = [36 x i8] c"\\subsection{Escapes and verbatims}\0A\00"
@.str.50 = [55 x i8] c"\\textrm{Escapes are immediately copied when found in a\00"
@.str.51 = [59 x i8] c"sequence. Their main use is to avoid a sequence from being\00"
@.str.52 = [51 x i8] c"terminated too soon, e.g., the string} \\verb+\22\\\22\22+\00"
@.str.53 = [59 x i8] c"\\textrm{is legal in C, hence it is necessary to specify in\00"
@.str.54 = [44 x i8] c"a2ps that} \\verb+\\\\+ \\textrm{and} \\verb+\\\22+\00"
@.str.55 = [56 x i8] c"\\textrm{have to be written has such when in a sequence:\00"
@.str.56 = [18 x i8] c"they are escapes.\00"
@.str.57 = [59 x i8] c"Verbatims are immediately copied wherever they are met. It\00"
@.str.58 = [59 x i8] c"has been implemented for ada in which ''' is the character\00"
@.str.59 = [56 x i8] c"'. a2ps must not understand it as opening of a sequence\00"
@.str.60 = [55 x i8] c"(first quote), closing of the sequence (second quote),\00"
@.str.61 = [59 x i8] c"opening of a sequence (third quote). Nor is it possible to\00"
@.str.62 = [32 x i8] c"specify that ' is an escape...}\00"
@.str.63 = [31 x i8] c"\\subsection{Case sensitivity}\0A\00"
@.str.64 = [60 x i8] c"\\textrm{If the style is case insensitive, the case does not\00"
@.str.65 = [44 x i8] c"matter for the keyword, symbol and sequence\00"
@.str.66 = [56 x i8] c"recognition. Other categories are not concerned by case\00"
@.str.67 = [14 x i8] c"sensitivity.}\00"
@.str.68 = [5 x i8] c"\0A\0A\0A\0A\00"
define void @report_styles() {
%1 = call i32 @printf(i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str, i64 0, i64 0))
%2 = call i32 @printf(i8* getelementptr inbounds ([58 x i8], [58 x i8]* @.str.1, i64 0, i64 0))
%3 = call i32 @printf(i8* getelementptr inbounds ([61 x i8], [61 x i8]* @.str.2, i64 0, i64 0))
%4 = call i32 @printf(i8* getelementptr inbounds ([57 x i8], [57 x i8]* @.str.3, i64 0, i64 0))
%5 = call i32 @printf(i8* getelementptr inbounds ([60 x i8], [60 x i8]* @.str.4, i64 0, i64 0))
%6 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.5, i64 0, i64 0))
%7 = call i32 @printf(i8* getelementptr inbounds ([44 x i8], [44 x i8]* @.str.6, i64 0, i64 0))
%8 = call i32 @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.7, i64 0, i64 0))
%9 = call i32 @printf(i8* getelementptr inbounds ([55 x i8], [55 x i8]* @.str.8, i64 0, i64 0))
%10 = call i32 @printf(i8* getelementptr inbounds ([57 x i8], [57 x i8]* @.str.9, i64 0, i64 0))
%11 = call i32 @printf(i8* getelementptr inbounds ([57 x i8], [57 x i8]* @.str.10, i64 0, i64 0))
%12 = call i32 @printf(i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.11, i64 0, i64 0))
%13 = call i32 @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.12, i64 0, i64 0))
%14 = call i32 @printf(i8* getelementptr inbounds ([37 x i8], [37 x i8]* @.str.13, i64 0, i64 0))
%15 = call i32 @printf(i8* getelementptr inbounds ([55 x i8], [55 x i8]* @.str.14, i64 0, i64 0))
%16 = call i32 @printf(i8* getelementptr inbounds ([58 x i8], [58 x i8]* @.str.15, i64 0, i64 0))
%17 = call i32 @printf(i8* getelementptr inbounds ([60 x i8], [60 x i8]* @.str.16, i64 0, i64 0))
%18 = call i32 @printf(i8* getelementptr inbounds ([58 x i8], [58 x i8]* @.str.17, i64 0, i64 0))
%19 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.18, i64 0, i64 0))
%20 = call i32 @printf(i8* getelementptr inbounds ([54 x i8], [54 x i8]* @.str.19, i64 0, i64 0))
%21 = call i32 @printf(i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.20, i64 0, i64 0))
%22 = call i32 @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.12, i64 0, i64 0))
%23 = call i32 @printf(i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.21, i64 0, i64 0))
%24 = call i32 @printf(i8* getelementptr inbounds ([58 x i8], [58 x i8]* @.str.22, i64 0, i64 0))
%25 = call i32 @printf(i8* getelementptr inbounds ([58 x i8], [58 x i8]* @.str.23, i64 0, i64 0))
%26 = call i32 @printf(i8* getelementptr inbounds ([58 x i8], [58 x i8]* @.str.24, i64 0, i64 0))
%27 = call i32 @printf(i8* getelementptr inbounds ([52 x i8], [52 x i8]* @.str.25, i64 0, i64 0))
%28 = call i32 @printf(i8* getelementptr inbounds ([61 x i8], [61 x i8]* @.str.26, i64 0, i64 0))
%29 = call i32 @printf(i8* getelementptr inbounds ([34 x i8], [34 x i8]* @.str.27, i64 0, i64 0))
%30 = call i32 @printf(i8* getelementptr inbounds ([40 x i8], [40 x i8]* @.str.28, i64 0, i64 0))
%31 = call i32 @printf(i8* getelementptr inbounds ([54 x i8], [54 x i8]* @.str.29, i64 0, i64 0))
%32 = call i32 @printf(i8* getelementptr inbounds ([61 x i8], [61 x i8]* @.str.30, i64 0, i64 0))
%33 = call i32 @printf(i8* getelementptr inbounds ([50 x i8], [50 x i8]* @.str.31, i64 0, i64 0))
%34 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.32, i64 0, i64 0))
%35 = call i32 @printf(i8* getelementptr inbounds ([61 x i8], [61 x i8]* @.str.33, i64 0, i64 0))
%36 = call i32 @printf(i8* getelementptr inbounds ([41 x i8], [41 x i8]* @.str.34, i64 0, i64 0))
%37 = call i32 @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.12, i64 0, i64 0))
%38 = call i32 @printf(i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.35, i64 0, i64 0))
%39 = call i32 @printf(i8* getelementptr inbounds ([53 x i8], [53 x i8]* @.str.36, i64 0, i64 0))
%40 = call i32 @printf(i8* getelementptr inbounds ([60 x i8], [60 x i8]* @.str.37, i64 0, i64 0))
%41 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.38, i64 0, i64 0))
%42 = call i32 @printf(i8* getelementptr inbounds ([54 x i8], [54 x i8]* @.str.39, i64 0, i64 0))
%43 = call i32 @printf(i8* getelementptr inbounds ([58 x i8], [58 x i8]* @.str.40, i64 0, i64 0))
%44 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.41, i64 0, i64 0))
%45 = call i32 @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.42, i64 0, i64 0))
%46 = call i32 @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.12, i64 0, i64 0))
%47 = call i32 @printf(i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.43, i64 0, i64 0))
%48 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.44, i64 0, i64 0))
%49 = call i32 @printf(i8* getelementptr inbounds ([55 x i8], [55 x i8]* @.str.45, i64 0, i64 0))
%50 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.46, i64 0, i64 0))
%51 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.47, i64 0, i64 0))
%52 = call i32 @printf(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.48, i64 0, i64 0))
%53 = call i32 @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.12, i64 0, i64 0))
%54 = call i32 @printf(i8* getelementptr inbounds ([36 x i8], [36 x i8]* @.str.49, i64 0, i64 0))
%55 = call i32 @printf(i8* getelementptr inbounds ([55 x i8], [55 x i8]* @.str.50, i64 0, i64 0))
%56 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.51, i64 0, i64 0))
%57 = call i32 @printf(i8* getelementptr inbounds ([51 x i8], [51 x i8]* @.str.52, i64 0, i64 0))
%58 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.53, i64 0, i64 0))
%59 = call i32 @printf(i8* getelementptr inbounds ([44 x i8], [44 x i8]* @.str.54, i64 0, i64 0))
%60 = call i32 @printf(i8* getelementptr inbounds ([56 x i8], [56 x i8]* @.str.55, i64 0, i64 0))
%61 = call i32 @printf(i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.56, i64 0, i64 0))
%62 = call i32 @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.7, i64 0, i64 0))
%63 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.57, i64 0, i64 0))
%64 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.58, i64 0, i64 0))
%65 = call i32 @printf(i8* getelementptr inbounds ([56 x i8], [56 x i8]* @.str.59, i64 0, i64 0))
%66 = call i32 @printf(i8* getelementptr inbounds ([55 x i8], [55 x i8]* @.str.60, i64 0, i64 0))
%67 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.61, i64 0, i64 0))
%68 = call i32 @printf(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.62, i64 0, i64 0))
%69 = call i32 @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.12, i64 0, i64 0))
%70 = call i32 @printf(i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.63, i64 0, i64 0))
%71 = call i32 @printf(i8* getelementptr inbounds ([60 x i8], [60 x i8]* @.str.64, i64 0, i64 0))
%72 = call i32 @printf(i8* getelementptr inbounds ([44 x i8], [44 x i8]* @.str.65, i64 0, i64 0))
%73 = call i32 @printf(i8* getelementptr inbounds ([56 x i8], [56 x i8]* @.str.66, i64 0, i64 0))
%74 = call i32 @printf(i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.67, i64 0, i64 0))
%75 = call i32 @printf(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.68, i64 0, i64 0))
ret void
}

LLVM IR (-O2):
@.str.1 = [58 x i8] c"\\textrm{The reader should first note that a2ps is _not_ a\00"
@.str.2 = [61 x i8] c"powerful syntactical pretty-printer: it just handles lexical\00"
@.str.3 = [57 x i8] c"structures, i.e., if in your language IF IF == THEN THEN\00"
@.str.4 = [60 x i8] c"ELSE := IF ELSE ELSE := THEN, then a2ps is not the tool you\00"
@.str.5 = [59 x i8] c"need. It is for the same reason that you can't expect a2ps\00"
@.str.6 = [44 x i8] c"to highlight the function definitions in C.\00"
@.str.8 = [55 x i8] c"In the following is described how the style sheets are\00"
@.str.9 = [57 x i8] c"defined. You can skip this section if you don't care how\00"
@.str.10 = [57 x i8] c"a2ps does this, and if you don't expect to implement new\00"
@.str.11 = [9 x i8] c"styles.}\00"
@.str.14 = [55 x i8] c"\\textrm{Every style has a unique name which is the one\00"
@.str.15 = [58 x i8] c"written in verbose mode. Any of the name or abbreviations\00"
@.str.16 = [60 x i8] c"can be used with option -k. When automatic pretty-printing\00"
@.str.17 = [58 x i8] c"is enabled, first a2ps calls} file \\textrm{to see whether\00"
@.str.18 = [59 x i8] c"the language is recognizable. Otherwise, the suffix of the\00"
@.str.19 = [54 x i8] c"file is compared with every name and abbreviation. On\00"
@.str.20 = [31 x i8] c"failure, plain style is used.}\00"
@.str.22 = [58 x i8] c"\\textrm{a2ps needs to know the beginning and the end of a\00"
@.str.23 = [58 x i8] c"word, especially keywords. Alpha-numerical characters are\00"
@.str.24 = [58 x i8] c"always supposed to be in the alphabet. Hence it needs two\00"
@.str.25 = [52 x i8] c"alphabet extensions (lists of intervals): the first\00"
@.str.26 = [61 x i8] c"specifying by which letters an identifier can begin, and the\00"
@.str.27 = [34 x i8] c"second for the rest of the word.}\00"
@.str.29 = [54 x i8] c"\\textrm{A keyword if recognized, is just written in a\00"
@.str.30 = [61 x i8] c"special font. A symbol, when recognized, is replaced by the\00"
@.str.31 = [50 x i8] c"corresponding character in the symbol font. To be\00"
@.str.32 = [59 x i8] c"recognized, both need to start by a character in the first\00"
@.str.33 = [61 x i8] c"alphabet and to be immediately followed by a character which\00"
@.str.34 = [41 x i8] c"does not belong to the second alphabet.}\00"
@.str.36 = [53 x i8] c"\\textrm{They need not to be preceded and followed by\00"
@.str.37 = [60 x i8] c"characters belonging to the alphabet. For instance in caml,\00"
@.str.38 = [59 x i8] c"`not' is a regular symbol written} \\not\\textrm{; it is not\00"
@.str.39 = [54 x i8] c"the case of `nota' or `notnot'. But <> always means }\00"
@.str.40 = [58 x i8] c"\\neq\\textrm{, even if there are no spaces around. \0A Both\00"
@.str.41 = [59 x i8] c"regular and special symbols are transformed only if option\00"
@.str.42 = [15 x i8] c"-t was given.}\00"
@.str.44 = [59 x i8] c"\\textrm{They start with one special sequence of characters\00"
@.str.45 = [55 x i8] c"and finish with another one, such as strings, comments\00"
@.str.46 = [59 x i8] c"etc. Three fonts are used: one for the initial marker, one\00"
@.str.47 = [59 x i8] c"for the core of the sequence, and a last one for the final\00"
@.str.48 = [8 x i8] c"maker.}\00"
@.str.50 = [55 x i8] c"\\textrm{Escapes are immediately copied when found in a\00"
@.str.51 = [59 x i8] c"sequence. Their main use is to avoid a sequence from being\00"
@.str.52 = [51 x i8] c"terminated too soon, e.g., the string} \\verb+\22\\\22\22+\00"
@.str.53 = [59 x i8] c"\\textrm{is legal in C, hence it is necessary to specify in\00"
@.str.54 = [44 x i8] c"a2ps that} \\verb+\\\\+ \\textrm{and} \\verb+\\\22+\00"
@.str.55 = [56 x i8] c"\\textrm{have to be written has such when in a sequence:\00"
@.str.56 = [18 x i8] c"they are escapes.\00"
@.str.57 = [59 x i8] c"Verbatims are immediately copied wherever they are met. It\00"
@.str.58 = [59 x i8] c"has been implemented for ada in which ''' is the character\00"
@.str.59 = [56 x i8] c"'. a2ps must not understand it as opening of a sequence\00"
@.str.60 = [55 x i8] c"(first quote), closing of the sequence (second quote),\00"
@.str.61 = [59 x i8] c"opening of a sequence (third quote). Nor is it possible to\00"
@.str.62 = [32 x i8] c"specify that ' is an escape...}\00"
@.str.64 = [60 x i8] c"\\textrm{If the style is case insensitive, the case does not\00"
@.str.65 = [44 x i8] c"matter for the keyword, symbol and sequence\00"
@.str.66 = [56 x i8] c"recognition. Other categories are not concerned by case\00"
@.str.67 = [14 x i8] c"sensitivity.}\00"
@str = [28 x i8] c"\\section{Style definitions}\00"
@str.70 = [36 x i8] c"\\subsection{Name and abbreviations}\00"
@str.72 = [23 x i8] c"\\subsection{Alphabets}\00"
@str.73 = [39 x i8] c"\\subsection{Keywords, regular symbols}\00"
@str.75 = [29 x i8] c"\\subsection{Special symbols}\00"
@str.77 = [23 x i8] c"\\subsection{Sequences}\00"
@str.79 = [35 x i8] c"\\subsection{Escapes and verbatims}\00"
@str.80 = [2 x i8] c"\0A\00"
@str.81 = [30 x i8] c"\\subsection{Case sensitivity}\00"
@str.82 = [4 x i8] c"\0A\0A\0A\00"
define void @report_styles() {
%1 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([28 x i8], [28 x i8]* @str, i64 0, i64 0))
%2 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([58 x i8], [58 x i8]* @.str.1, i64 0, i64 0))
%3 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([61 x i8], [61 x i8]* @.str.2, i64 0, i64 0))
%4 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([57 x i8], [57 x i8]* @.str.3, i64 0, i64 0))
%5 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([60 x i8], [60 x i8]* @.str.4, i64 0, i64 0))
%6 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.5, i64 0, i64 0))
%7 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([44 x i8], [44 x i8]* @.str.6, i64 0, i64 0))
%8 = tail call i32 @putchar(i32 10)
%9 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([55 x i8], [55 x i8]* @.str.8, i64 0, i64 0))
%10 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([57 x i8], [57 x i8]* @.str.9, i64 0, i64 0))
%11 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([57 x i8], [57 x i8]* @.str.10, i64 0, i64 0))
%12 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([9 x i8], [9 x i8]* @.str.11, i64 0, i64 0))
%13 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([2 x i8], [2 x i8]* @str.80, i64 0, i64 0))
%14 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([36 x i8], [36 x i8]* @str.70, i64 0, i64 0))
%15 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([55 x i8], [55 x i8]* @.str.14, i64 0, i64 0))
%16 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([58 x i8], [58 x i8]* @.str.15, i64 0, i64 0))
%17 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([60 x i8], [60 x i8]* @.str.16, i64 0, i64 0))
%18 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([58 x i8], [58 x i8]* @.str.17, i64 0, i64 0))
%19 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.18, i64 0, i64 0))
%20 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([54 x i8], [54 x i8]* @.str.19, i64 0, i64 0))
%21 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([31 x i8], [31 x i8]* @.str.20, i64 0, i64 0))
%22 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([2 x i8], [2 x i8]* @str.80, i64 0, i64 0))
%23 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([23 x i8], [23 x i8]* @str.72, i64 0, i64 0))
%24 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([58 x i8], [58 x i8]* @.str.22, i64 0, i64 0))
%25 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([58 x i8], [58 x i8]* @.str.23, i64 0, i64 0))
%26 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([58 x i8], [58 x i8]* @.str.24, i64 0, i64 0))
%27 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([52 x i8], [52 x i8]* @.str.25, i64 0, i64 0))
%28 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([61 x i8], [61 x i8]* @.str.26, i64 0, i64 0))
%29 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([34 x i8], [34 x i8]* @.str.27, i64 0, i64 0))
%30 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([39 x i8], [39 x i8]* @str.73, i64 0, i64 0))
%31 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([54 x i8], [54 x i8]* @.str.29, i64 0, i64 0))
%32 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([61 x i8], [61 x i8]* @.str.30, i64 0, i64 0))
%33 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([50 x i8], [50 x i8]* @.str.31, i64 0, i64 0))
%34 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.32, i64 0, i64 0))
%35 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([61 x i8], [61 x i8]* @.str.33, i64 0, i64 0))
%36 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([41 x i8], [41 x i8]* @.str.34, i64 0, i64 0))
%37 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([2 x i8], [2 x i8]* @str.80, i64 0, i64 0))
%38 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([29 x i8], [29 x i8]* @str.75, i64 0, i64 0))
%39 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([53 x i8], [53 x i8]* @.str.36, i64 0, i64 0))
%40 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([60 x i8], [60 x i8]* @.str.37, i64 0, i64 0))
%41 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.38, i64 0, i64 0))
%42 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([54 x i8], [54 x i8]* @.str.39, i64 0, i64 0))
%43 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([58 x i8], [58 x i8]* @.str.40, i64 0, i64 0))
%44 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.41, i64 0, i64 0))
%45 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([15 x i8], [15 x i8]* @.str.42, i64 0, i64 0))
%46 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([2 x i8], [2 x i8]* @str.80, i64 0, i64 0))
%47 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([23 x i8], [23 x i8]* @str.77, i64 0, i64 0))
%48 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.44, i64 0, i64 0))
%49 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([55 x i8], [55 x i8]* @.str.45, i64 0, i64 0))
%50 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.46, i64 0, i64 0))
%51 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.47, i64 0, i64 0))
%52 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([8 x i8], [8 x i8]* @.str.48, i64 0, i64 0))
%53 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([2 x i8], [2 x i8]* @str.80, i64 0, i64 0))
%54 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([35 x i8], [35 x i8]* @str.79, i64 0, i64 0))
%55 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([55 x i8], [55 x i8]* @.str.50, i64 0, i64 0))
%56 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.51, i64 0, i64 0))
%57 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([51 x i8], [51 x i8]* @.str.52, i64 0, i64 0))
%58 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.53, i64 0, i64 0))
%59 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([44 x i8], [44 x i8]* @.str.54, i64 0, i64 0))
%60 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([56 x i8], [56 x i8]* @.str.55, i64 0, i64 0))
%61 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([18 x i8], [18 x i8]* @.str.56, i64 0, i64 0))
%62 = tail call i32 @putchar(i32 10)
%63 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.57, i64 0, i64 0))
%64 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.58, i64 0, i64 0))
%65 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([56 x i8], [56 x i8]* @.str.59, i64 0, i64 0))
%66 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([55 x i8], [55 x i8]* @.str.60, i64 0, i64 0))
%67 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([59 x i8], [59 x i8]* @.str.61, i64 0, i64 0))
%68 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([32 x i8], [32 x i8]* @.str.62, i64 0, i64 0))
%69 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([2 x i8], [2 x i8]* @str.80, i64 0, i64 0))
%70 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([30 x i8], [30 x i8]* @str.81, i64 0, i64 0))
%71 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([60 x i8], [60 x i8]* @.str.64, i64 0, i64 0))
%72 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([44 x i8], [44 x i8]* @.str.65, i64 0, i64 0))
%73 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([56 x i8], [56 x i8]* @.str.66, i64 0, i64 0))
%74 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @.str.67, i64 0, i64 0))
%75 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([4 x i8], [4 x i8]* @str.82, i64 0, i64 0))
ret void
}