// File: /workspace/github_cpp_makefile_star2_O2/pc260533[P]ITC313-TP2/commande.cpp
// Function: Commande::deserialiserObjet(ObjetSerialized)
void Commande::deserialiserObjet(ObjetSerialized objetSerialized) {
    objetSerialized.remplirMapNomAttributValeurAttribut();
    this->setIdentifiantCommande(std::stoi(objetSerialized.getValeurAttribut(this->getMapAttributsNomAttributs().at("identifiantCommande"))));
    this->nomClient = objetSerialized.getValeurAttribut(this->getMapAttributsNomAttributs().at("nomClient"));
    this->prenomClient = objetSerialized.getValeurAttribut(this->getMapAttributsNomAttributs().at("prenomClient"));

    std::vector<std::string> listeNomProduitsCommandes;
    std::stringstream listeNomProduitsCommandestringStream(objetSerialized.getValeurAttribut(this->getMapAttributsNomAttributs().at("listeNomProduitsCommandes")));
    std::string nomProduitCommande = "";
    while (std::getline(listeNomProduitsCommandestringStream, nomProduitCommande, ',')) {
        listeNomProduitsCommandes.push_back(nomProduitCommande);
    }
    this->listeNomProduitsCommandes = listeNomProduitsCommandes;

    std::stringstream listeQuantitesProduitsCommandesStringStream(objetSerialized.getValeurAttribut(this->getMapAttributsNomAttributs().at("listeQuantitesProduitsCommandes")));
    std::string quantiteProduitCommande = "";
    while (std::getline(listeQuantitesProduitsCommandesStringStream, quantiteProduitCommande, ',')) {
        this->listeQuantitesProduitsCommandes.push_back(std::stoi(quantiteProduitCommande));
    }

    std::string statutLivreeCommande = objetSerialized.getValeurAttribut(this->getMapAttributsNomAttributs().at("statutLivreeCommande"));
    if (statutLivreeCommande == "true") {
        this->setStatutLivreeCommande(true);
    }
    else if (statutLivreeCommande == "false") {
        this->setStatutLivreeCommande(false);
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x4b8, %rsp            # imm = 0x4B8
movq %rdi, %rbx
movq %rsi, 0x18(%rsp)
movq %rsi, %rdi
callq 0xbf30
leaq 0x330(%rsp), %rdi
movq %rbx, 0x8(%rsp)
movq %rbx, %rsi
callq 0xcb5c
leaq 0x4ec4(%rip), %rsi      # 0xd919
leaq 0x20(%rsp), %rdi
leaq 0x50(%rsp), %rdx
callq 0x52be
leaq 0x330(%rsp), %rdi
leaq 0x20(%rsp), %rsi
callq 0x70f0
leaq 0x188(%rsp), %rdi
movq %rax, %rsi
callq 0x32a0
leaq 0x1a8(%rsp), %rdi
leaq 0x188(%rsp), %rdx
movq 0x18(%rsp), %rsi
callq 0xc138
leaq 0x1a8(%rsp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x5306
movq 0x8(%rsp), %rbx
movl %eax, 0x38(%rbx)
leaq 0x1a8(%rsp), %rdi
callq 0x3110
leaq 0x188(%rsp), %rdi
callq 0x3110
leaq 0x20(%rsp), %rdi
callq 0x3110
leaq 0x330(%rsp), %rdi
callq 0x72ce
leaq 0x330(%rsp), %rdi
movq %rbx, %rsi
callq 0xcb5c
leaq 0x4c6c(%rip), %rsi      # 0xd76e
leaq 0x20(%rsp), %rdi
leaq 0x50(%rsp), %rdx
callq 0x52be
leaq 0x330(%rsp), %rdi
leaq 0x20(%rsp), %rsi
callq 0x70f0
leaq 0x168(%rsp), %rdi
movq %rax, %rsi
callq 0x32a0
leaq 0x1a8(%rsp), %rdi
leaq 0x168(%rsp), %rdx
movq 0x18(%rsp), %rsi
callq 0xc138
movq 0x8(%rsp), %r14
leaq 0x80(%r14), %rdi
leaq 0x1a8(%rsp), %rbx
movq %rbx, %rsi
callq 0x3270
movq %rbx, %rdi
callq 0x3110
leaq 0x168(%rsp), %rdi
callq 0x3110
leaq 0x20(%rsp), %rdi
callq 0x3110
leaq 0x330(%rsp), %rdi
callq 0x72ce
leaq 0x330(%rsp), %rdi
movq %r14, %rsi
callq 0xcb5c
leaq 0x4bbf(%rip), %rsi      # 0xd76b
leaq 0x20(%rsp), %rdi
leaq 0x50(%rsp), %rdx
callq 0x52be
leaq 0x330(%rsp), %rdi
leaq 0x20(%rsp), %rsi
callq 0x70f0
leaq 0x148(%rsp), %rdi
movq %rax, %rsi
callq 0x32a0
leaq 0x1a8(%rsp), %rdi
leaq 0x148(%rsp), %rdx
movq 0x18(%rsp), %rsi
callq 0xc138
movq 0x8(%rsp), %r14
leaq 0xa0(%r14), %rdi
leaq 0x1a8(%rsp), %rbx
movq %rbx, %rsi
callq 0x3270
movq %rbx, %rdi
callq 0x3110
leaq 0x148(%rsp), %rdi
callq 0x3110
leaq 0x20(%rsp), %rdi
callq 0x3110
leaq 0x330(%rsp), %rdi
callq 0x72ce
xorps %xmm0, %xmm0
movaps %xmm0, 0x90(%rsp)
andq $0x0, 0xa0(%rsp)
leaq 0x1a8(%rsp), %rdi
movq %r14, %rsi
callq 0xcb5c
leaq 0x4cd8(%rip), %rsi      # 0xd942
leaq 0x50(%rsp), %rdi
leaq 0x70(%rsp), %rdx
callq 0x52be
leaq 0x1a8(%rsp), %rdi
leaq 0x50(%rsp), %rsi
callq 0x70f0
leaq 0x128(%rsp), %rdi
movq %rax, %rsi
callq 0x32a0
leaq 0x20(%rsp), %rdi
leaq 0x128(%rsp), %rdx
movq 0x18(%rsp), %rsi
callq 0xc138
leaq 0x330(%rsp), %rdi
leaq 0x20(%rsp), %rsi
pushq $0x18
popq %rdx
callq 0x3320
leaq 0x20(%rsp), %rdi
callq 0x3110
leaq 0x128(%rsp), %rdi
callq 0x3110
leaq 0x50(%rsp), %rdi
callq 0x3110
leaq 0x1a8(%rsp), %rdi
callq 0x72ce
leaq 0x4e3a(%rip), %rsi      # 0xdb36
leaq 0x50(%rsp), %rdi
leaq 0x1a8(%rsp), %rdx
callq 0x52be
leaq 0x330(%rsp), %rbx
leaq 0x50(%rsp), %r14
pushq $0x2c
popq %rbp
leaq 0x90(%rsp), %r15
movq %rbx, %rdi
movq %r14, %rsi
movl %ebp, %edx
callq 0x33d0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
testb $0x5, 0x20(%rax,%rcx)
jne 0x8d4e
movq %r15, %rdi
movq %r14, %rsi
callq 0x7140
jmp 0x8d26
movq 0x8(%rsp), %rbx
leaq 0xc0(%rbx), %rdi
leaq 0x90(%rsp), %rsi
callq 0x716c
leaq 0x20(%rsp), %rdi
movq %rbx, %rsi
callq 0xcb5c
leaq 0x4bf8(%rip), %rsi      # 0xd973
leaq 0xa8(%rsp), %rdi
leaq 0xc8(%rsp), %rdx
callq 0x52be
leaq 0x20(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0x70f0
leaq 0x108(%rsp), %rdi
movq %rax, %rsi
callq 0x32a0
leaq 0x70(%rsp), %rdi
leaq 0x108(%rsp), %rdx
movq 0x18(%rsp), %rsi
callq 0xc138
leaq 0x1a8(%rsp), %rdi
leaq 0x70(%rsp), %rsi
pushq $0x18
popq %rdx
callq 0x3320
leaq 0x70(%rsp), %rdi
callq 0x3110
leaq 0x108(%rsp), %rdi
callq 0x3110
leaq 0xa8(%rsp), %rdi
callq 0x3110
leaq 0x20(%rsp), %rdi
callq 0x72ce
leaq 0x4d23(%rip), %rsi      # 0xdb36
leaq 0x70(%rsp), %rdi
leaq 0x20(%rsp), %rdx
callq 0x52be
movq 0x8(%rsp), %rax
leaq 0x60(%rax), %r15
leaq 0x1a8(%rsp), %r12
leaq 0x70(%rsp), %r13
pushq $0x2c
popq %rbp
pushq $0xa
popq %r14
leaq 0x20(%rsp), %rbx
movq %r12, %rdi
movq %r13, %rsi
movl %ebp, %edx
callq 0x33d0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
testb $0x5, 0x20(%rax,%rcx)
jne 0x8e7d
movq %r13, %rdi
xorl %esi, %esi
movl %r14d, %edx
callq 0x5306
movl %eax, 0x20(%rsp)
movq %r15, %rdi
movq %rbx, %rsi
callq 0x76aa
jmp 0x8e44
leaq 0x20(%rsp), %rdi
movq 0x8(%rsp), %rsi
callq 0xcb5c
leaq 0x4b00(%rip), %rsi      # 0xd993
leaq 0xc8(%rsp), %rdi
leaq 0x17(%rsp), %rdx
callq 0x52be
leaq 0x20(%rsp), %rdi
leaq 0xc8(%rsp), %rsi
callq 0x70f0
leaq 0xe8(%rsp), %rdi
movq %rax, %rsi
callq 0x32a0
leaq 0xa8(%rsp), %rdi
leaq 0xe8(%rsp), %rdx
movq 0x18(%rsp), %rsi
callq 0xc138
leaq 0xe8(%rsp), %rdi
callq 0x3110
leaq 0xc8(%rsp), %rdi
callq 0x3110
leaq 0x20(%rsp), %rdi
callq 0x72ce
leaq 0x4aa2(%rip), %rsi      # 0xd9ae
leaq 0xa8(%rsp), %rdi
callq 0x52f9
movb $0x1, %cl
testb %al, %al
jne 0x8f39
leaq 0x4a82(%rip), %rsi      # 0xd9a8
leaq 0xa8(%rsp), %rdi
callq 0x52f9
testb %al, %al
je 0x8f41
xorl %ecx, %ecx
movq 0x8(%rsp), %rax
movb %cl, 0x78(%rax)
leaq 0xa8(%rsp), %rdi
callq 0x3110
leaq 0x70(%rsp), %rdi
callq 0x3110
leaq 0x1a8(%rsp), %rdi
callq 0x31b0
leaq 0x50(%rsp), %rdi
callq 0x3110
leaq 0x330(%rsp), %rdi
callq 0x31b0
leaq 0x90(%rsp), %rdi
callq 0x6df8
addq $0x4b8, %rsp            # imm = 0x4B8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq 0xe8(%rsp), %rdi
callq 0x3110
jmp 0x9081
movq %rax, %rbx
jmp 0x908e
jmp 0x90f4
movq %rax, %rbx
jmp 0x9101
movq %rax, %rbx
leaq 0x70(%rsp), %rdi
callq 0x3110
jmp 0x8fd7
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x3110
jmp 0x909d
movq %rax, %rbx
jmp 0x90aa
jmp 0x9110
jmp 0x9110
movq %rax, %rbx
jmp 0x911d
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
callq 0x3110
jmp 0x9015
movq %rax, %rbx
leaq 0x128(%rsp), %rdi
callq 0x3110
jmp 0x90b9
movq %rax, %rbx
jmp 0x90c3
movq %rax, %rbx
jmp 0x912a
movq %rax, %rbx
leaq 0x148(%rsp), %rdi
jmp 0x9072
jmp 0x9079
movq %rax, %rbx
leaq 0x168(%rsp), %rdi
jmp 0x9072
jmp 0x9079
movq %rax, %rbx
leaq 0x1a8(%rsp), %rdi
callq 0x3110
jmp 0x906a
movq %rax, %rbx
leaq 0x188(%rsp), %rdi
callq 0x3110
jmp 0x90d9
movq %rax, %rbx
jmp 0x90e3
movq %rax, %rbx
leaq 0xc8(%rsp), %rdi
callq 0x3110
leaq 0x20(%rsp), %rdi
callq 0x72ce
jmp 0x90f7
movq %rax, %rbx
leaq 0xa8(%rsp), %rdi
callq 0x3110
leaq 0x20(%rsp), %rdi
callq 0x72ce
jmp 0x9113
movq %rax, %rbx
leaq 0x50(%rsp), %rdi
callq 0x3110
leaq 0x1a8(%rsp), %rdi
callq 0x72ce
jmp 0x912a
jmp 0x90d6
jmp 0x90d6
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
callq 0x3110
leaq 0x330(%rsp), %rdi
callq 0x72ce
jmp 0x9137
jmp 0x90f4
movq %rax, %rbx
leaq 0x70(%rsp), %rdi
callq 0x3110
leaq 0x1a8(%rsp), %rdi
callq 0x31b0
jmp 0x9113
movq %rax, %rbx
leaq 0x50(%rsp), %rdi
callq 0x3110
leaq 0x330(%rsp), %rdi
callq 0x31b0
leaq 0x90(%rsp), %rdi
callq 0x6df8
movq %rbx, %rdi
callq 0x33a0
nop