// File: qmmlib[P]QmmLibrary/transform_line.cpp
// Function: split
void split(char* _str, double* read_line, int * y)
{
    int i = 0;
	while(1)
	{
		if(_str[i]==0)
			break;
		else if(_str[i]==':' || _str[i]=='\r' || _str[i]=='\n' || _str[i]=='\t')
			_str[i] = ' ';
		i++;
	}
	
	std::vector<std::string> v;
	std::string str(_str);
	split(str, v, ' ' ); 
	
	bool labeled = false;
	int last_index = 0;
	for(int i=0; i<v.size(); i++)
	{
		string s = v[i];
		if(s.find_first_not_of(' ') != std::string::npos)
		{
			if(!labeled)
			{
				*y = atoi(s.c_str());
				labeled = true;
				continue;
			}
			if(last_index==0)
				last_index = (int) atof(s.c_str());
			else
			{
				read_line[last_index] = atof(s.c_str());
				last_index = 0;
			}
		}
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movl $0x0, -0x1c(%rbp)
movq -0x8(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x0, %eax
jne 0x21721
jmp 0x2177e
movq -0x8(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x3a, %eax
je 0x21765
movq -0x8(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0xd, %eax
je 0x21765
movq -0x8(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0xa, %eax
je 0x21765
movq -0x8(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x9, %eax
jne 0x21771
movq -0x8(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movb $0x20, (%rax,%rcx)
jmp 0x21773
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x2170e
leaq -0x38(%rbp), %rdi
callq 0x21e70
movq -0x8(%rbp), %rax
movq %rax, -0xb0(%rbp)
leaq -0x59(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x34c0
movq -0xb0(%rbp), %rsi
movq -0xa8(%rbp), %rdx
leaq -0x58(%rbp), %rdi
callq 0x21e90
jmp 0x217bb
leaq -0x59(%rbp), %rdi
callq 0x3300
leaq -0x58(%rbp), %rdi
leaq -0x38(%rbp), %rsi
movl $0x20, %edx
callq 0x21560
jmp 0x217d8
movb $0x0, -0x6d(%rbp)
movl $0x0, -0x74(%rbp)
movl $0x0, -0x78(%rbp)
movslq -0x78(%rbp), %rax
movq %rax, -0xb8(%rbp)
leaq -0x38(%rbp), %rdi
callq 0x21e50
movq %rax, %rcx
movq -0xb8(%rbp), %rax
cmpq %rcx, %rax
jae 0x21938
movslq -0x78(%rbp), %rsi
leaq -0x38(%rbp), %rdi
callq 0x21f40
movq %rax, %rsi
leaq -0x98(%rbp), %rdi
callq 0x3110
jmp 0x2182f
leaq -0x98(%rbp), %rdi
movl $0x20, %esi
xorl %eax, %eax
movl %eax, %edx
callq 0x3270
cmpq $-0x1, %rax
je 0x21904
testb $0x1, -0x6d(%rbp)
jne 0x218b7
leaq -0x98(%rbp), %rdi
callq 0x3100
movq %rax, %rdi
callq 0x3430
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %ecx, (%rax)
movb $0x1, -0x6d(%rbp)
movl $0x6, -0x9c(%rbp)
jmp 0x2190e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
leaq -0x59(%rbp), %rdi
callq 0x3300
jmp 0x21953
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
leaq -0x58(%rbp), %rdi
callq 0x3170
jmp 0x21953
cmpl $0x0, -0x74(%rbp)
jne 0x218da
leaq -0x98(%rbp), %rdi
callq 0x3100
movq %rax, %rdi
callq 0x33a0
cvttsd2si %xmm0, %eax
movl %eax, -0x74(%rbp)
jmp 0x21902
leaq -0x98(%rbp), %rdi
callq 0x3100
movq %rax, %rdi
callq 0x33a0
movq -0x10(%rbp), %rax
movslq -0x74(%rbp), %rcx
movsd %xmm0, (%rax,%rcx,8)
movl $0x0, -0x74(%rbp)
jmp 0x21904
movl $0x0, -0x9c(%rbp)
leaq -0x98(%rbp), %rdi
callq 0x3170
movl -0x9c(%rbp), %eax
testl %eax, %eax
je 0x21928
jmp 0x21926
jmp 0x2192a
jmp 0x2192a
movl -0x78(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x78(%rbp)
jmp 0x217ea
leaq -0x58(%rbp), %rdi
callq 0x3170
leaq -0x38(%rbp), %rdi
callq 0x21f60
addq $0xc0, %rsp
popq %rbp
retq
leaq -0x38(%rbp), %rdi
callq 0x21f60
movq -0x68(%rbp), %rdi
callq 0x34b0
nopw %cs:(%rax,%rax)