#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 */
struct XCSF {
  int dummy;
};

/* Variables and functions */
int /*<<< orphan*/ param_set_alpha(struct XCSF *, double const);
int /*<<< orphan*/ param_set_beta(struct XCSF *, double const);
int /*<<< orphan*/ param_set_compaction(struct XCSF *, int const);
int /*<<< orphan*/ param_set_delta(struct XCSF *, double const);
int /*<<< orphan*/ param_set_e0(struct XCSF *, double const);
int /*<<< orphan*/ param_set_init_error(struct XCSF *, double const);
int /*<<< orphan*/ param_set_init_fitness(struct XCSF *, double const);
int /*<<< orphan*/ param_set_m_probation(struct XCSF *, int const);
int /*<<< orphan*/ param_set_nu(struct XCSF *, double const);
int /*<<< orphan*/ param_set_stateful(struct XCSF *, int const);
int /*<<< orphan*/ param_set_theta_del(struct XCSF *, int const);
scalar_t__ strncmp(char const *, char *, int);
void config_cl_gen(struct XCSF *xcsf, const char *n, const char *v, const int i,
                   const double f) {
  (void)v;
  if (strncmp(n, "ALPHA\0", 6) == 0) {
    param_set_alpha(xcsf, f);
  } else if (strncmp(n, "BETA\0", 5) == 0) {
    param_set_beta(xcsf, f);
  } else if (strncmp(n, "DELTA\0", 6) == 0) {
    param_set_delta(xcsf, f);
  } else if (strncmp(n, "NU\0", 3) == 0) {
    param_set_nu(xcsf, f);
  } else if (strncmp(n, "THETA_DEL\0", 10) == 0) {
    param_set_theta_del(xcsf, i);
  } else if (strncmp(n, "INIT_FITNESS\0", 13) == 0) {
    param_set_init_fitness(xcsf, f);
  } else if (strncmp(n, "INIT_ERROR\0", 11) == 0) {
    param_set_init_error(xcsf, f);
  } else if (strncmp(n, "E0\0", 3) == 0) {
    param_set_e0(xcsf, f);
  } else if (strncmp(n, "M_PROBATION\0", 12) == 0) {
    param_set_m_probation(xcsf, i);
  } else if (strncmp(n, "STATEFUL\0", 9) == 0) {
    param_set_stateful(xcsf, i);
  } else if (strncmp(n, "COMPACTION\0", 11) == 0) {
    param_set_compaction(xcsf, i);
  }
}


