PAvoider::init:
		lsp	param[$0]
		ldi	$1
		ge?
		bnt	code_0043
		lap	param[$1]
		aTop	client
code_0043:	ret

PAvoider::dispose:
		pToa	oldBlockerMover
		bnt	code_004f
		pushi	$95		; 149, dispose
		push0
		send	$4
		bnot
code_004f:	pushi	$95		; 149, dispose
		push0
		super	Code, $4
		bnot
		ret

PAvoider::doit:
		link	$18
		pushi	$44		; 68, 'D', mover
		push0
		pToa	client
		send	$4
		bnot
		sat	temp[$9]
		pToa	oldBlocker
		bnt	code_00d4
		pushi	$165		; 357, distanceTo
		push1
		push
		pToa	client
		send	$6
		bnot
		push
		ldi	$14		; 20, nsRight
		ge?
		bnt	code_00d4
		pushi	$197		; 407, ignoreActors
		push1
		push0
		pToa	oldBlocker
		send	$6
		bnot
		pToa	oldBlockerMover
		bnt	code_008f
		pushi	$44		; 68, 'D', mover
		push1
		push
		pToa	oldBlocker
		send	$6
		bnot
code_008f:	ldi	$9d		; 157, eachElementDo
		aTop	oldMoverX
		aTop	oldMoverY
		ldi	$0
		aTop	oldBlockerMover
		aTop	oldBlocker
		lat	temp[$9]
		bnt	code_00d4
		pushi	$16d		; 365, obstacles
		push0
		send	$4
		bnot
		bnt	code_00d4
		pushi	$a4		; 164, isEmpty
		push0
		pushi	$16d		; 365, obstacles
		push0
		lat	temp[$9]
		send	$4
		bnot
		send	$4
		bnot
		bnt	code_00d4
		pushi	$95		; 149, dispose
		push0
		pushi	$16d		; 365, obstacles
		push0
		lat	temp[$9]
		send	$4
		bnot
		send	$4
		bnot
		pushi	$16d		; 365, obstacles
		push1
		push0
		lat	temp[$9]
		send	$6
		bnot
code_00d4:	pushi	$44		; 68, 'D', mover
		push0
		pToa	client
		send	$4
		bnot
		sat	temp[$9]
		bnt	code_0476
		pushi	$45		; 69, 'E', doit
		push0
		send	$4
		bnot
		sat	temp[$4]
		bnt	code_0476
		pushi	$154		; 340, completed
		push0
		lat	temp[$9]
		send	$4
		bnot
		not
		bnt	code_0476
		pushi	$97		; 151, isKindOf
		push1
		class	PolyPath
		push
		lat	temp[$9]
		send	$6
		bnot
		bnt	code_0476
		pushi	$99		; 153, respondsTo
		push1
		pushi	$44		; 68, 'D', mover
		lat	temp[$4]
		send	$6
		bnot
		bnt	code_012e
		pushi	$44		; 68, 'D', mover
		push0
		lat	temp[$4]
		send	$4
		bnot
		aTop	oldBlockerMover
		pToa	oldBlockerMover
		bnt	code_0132
		pushi	$44		; 68, 'D', mover
		push1
		push0
		lat	temp[$4]
		send	$6
		bnot
		jmp	code_0132

code_012e:	ldi	$0
		aTop	oldBlockerMover
code_0132:	pushi	$173		; 371, finalX
		push0
		lat	temp[$9]
		send	$4
		bnot
		aTop	oldMoverX
		pushi	$174		; 372, finalY
		push0
		lat	temp[$9]
		send	$4
		bnot
		aTop	oldMoverY
		lat	temp[$4]
		aTop	oldBlocker
		pushi	$197		; 407, ignoreActors
		push1
		push1
		send	$6
		bnot
		pushi	$1c		; 28, brLeft
		push0
		lat	temp[$4]
		send	$4
		bnot
		push
		push2
		pushi	$3f		; 63, '?', xStep
		push0
		pToa	client
		send	$4
		bnot
		mul
		push
		push2
		pushi	$3		; z
		pushi	$e		; 14, view
		push0
		pToa	client
		send	$4
		bnot
		push
		push2
		push0
		callk	kernel_28, $6
		bnot
		push
		pushi	$3		; z
		pushi	$e		; 14, view
		push0
		pToa	client
		send	$4
		bnot
		push
		push0
		push0
		callk	kernel_28, $6
		bnot
		push
		calle	export60025_3, $4
		bnot
		push
		ldi	$2
		div
		add
		sat	temp[$2]
		sub
		sat	temp[$5]
		push2
		pushi	$40		; 64, '@', yStep
		push0
		lat	temp[$4]
		send	$4
		bnot
		mul
		sat	temp[$3]
		pushi	$1e		; 30, brRight
		push0
		lat	temp[$4]
		send	$4
		bnot
		push
		lat	temp[$2]
		add
		sat	temp[$7]
		push2
		push0
		lat	temp[$4]
		send	$4
		bnot
		push
		lat	temp[$3]
		add
		push
		ldi	$2
		add
		sat	temp[$8]
		push
		lat	temp[$6]
		sub
		push
		ldi	$3		; z
		le?
		bnt	code_01e1
		lst	temp[$6]
		ldi	$2
		sub
		sat	temp[$6]
		lst	temp[$8]
		ldi	$2
		add
		sat	temp[$8]
