// File: /workspace/github_cpp_makefile_star2_O2/t0mm4rx[P]piscine_cpp/day02/ex01/main.cpp
// Function: main
int main(void) {
	Fixed a;
	Fixed const b(10);
	Fixed const c(42.42f);
	Fixed const d(b);

	a = Fixed(1234.4321f);
	std::cout << "a is " << a << std::endl;
	std::cout << "b is " << b << std::endl;
	std::cout << "c is " << c << std::endl;
	std::cout << "d is " << d << std::endl;
	std::cout << "a is " << a.toInt() << " as integer" << std::endl;
	std::cout << "b is " << b.toInt() << " as integer" << std::endl;
	std::cout << "c is " << c.toInt() << " as integer" << std::endl;
	std::cout << "d is " << d.toInt() << " as integer" << std::endl;
	return (0);
}

// Assembly:
pushq %rbx
subq $0x20, %rsp
leaq 0x10(%rsp), %rdi
callq 0x11fc
leaq 0xc(%rsp), %rdi
pushq $0xa
popq %rsi
callq 0x1200
leaq 0x18(%rsp), %rdi
movss 0xd7b(%rip), %xmm0      # 0x200c
callq 0x1206
leaq 0x14(%rsp), %rdi
leaq 0xc(%rsp), %rsi
callq 0x1222
leaq 0x1c(%rsp), %rdi
movss 0xd5e(%rip), %xmm0      # 0x2010
callq 0x1206
leaq 0x10(%rsp), %rdi
leaq 0x1c(%rsp), %rsi
callq 0x1228
leaq 0x1c(%rsp), %rdi
callq 0x1220
movq 0x2d01(%rip), %rdi      # 0x3fd8
leaq 0xd36(%rip), %rsi       # 0x2014
callq 0x1060
leaq 0x10(%rsp), %rsi
movq %rax, %rdi
callq 0x124c
movq %rax, %rdi
callq 0x1030
movq 0x2cd9(%rip), %rdi      # 0x3fd8
leaq 0xd14(%rip), %rsi       # 0x201a
callq 0x1060
leaq 0xc(%rsp), %rsi
movq %rax, %rdi
callq 0x124c
movq %rax, %rdi
callq 0x1030
movq 0x2cb1(%rip), %rdi      # 0x3fd8
leaq 0xcf2(%rip), %rsi       # 0x2020
callq 0x1060
leaq 0x18(%rsp), %rsi
movq %rax, %rdi
callq 0x124c
movq %rax, %rdi
callq 0x1030
movq 0x2c89(%rip), %rdi      # 0x3fd8
leaq 0xcd0(%rip), %rsi       # 0x2026
callq 0x1060
leaq 0x14(%rsp), %rsi
movq %rax, %rdi
callq 0x124c
movq %rax, %rdi
callq 0x1030
movq 0x2c61(%rip), %rdi      # 0x3fd8
leaq 0xc96(%rip), %rsi       # 0x2014
callq 0x1060
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x1246
movq %rbx, %rdi
movl %eax, %esi
callq 0x1090
leaq 0xc8b(%rip), %rsi       # 0x202c
movq %rax, %rdi
callq 0x1060
movq %rax, %rdi
callq 0x1030
movq 0x2c20(%rip), %rdi      # 0x3fd8
leaq 0xc5b(%rip), %rsi       # 0x201a
callq 0x1060
movq %rax, %rbx
leaq 0xc(%rsp), %rdi
callq 0x1246
movq %rbx, %rdi
movl %eax, %esi
callq 0x1090
leaq 0xc4a(%rip), %rsi       # 0x202c
movq %rax, %rdi
callq 0x1060
movq %rax, %rdi
callq 0x1030
movq 0x2bdf(%rip), %rdi      # 0x3fd8
leaq 0xc20(%rip), %rsi       # 0x2020
callq 0x1060
movq %rax, %rbx
leaq 0x18(%rsp), %rdi
callq 0x1246
movq %rbx, %rdi
movl %eax, %esi
callq 0x1090
leaq 0xc09(%rip), %rsi       # 0x202c
movq %rax, %rdi
callq 0x1060
movq %rax, %rdi
callq 0x1030
movq 0x2b9e(%rip), %rdi      # 0x3fd8
leaq 0xbe5(%rip), %rsi       # 0x2026
callq 0x1060
movq %rax, %rbx
leaq 0x14(%rsp), %rdi
callq 0x1246
movq %rbx, %rdi
movl %eax, %esi
callq 0x1090
leaq 0xbc8(%rip), %rsi       # 0x202c
movq %rax, %rdi
callq 0x1060
movq %rax, %rdi
callq 0x1030
leaq 0x14(%rsp), %rdi
callq 0x1220
leaq 0x18(%rsp), %rdi
callq 0x1220
leaq 0xc(%rsp), %rdi
callq 0x1220
leaq 0x10(%rsp), %rdi
callq 0x1220
xorl %eax, %eax
addq $0x20, %rsp
popq %rbx
retq
movq %rax, %rbx
leaq 0x1c(%rsp), %rdi
callq 0x1220
jmp 0x14c7
jmp 0x14c4
movq %rax, %rbx
jmp 0x14d1
movq %rax, %rbx
jmp 0x14db
movq %rax, %rbx
jmp 0x14e5
movq %rax, %rbx
leaq 0x14(%rsp), %rdi
callq 0x1220
leaq 0x18(%rsp), %rdi
callq 0x1220
leaq 0xc(%rsp), %rdi
callq 0x1220
leaq 0x10(%rsp), %rdi
callq 0x1220
movq %rbx, %rdi
callq 0x10a0