#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*/ lr_end_transaction(char *, int /*<<< orphan*/);
int /*<<< orphan*/ lr_start_transaction(char *);
int /*<<< orphan*/ truclient_step(char *, char *, char *);
Action() {
  truclient_step("1", "Initial Correlation Challenge landing page",
                 "snapshot=Action_1.inf");
  {
    lr_start_transaction("Initial Correlation Challenge Load");
    truclient_step("1.1",
                   "Navigate to 'http://www.myloadtest.c...tion-challenge/'",
                   "snapshot=Action_1.1.inf");
    truclient_step("1.2",
                   "Verify Correlation Challenge 's 'Visible Text' Contain "
                   "Correlation Challenge",
                   "snapshot=Action_1.2.inf");
    lr_end_transaction("Initial Correlation Challenge Load", 0);
  }
  truclient_step("2", "Step 0 - Begin Correlation Challenge",
                 "snapshot=Action_2.inf");
  {
    lr_start_transaction("Step 0 - Begin by clicking next");
    truclient_step("2.1", "Click on Next button", "snapshot=Action_2.1.inf");
    truclient_step("2.2", "Verify Step 1 's 'Visible Text' Contain Step 1",
                   "snapshot=Action_2.2.inf");
    lr_end_transaction("Step 0 - Begin by clicking next", 0);
  }
  truclient_step("5", "Step 1 - Enter the random number",
                 "snapshot=Action_5.inf");
  {
    truclient_step(
        "5.1",
        "Evaluate JavaScript code var content = document.g...lue',array[1]);",
        "snapshot=Action_5.1.inf");
    truclient_step("5.2", "Click on Step 1 Here is a simple... textbox",
                   "snapshot=Action_5.2.inf");
    truclient_step("5.3",
                   "Type TC.getParam('Step1Value');  in Step 1 Here is a "
                   "simple... textbox",
                   "snapshot=Action_5.3.inf");
    lr_start_transaction("Step 1 - Enter the random number");
    truclient_step("5.4", "Click on Next button", "snapshot=Action_5.4.inf");
    truclient_step("5.5", "Verify Step 1 's 'Visible Text' Contain Step 2",
                   "snapshot=Action_5.5.inf");
    lr_end_transaction("Step 1 - Enter the random number", 0);
  }
  truclient_step("6", "Step 2 - Select the default colour",
                 "snapshot=Action_6.inf");
  {
    lr_start_transaction("Step 2 - Select the default colour");
    truclient_step("6.1", "Click on Next button", "snapshot=Action_6.1.inf");
    truclient_step("6.2", "Verify Step 1 's 'Visible Text' Contain Step 3",
                   "snapshot=Action_6.2.inf");
    lr_end_transaction("Step 2 - Select the default colour", 0);
  }
  truclient_step("8", "Step 3 - Select the in-stock items",
                 "snapshot=Action_8.inf");
  {
    truclient_step(
        "8.1", "Evaluate JavaScript code var re = /<td>In S...ount',counter);",
        "snapshot=Action_8.1.inf");
    truclient_step(
        "8.3",
        "For ( var i = 1 ; i < eval(TC.getParam(...p3Value_count')) ; i++ )",
        "snapshot=Action_8.3.inf");
    {
      truclient_step(
          "8.3.1",
          "Evaluate JavaScript code Step3Value=window.Step3V...'+i.toString())",
          "snapshot=Action_8.3.1.inf");
      truclient_step("8.3.2", "Click on Step3Value checkbox",
                     "snapshot=Action_8.3.2.inf");
    }
    lr_start_transaction("Step 3 - Select the in-stock items");
    truclient_step("8.5", "Click on Next button", "snapshot=Action_8.5.inf");
    truclient_step("8.6", "Verify Step 1 's 'Visible Text' Contain Step 4",
                   "snapshot=Action_8.6.inf");
    lr_end_transaction("Step 3 - Select the in-stock items", 0);
  }
  truclient_step("9", "Step 4 - Final step", "snapshot=Action_9.inf");
  {
    lr_start_transaction("Step 4 - Final step");
    truclient_step("9.1", "Click on Next button", "snapshot=Action_9.1.inf");
    truclient_step("9.2",
                   "Verify Correlation Challenge 's 'Visible Text' Contain "
                   "Correlation Challenge",
                   "snapshot=Action_9.2.inf");
    lr_end_transaction("Step 4 - Final step", 0);
  }
  return 0;
}