code_01e1:	pushi	$173		; 371, finalX
		push0
		lat	temp[$9]
		send	$4
		bnot
		push
		push1
		push0
		pToa	client
		send	$4
		bnot
		sub
		sat	temp[$0]
		pushi	$174		; 372, finalY
		push0
		lat	temp[$9]
		send	$4
		bnot
		push
		push2
		push0
		pToa	client
		send	$4
		bnot
		sub
		sat	temp[$1]
		pushi	$43		; 67, 'C', heading
		push0
		pToa	client
		send	$4
		bnot
		sat	temp[$17]
		pushi	$55		; 85, 'U', button
		le?
		bnt	code_0224
		pprev
		ldi	$5f		; 95, '_', min
		le?
		bnt	code_0224
		ldi	$0
		sat	temp[$e]
		jmp	code_024a

code_0224:	pushi	$109		; 265, timeLeft
		lat	temp[$17]
		le?
		bnt	code_0239
		pprev
		ldi	$113		; 275, mul
		le?
		bnt	code_0239
		ldi	$1
		sat	temp[$e]
		jmp	code_024a

code_0239:	lst	temp[$1]
		ldi	$0
		ge?
		bnt	code_0246
		ldi	$2
		sat	temp[$e]
		jmp	code_024a

code_0246:	ldi	$3		; z
		sat	temp[$e]
code_024a:	lst	temp[$e]
		dup
		ldi	$3		; z
		eq?
		bnt	code_0298
		pushi	$94		; 148, init
		pushi	$a		; 10, inTop
		lst	temp[$5]
		push2
		push0
		pToa	client
		send	$4
		bnot
		push
		lst	temp[$5]
		lst	temp[$6]
		lst	temp[$7]
		lst	temp[$6]
		lst	temp[$7]
		push2
		push0
		pToa	client
		send	$4
		bnot
		push
		pushi	$7777		; 30583
		push0
		pushi	$2b		; 43, '+', type
		push1
		push2
		pushi	$20		; 32, ' ', name
		push1
		lofsa	string_0028	; "isBlockedPoly"
		push
		pushi	$9a		; 154, yourself
		push0
		pushi	$8d		; 141, new
		push0
		class	Polygon
		send	$4
		bnot
		send	$28
		bnot
		sat	temp[$11]
		jmp	code_0378

code_0298:	dup
		ldi	$2
		eq?
		bnt	code_02e4
		pushi	$94		; 148, init
		pushi	$a		; 10, inTop
		lst	temp[$7]
		push2
		push0
		pToa	client
		send	$4
		bnot
		push
		lst	temp[$7]
		lst	temp[$8]
		lst	temp[$5]
		lst	temp[$8]
		lst	temp[$5]
		push2
		push0
		pToa	client
		send	$4
		bnot
		push
		pushi	$7777		; 30583
		push0
		pushi	$2b		; 43, '+', type
		push1
		push2
		pushi	$20		; 32, ' ', name
		push1
		lofsa	string_0028	; "isBlockedPoly"
		push
		pushi	$9a		; 154, yourself
		push0
		pushi	$8d		; 141, new
		push0
		class	Polygon
		send	$4
		bnot
		send	$28
		bnot
		sat	temp[$11]
		jmp	code_0378

code_02e4:	dup
		ldi	$0
		eq?
		bnt	code_032f
		pushi	$94		; 148, init
		pushi	$a		; 10, inTop
		push1
		push0
		pToa	client
		send	$4
		bnot
		push
		lst	temp[$6]
		lst	temp[$7]
		lst	temp[$6]
		lst	temp[$7]
		lst	temp[$8]
		push1
		push0
		pToa	client
		send	$4
		bnot
		push
		lst	temp[$8]
		pushi	$7777		; 30583
		push0
		pushi	$2b		; 43, '+', type
		push1
		push2
		pushi	$20		; 32, ' ', name
		push1
		lofsa	string_0028	; "isBlockedPoly"
		push
		pushi	$9a		; 154, yourself
		push0
		pushi	$8d		; 141, new
		push0
		class	Polygon
		send	$4
		bnot
		send	$28
		bnot
		sat	temp[$11]
		jmp	code_0378

code_032f:	dup
		ldi	$1
		eq?
		bnt	code_0378
		pushi	$94		; 148, init
		pushi	$a		; 10, inTop
		push1
		push0
		pToa	client
		send	$4
		bnot
		push
		lst	temp[$8]
		lst	temp[$5]
		lst	temp[$8]
		lst	temp[$5]
		lst	temp[$6]
		push1
		push0
		pToa	client
		send	$4
		bnot
		push
		lst	temp[$6]
		pushi	$7777		; 30583
		push0
		pushi	$2b		; 43, '+', type
		push1
		push2
		pushi	$20		; 32, ' ', name
		push1
		lofsa	string_0028	; "isBlockedPoly"
		push
		pushi	$9a		; 154, yourself
		push0
		pushi	$8d		; 141, new
		push0
		class	Polygon
		send	$4
		bnot
		send	$28
		bnot
		sat	temp[$11]
