// File: /workspace/github_cpp_makefile_star2_O1/whitefusion[P]Jaipur_cardgame-/AllBonus.cpp
// Function: All_Bonus::pBonus()
void All_Bonus::pBonus()
{
      int i, c, ts, tf;
    cout << ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>BONUS<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<" << endl;
 //   cout << "============================================================================================================================================================================================" << endl;


	ts = 3;  
	tf = 6;
	for (i = ts; i < tf; ++i){
	    cout << "  "; 
	    for(c = 0; c < getSize(i)-1; ++c)
		cout << "  * *";
	    if (getSize(i) > 0){
		cout << "  * * *";
		cout << "           ";
	    }
	}
	cout << endl;

	for (i = ts; i < tf; ++i){
	    cout << "  ";
	    for (c = 0; c < getSize(i)-1; ++c)
		cout << "*    ";
	    if (getSize(i) > 0){
		cout << "*       *";
		cout << "         ";
	    }
	}
	cout << endl;

	for (i = ts; i < tf; ++i){
	    cout << " ";
	    for (c = 0; c < getSize(i)-1; ++c)
			cout << "*    "; // comment this line if test
            //for test
            /*
		    if (allBonus.at(i-3).at(c).getVal() == 10)
                cout << allBonus.at(i-3).at(c).getVal() << "   "; // for test to visualize
		    else 
                cout << allBonus.at(i-3).at(c).getVal() << "    "; // for test to visualize
            */
            

	    if (getSize(i) > 0){
		    cout << "*  " << allBonus.at(i-3).at(c).getType() << " *";
		    cout << "        ";
	    }
	    else
		    cout << " ";
	}
	cout << endl;

	for (i = ts; i < tf; ++i){
	    cout << " ";
	    for (c = 0; c < getSize(i)-1; ++c)
		    cout << "*    ";
	    if (getSize(i) > 0){
            cout << "*         *"; // comment this line if test
            //for test
            /*
            if (allBonus.at(i-3).at(c).getVal()==10)
                cout << "*   -" << allBonus.at(i-3).at(c).getVal() << "-  *"; // for test to visualize
            else 
                cout << "*   -" << allBonus.at(i-3).at(c).getVal() << "-   *"; // for test to visualize
            */
            
		    cout << "        ";
	    }
	    else
		    cout << " ";
	}
	cout << endl;

	for (i = ts; i < tf; ++i){
	    cout << "  ";
	    for (c = 0; c < getSize(i)-1; ++c)
		cout << "*    ";
	    if (getSize(i) > 0){
		cout << "*       *";
		cout << "         ";
	    }
	}
	cout << endl;

	for (i = ts; i < tf; ++i){
	    cout << "  "; 
	    for(c = 0; c < getSize(i)-1; ++c)
		cout << "  * *";
	    if (getSize(i) > 0){
		cout << "  * * *";
		cout << "           ";
	    }
	}
	cout << endl;

//    cout << "============================================================================================================================================================================================" << endl;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdi, %r14
movq 0xe9aa(%rip), %rbx      # 0x15fd0
leaq 0x8e71(%rip), %rsi      # 0x1049e
movl $0xbb, %edx
movq %rbx, %rdi
callq 0x21d0
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2180
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20f0
movl $0x3, %ebp
leaq 0x8c87(%rip), %r15      # 0x102f4
leaq 0x8c69(%rip), %r12      # 0x102dd
movl $0x2, %edx
movq %rbx, %rdi
movq %r15, %rsi
callq 0x21d0
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
cmpl $0x2, %eax
jl 0x76ba
xorl %r13d, %r13d
movl $0x5, %edx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21d0
incl %r13d
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
decl %eax
cmpl %eax, %r13d
jl 0x7696
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
testl %eax, %eax
jle 0x76f0
movl $0x7, %edx
movq %rbx, %rdi
leaq 0x8c0c(%rip), %rsi      # 0x102e3
callq 0x21d0
movl $0xb, %edx
movq %rbx, %rdi
leaq 0x8c00(%rip), %rsi      # 0x102eb
callq 0x21d0
incl %ebp
cmpl $0x6, %ebp
jne 0x7674
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2180
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20f0
movl $0x3, %ebp
leaq 0x8bc6(%rip), %r15      # 0x102f4
leaq 0x8bc2(%rip), %r12      # 0x102f7
movl $0x2, %edx
movq %rbx, %rdi
movq %r15, %rsi
callq 0x21d0
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
cmpl $0x2, %eax
jl 0x777b
xorl %r13d, %r13d
movl $0x5, %edx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21d0
incl %r13d
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
decl %eax
cmpl %eax, %r13d
jl 0x7757
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
testl %eax, %eax
jle 0x77b1
movl $0x9, %edx
movq %rbx, %rdi
leaq 0x8b65(%rip), %rsi      # 0x102fd
callq 0x21d0
movl $0x9, %edx
movq %rbx, %rdi
leaq 0x8b41(%rip), %rsi      # 0x102ed
callq 0x21d0
incl %ebp
cmpl $0x6, %ebp
jne 0x7735
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2180
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20f0
movl $0x3, %r15d
leaq 0x8b05(%rip), %r12      # 0x102f5
leaq 0x8b00(%rip), %r13      # 0x102f7
movl $0x1, %edx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21d0
movq %r14, %rdi
movl %r15d, %esi
callq 0x73fe
xorl %ebp, %ebp
cmpl $0x2, %eax
jl 0x783d
movl $0x5, %edx
movq %rbx, %rdi
movq %r13, %rsi
callq 0x21d0
movq %r14, %rdi
movl %r15d, %esi
callq 0x73fe
decl %eax
incq %rbp
cmpl %eax, %ebp
jl 0x7819
movq %r14, %rdi
movl %r15d, %esi
callq 0x73fe
testl %eax, %eax
jle 0x7924
movl $0x3, %edx
movq %rbx, %rdi
leaq 0x8aa8(%rip), %rsi      # 0x10307
callq 0x21d0
leaq -0x3(%r15), %rsi
movq (%r14), %rax
movq 0x8(%r14), %rdx
subq %rax, %rdx
sarq $0x3, %rdx
movabsq $-0x5555555555555555, %rcx # imm = 0xAAAAAAAAAAAAAAAB
imulq %rcx, %rdx
cmpq %rsi, %rdx
jbe 0x7bd3
leaq (%rsi,%rsi,2), %rdx
movq (%rax,%rdx,8), %rcx
movq 0x8(%rax,%rdx,8), %rdx
subq %rcx, %rdx
sarq $0x3, %rdx
movabsq $-0x3333333333333333, %rax # imm = 0xCCCCCCCCCCCCCCCD
imulq %rax, %rdx
cmpq %rbp, %rdx
jbe 0x7bc7
leaq (,%rbp,4), %rax
addq %rbp, %rax
leaq (%rcx,%rax,8), %rsi
leaq 0x8(%rsp), %rdi
callq 0x439c
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x21d0
movl $0x2, %edx
movq %rax, %rdi
leaq 0x8c71(%rip), %rsi      # 0x10563
callq 0x21d0
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x7913
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x21a0
movl $0x8, %edx
movq %rbx, %rdi
leaq 0x89cc(%rip), %rsi      # 0x102ee
jmp 0x792f
movl $0x1, %edx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21d0
incq %r15
cmpq $0x6, %r15
jne 0x77f7
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2180
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20f0
movl $0x3, %ebp
leaq 0x8981(%rip), %r15      # 0x102f5
leaq 0x897c(%rip), %r12      # 0x102f7
movl $0x1, %edx
movq %rbx, %rdi
movq %r15, %rsi
callq 0x21d0
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
cmpl $0x2, %eax
jl 0x79c1
xorl %r13d, %r13d
movl $0x5, %edx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21d0
incl %r13d
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
decl %eax
cmpl %eax, %r13d
jl 0x799d
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
testl %eax, %eax
jle 0x79f4
movl $0xb, %edx
movq %rbx, %rdi
leaq 0x8b7c(%rip), %rsi      # 0x1055a
callq 0x21d0
movl $0x8, %edx
movq %rbx, %rdi
leaq 0x88fc(%rip), %rsi      # 0x102ee
jmp 0x79ff
movl $0x1, %edx
movq %rbx, %rdi
movq %r15, %rsi
callq 0x21d0
incl %ebp
cmpl $0x6, %ebp
jne 0x797b
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2180
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20f0
movl $0x3, %ebp
leaq 0x88b2(%rip), %r15      # 0x102f4
leaq 0x88ae(%rip), %r12      # 0x102f7
movl $0x2, %edx
movq %rbx, %rdi
movq %r15, %rsi
callq 0x21d0
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
cmpl $0x2, %eax
jl 0x7a8f
xorl %r13d, %r13d
movl $0x5, %edx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21d0
incl %r13d
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
decl %eax
cmpl %eax, %r13d
jl 0x7a6b
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
testl %eax, %eax
jle 0x7ac5
movl $0x9, %edx
movq %rbx, %rdi
leaq 0x8851(%rip), %rsi      # 0x102fd
callq 0x21d0
movl $0x9, %edx
movq %rbx, %rdi
leaq 0x882d(%rip), %rsi      # 0x102ed
callq 0x21d0
incl %ebp
cmpl $0x6, %ebp
jne 0x7a49
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2180
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20f0
movl $0x3, %ebp
leaq 0x87f1(%rip), %r15      # 0x102f4
leaq 0x87d3(%rip), %r12      # 0x102dd
movl $0x2, %edx
movq %rbx, %rdi
movq %r15, %rsi
callq 0x21d0
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
cmpl $0x2, %eax
jl 0x7b50
xorl %r13d, %r13d
movl $0x5, %edx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21d0
incl %r13d
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
decl %eax
cmpl %eax, %r13d
jl 0x7b2c
movq %r14, %rdi
movl %ebp, %esi
callq 0x73fe
testl %eax, %eax
jle 0x7b86
movl $0x7, %edx
movq %rbx, %rdi
leaq 0x8776(%rip), %rsi      # 0x102e3
callq 0x21d0
movl $0xb, %edx
movq %rbx, %rdi
leaq 0x876a(%rip), %rsi      # 0x102eb
callq 0x21d0
incl %ebp
cmpl $0x6, %ebp
jne 0x7b0a
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2180
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20f0
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x877a(%rip), %rdi      # 0x10348
movq %rbp, %rsi
jmp 0x7bda
leaq 0x876e(%rip), %rdi      # 0x10348
xorl %eax, %eax
callq 0x21f0
movq %rax, %rbx
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x7c00
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x21a0
movq %rbx, %rdi
callq 0x2280