x86 assembly (clang, -O0):
<Action>:
push   %rbp
mov    %rsp,%rbp
lea    0x10a3(%rip),%rdi
lea    0xebe(%rip),%rsi
lea    0xee2(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0xeec(%rip),%rdi
call   1050 <lr_start_transaction@plt>
lea    0xf03(%rip),%rdi
lea    0xf00(%rip),%rsi
lea    0xf31(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0xf3d(%rip),%rdi
lea    0xf3a(%rip),%rsi
lea    0xf80(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0xeac(%rip),%rdi
xor    %esi,%esi
call   1030 <lr_end_transaction@plt>
lea    0x11e4(%rip),%rdi
lea    0xf77(%rip),%rsi
lea    0xf95(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0xf9f(%rip),%rdi
call   1050 <lr_start_transaction@plt>
lea    0xfb3(%rip),%rdi
lea    0xfb0(%rip),%rsi
lea    0xfbe(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0xfca(%rip),%rdi
lea    0xfc7(%rip),%rsi
lea    0xfef(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0xf5f(%rip),%rdi
xor    %esi,%esi
call   1030 <lr_end_transaction@plt>
lea    0x114d(%rip),%rdi
lea    0xfe6(%rip),%rsi
lea    0x1000(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x100a(%rip),%rdi
lea    0x1007(%rip),%rsi
lea    0x1044(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x1050(%rip),%rdi
lea    0x104d(%rip),%rsi
lea    0x1072(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x107e(%rip),%rdi
lea    0x107b(%rip),%rsi
lea    0x10bb(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0xf85(%rip),%rdi
call   1050 <lr_start_transaction@plt>
lea    0x10bb(%rip),%rdi
lea    0xefa(%rip),%rsi
lea    0x10b1(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x10bd(%rip),%rdi
lea    0x10ba(%rip),%rsi
lea    0x10e2(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0xf45(%rip),%rdi
xor    %esi,%esi
call   1030 <lr_end_transaction@plt>
lea    0x1333(%rip),%rdi
lea    0x10d9(%rip),%rsi
lea    0x10f5(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x10c6(%rip),%rdi
call   1050 <lr_start_transaction@plt>
lea    0x10f3(%rip),%rdi
lea    0xe92(%rip),%rsi
lea    0x10e9(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x10f5(%rip),%rdi
lea    0x10f2(%rip),%rsi
lea    0x111a(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x1086(%rip),%rdi
xor    %esi,%esi
call   1030 <lr_end_transaction@plt>
lea    0x1118(%rip),%rdi
lea    0x1113(%rip),%rsi
lea    0x112f(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x1139(%rip),%rdi
lea    0x1136(%rip),%rsi
lea    0x116d(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x1179(%rip),%rdi
lea    0x1176(%rip),%rsi
lea    0x11b2(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x11be(%rip),%rdi
lea    0x11bd(%rip),%rsi
lea    0x11fa(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x1208(%rip),%rdi
lea    0x1207(%rip),%rsi
lea    0x121d(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x1098(%rip),%rdi
call   1050 <lr_start_transaction@plt>
lea    0x121f(%rip),%rdi
lea    0xdc2(%rip),%rsi
lea    0x1215(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x1221(%rip),%rdi
lea    0x121e(%rip),%rsi
lea    0x1246(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x1058(%rip),%rdi
xor    %esi,%esi
call   1030 <lr_end_transaction@plt>
lea    0x1244(%rip),%rdi
lea    0x123f(%rip),%rsi
lea    0x124c(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x122c(%rip),%rdi
call   1050 <lr_start_transaction@plt>
lea    0x124a(%rip),%rdi
lea    0xd5a(%rip),%rsi
lea    0x1240(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x124c(%rip),%rdi
lea    0xc7c(%rip),%rsi
lea    0x1242(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x11ec(%rip),%rdi
xor    %esi,%esi
call   1030 <lr_end_transaction@plt>
xor    %eax,%eax
pop    %rbp
ret

x86 assembly (clang, -O2):
<Action>:
push   %r15
push   %r14
push   %rbx
lea    0x10a2(%rip),%rdi
lea    0xebd(%rip),%rsi
lea    0xee1(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0xeeb(%rip),%rbx
mov    %rbx,%rdi
call   1050 <lr_start_transaction@plt>
lea    0xeff(%rip),%rdi
lea    0xefc(%rip),%rsi
lea    0xf2d(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0xf39(%rip),%rdi
lea    0xf36(%rip),%r14
lea    0xf7c(%rip),%rdx
mov    %r14,%rsi
call   1040 <truclient_step@plt>
mov    %rbx,%rdi
xor    %esi,%esi
call   1030 <lr_end_transaction@plt>
lea    0x11e1(%rip),%rdi
lea    0xf74(%rip),%rsi
lea    0xf92(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0xf9c(%rip),%rbx
mov    %rbx,%rdi
call   1050 <lr_start_transaction@plt>
lea    0xfad(%rip),%rdi
lea    0xfaa(%rip),%r15
lea    0xfb8(%rip),%rdx
mov    %r15,%rsi
call   1040 <truclient_step@plt>
lea    0xfc1(%rip),%rdi
lea    0xfbe(%rip),%rsi
lea    0xfe6(%rip),%rdx
call   1040 <truclient_step@plt>
mov    %rbx,%rdi
xor    %esi,%esi
call   1030 <lr_end_transaction@plt>
lea    0x1148(%rip),%rdi
lea    0xfe1(%rip),%rbx
lea    0xffb(%rip),%rdx
mov    %rbx,%rsi
call   1040 <truclient_step@plt>
lea    0x1002(%rip),%rdi
lea    0xfff(%rip),%rsi
lea    0x103c(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x1048(%rip),%rdi
lea    0x1045(%rip),%rsi
lea    0x106a(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x1076(%rip),%rdi
lea    0x1073(%rip),%rsi
lea    0x10b3(%rip),%rdx
call   1040 <truclient_step@plt>
mov    %rbx,%rdi
call   1050 <lr_start_transaction@plt>
lea    0x10b7(%rip),%rdi
lea    0x10b4(%rip),%rdx
mov    %r15,%rsi
call   1040 <truclient_step@plt>
lea    0x10bd(%rip),%rdi
lea    0x10ba(%rip),%rsi
lea    0x10e2(%rip),%rdx
call   1040 <truclient_step@plt>
mov    %rbx,%rdi
xor    %esi,%esi
call   1030 <lr_end_transaction@plt>
lea    0x1337(%rip),%rdi
lea    0x10dd(%rip),%rbx
lea    0x10f9(%rip),%rdx
mov    %rbx,%rsi
call   1040 <truclient_step@plt>
mov    %rbx,%rdi
call   1050 <lr_start_transaction@plt>
lea    0x10f8(%rip),%rdi
lea    0x10f5(%rip),%rdx
mov    %r15,%rsi
call   1040 <truclient_step@plt>
lea    0x10fe(%rip),%rdi
lea    0x10fb(%rip),%rsi
lea    0x1123(%rip),%rdx
call   1040 <truclient_step@plt>
mov    %rbx,%rdi
xor    %esi,%esi
call   1030 <lr_end_transaction@plt>
lea    0x1125(%rip),%rdi
lea    0x1120(%rip),%rbx
lea    0x113c(%rip),%rdx
mov    %rbx,%rsi
call   1040 <truclient_step@plt>
lea    0x1143(%rip),%rdi
lea    0x1140(%rip),%rsi
lea    0x1177(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x1183(%rip),%rdi
lea    0x1180(%rip),%rsi
lea    0x11bc(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x11c8(%rip),%rdi
lea    0x11c7(%rip),%rsi
lea    0x1204(%rip),%rdx
call   1040 <truclient_step@plt>
lea    0x1212(%rip),%rdi
lea    0x1211(%rip),%rsi
lea    0x1227(%rip),%rdx
call   1040 <truclient_step@plt>
mov    %rbx,%rdi
call   1050 <lr_start_transaction@plt>
lea    0x122d(%rip),%rdi
lea    0x122a(%rip),%rdx
mov    %r15,%rsi
call   1040 <truclient_step@plt>
lea    0x1233(%rip),%rdi
lea    0x1230(%rip),%rsi
lea    0x1258(%rip),%rdx
call   1040 <truclient_step@plt>
mov    %rbx,%rdi
xor    %esi,%esi
call   1030 <lr_end_transaction@plt>
lea    0x125a(%rip),%rdi
lea    0x1255(%rip),%rbx
lea    0x1262(%rip),%rdx
mov    %rbx,%rsi
call   1040 <truclient_step@plt>
mov    %rbx,%rdi
call   1050 <lr_start_transaction@plt>
lea    0x1261(%rip),%rdi
lea    0x125e(%rip),%rdx
mov    %r15,%rsi
call   1040 <truclient_step@plt>
lea    0x1267(%rip),%rdi
lea    0x1264(%rip),%rdx
mov    %r14,%rsi
call   1040 <truclient_step@plt>
mov    %rbx,%rdi
xor    %esi,%esi
call   1030 <lr_end_transaction@plt>
xor    %eax,%eax
pop    %rbx
pop    %r14
pop    %r15
ret

LLVM IR (-O0):
@.str = [2 x i8] c"1\00"
@.str.1 = [43 x i8] c"Initial Correlation Challenge landing page\00"
@.str.2 = [22 x i8] c"snapshot=Action_1.inf\00"
@.str.3 = [35 x i8] c"Initial Correlation Challenge Load\00"
@.str.4 = [4 x i8] c"1.1\00"
@.str.5 = [56 x i8] c"Navigate to 'http://www.myloadtest.c...tion-challenge/'\00"
@.str.6 = [24 x i8] c"snapshot=Action_1.1.inf\00"
@.str.7 = [4 x i8] c"1.2\00"
@.str.8 = [77 x i8] c"Verify Correlation Challenge 's 'Visible Text' Contain Correlation Challenge\00"
@.str.9 = [24 x i8] c"snapshot=Action_1.2.inf\00"
@.str.10 = [2 x i8] c"2\00"
@.str.11 = [37 x i8] c"Step 0 - Begin Correlation Challenge\00"
@.str.12 = [22 x i8] c"snapshot=Action_2.inf\00"
@.str.13 = [32 x i8] c"Step 0 - Begin by clicking next\00"
@.str.14 = [4 x i8] c"2.1\00"
@.str.15 = [21 x i8] c"Click on Next button\00"
@.str.16 = [24 x i8] c"snapshot=Action_2.1.inf\00"
@.str.17 = [4 x i8] c"2.2\00"
@.str.18 = [47 x i8] c"Verify Step 1 's 'Visible Text' Contain Step 1\00"
@.str.19 = [24 x i8] c"snapshot=Action_2.2.inf\00"
@.str.20 = [2 x i8] c"5\00"
@.str.21 = [33 x i8] c"Step 1 - Enter the random number\00"
@.str.22 = [22 x i8] c"snapshot=Action_5.inf\00"
@.str.23 = [4 x i8] c"5.1\00"
@.str.24 = [68 x i8] c"Evaluate JavaScript code var content = document.g...lue',array[1]);\00"
@.str.25 = [24 x i8] c"snapshot=Action_5.1.inf\00"
@.str.26 = [4 x i8] c"5.2\00"
@.str.27 = [44 x i8] c"Click on Step 1 Here is a simple... textbox\00"
@.str.28 = [24 x i8] c"snapshot=Action_5.2.inf\00"
@.str.29 = [4 x i8] c"5.3\00"
@.str.30 = [71 x i8] c"Type TC.getParam('Step1Value'); in Step 1 Here is a simple... textbox\00"
@.str.31 = [24 x i8] c"snapshot=Action_5.3.inf\00"
@.str.32 = [4 x i8] c"5.4\00"
@.str.33 = [24 x i8] c"snapshot=Action_5.4.inf\00"
@.str.34 = [4 x i8] c"5.5\00"
@.str.35 = [47 x i8] c"Verify Step 1 's 'Visible Text' Contain Step 2\00"
@.str.36 = [24 x i8] c"snapshot=Action_5.5.inf\00"
@.str.37 = [2 x i8] c"6\00"
@.str.38 = [35 x i8] c"Step 2 - Select the default colour\00"
@.str.39 = [22 x i8] c"snapshot=Action_6.inf\00"
@.str.40 = [4 x i8] c"6.1\00"
@.str.41 = [24 x i8] c"snapshot=Action_6.1.inf\00"
@.str.42 = [4 x i8] c"6.2\00"
@.str.43 = [47 x i8] c"Verify Step 1 's 'Visible Text' Contain Step 3\00"
@.str.44 = [24 x i8] c"snapshot=Action_6.2.inf\00"
@.str.45 = [2 x i8] c"8\00"
@.str.46 = [35 x i8] c"Step 3 - Select the in-stock items\00"
@.str.47 = [22 x i8] c"snapshot=Action_8.inf\00"
@.str.48 = [4 x i8] c"8.1\00"
@.str.49 = [62 x i8] c"Evaluate JavaScript code var re = /<td>In S...ount',counter);\00"
@.str.50 = [24 x i8] c"snapshot=Action_8.1.inf\00"
@.str.51 = [4 x i8] c"8.3\00"
@.str.52 = [67 x i8] c"For ( var i = 1 ; i < eval(TC.getParam(...p3Value_count')) ; i++ )\00"
@.str.53 = [24 x i8] c"snapshot=Action_8.3.inf\00"
@.str.54 = [6 x i8] c"8.3.1\00"
@.str.55 = [68 x i8] c"Evaluate JavaScript code Step3Value=window.Step3V...'+i.toString())\00"
@.str.56 = [26 x i8] c"snapshot=Action_8.3.1.inf\00"
@.str.57 = [6 x i8] c"8.3.2\00"
@.str.58 = [29 x i8] c"Click on Step3Value checkbox\00"
@.str.59 = [26 x i8] c"snapshot=Action_8.3.2.inf\00"
@.str.60 = [4 x i8] c"8.5\00"
@.str.61 = [24 x i8] c"snapshot=Action_8.5.inf\00"
@.str.62 = [4 x i8] c"8.6\00"
@.str.63 = [47 x i8] c"Verify Step 1 's 'Visible Text' Contain Step 4\00"
@.str.64 = [24 x i8] c"snapshot=Action_8.6.inf\00"
@.str.65 = [2 x i8] c"9\00"
@.str.66 = [20 x i8] c"Step 4 - Final step\00"
@.str.67 = [22 x i8] c"snapshot=Action_9.inf\00"
@.str.68 = [4 x i8] c"9.1\00"
@.str.69 = [24 x i8] c"snapshot=Action_9.1.inf\00"
@.str.70 = [4 x i8] c"9.2\00"
@.str.71 = [24 x i8] c"snapshot=Action_9.2.inf\00"
define i32 @Action() {
%1 = call i32 @truclient_step(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([43 x i8], [43 x i8]* @.str.1, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.2, i64 0, i64 0))
%2 = call i32 @lr_start_transaction(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.3, i64 0, i64 0))
%3 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.4, i64 0, i64 0), i8* getelementptr inbounds ([56 x i8], [56 x i8]* @.str.5, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.6, i64 0, i64 0))
%4 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.7, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.8, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.9, i64 0, i64 0))
%5 = call i32 @lr_end_transaction(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.3, i64 0, i64 0), i32 0)
%6 = call i32 @truclient_step(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.10, i64 0, i64 0), i8* getelementptr inbounds ([37 x i8], [37 x i8]* @.str.11, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.12, i64 0, i64 0))
%7 = call i32 @lr_start_transaction(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.13, i64 0, i64 0))
%8 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.14, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.16, i64 0, i64 0))
%9 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.17, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.18, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.19, i64 0, i64 0))
%10 = call i32 @lr_end_transaction(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.13, i64 0, i64 0), i32 0)
%11 = call i32 @truclient_step(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.22, i64 0, i64 0))
%12 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.23, i64 0, i64 0), i8* getelementptr inbounds ([68 x i8], [68 x i8]* @.str.24, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.25, i64 0, i64 0))
%13 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.26, i64 0, i64 0), i8* getelementptr inbounds ([44 x i8], [44 x i8]* @.str.27, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.28, i64 0, i64 0))
%14 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.29, i64 0, i64 0), i8* getelementptr inbounds ([71 x i8], [71 x i8]* @.str.30, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.31, i64 0, i64 0))
%15 = call i32 @lr_start_transaction(i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.21, i64 0, i64 0))
%16 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.32, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.33, i64 0, i64 0))
%17 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.34, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.35, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.36, i64 0, i64 0))
%18 = call i32 @lr_end_transaction(i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.21, i64 0, i64 0), i32 0)
%19 = call i32 @truclient_step(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.37, i64 0, i64 0), i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.38, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.39, i64 0, i64 0))
%20 = call i32 @lr_start_transaction(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.38, i64 0, i64 0))
%21 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.40, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.41, i64 0, i64 0))
%22 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.42, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.43, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.44, i64 0, i64 0))
%23 = call i32 @lr_end_transaction(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.38, i64 0, i64 0), i32 0)
%24 = call i32 @truclient_step(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.45, i64 0, i64 0), i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.46, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.47, i64 0, i64 0))
%25 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.48, i64 0, i64 0), i8* getelementptr inbounds ([62 x i8], [62 x i8]* @.str.49, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.50, i64 0, i64 0))
%26 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.51, i64 0, i64 0), i8* getelementptr inbounds ([67 x i8], [67 x i8]* @.str.52, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.53, i64 0, i64 0))
%27 = call i32 @truclient_step(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.54, i64 0, i64 0), i8* getelementptr inbounds ([68 x i8], [68 x i8]* @.str.55, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.56, i64 0, i64 0))
%28 = call i32 @truclient_step(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.57, i64 0, i64 0), i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.58, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.59, i64 0, i64 0))
%29 = call i32 @lr_start_transaction(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.46, i64 0, i64 0))
%30 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.60, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.61, i64 0, i64 0))
%31 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.62, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.63, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.64, i64 0, i64 0))
%32 = call i32 @lr_end_transaction(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.46, i64 0, i64 0), i32 0)
%33 = call i32 @truclient_step(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.65, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.66, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.67, i64 0, i64 0))
%34 = call i32 @lr_start_transaction(i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.66, i64 0, i64 0))
%35 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.68, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.69, i64 0, i64 0))
%36 = call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.70, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.8, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.71, i64 0, i64 0))
%37 = call i32 @lr_end_transaction(i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.66, i64 0, i64 0), i32 0)
ret i32 0
}