x86 assembly (clang, -O0):
<config_cl_gen>:
push   %rbp
mov    %rsp,%rbp
sub    $0x30,%rsp
mov    %rdi,-0x8(%rbp)
mov    %rsi,-0x10(%rbp)
mov    %rdx,-0x18(%rbp)
mov    %ecx,-0x1c(%rbp)
movsd  %xmm0,-0x28(%rbp)
mov    -0x10(%rbp),%rdi
lea    0xe19(%rip),%rsi
mov    $0x6,%edx
call   1030 <strncmp@plt>
cmp    $0x0,%rax
jne    120e <config_cl_gen+0x4e>
mov    -0x8(%rbp),%rdi
movsd  -0x28(%rbp),%xmm0
call   10d0 <param_set_alpha@plt>
jmp    1427 <config_cl_gen+0x267>
mov    -0x10(%rbp),%rdi
lea    0xdee(%rip),%rsi
mov    $0x5,%edx
call   1030 <strncmp@plt>
cmp    $0x0,%rax
jne    1240 <config_cl_gen+0x80>
mov    -0x8(%rbp),%rdi
movsd  -0x28(%rbp),%xmm0
call   10e0 <param_set_beta@plt>
jmp    1422 <config_cl_gen+0x262>
mov    -0x10(%rbp),%rdi
lea    0xdc2(%rip),%rsi
mov    $0x6,%edx
call   1030 <strncmp@plt>
cmp    $0x0,%rax
jne    1272 <config_cl_gen+0xb2>
mov    -0x8(%rbp),%rdi
movsd  -0x28(%rbp),%xmm0
call   1090 <param_set_delta@plt>
jmp    141d <config_cl_gen+0x25d>
mov    -0x10(%rbp),%rdi
lea    0xddf(%rip),%rsi
mov    $0x3,%edx
call   1030 <strncmp@plt>
cmp    $0x0,%rax
jne    12a4 <config_cl_gen+0xe4>
mov    -0x8(%rbp),%rdi
movsd  -0x28(%rbp),%xmm0
call   1080 <param_set_nu@plt>
jmp    1418 <config_cl_gen+0x258>
mov    -0x10(%rbp),%rdi
lea    0xd65(%rip),%rsi
mov    $0xa,%edx
call   1030 <strncmp@plt>
cmp    $0x0,%rax
jne    12d4 <config_cl_gen+0x114>
mov    -0x8(%rbp),%rdi
mov    -0x1c(%rbp),%esi
call   1060 <param_set_theta_del@plt>
jmp    1413 <config_cl_gen+0x253>
mov    -0x10(%rbp),%rdi
lea    0xd40(%rip),%rsi
mov    $0xd,%edx
call   1030 <strncmp@plt>
cmp    $0x0,%rax
jne    1306 <config_cl_gen+0x146>
mov    -0x8(%rbp),%rdi
movsd  -0x28(%rbp),%xmm0
call   1040 <param_set_init_fitness@plt>
jmp    140e <config_cl_gen+0x24e>
mov    -0x10(%rbp),%rdi
lea    0xd1c(%rip),%rsi
mov    $0xb,%edx
call   1030 <strncmp@plt>
cmp    $0x0,%rax
jne    1338 <config_cl_gen+0x178>
mov    -0x8(%rbp),%rdi
movsd  -0x28(%rbp),%xmm0
call   10c0 <param_set_init_error@plt>
jmp    1409 <config_cl_gen+0x249>
mov    -0x10(%rbp),%rdi
lea    0xd1d(%rip),%rsi
mov    $0x3,%edx
call   1030 <strncmp@plt>
cmp    $0x0,%rax
jne    136a <config_cl_gen+0x1aa>
mov    -0x8(%rbp),%rdi
movsd  -0x28(%rbp),%xmm0
call   1070 <param_set_e0@plt>
jmp    1404 <config_cl_gen+0x244>
mov    -0x10(%rbp),%rdi
lea    0xcc4(%rip),%rsi
mov    $0xc,%edx
call   1030 <strncmp@plt>
cmp    $0x0,%rax
jne    139a <config_cl_gen+0x1da>
mov    -0x8(%rbp),%rdi
mov    -0x1c(%rbp),%esi
call   10b0 <param_set_m_probation@plt>
jmp    13ff <config_cl_gen+0x23f>
mov    -0x10(%rbp),%rdi
lea    0xca1(%rip),%rsi
mov    $0x9,%edx
call   1030 <strncmp@plt>
cmp    $0x0,%rax
jne    13ca <config_cl_gen+0x20a>
mov    -0x8(%rbp),%rdi
mov    -0x1c(%rbp),%esi
call   1050 <param_set_stateful@plt>
jmp    13fa <config_cl_gen+0x23a>
mov    -0x10(%rbp),%rdi
lea    0xc7b(%rip),%rsi
mov    $0xb,%edx
call   1030 <strncmp@plt>
cmp    $0x0,%rax
jne    13f5 <config_cl_gen+0x235>
mov    -0x8(%rbp),%rdi
mov    -0x1c(%rbp),%esi
call   10a0 <param_set_compaction@plt>
jmp    13fa <config_cl_gen+0x23a>
jmp    13ff <config_cl_gen+0x23f>
jmp    1404 <config_cl_gen+0x244>
jmp    1409 <config_cl_gen+0x249>
jmp    140e <config_cl_gen+0x24e>
jmp    1413 <config_cl_gen+0x253>
jmp    1418 <config_cl_gen+0x258>
jmp    141d <config_cl_gen+0x25d>
jmp    1422 <config_cl_gen+0x262>
jmp    1427 <config_cl_gen+0x267>
add    $0x30,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<config_cl_gen>:
push   %rbp
push   %r14
push   %rbx
sub    $0x10,%rsp
movsd  %xmm0,0x8(%rsp)
mov    %ecx,%r14d
mov    %rsi,%rbp
mov    %rdi,%rbx
lea    0xe22(%rip),%rsi
mov    %rbp,%rdi
mov    $0x6,%edx
call   1030 <strncmp@plt>
test   %rax,%rax
je     131f <config_cl_gen+0x15f>
lea    0xe0c(%rip),%rsi
mov    %rbp,%rdi
mov    $0x5,%edx
call   1030 <strncmp@plt>
test   %rax,%rax
je     1335 <config_cl_gen+0x175>
lea    0xdf5(%rip),%rsi
mov    %rbp,%rdi
mov    $0x6,%edx
call   1030 <strncmp@plt>
test   %rax,%rax
je     134b <config_cl_gen+0x18b>
lea    0xe27(%rip),%rsi
mov    %rbp,%rdi
mov    $0x3,%edx
call   1030 <strncmp@plt>
test   %rax,%rax
je     1361 <config_cl_gen+0x1a1>
lea    0xdc2(%rip),%rsi
mov    %rbp,%rdi
mov    $0xa,%edx
call   1030 <strncmp@plt>
test   %rax,%rax
je     1377 <config_cl_gen+0x1b7>
lea    0xdb0(%rip),%rsi
mov    %rbp,%rdi
mov    $0xd,%edx
call   1030 <strncmp@plt>
test   %rax,%rax
je     138a <config_cl_gen+0x1ca>
lea    0xda1(%rip),%rsi
mov    %rbp,%rdi
mov    $0xb,%edx
call   1030 <strncmp@plt>
test   %rax,%rax
je     13a0 <config_cl_gen+0x1e0>
lea    0xdb7(%rip),%rsi
mov    %rbp,%rdi
mov    $0x3,%edx
call   1030 <strncmp@plt>
test   %rax,%rax
je     13b6 <config_cl_gen+0x1f6>
lea    0xd73(%rip),%rsi
mov    %rbp,%rdi
mov    $0xc,%edx
call   1030 <strncmp@plt>
test   %rax,%rax
je     13cc <config_cl_gen+0x20c>
lea    0xd63(%rip),%rsi
mov    %rbp,%rdi
mov    $0x9,%edx
call   1030 <strncmp@plt>
test   %rax,%rax
je     13df <config_cl_gen+0x21f>
lea    0xd50(%rip),%rsi
mov    %rbp,%rdi
mov    $0xb,%edx
call   1030 <strncmp@plt>
test   %rax,%rax
je     13f2 <config_cl_gen+0x232>
add    $0x10,%rsp
pop    %rbx
pop    %r14
pop    %rbp
ret
mov    %rbx,%rdi
movsd  0x8(%rsp),%xmm0
add    $0x10,%rsp
pop    %rbx
pop    %r14
pop    %rbp
jmp    10d0 <param_set_alpha@plt>
mov    %rbx,%rdi
movsd  0x8(%rsp),%xmm0
add    $0x10,%rsp
pop    %rbx
pop    %r14
pop    %rbp
jmp    10e0 <param_set_beta@plt>
mov    %rbx,%rdi
movsd  0x8(%rsp),%xmm0
add    $0x10,%rsp
pop    %rbx
pop    %r14
pop    %rbp
jmp    1090 <param_set_delta@plt>
mov    %rbx,%rdi
movsd  0x8(%rsp),%xmm0
add    $0x10,%rsp
pop    %rbx
pop    %r14
pop    %rbp
jmp    1080 <param_set_nu@plt>
mov    %rbx,%rdi
mov    %r14d,%esi
add    $0x10,%rsp
pop    %rbx
pop    %r14
pop    %rbp
jmp    1060 <param_set_theta_del@plt>
mov    %rbx,%rdi
movsd  0x8(%rsp),%xmm0
add    $0x10,%rsp
pop    %rbx
pop    %r14
pop    %rbp
jmp    1040 <param_set_init_fitness@plt>
mov    %rbx,%rdi
movsd  0x8(%rsp),%xmm0
add    $0x10,%rsp
pop    %rbx
pop    %r14
pop    %rbp
jmp    10c0 <param_set_init_error@plt>
mov    %rbx,%rdi
movsd  0x8(%rsp),%xmm0
add    $0x10,%rsp
pop    %rbx
pop    %r14
pop    %rbp
jmp    1070 <param_set_e0@plt>
mov    %rbx,%rdi
mov    %r14d,%esi
add    $0x10,%rsp
pop    %rbx
pop    %r14
pop    %rbp
jmp    10b0 <param_set_m_probation@plt>
mov    %rbx,%rdi
mov    %r14d,%esi
add    $0x10,%rsp
pop    %rbx
pop    %r14
pop    %rbp
jmp    1050 <param_set_stateful@plt>
mov    %rbx,%rdi
mov    %r14d,%esi
add    $0x10,%rsp
pop    %rbx
pop    %r14
pop    %rbp
jmp    10a0 <param_set_compaction@plt>

