// File: ixchow[P]http-tweak/test.cpp
// Function: main
int main(int argc, char **argv) {
	float value = 1.0;
	TWEAK(value);
	float range_value = 0.5;
	TWEAK_HINT(range_value, "float 0.0 1.0");
	float other_value = 0.5;
	TWEAK_HINT(other_value, "");
	while (1) {
		std::this_thread::sleep_for(std::chrono::milliseconds(100));
		float old_value = value;
		float old_range_value = range_value;
		float old_other_value = other_value;
		TWEAK_SYNC();
		if (old_value != value) std::cout << "value: " << value << ".\n";
		if (old_range_value != range_value) std::cout << "range_value: " << range_value << ".\n";
		if (old_other_value != other_value) std::cout << "other_value: " << other_value << ".\n";
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x2e0, %rsp            # imm = 0x2E0
movl $0x0, -0x4(%rbp)
movl %edi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl $0x3f800000, -0x14(%rbp) # imm = 0x3F800000
leaq -0xb9(%rbp), %rdi
movq %rdi, -0x290(%rbp)
callq 0x4720
movq -0x290(%rbp), %rdx
leaq 0x13699(%rip), %rsi     # 0x1802a
leaq -0xb8(%rbp), %rdi
callq 0x4f80
jmp 0x499f
leaq -0x98(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
leaq -0x14(%rbp), %rdx
callq 0x4e50
jmp 0x49b8
leaq -0xb8(%rbp), %rdi
callq 0x42f0
leaq -0xb9(%rbp), %rdi
callq 0x44f0
movl $0x3f000000, -0xd0(%rbp) # imm = 0x3F000000
leaq -0x171(%rbp), %rdi
movq %rdi, -0x298(%rbp)
callq 0x4720
movq -0x298(%rbp), %rdx
leaq 0x13629(%rip), %rsi     # 0x18024
leaq -0x170(%rbp), %rdi
callq 0x4f80
jmp 0x4a09
leaq -0x199(%rbp), %rdi
movq %rdi, -0x2a0(%rbp)
callq 0x4720
movq -0x2a0(%rbp), %rdx
leaq 0x13606(%rip), %rsi     # 0x18030
leaq -0x198(%rbp), %rdi
callq 0x4f80
jmp 0x4a38
leaq -0x150(%rbp), %rdi
leaq -0x170(%rbp), %rsi
leaq -0xd0(%rbp), %rdx
leaq -0x198(%rbp), %rcx
callq 0x5030
jmp 0x4a5b
leaq -0x198(%rbp), %rdi
callq 0x42f0
leaq -0x199(%rbp), %rdi
callq 0x44f0
leaq -0x170(%rbp), %rdi
callq 0x42f0
leaq -0x171(%rbp), %rdi
callq 0x44f0
movl $0x3f000000, -0x1a0(%rbp) # imm = 0x3F000000
leaq -0x241(%rbp), %rdi
movq %rdi, -0x2a8(%rbp)
callq 0x4720
movq -0x2a8(%rbp), %rdx
leaq 0x13588(%rip), %rsi     # 0x1803e
leaq -0x240(%rbp), %rdi
callq 0x4f80
jmp 0x4ac4
leaq -0x269(%rbp), %rdi
movq %rdi, -0x2b0(%rbp)
callq 0x4720
movq -0x2b0(%rbp), %rdx
leaq 0x13790(%rip), %rsi     # 0x18275
leaq -0x268(%rbp), %rdi
callq 0x4f80
jmp 0x4af3
leaq -0x220(%rbp), %rdi
leaq -0x240(%rbp), %rsi
leaq -0x1a0(%rbp), %rdx
leaq -0x268(%rbp), %rcx
callq 0x5030
jmp 0x4b16
leaq -0x268(%rbp), %rdi
callq 0x42f0
leaq -0x269(%rbp), %rdi
callq 0x44f0
leaq -0x240(%rbp), %rdi
callq 0x42f0
leaq -0x241(%rbp), %rdi
callq 0x44f0
jmp 0x4b48
movl $0x64, -0x27c(%rbp)
leaq -0x278(%rbp), %rdi
leaq -0x27c(%rbp), %rsi
callq 0x5210
jmp 0x4b67
leaq -0x278(%rbp), %rdi
callq 0x5160
jmp 0x4b75
movss -0x14(%rbp), %xmm0
movss %xmm0, -0x280(%rbp)
movss -0xd0(%rbp), %xmm0
movss %xmm0, -0x284(%rbp)
movss -0x1a0(%rbp), %xmm0
movss %xmm0, -0x288(%rbp)
callq 0x6c60
jmp 0x4ba9
movss -0x280(%rbp), %xmm0
ucomiss -0x14(%rbp), %xmm0
jne 0x4bbe
jp 0x4bbe
jmp 0x4d52
movq 0x1f3f3(%rip), %rdi     # 0x23fb8
leaq 0x13487(%rip), %rsi     # 0x18053
callq 0x4470
movq %rax, -0x2b8(%rbp)
jmp 0x4bda
movq -0x2b8(%rbp), %rdi
movss -0x14(%rbp), %xmm0
callq 0x43a0
movq %rax, -0x2c0(%rbp)
jmp 0x4bf4
movq -0x2c0(%rbp), %rdi
leaq 0x13448(%rip), %rsi     # 0x1804a
callq 0x4470
jmp 0x4c09
jmp 0x4d52
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc8(%rbp)
movl %eax, -0xcc(%rbp)
jmp 0x4c40
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc8(%rbp)
movl %eax, -0xcc(%rbp)
leaq -0xb8(%rbp), %rdi
callq 0x42f0
leaq -0xb9(%rbp), %rdi
callq 0x44f0
jmp 0x4e39
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc8(%rbp)
movl %eax, -0xcc(%rbp)
jmp 0x4caf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc8(%rbp)
movl %eax, -0xcc(%rbp)
jmp 0x4c97
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc8(%rbp)
movl %eax, -0xcc(%rbp)
leaq -0x198(%rbp), %rdi
callq 0x42f0
leaq -0x199(%rbp), %rdi
callq 0x44f0
leaq -0x170(%rbp), %rdi
callq 0x42f0
leaq -0x171(%rbp), %rdi
callq 0x44f0
jmp 0x4e2d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc8(%rbp)
movl %eax, -0xcc(%rbp)
jmp 0x4d1e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc8(%rbp)
movl %eax, -0xcc(%rbp)
jmp 0x4d06
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc8(%rbp)
movl %eax, -0xcc(%rbp)
leaq -0x268(%rbp), %rdi
callq 0x42f0
leaq -0x269(%rbp), %rdi
callq 0x44f0
leaq -0x240(%rbp), %rdi
callq 0x42f0
leaq -0x241(%rbp), %rdi
callq 0x44f0
jmp 0x4e21
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc8(%rbp)
movl %eax, -0xcc(%rbp)
leaq -0x220(%rbp), %rdi
callq 0x6a90
jmp 0x4e21
movss -0x284(%rbp), %xmm0
ucomiss -0xd0(%rbp), %xmm0
jne 0x4d67
jp 0x4d67
jmp 0x4db7
movq 0x1f24a(%rip), %rdi     # 0x23fb8
leaq 0x132d8(%rip), %rsi     # 0x1804d
callq 0x4470
movq %rax, -0x2c8(%rbp)
jmp 0x4d83
movq -0x2c8(%rbp), %rdi
movss -0xd0(%rbp), %xmm0
callq 0x43a0
movq %rax, -0x2d0(%rbp)
jmp 0x4da0
movq -0x2d0(%rbp), %rdi
leaq 0x1329c(%rip), %rsi     # 0x1804a
callq 0x4470
jmp 0x4db5
jmp 0x4db7
movss -0x288(%rbp), %xmm0
ucomiss -0x1a0(%rbp), %xmm0
jne 0x4dcc
jp 0x4dcc
jmp 0x4e1c
movq 0x1f1e5(%rip), %rdi     # 0x23fb8
leaq 0x13281(%rip), %rsi     # 0x1805b
callq 0x4470
movq %rax, -0x2d8(%rbp)
jmp 0x4de8
movq -0x2d8(%rbp), %rdi
movss -0x1a0(%rbp), %xmm0
callq 0x43a0
movq %rax, -0x2e0(%rbp)
jmp 0x4e05
movq -0x2e0(%rbp), %rdi
leaq 0x13237(%rip), %rsi     # 0x1804a
callq 0x4470
jmp 0x4e1a
jmp 0x4e1c
jmp 0x4b46
leaq -0x150(%rbp), %rdi
callq 0x6a90
leaq -0x98(%rbp), %rdi
callq 0x6a90
movq -0xc8(%rbp), %rdi
callq 0x4710
nopw %cs:(%rax,%rax)
nop