// File: kage08[P]RegexLibrary/Resource.cpp
// Function: inputNFA()
NFA inputNFA(){
  int nS;
  std::vector<char> alpha;
  string line;
  cin>>nS;
  getline(cin,line);
  getline(cin,line);
  for(char c:line)
    if(!(c==' '||c=='\n')) alpha.push_back(c);
  NFA ans(nS,alpha);
  getline(cin,line);
  istringstream is {line};
  while(is>>nS){
    ans.acceptStates.insert(nS);
  }
  int p,q; char al;
  while(cin>>p>>q>>al)
    ans.Trans[p].insert(make_pair(al,q));
  return ans;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x2c0, %rsp            # imm = 0x2C0
movq %rdi, -0x258(%rbp)
movq %rdi, %rax
movq %rax, -0x250(%rbp)
movq %rdi, -0x8(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x5460
leaq -0x48(%rbp), %rdi
callq 0x22f0
movq 0x1539f(%rip), %rdi     # 0x19fd8
leaq -0xc(%rbp), %rsi
callq 0x2130
jmp 0x4c44
movq 0x1538d(%rip), %rdi     # 0x19fd8
leaq -0x48(%rbp), %rsi
callq 0x2060
jmp 0x4c56
movq 0x1537b(%rip), %rdi     # 0x19fd8
leaq -0x48(%rbp), %rsi
callq 0x2060
jmp 0x4c68
leaq -0x48(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x60(%rbp), %rdi
callq 0x21a0
movq %rax, -0x68(%rbp)
movq -0x60(%rbp), %rdi
callq 0x2110
movq %rax, -0x70(%rbp)
leaq -0x68(%rbp), %rdi
leaq -0x70(%rbp), %rsi
callq 0x6030
testb $0x1, %al
jne 0x4c9d
jmp 0x4cec
leaq -0x68(%rbp), %rdi
callq 0x6070
movb (%rax), %al
movb %al, -0x71(%rbp)
movsbl -0x71(%rbp), %eax
cmpl $0x20, %eax
je 0x4cdf
movsbl -0x71(%rbp), %eax
cmpl $0xa, %eax
je 0x4cdf
leaq -0x28(%rbp), %rdi
leaq -0x71(%rbp), %rsi
callq 0x5f90
jmp 0x4ccc
jmp 0x4cdf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x50(%rbp)
movl %eax, -0x54(%rbp)
jmp 0x4f63
jmp 0x4ce1
leaq -0x68(%rbp), %rdi
callq 0x6170
jmp 0x4c8a
movq -0x258(%rbp), %rdi
movb $0x0, -0x72(%rbp)
movslq -0xc(%rbp), %rsi
leaq -0x28(%rbp), %rdx
callq 0x2570
jmp 0x4d06
movq 0x152cb(%rip), %rdi     # 0x19fd8
leaq -0x48(%rbp), %rsi
callq 0x2060
jmp 0x4d18
leaq -0x1f8(%rbp), %rdi
leaq -0x48(%rbp), %rsi
movl $0x8, %edx
callq 0x2370
jmp 0x4d2f
jmp 0x4d31
leaq -0x1f8(%rbp), %rdi
leaq -0xc(%rbp), %rsi
callq 0x2130
movq %rax, -0x260(%rbp)
jmp 0x4d4a
movq -0x260(%rbp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
addq %rax, %rdi
callq 0x22c0
movb %al, -0x261(%rbp)
jmp 0x4d68
movb -0x261(%rbp), %al
testb $0x1, %al
jne 0x4d74
jmp 0x4df2
movq -0x258(%rbp), %rdi
addq $0x20, %rdi
movslq -0xc(%rbp), %rax
movq %rax, -0x200(%rbp)
leaq -0x200(%rbp), %rsi
callq 0x59b0
movb %dl, -0x271(%rbp)
movq %rax, -0x270(%rbp)
jmp 0x4da5
movb -0x271(%rbp), %al
movq -0x270(%rbp), %rcx
movq %rcx, -0x210(%rbp)
movb %al, -0x208(%rbp)
jmp 0x4d31
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x50(%rbp)
movl %eax, -0x54(%rbp)
jmp 0x4f57
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x50(%rbp)
movl %eax, -0x54(%rbp)
leaq -0x1f8(%rbp), %rdi
callq 0x20d0
jmp 0x4f57
jmp 0x4df4
movq 0x151dd(%rip), %rdi     # 0x19fd8
leaq -0x214(%rbp), %rsi
callq 0x2130
movq %rax, -0x280(%rbp)
jmp 0x4e10
movq -0x280(%rbp), %rdi
leaq -0x218(%rbp), %rsi
callq 0x2130
movq %rax, -0x288(%rbp)
jmp 0x4e2c
movq -0x288(%rbp), %rdi
leaq -0x219(%rbp), %rsi
callq 0x22e0
movq %rax, -0x290(%rbp)
jmp 0x4e48
movq -0x290(%rbp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
addq %rax, %rdi
callq 0x22c0
movb %al, -0x291(%rbp)
jmp 0x4e66
movb -0x291(%rbp), %al
testb $0x1, %al
jne 0x4e75
jmp 0x4f13
movq -0x258(%rbp), %rdi
addq $0x8, %rdi
movslq -0x214(%rbp), %rsi
callq 0x5a00
movq %rax, -0x2a8(%rbp)
leaq -0x219(%rbp), %rdi
leaq -0x218(%rbp), %rsi
callq 0x64c0
movq %rax, -0x2a0(%rbp)
jmp 0x4eaf
movq -0x2a0(%rbp), %rax
movq %rax, -0x238(%rbp)
leaq -0x230(%rbp), %rdi
leaq -0x238(%rbp), %rsi
callq 0x64f0
jmp 0x4ed2
movq -0x2a8(%rbp), %rdi
leaq -0x230(%rbp), %rsi
callq 0x5a20
movb %dl, -0x2b1(%rbp)
movq %rax, -0x2b0(%rbp)
jmp 0x4ef4
movb -0x2b1(%rbp), %al
movq -0x2b0(%rbp), %rcx
movq %rcx, -0x248(%rbp)
movb %al, -0x240(%rbp)
jmp 0x4df4
movb $0x1, -0x72(%rbp)
leaq -0x1f8(%rbp), %rdi
callq 0x20d0
testb $0x1, -0x72(%rbp)
jne 0x4f35
movq -0x258(%rbp), %rdi
callq 0x5aa0
leaq -0x48(%rbp), %rdi
callq 0x2140
leaq -0x28(%rbp), %rdi
callq 0x5840
movq -0x250(%rbp), %rax
addq $0x2c0, %rsp            # imm = 0x2C0
popq %rbp
retq
movq -0x258(%rbp), %rdi
callq 0x5aa0
leaq -0x48(%rbp), %rdi
callq 0x2140
leaq -0x28(%rbp), %rdi
callq 0x5840
movq -0x50(%rbp), %rdi
callq 0x2380
nop