LLVM IR (-O0):
%struct.XCSF = type { i32 }
@.str = [7 x i8] c"ALPHA\00\00"
@.str.1 = [6 x i8] c"BETA\00\00"
@.str.2 = [7 x i8] c"DELTA\00\00"
@.str.3 = [4 x i8] c"NU\00\00"
@.str.4 = [11 x i8] c"THETA_DEL\00\00"
@.str.5 = [14 x i8] c"INIT_FITNESS\00\00"
@.str.6 = [12 x i8] c"INIT_ERROR\00\00"
@.str.7 = [4 x i8] c"E0\00\00"
@.str.8 = [13 x i8] c"M_PROBATION\00\00"
@.str.9 = [10 x i8] c"STATEFUL\00\00"
@.str.10 = [12 x i8] c"COMPACTION\00\00"
define void @config_cl_gen(%struct.XCSF* %0, i8* %1, i8* %2, i32 %3, double %4) {
%6 = alloca %struct.XCSF*
%7 = alloca i8*
%8 = alloca i8*
%9 = alloca i32
%10 = alloca double
store %struct.XCSF* %0, %struct.XCSF** %6
store i8* %1, i8** %7
store i8* %2, i8** %8
store i32 %3, i32* %9
store double %4, double* %10
%11 = load i8*, i8** %8
%12 = load i8*, i8** %7
%13 = call i64 @strncmp(i8* %12, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 6)
%14 = icmp eq i64 %13, 0
br i1 %14, label %15, label %19
15: ; preds = %5
%16 = load %struct.XCSF*, %struct.XCSF** %6
%17 = load double, double* %10
%18 = call i32 @param_set_alpha(%struct.XCSF* %16, double %17)
br label %109
19: ; preds = %5
%20 = load i8*, i8** %7
%21 = call i64 @strncmp(i8* %20, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.1, i64 0, i64 0), i32 5)
%22 = icmp eq i64 %21, 0
br i1 %22, label %23, label %27
23: ; preds = %19
%24 = load %struct.XCSF*, %struct.XCSF** %6
%25 = load double, double* %10
%26 = call i32 @param_set_beta(%struct.XCSF* %24, double %25)
br label %108
27: ; preds = %19
%28 = load i8*, i8** %7
%29 = call i64 @strncmp(i8* %28, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i32 6)
%30 = icmp eq i64 %29, 0
br i1 %30, label %31, label %35
31: ; preds = %27
%32 = load %struct.XCSF*, %struct.XCSF** %6
%33 = load double, double* %10
%34 = call i32 @param_set_delta(%struct.XCSF* %32, double %33)
br label %107
35: ; preds = %27
%36 = load i8*, i8** %7
%37 = call i64 @strncmp(i8* %36, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i32 3)
%38 = icmp eq i64 %37, 0
br i1 %38, label %39, label %43
39: ; preds = %35
%40 = load %struct.XCSF*, %struct.XCSF** %6
%41 = load double, double* %10
%42 = call i32 @param_set_nu(%struct.XCSF* %40, double %41)
br label %106
43: ; preds = %35
%44 = load i8*, i8** %7
%45 = call i64 @strncmp(i8* %44, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.4, i64 0, i64 0), i32 10)
%46 = icmp eq i64 %45, 0
br i1 %46, label %47, label %51
47: ; preds = %43
%48 = load %struct.XCSF*, %struct.XCSF** %6
%49 = load i32, i32* %9
%50 = call i32 @param_set_theta_del(%struct.XCSF* %48, i32 %49)
br label %105
51: ; preds = %43
%52 = load i8*, i8** %7
%53 = call i64 @strncmp(i8* %52, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.5, i64 0, i64 0), i32 13)
%54 = icmp eq i64 %53, 0
br i1 %54, label %55, label %59
55: ; preds = %51
%56 = load %struct.XCSF*, %struct.XCSF** %6
%57 = load double, double* %10
%58 = call i32 @param_set_init_fitness(%struct.XCSF* %56, double %57)
br label %104
59: ; preds = %51
%60 = load i8*, i8** %7
%61 = call i64 @strncmp(i8* %60, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i64 0, i64 0), i32 11)
%62 = icmp eq i64 %61, 0
br i1 %62, label %63, label %67
63: ; preds = %59
%64 = load %struct.XCSF*, %struct.XCSF** %6
%65 = load double, double* %10
%66 = call i32 @param_set_init_error(%struct.XCSF* %64, double %65)
br label %103
67: ; preds = %59
%68 = load i8*, i8** %7
%69 = call i64 @strncmp(i8* %68, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.7, i64 0, i64 0), i32 3)
%70 = icmp eq i64 %69, 0
br i1 %70, label %71, label %75
71: ; preds = %67
%72 = load %struct.XCSF*, %struct.XCSF** %6
%73 = load double, double* %10
%74 = call i32 @param_set_e0(%struct.XCSF* %72, double %73)
br label %102
75: ; preds = %67
%76 = load i8*, i8** %7
%77 = call i64 @strncmp(i8* %76, i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.8, i64 0, i64 0), i32 12)
%78 = icmp eq i64 %77, 0
br i1 %78, label %79, label %83
79: ; preds = %75
%80 = load %struct.XCSF*, %struct.XCSF** %6
%81 = load i32, i32* %9
%82 = call i32 @param_set_m_probation(%struct.XCSF* %80, i32 %81)
br label %101
83: ; preds = %75
%84 = load i8*, i8** %7
%85 = call i64 @strncmp(i8* %84, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.9, i64 0, i64 0), i32 9)
%86 = icmp eq i64 %85, 0
br i1 %86, label %87, label %91
87: ; preds = %83
%88 = load %struct.XCSF*, %struct.XCSF** %6
%89 = load i32, i32* %9
%90 = call i32 @param_set_stateful(%struct.XCSF* %88, i32 %89)
br label %100
91: ; preds = %83
%92 = load i8*, i8** %7
%93 = call i64 @strncmp(i8* %92, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.10, i64 0, i64 0), i32 11)
%94 = icmp eq i64 %93, 0
br i1 %94, label %95, label %99
95: ; preds = %91
%96 = load %struct.XCSF*, %struct.XCSF** %6
%97 = load i32, i32* %9
%98 = call i32 @param_set_compaction(%struct.XCSF* %96, i32 %97)
br label %99
99: ; preds = %95, %91
br label %100
100: ; preds = %99, %87
br label %101
101: ; preds = %100, %79
br label %102
102: ; preds = %101, %71
br label %103
103: ; preds = %102, %63
br label %104
104: ; preds = %103, %55
br label %105
105: ; preds = %104, %47
br label %106
106: ; preds = %105, %39
br label %107
107: ; preds = %106, %31
br label %108
108: ; preds = %107, %23
br label %109
109: ; preds = %108, %15
ret void
}

