Polygon::new:
		link	$1
		pushi	$5b		; 91, '[', points
		push1
		pushi	$8d		; 141, new
		push0
		class	IntArray
		send	$4
		bnot
		push
		pushi	$16e		; 366, dynamic
		push1
		push1
		pushi	$8d		; 141, new
		push0
		super	Obj, $4
		bnot
		sat	temp[$0]
		send	$c
		bnot
		pToa	points
		bnt	code_0083
		pushi	$d3		; 211, copy
		push1
		pushSelf
		lat	temp[$0]
		send	$6
		bnot
code_0083:	lat	temp[$0]
		ret

Polygon::init:
		link	$2
		lsp	param[$0]
		ldi	$2
		div
		aTop	size
		pushi	$d0		; 208, with
		push1
		lsp	param[$1]
		&rest	$2
		class	IntArray
		send	$6
		bnot
		aTop	points
		ldi	$1
		aTop	dynamic
		ret

Polygon::dispose:
		pToa	pDispose
		not
		bnt	code_00b1
		push1
		lofsa	string_0028	; "Polygon being disposed without being tagged for disposal."
		push
		callk	kernel_132, $2
		bnot
code_00b1:	pToa	dynamic
		bnt	code_00c2
		pToa	points
		bnt	code_00c2
		pushi	$95		; 149, dispose
		push0
		pToa	points
		send	$4
		bnot
code_00c2:	pushi	$95		; 149, dispose
		push0
		super	Obj, $4
		bnot
		ret

Polygon::onMe:
		pushi	$3		; z
		lsp	param[$1]
		lsp	param[$2]
		pushSelf
		callk	kernel_101, $6
		bnot
		ret

Polygon::copy:
		pushi	$d3		; 211, copy
		push1
		pushi	$5b		; 91, '[', points
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		pToa	points
		send	$6
		bnot
		pushi	$5a		; 90, 'Z', size
		push0
		lap	param[$1]
		send	$4
		bnot
		aTop	size
		ret

Polygon::scale:
		link	$5
		pToa	size
		sat	temp[$0]
		ldi	$0
		sat	temp[$3]
		pushi	$4e		; 78, 'N', width
		lap	param[$1]
		mul
		push
		ldi	$64		; 100, 'd', moveDone
		div
		sat	temp[$2]
		pushi	$8d		; 141, new
		push0
		class	LongInt
		send	$4
		bnot
		sat	temp[$4]
		ldi	$0
		sat	temp[$1]
code_0118:	lst	temp[$1]
		lat	temp[$0]
		lt?
		bnt	code_01a5
		pushi	$b5		; 181, set
		push1
		lst	temp[$2]
		lat	temp[$4]
		send	$6
		bnot
		pushi	$113		; 275, mul
		push1
		pushi	$4b		; 75, 'K', at
		push1
		lst	temp[$3]
		pToa	points
		send	$6
		bnot
		push
		lat	temp[$4]
		send	$6
		bnot
		pushi	$115		; 277, div
		push1
		pushi	$64		; 100, 'd', moveDone
		lat	temp[$4]
		send	$6
		bnot
		pushi	$4b		; 75, 'K', at
		push2
		lst	temp[$3]
		pushi	$10d		; 269, lowWord
		push0
		lat	temp[$4]
		send	$4
		bnot
		push
		pToa	points
		send	$8
		bnot
		+at	temp[$3]
		pushi	$b5		; 181, set
		push1
		lst	temp[$2]
		lat	temp[$4]
		send	$6
		bnot
		pushi	$113		; 275, mul
		push1
		pushi	$4b		; 75, 'K', at
		push1
		lst	temp[$3]
		pToa	points
		send	$6
		bnot
		push
		lat	temp[$4]
		send	$6
		bnot
		pushi	$115		; 277, div
		push1
		pushi	$64		; 100, 'd', moveDone
		lat	temp[$4]
		send	$6
		bnot
		pushi	$4b		; 75, 'K', at
		push2
		lst	temp[$3]
		pushi	$10d		; 269, lowWord
		push0
		lat	temp[$4]
		send	$4
		bnot
		push
		pToa	points
		send	$8
		bnot
		+at	temp[$1]
		+at	temp[$3]
		jmp	code_0118

code_01a5:	pushi	$95		; 149, dispose
		push0
		lat	temp[$4]
		send	$4
		bnot
		ret

Polygon::moveBy:
		link	$3
		pToa	size
		sat	temp[$0]
		ldi	$0
		sat	temp[$2]
		ldi	$0
		sat	temp[$1]
code_01bd:	lst	temp[$1]
		lat	temp[$0]
		lt?
		bnt	code_01fc
		pushi	$4b		; 75, 'K', at
		push2
		lst	temp[$2]
		pushi	$4b		; 75, 'K', at
		push1
		lst	temp[$2]
		pToa	points
		send	$6
		bnot
		push
		lap	param[$1]
		add
		push
		pToa	points
		send	$8
		bnot
		+at	temp[$2]
		pushi	$4b		; 75, 'K', at
		push2
		push
		pushi	$4b		; 75, 'K', at
		push1
		push
		pToa	points
		send	$6
		bnot
		push
		lap	param[$2]
		add
		push
		pToa	points
		send	$8
		bnot
		+at	temp[$1]
		+at	temp[$2]
		jmp	code_01bd

code_01fc:	ret

Polygon::display:
		link	$2
		pTos	size
		ldi	$2
		mul
		sat	temp[$0]
		ldi	$0
		sat	temp[$1]