code_0378:	toss
		pushi	$16d		; 365, obstacles
		push0
		lat	temp[$9]
		send	$4
		bnot
		not
		bnt	code_0398
		pushi	$16d		; 365, obstacles
		push1
		pushi	$8d		; 141, new
		push0
		class	List
		send	$4
		bnot
		push
		lat	temp[$9]
		send	$6
		bnot
code_0398:	pushi	$3		; z
		pushi	$5b		; 91, '[', points
		push0
		lat	temp[$11]
		send	$4
		bnot
		push
		pushi	$24		; 36, '$', elements
		push0
		pushi	$16d		; 365, obstacles
		push0
		lat	temp[$9]
		send	$4
		bnot
		send	$4
		bnot
		push
		pushi	$5a		; 90, 'Z', size
		push0
		pushi	$16d		; 365, obstacles
		push0
		lat	temp[$9]
		send	$4
		bnot
		send	$4
		bnot
		push
		callk	kernel_102, $6
		bnot
		sat	temp[$10]
		bnt	code_03f1
		pushi	$5b		; 91, '[', points
		push1
		push
		pushi	$5a		; 90, 'Z', size
		push1
		push1
		push
		call	code_0476, $2
		bnot
		push
		pushi	$2b		; 43, '+', type
		push1
		push2
		pushi	$16e		; 366, dynamic
		push1
		push1
		pushi	$8d		; 141, new
		push0
		class	Polygon
		send	$4
		bnot
		sat	temp[$f]
		send	$18
		bnot
code_03f1:	pushi	$9f		; 159, add
		push1
		lst	temp[$f]
		pushi	$16d		; 365, obstacles
		push0
		lat	temp[$9]
		send	$4
		bnot
		send	$6
		bnot
		pushi	$51		; 81, 'Q', value
		push1
		push2
		pushi	$94		; 148, init
		pushi	$3		; z
		pTos	client
		pushi	$173		; 371, finalX
		push0
		lat	temp[$9]
		send	$4
		bnot
		push
		pushi	$174		; 372, finalY
		push0
		lat	temp[$9]
		send	$4
		bnot
		push
		lat	temp[$9]
		send	$10
		bnot
		pushi	$58		; 88, 'X', delete
		push1
		lst	temp[$f]
		pushi	$16d		; 365, obstacles
		push0
		lat	temp[$9]
		send	$4
		bnot
		send	$6
		bnot
		pushi	$58		; 88, 'X', delete
		push1
		lst	temp[$11]
		pushi	$16d		; 365, obstacles
		push0
		lat	temp[$9]
		send	$4
		bnot
		send	$6
		bnot
		pushi	$16d		; 365, obstacles
		push0
		lat	temp[$9]
		send	$4
		bnot
		bnt	code_0464
		push1
		pushi	$16d		; 365, obstacles
		push0
		lat	temp[$9]
		send	$4
		bnot
		push
		call	code_049e, $2
		bnot
code_0464:	pushi	$95		; 149, dispose
		push0
		lat	temp[$11]
		send	$4
		bnot
		pushi	$95		; 149, dispose
		push0
		lat	temp[$f]
		send	$4
		bnot
code_0476:	ret

		link	$5
		ldi	$9c		; 156, handleError
		sat	temp[$3]
		ldi	$0
		sat	temp[$0]
code_0481:	lst	temp[$3]
		ldi	$7777		; 30583
		ne?
		bnt	code_049c
		pushi	$4b		; 75, 'K', at
		push1
		push2
		lat	temp[$0]
		mul
		push
		lap	param[$1]
		send	$6
		bnot
		sat	temp[$3]
		+at	temp[$0]
		jmp	code_0481

code_049c:	-at	temp[$0]
code_049e:	ret

		link	$4
		pushi	$5a		; 90, 'Z', size
		push0
		lap	param[$1]
		send	$4
		bnot
		sat	temp[$3]
		ldi	$0
		sat	temp[$0]
code_04af:	lst	temp[$0]
		lat	temp[$3]
		lt?
		bnt	code_04e2
		pushi	$4b		; 75, 'K', at
		push1
		lst	temp[$0]
		lap	param[$1]
		send	$6
		bnot
		sat	temp[$1]
		pushi	$2b		; 43, '+', type
		push0
		send	$4
		bnot
		sat	temp[$2]
		push
		ldi	$10		; 16, cel
		ge?
		bnt	code_04de
		pushi	$2b		; 43, '+', type
		push1
		lst	temp[$2]
		ldi	$10		; 16, cel
		sub
		push
		lat	temp[$1]
		send	$6
		bnot
code_04de:	+at	temp[$0]
		jmp	code_04af

code_04e2:	ret

