// File: Silica[P]PSL/./PSL/scope.h
// Function: PSL::variable::Variable::FunctionScope::setLocal(PSL::variable::rsv const&)
virtual rsv setLocal(const rsv &v)
	{
		variable x = v;
		variable l = local;
		variable k = l.keys();
		for (size_t i = 0; i < k.length(); ++i)
		{
			string s = k[i];
			rsv z = l[s];
			if (v.get() != z.get() && (z.get()->type() != POINTER || z.get()->toBool()))
				x.set(s, l[s]);
		}
		return v;
	}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movq %rdi, -0x88(%rbp)
movq %rdi, %rax
movq %rax, -0x80(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x78(%rbp)
movq -0x18(%rbp), %rsi
leaq -0x20(%rbp), %rdi
callq 0xcd50
movq -0x78(%rbp), %rsi
addq $0x8, %rsi
leaq -0x28(%rbp), %rdi
callq 0xcd50
jmp 0x1c85d
leaq -0x40(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x1d240
jmp 0x1c86c
movq $0x0, -0x48(%rbp)
movq -0x48(%rbp), %rax
movq %rax, -0x98(%rbp)
leaq -0x40(%rbp), %rdi
callq 0x1d280
movq %rax, -0x90(%rbp)
jmp 0x1c891
movq -0x98(%rbp), %rax
movq -0x90(%rbp), %rcx
cmpq %rcx, %rax
jae 0x1ca78
movq -0x48(%rbp), %rdx
leaq -0x58(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x1d2a0
jmp 0x1c8bb
leaq -0x50(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x1d2f0
jmp 0x1c8ca
leaq -0x58(%rbp), %rdi
callq 0xcdc0
leaq -0x68(%rbp), %rdi
leaq -0x28(%rbp), %rsi
leaq -0x50(%rbp), %rdx
callq 0x1d320
jmp 0x1c8e6
leaq -0x60(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x11b10
jmp 0x1c8f5
leaq -0x68(%rbp), %rdi
callq 0xcdc0
movq -0x18(%rbp), %rdi
callq 0x12060
movq %rax, -0xa0(%rbp)
leaq -0x60(%rbp), %rdi
callq 0x12060
movq %rax, %rcx
movq -0xa0(%rbp), %rax
cmpq %rcx, %rax
je 0x1ca41
leaq -0x60(%rbp), %rdi
callq 0x12060
movq %rax, %rdi
callq 0x16f00
movl %eax, -0xa4(%rbp)
jmp 0x1c943
movl -0xa4(%rbp), %eax
cmpl $0x5, %eax
jne 0x1c976
leaq -0x60(%rbp), %rdi
callq 0x12060
movq %rax, %rdi
callq 0x16f20
movb %al, -0xa5(%rbp)
jmp 0x1c967
movb -0xa5(%rbp), %al
testb $0x1, %al
jne 0x1c976
jmp 0x1ca41
leaq -0x70(%rbp), %rdi
leaq -0x28(%rbp), %rsi
leaq -0x50(%rbp), %rdx
callq 0x1d320
jmp 0x1c989
leaq -0x20(%rbp), %rdi
leaq -0x50(%rbp), %rsi
leaq -0x70(%rbp), %rdx
callq 0x1d370
jmp 0x1c99c
leaq -0x70(%rbp), %rdi
callq 0xcdc0
jmp 0x1ca41
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
jmp 0x1cac4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
jmp 0x1cabb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
jmp 0x1cab2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
leaq -0x58(%rbp), %rdi
callq 0xcdc0
jmp 0x1cab2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
jmp 0x1ca6d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
leaq -0x68(%rbp), %rdi
callq 0xcdc0
jmp 0x1ca6d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
jmp 0x1ca64
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
leaq -0x70(%rbp), %rdi
callq 0xcdc0
jmp 0x1ca64
leaq -0x60(%rbp), %rdi
callq 0xcd90
leaq -0x50(%rbp), %rdi
callq 0xc950
movq -0x48(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x48(%rbp)
jmp 0x1c874
leaq -0x60(%rbp), %rdi
callq 0xcd90
leaq -0x50(%rbp), %rdi
callq 0xc950
jmp 0x1cab2
movq -0x88(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0xd070
jmp 0x1ca8a
leaq -0x40(%rbp), %rdi
callq 0xcdc0
leaq -0x28(%rbp), %rdi
callq 0xcdc0
leaq -0x20(%rbp), %rdi
callq 0xcdc0
movq -0x80(%rbp), %rax
addq $0xb0, %rsp
popq %rbp
retq
leaq -0x40(%rbp), %rdi
callq 0xcdc0
leaq -0x28(%rbp), %rdi
callq 0xcdc0
leaq -0x20(%rbp), %rdi
callq 0xcdc0
movq -0x30(%rbp), %rdi
callq 0xc280
nopw %cs:(%rax,%rax)