code_020a:	lst	temp[$1]
		lat	temp[$0]
		lt?
		bnt	code_021a
		lst	temp[$1]
		ldi	$2
		add
		sat	temp[$1]
		jmp	code_020a

code_021a:	ret

Polygon::clipTo:
		link	$c
		pToa	size
		sat	temp[$0]
		pushi	$8d		; 141, new
		push0
		class	Rect
		send	$4
		bnot
		sat	temp[$9]
		pushi	$d3		; 211, copy
		push1
		lsp	param[$1]
		send	$6
		bnot
		pushi	$8d		; 141, new
		push0
		class	Line
		send	$4
		bnot
		sat	temp[$5]
		pushi	$4b		; 75, 'K', at
		push1
		push0
		pToa	points
		send	$6
		bnot
		sat	temp[$1]
		pushi	$4b		; 75, 'K', at
		push1
		push1
		pToa	points
		send	$6
		bnot
		sat	temp[$2]
		lat	temp[$1]
		sat	temp[$3]
		lat	temp[$2]
		sat	temp[$4]
		ldi	$2
		sat	temp[$a]
		ldi	$1
		sat	temp[$8]
code_0266:	lst	temp[$8]
		lat	temp[$0]
		lt?
		bnt	code_0339
		pushi	$94		; 148, init
		pushi	$4		; scaleX
		lst	temp[$1]
		lst	temp[$2]
		pushi	$4b		; 75, 'K', at
		push1
		lst	temp[$a]
		pToa	points
		send	$6
		bnot
		sat	temp[$6]
		push
		pushi	$4b		; 75, 'K', at
		push1
		lst	temp[$a]
		ldi	$1
		add
		push
		pToa	points
		send	$6
		bnot
		sat	temp[$7]
		push
		lat	temp[$5]
		send	$c
		bnot
		pushi	$16b		; 363, clip
		push1
		lst	temp[$9]
		lat	temp[$5]
		send	$6
		bnot
		bnt	code_02e2
		pushi	$4b		; 75, 'K', at
		pushi	$5		; scaleY
		lst	temp[$a]
		ldi	$2
		sub
		push
		pushi	$167		; 359, pX1
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pushi	$168		; 360, pY1
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pushi	$169		; 361, pX2
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pushi	$16a		; 362, pY2
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pToa	points
		send	$e
		bnot
		jmp	code_0325

code_02e2:	pushi	$16c		; 364, basicClip
		push1
		lst	temp[$9]
		lat	temp[$5]
		send	$6
		bnot
		pushi	$4b		; 75, 'K', at
		pushi	$5		; scaleY
		lst	temp[$a]
		ldi	$2
		sub
		push
		pushi	$167		; 359, pX1
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pushi	$168		; 360, pY1
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pushi	$169		; 361, pX2
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pushi	$16a		; 362, pY2
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pToa	points
		send	$e
		bnot
code_0325:	lat	temp[$6]
		sat	temp[$1]
		lat	temp[$7]
		sat	temp[$2]
		lst	temp[$a]
		ldi	$2
		add
		sat	temp[$a]
		+at	temp[$8]
		jmp	code_0266

code_0339:	pushi	$94		; 148, init
		pushi	$4		; scaleX
		lst	temp[$1]
		lst	temp[$2]
		lst	temp[$3]
		lst	temp[$4]
		lat	temp[$5]
		send	$c
		bnot
		pushi	$16b		; 363, clip
		push1
		lst	temp[$9]
		lat	temp[$5]
		send	$6
		bnot
		bnt	code_0393
		pushi	$4b		; 75, 'K', at
		pushi	$5		; scaleY
		lst	temp[$a]
		ldi	$2
		sub
		push
		pushi	$167		; 359, pX1
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pushi	$168		; 360, pY1
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pushi	$169		; 361, pX2
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pushi	$16a		; 362, pY2
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pToa	points
		send	$e
		bnot
		jmp	code_03d6

code_0393:	pushi	$16c		; 364, basicClip
		push1
		lst	temp[$9]
		lat	temp[$5]
		send	$6
		bnot
		pushi	$4b		; 75, 'K', at
		pushi	$5		; scaleY
		lst	temp[$a]
		ldi	$2
		sub
		push
		pushi	$167		; 359, pX1
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pushi	$168		; 360, pY1
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pushi	$169		; 361, pX2
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pushi	$16a		; 362, pY2
		push0
		lat	temp[$5]
		send	$4
		bnot
		push
		pToa	points
		send	$e
		bnot
code_03d6:	pushi	$95		; 149, dispose
		push0
		lat	temp[$5]
		send	$4
		bnot
		pushi	$95		; 149, dispose
		push0
		lat	temp[$9]
		send	$4
		bnot
		ldi	$0
		ret

Polygon::fromRect:
		pToa	points
		not
		bnt	code_03fb
		pushi	$8d		; 141, new
		push0
		class	IntArray
		send	$4
		bnot
		aTop	points
code_03fb:	pushi	$4b		; 75, 'K', at
		pushi	$9		; inLeft
		push0
		pushi	$87		; 135, left
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		pushi	$89		; 137, top
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		pushi	$88		; 136, right
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		pushi	$89		; 137, top
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		pushi	$88		; 136, right
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		pushi	$8a		; 138, bottom
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		pushi	$87		; 135, left
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		pushi	$8a		; 138, bottom
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		pToa	points
		send	$16
		bnot
		ldi	$4		; scaleX
		aTop	size
		ret

