// File: ArthoPacini[P]blockchaincpp/./Block.hpp
// Function: Block::Block(nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer, std::vector<unsigned char, std::allocator<unsigned char>>>)
Block(nlohmann::json block_json)
    {
        this->index = block_json["index"];
        this->blockHash = block_json["blockHash"];
        this->previousBlockHash = block_json["previousBlockHash"];
        this->nounce = block_json["nounce"];
        this->maxTransactionsCount = block_json["maxTransactionCount"];
        this->difficulty = block_json["difficulty"];
        this->minedAt = block_json["minedAt"];

        for(const auto & transaction : block_json["transactions"])
            transactions.push_back(Transaction(transaction));
    }

// Assembly:
subq $0x228, %rsp            # imm = 0x228
movq %rsi, 0xa0(%rsp)
movq %rdi, 0x220(%rsp)
movq %rsi, 0x218(%rsp)
movq 0x220(%rsp), %rdi
movq %rdi, 0xc0(%rsp)
addq $0x8, %rdi
movq %rdi, 0xa8(%rsp)
callq 0x5630
movq 0xc0(%rsp), %rdi
addq $0x28, %rdi
movq %rdi, 0xb0(%rsp)
callq 0x5630
movq 0xc0(%rsp), %rdi
movq $0x0, 0x48(%rdi)
movl $0x3, 0x50(%rdi)
addq $0x58, %rdi
movq %rdi, 0xb8(%rsp)
callq 0x99c0
movq 0xc0(%rsp), %rax
addq $0x70, %rax
movq %rax, 0xc8(%rsp)
leaq 0x217(%rsp), %rdi
movq %rdi, 0xd0(%rsp)
callq 0x57a0
movq 0xc8(%rsp), %rdi
movq 0xd0(%rsp), %rdx
leaq 0x18aac(%rip), %rsi     # 0x3f33d
callq 0x6f00
jmp 0x26898
leaq 0x217(%rsp), %rdi
callq 0x5520
movq 0xc0(%rsp), %rax
addq $0x90, %rax
movq %rax, 0x90(%rsp)
leaq 0x203(%rsp), %rdi
movq %rdi, 0x98(%rsp)
callq 0x57a0
movq 0x90(%rsp), %rdi
movq 0x98(%rsp), %rdx
leaq 0x162cd(%rip), %rsi     # 0x3cbb4
callq 0x6f00
jmp 0x268ee
leaq 0x203(%rsp), %rdi
callq 0x5520
movq 0xa0(%rsp), %rdi
leaq 0x17c66(%rip), %rsi     # 0x3e570
callq 0x19700
movq %rax, 0x88(%rsp)
jmp 0x26919
movq 0x88(%rsp), %rdi
callq 0x3a500
movq %rax, 0x80(%rsp)
jmp 0x26930
movq 0xa0(%rsp), %rdi
movq 0xc0(%rsp), %rax
movq 0x80(%rsp), %rcx
movq %rcx, (%rax)
leaq 0x17c24(%rip), %rsi     # 0x3e576
callq 0x19700
movq %rax, 0x78(%rsp)
jmp 0x2695e
movq 0x78(%rsp), %rsi
leaq 0x1e0(%rsp), %rdi
callq 0x3a510
jmp 0x26972
movq 0xc0(%rsp), %rdi
addq $0x8, %rdi
leaq 0x1e0(%rsp), %rsi
movq %rsi, 0x68(%rsp)
callq 0x55b0
movq 0x68(%rsp), %rdi
callq 0x5320
movq 0xa0(%rsp), %rdi
leaq 0x17bd7(%rip), %rsi     # 0x3e580
callq 0x19700
movq %rax, 0x70(%rsp)
jmp 0x269b5
movq 0x70(%rsp), %rsi
leaq 0x1c0(%rsp), %rdi
callq 0x3a510
jmp 0x269c9
movq 0xc0(%rsp), %rdi
addq $0x28, %rdi
leaq 0x1c0(%rsp), %rsi
movq %rsi, 0x58(%rsp)
callq 0x55b0
movq 0x58(%rsp), %rdi
callq 0x5320
movq 0xa0(%rsp), %rdi
leaq 0x17b92(%rip), %rsi     # 0x3e592
callq 0x19700
movq %rax, 0x60(%rsp)
jmp 0x26a0c
movq 0x60(%rsp), %rdi
callq 0x3a500
movq %rax, 0x50(%rsp)
jmp 0x26a1d
movq 0xa0(%rsp), %rdi
movq 0xc0(%rsp), %rax
movq 0x50(%rsp), %rcx
movq %rcx, 0x48(%rax)
leaq 0x17b5c(%rip), %rsi     # 0x3e599
callq 0x19700
movq %rax, 0x48(%rsp)
jmp 0x26a49
movq 0x48(%rsp), %rdi
callq 0x263c0
movl %eax, 0x44(%rsp)
jmp 0x26a59
movq 0xa0(%rsp), %rdi
movq 0xc0(%rsp), %rax
movl 0x44(%rsp), %ecx
movl %ecx, 0x50(%rax)
leaq 0x161d5(%rip), %rsi     # 0x3cc4c
callq 0x19700
movq %rax, 0x38(%rsp)
jmp 0x26a83
movq 0x38(%rsp), %rdi
callq 0x263c0
movl %eax, 0x34(%rsp)
jmp 0x26a93
movq 0xa0(%rsp), %rdi
movq 0xc0(%rsp), %rax
movl 0x34(%rsp), %ecx
movl %ecx, 0x54(%rax)
leaq 0x17afc(%rip), %rsi     # 0x3e5ad
callq 0x19700
movq %rax, 0x28(%rsp)
jmp 0x26abd
movq 0x28(%rsp), %rsi
leaq 0x1a0(%rsp), %rdi
callq 0x3a510
jmp 0x26ad1
movq 0xc0(%rsp), %rdi
addq $0x90, %rdi
leaq 0x1a0(%rsp), %rsi
movq %rsi, 0x18(%rsp)
callq 0x55b0
movq 0x18(%rsp), %rdi
callq 0x5320
movq 0xa0(%rsp), %rdi
leaq 0x17aaa(%rip), %rsi     # 0x3e5b5
callq 0x19700
movq %rax, 0x20(%rsp)
jmp 0x26b17
movq 0x20(%rsp), %rax
movq %rax, 0x198(%rsp)
movq 0x198(%rsp), %rsi
leaq 0x178(%rsp), %rdi
callq 0x263d0
movq 0x198(%rsp), %rsi
leaq 0x158(%rsp), %rdi
callq 0x26410
leaq 0x178(%rsp), %rdi
leaq 0x158(%rsp), %rsi
callq 0x26450
movb %al, 0x17(%rsp)
jmp 0x26b69
movb 0x17(%rsp), %al
testb $0x1, %al
jne 0x26b76
jmp 0x26cbb
leaq 0x178(%rsp), %rdi
callq 0x26480
movq %rax, 0x8(%rsp)
jmp 0x26b8a
movq 0xc0(%rsp), %rax
movq 0x8(%rsp), %rcx
movq %rcx, 0x150(%rsp)
addq $0x58, %rax
movq %rax, (%rsp)
movq 0x150(%rsp), %rsi
leaq 0xd8(%rsp), %rdi
callq 0x127a0
jmp 0x26bbe
leaq 0xe8(%rsp), %rdi
leaq 0xd8(%rsp), %rsi
callq 0x3a570
jmp 0x26bd5
movq (%rsp), %rdi
leaq 0xe8(%rsp), %rsi
callq 0x3a540
jmp 0x26be8
leaq 0xe8(%rsp), %rdi
callq 0x7790
leaq 0xd8(%rsp), %rdi
callq 0xc450
leaq 0x178(%rsp), %rdi
callq 0x26d20
jmp 0x26c11
jmp 0x26b4e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x208(%rsp)
movl %eax, 0x204(%rsp)
leaq 0x217(%rsp), %rdi
callq 0x5520
jmp 0x26cdd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x208(%rsp)
movl %eax, 0x204(%rsp)
leaq 0x203(%rsp), %rdi
callq 0x5520
jmp 0x26cd0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x208(%rsp)
movl %eax, 0x204(%rsp)
jmp 0x26cc3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x208(%rsp)
movl %eax, 0x204(%rsp)
jmp 0x26cac
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x208(%rsp)
movl %eax, 0x204(%rsp)
leaq 0xe8(%rsp), %rdi
callq 0x7790
leaq 0xd8(%rsp), %rdi
callq 0xc450
jmp 0x26cc3
addq $0x228, %rsp            # imm = 0x228
retq
movq 0x90(%rsp), %rdi
callq 0x5320
movq 0xc8(%rsp), %rdi
callq 0x5320
movq 0xb8(%rsp), %rdi
callq 0x9a40
movq 0xb0(%rsp), %rdi
callq 0x5320
movq 0xa8(%rsp), %rdi
callq 0x5320
movq 0x208(%rsp), %rdi
callq 0x5790
nopw %cs:(%rax,%rax)
nopl (%rax,%rax)