LLVM IR (-O2):
@.str = [2 x i8] c"1\00"
@.str.1 = [43 x i8] c"Initial Correlation Challenge landing page\00"
@.str.2 = [22 x i8] c"snapshot=Action_1.inf\00"
@.str.3 = [35 x i8] c"Initial Correlation Challenge Load\00"
@.str.4 = [4 x i8] c"1.1\00"
@.str.5 = [56 x i8] c"Navigate to 'http://www.myloadtest.c...tion-challenge/'\00"
@.str.6 = [24 x i8] c"snapshot=Action_1.1.inf\00"
@.str.7 = [4 x i8] c"1.2\00"
@.str.8 = [77 x i8] c"Verify Correlation Challenge 's 'Visible Text' Contain Correlation Challenge\00"
@.str.9 = [24 x i8] c"snapshot=Action_1.2.inf\00"
@.str.10 = [2 x i8] c"2\00"
@.str.11 = [37 x i8] c"Step 0 - Begin Correlation Challenge\00"
@.str.12 = [22 x i8] c"snapshot=Action_2.inf\00"
@.str.13 = [32 x i8] c"Step 0 - Begin by clicking next\00"
@.str.14 = [4 x i8] c"2.1\00"
@.str.15 = [21 x i8] c"Click on Next button\00"
@.str.16 = [24 x i8] c"snapshot=Action_2.1.inf\00"
@.str.17 = [4 x i8] c"2.2\00"
@.str.18 = [47 x i8] c"Verify Step 1 's 'Visible Text' Contain Step 1\00"
@.str.19 = [24 x i8] c"snapshot=Action_2.2.inf\00"
@.str.20 = [2 x i8] c"5\00"
@.str.21 = [33 x i8] c"Step 1 - Enter the random number\00"
@.str.22 = [22 x i8] c"snapshot=Action_5.inf\00"
@.str.23 = [4 x i8] c"5.1\00"
@.str.24 = [68 x i8] c"Evaluate JavaScript code var content = document.g...lue',array[1]);\00"
@.str.25 = [24 x i8] c"snapshot=Action_5.1.inf\00"
@.str.26 = [4 x i8] c"5.2\00"
@.str.27 = [44 x i8] c"Click on Step 1 Here is a simple... textbox\00"
@.str.28 = [24 x i8] c"snapshot=Action_5.2.inf\00"
@.str.29 = [4 x i8] c"5.3\00"
@.str.30 = [71 x i8] c"Type TC.getParam('Step1Value'); in Step 1 Here is a simple... textbox\00"
@.str.31 = [24 x i8] c"snapshot=Action_5.3.inf\00"
@.str.32 = [4 x i8] c"5.4\00"
@.str.33 = [24 x i8] c"snapshot=Action_5.4.inf\00"
@.str.34 = [4 x i8] c"5.5\00"
@.str.35 = [47 x i8] c"Verify Step 1 's 'Visible Text' Contain Step 2\00"
@.str.36 = [24 x i8] c"snapshot=Action_5.5.inf\00"
@.str.37 = [2 x i8] c"6\00"
@.str.38 = [35 x i8] c"Step 2 - Select the default colour\00"
@.str.39 = [22 x i8] c"snapshot=Action_6.inf\00"
@.str.40 = [4 x i8] c"6.1\00"
@.str.41 = [24 x i8] c"snapshot=Action_6.1.inf\00"
@.str.42 = [4 x i8] c"6.2\00"
@.str.43 = [47 x i8] c"Verify Step 1 's 'Visible Text' Contain Step 3\00"
@.str.44 = [24 x i8] c"snapshot=Action_6.2.inf\00"
@.str.45 = [2 x i8] c"8\00"
@.str.46 = [35 x i8] c"Step 3 - Select the in-stock items\00"
@.str.47 = [22 x i8] c"snapshot=Action_8.inf\00"
@.str.48 = [4 x i8] c"8.1\00"
@.str.49 = [62 x i8] c"Evaluate JavaScript code var re = /<td>In S...ount',counter);\00"
@.str.50 = [24 x i8] c"snapshot=Action_8.1.inf\00"
@.str.51 = [4 x i8] c"8.3\00"
@.str.52 = [67 x i8] c"For ( var i = 1 ; i < eval(TC.getParam(...p3Value_count')) ; i++ )\00"
@.str.53 = [24 x i8] c"snapshot=Action_8.3.inf\00"
@.str.54 = [6 x i8] c"8.3.1\00"
@.str.55 = [68 x i8] c"Evaluate JavaScript code Step3Value=window.Step3V...'+i.toString())\00"
@.str.56 = [26 x i8] c"snapshot=Action_8.3.1.inf\00"
@.str.57 = [6 x i8] c"8.3.2\00"
@.str.58 = [29 x i8] c"Click on Step3Value checkbox\00"
@.str.59 = [26 x i8] c"snapshot=Action_8.3.2.inf\00"
@.str.60 = [4 x i8] c"8.5\00"
@.str.61 = [24 x i8] c"snapshot=Action_8.5.inf\00"
@.str.62 = [4 x i8] c"8.6\00"
@.str.63 = [47 x i8] c"Verify Step 1 's 'Visible Text' Contain Step 4\00"
@.str.64 = [24 x i8] c"snapshot=Action_8.6.inf\00"
@.str.65 = [2 x i8] c"9\00"
@.str.66 = [20 x i8] c"Step 4 - Final step\00"
@.str.67 = [22 x i8] c"snapshot=Action_9.inf\00"
@.str.68 = [4 x i8] c"9.1\00"
@.str.69 = [24 x i8] c"snapshot=Action_9.1.inf\00"
@.str.70 = [4 x i8] c"9.2\00"
@.str.71 = [24 x i8] c"snapshot=Action_9.2.inf\00"
define i32 @Action() {
%1 = tail call i32 @truclient_step(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([43 x i8], [43 x i8]* @.str.1, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.2, i64 0, i64 0))
%2 = tail call i32 @lr_start_transaction(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.3, i64 0, i64 0))
%3 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.4, i64 0, i64 0), i8* getelementptr inbounds ([56 x i8], [56 x i8]* @.str.5, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.6, i64 0, i64 0))
%4 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.7, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.8, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.9, i64 0, i64 0))
%5 = tail call i32 @lr_end_transaction(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.3, i64 0, i64 0), i32 0)
%6 = tail call i32 @truclient_step(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.10, i64 0, i64 0), i8* getelementptr inbounds ([37 x i8], [37 x i8]* @.str.11, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.12, i64 0, i64 0))
%7 = tail call i32 @lr_start_transaction(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.13, i64 0, i64 0))
%8 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.14, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.16, i64 0, i64 0))
%9 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.17, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.18, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.19, i64 0, i64 0))
%10 = tail call i32 @lr_end_transaction(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.13, i64 0, i64 0), i32 0)
%11 = tail call i32 @truclient_step(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.22, i64 0, i64 0))
%12 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.23, i64 0, i64 0), i8* getelementptr inbounds ([68 x i8], [68 x i8]* @.str.24, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.25, i64 0, i64 0))
%13 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.26, i64 0, i64 0), i8* getelementptr inbounds ([44 x i8], [44 x i8]* @.str.27, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.28, i64 0, i64 0))
%14 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.29, i64 0, i64 0), i8* getelementptr inbounds ([71 x i8], [71 x i8]* @.str.30, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.31, i64 0, i64 0))
%15 = tail call i32 @lr_start_transaction(i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.21, i64 0, i64 0))
%16 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.32, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.33, i64 0, i64 0))
%17 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.34, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.35, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.36, i64 0, i64 0))
%18 = tail call i32 @lr_end_transaction(i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.21, i64 0, i64 0), i32 0)
%19 = tail call i32 @truclient_step(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.37, i64 0, i64 0), i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.38, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.39, i64 0, i64 0))
%20 = tail call i32 @lr_start_transaction(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.38, i64 0, i64 0))
%21 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.40, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.41, i64 0, i64 0))
%22 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.42, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.43, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.44, i64 0, i64 0))
%23 = tail call i32 @lr_end_transaction(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.38, i64 0, i64 0), i32 0)
%24 = tail call i32 @truclient_step(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.45, i64 0, i64 0), i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.46, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.47, i64 0, i64 0))
%25 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.48, i64 0, i64 0), i8* getelementptr inbounds ([62 x i8], [62 x i8]* @.str.49, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.50, i64 0, i64 0))
%26 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.51, i64 0, i64 0), i8* getelementptr inbounds ([67 x i8], [67 x i8]* @.str.52, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.53, i64 0, i64 0))
%27 = tail call i32 @truclient_step(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.54, i64 0, i64 0), i8* getelementptr inbounds ([68 x i8], [68 x i8]* @.str.55, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.56, i64 0, i64 0))
%28 = tail call i32 @truclient_step(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.57, i64 0, i64 0), i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.58, i64 0, i64 0), i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.59, i64 0, i64 0))
%29 = tail call i32 @lr_start_transaction(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.46, i64 0, i64 0))
%30 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.60, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.61, i64 0, i64 0))
%31 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.62, i64 0, i64 0), i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.63, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.64, i64 0, i64 0))
%32 = tail call i32 @lr_end_transaction(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.46, i64 0, i64 0), i32 0)
%33 = tail call i32 @truclient_step(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.65, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.66, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.67, i64 0, i64 0))
%34 = tail call i32 @lr_start_transaction(i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.66, i64 0, i64 0))
%35 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.68, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.69, i64 0, i64 0))
%36 = tail call i32 @truclient_step(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.70, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.8, i64 0, i64 0), i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.71, i64 0, i64 0))
%37 = tail call i32 @lr_end_transaction(i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.66, i64 0, i64 0), i32 0)
ret i32 0
}