LLVM IR (-O2):
%struct.XCSF = type { i32 }
@.str = [7 x i8] c"ALPHA\00\00"
@.str.1 = [6 x i8] c"BETA\00\00"
@.str.2 = [7 x i8] c"DELTA\00\00"
@.str.3 = [4 x i8] c"NU\00\00"
@.str.4 = [11 x i8] c"THETA_DEL\00\00"
@.str.5 = [14 x i8] c"INIT_FITNESS\00\00"
@.str.6 = [12 x i8] c"INIT_ERROR\00\00"
@.str.7 = [4 x i8] c"E0\00\00"
@.str.8 = [13 x i8] c"M_PROBATION\00\00"
@.str.9 = [10 x i8] c"STATEFUL\00\00"
@.str.10 = [12 x i8] c"COMPACTION\00\00"
define void @config_cl_gen(%struct.XCSF* %0, i8* %1, i8* nocapture readnone %2, i32 %3, double %4) {
%6 = tail call i64 @strncmp(i8* %1, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str, i64 0, i64 0), i32 6)
%7 = icmp eq i64 %6, 0
br i1 %7, label %8, label %10
8: ; preds = %5
%9 = tail call i32 @param_set_alpha(%struct.XCSF* %0, double %4)
br label %60
10: ; preds = %5
%11 = tail call i64 @strncmp(i8* %1, i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.1, i64 0, i64 0), i32 5)
%12 = icmp eq i64 %11, 0
br i1 %12, label %13, label %15
13: ; preds = %10
%14 = tail call i32 @param_set_beta(%struct.XCSF* %0, double %4)
br label %60
15: ; preds = %10
%16 = tail call i64 @strncmp(i8* %1, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i32 6)
%17 = icmp eq i64 %16, 0
br i1 %17, label %18, label %20
18: ; preds = %15
%19 = tail call i32 @param_set_delta(%struct.XCSF* %0, double %4)
br label %60
20: ; preds = %15
%21 = tail call i64 @strncmp(i8* %1, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i32 3)
%22 = icmp eq i64 %21, 0
br i1 %22, label %23, label %25
23: ; preds = %20
%24 = tail call i32 @param_set_nu(%struct.XCSF* %0, double %4)
br label %60
25: ; preds = %20
%26 = tail call i64 @strncmp(i8* %1, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.4, i64 0, i64 0), i32 10)
%27 = icmp eq i64 %26, 0
br i1 %27, label %28, label %30
28: ; preds = %25
%29 = tail call i32 @param_set_theta_del(%struct.XCSF* %0, i32 %3)
br label %60
30: ; preds = %25
%31 = tail call i64 @strncmp(i8* %1, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.5, i64 0, i64 0), i32 13)
%32 = icmp eq i64 %31, 0
br i1 %32, label %33, label %35
33: ; preds = %30
%34 = tail call i32 @param_set_init_fitness(%struct.XCSF* %0, double %4)
br label %60
35: ; preds = %30
%36 = tail call i64 @strncmp(i8* %1, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i64 0, i64 0), i32 11)
%37 = icmp eq i64 %36, 0
br i1 %37, label %38, label %40
38: ; preds = %35
%39 = tail call i32 @param_set_init_error(%struct.XCSF* %0, double %4)
br label %60
40: ; preds = %35
%41 = tail call i64 @strncmp(i8* %1, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.7, i64 0, i64 0), i32 3)
%42 = icmp eq i64 %41, 0
br i1 %42, label %43, label %45
43: ; preds = %40
%44 = tail call i32 @param_set_e0(%struct.XCSF* %0, double %4)
br label %60
45: ; preds = %40
%46 = tail call i64 @strncmp(i8* %1, i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.8, i64 0, i64 0), i32 12)
%47 = icmp eq i64 %46, 0
br i1 %47, label %48, label %50
48: ; preds = %45
%49 = tail call i32 @param_set_m_probation(%struct.XCSF* %0, i32 %3)
br label %60
50: ; preds = %45
%51 = tail call i64 @strncmp(i8* %1, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.9, i64 0, i64 0), i32 9)
%52 = icmp eq i64 %51, 0
br i1 %52, label %53, label %55
53: ; preds = %50
%54 = tail call i32 @param_set_stateful(%struct.XCSF* %0, i32 %3)
br label %60
55: ; preds = %50
%56 = tail call i64 @strncmp(i8* %1, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.10, i64 0, i64 0), i32 11)
%57 = icmp eq i64 %56, 0
br i1 %57, label %58, label %60
58: ; preds = %55
%59 = tail call i32 @param_set_compaction(%struct.XCSF* %0, i32 %3)
br label %60
60: ; preds = %13, %23, %33, %43, %53, %58, %55, %48, %38, %28, %18, %8
ret void
}