// File: /workspace/github_cpp_makefile_star2_O3/kage08[P]RegexLibrary/Resource.cpp
// Function: inputDFA()
NFA inputDFA(){
  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;
  uLong ct=0;
  while((ct++)<ans.noStates*ans.alphabet.size() && cin>>p>>q>>al)
    ans.Trans[p].insert(make_pair(al,q));
  return ans;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x1d8, %rsp            # imm = 0x1D8
movq %rdi, %rbx
xorl %eax, %eax
movq %rax, 0x20(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
leaq 0x38(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb $0x0, (%rcx)
movq 0x5cd4(%rip), %r14      # 0x9fd8
leaq 0x4(%rsp), %rsi
movq %r14, %rdi
callq 0x20e0
movq (%r14), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0x2150
movsbl %al, %edx
movq 0x5ca9(%rip), %r14      # 0x9fd8
leaq 0x28(%rsp), %rsi
movq %r14, %rdi
callq 0x2290
movq (%r14), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0x2150
movsbl %al, %edx
movq 0x5c7e(%rip), %r14      # 0x9fd8
leaq 0x28(%rsp), %rsi
movq %r14, %rdi
callq 0x2290
movq 0x30(%rsp), %r13
testq %r13, %r13
je 0x43bc
movq 0x28(%rsp), %rbp
xorl %r15d, %r15d
leaq 0x58(%rsp), %r12
movzbl (%rbp,%r15), %eax
movb %al, 0x58(%rsp)
cmpl $0xa, %eax
je 0x43b4
cmpl $0x20, %eax
je 0x43b4
movq 0x18(%rsp), %rsi
cmpq 0x20(%rsp), %rsi
je 0x43a7
movb %al, (%rsi)
incq 0x18(%rsp)
jmp 0x43b4
leaq 0x10(%rsp), %rdi
movq %r12, %rdx
callq 0x58d0
incq %r15
cmpq %r15, %r13
jne 0x437e
movslq 0x4(%rsp), %rsi
leaq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x243c
movq (%r14), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0x2150
movsbl %al, %edx
movq 0x5bec(%rip), %rdi      # 0x9fd8
leaq 0x28(%rsp), %rsi
callq 0x2290
leaq 0x58(%rsp), %rdi
leaq 0x28(%rsp), %rsi
movl $0x8, %edx
callq 0x2260
leaq 0x20(%rbx), %r14
leaq 0x58(%rsp), %r15
leaq 0x4(%rsp), %r12
leaq 0x48(%rsp), %r13
movq %r15, %rdi
movq %r12, %rsi
callq 0x20e0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
testb $0x5, 0x20(%rax,%rcx)
jne 0x444d
movslq 0x4(%rsp), %rax
movq %rax, 0x48(%rsp)
movq %r14, %rdi
movq %r13, %rsi
callq 0x541e
jmp 0x441d
movq 0x58(%rbx), %rax
subq 0x50(%rbx), %rax
imulq (%rbx), %rax
testq %rax, %rax
je 0x44eb
xorl %r14d, %r14d
leaq 0xc(%rsp), %r15
leaq 0x8(%rsp), %r12
leaq 0x3(%rsp), %r13
leaq 0x48(%rsp), %rbp
movq 0x5b58(%rip), %rdi      # 0x9fd8
movq %r15, %rsi
callq 0x20e0
movq %rax, %rdi
movq %r12, %rsi
callq 0x20e0
movq %rax, %rdi
movq %r13, %rsi
callq 0x2200
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
testb $0x5, 0x20(%rax,%rcx)
jne 0x44eb
movslq 0xc(%rsp), %rax
leaq (%rax,%rax,2), %rdi
shlq $0x4, %rdi
addq 0x8(%rbx), %rdi
movb 0x3(%rsp), %al
movslq 0x8(%rsp), %rcx
movb %al, 0x48(%rsp)
movq %rcx, 0x50(%rsp)
movq %rbp, %rsi
callq 0x5530
movq 0x58(%rbx), %rax
subq 0x50(%rbx), %rax
imulq (%rbx), %rax
incq %r14
cmpq %rax, %r14
jb 0x4479
movq 0x5ace(%rip), %rsi      # 0x9fc0
leaq 0x58(%rsp), %rdi
callq 0x2210
leaq 0xd0(%rsp), %rdi
callq 0x2080
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x4525
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x2180
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x453c
movq 0x20(%rsp), %rsi
subq %rdi, %rsi
callq 0x2180
movq %rbx, %rax
addq $0x1d8, %rsp            # imm = 0x1D8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x4553
movq %rax, %r14
jmp 0x4586
jmp 0x455a
movq %rax, %r14
jmp 0x458e
jmp 0x4565
jmp 0x4565
jmp 0x4565
movq %rax, %r14
movq 0x5a51(%rip), %rsi      # 0x9fc0
leaq 0x58(%rsp), %rdi
callq 0x2210
leaq 0xd0(%rsp), %rdi
callq 0x2080
movq %rbx, %rdi
callq 0x4770
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x45aa
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x2180
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x45c1
movq 0x20(%rsp), %rsi
subq %rdi, %rsi
callq 0x2180
movq %r14, %rdi
callq 0x2270
nop