Feature::dispose:
		pushi	$18f		; 399, setPolygon
		push1
		push0
		self	$6
		bnot
		pToa	actions
		bnt	code_00e3
		pushi	$95		; 149, dispose
		push0
		send	$4
		bnot
		ldi	$0
		aTop	actions
code_00e3:	pToa	onMeCheck
		bnt	code_00f2
		pushi	$95		; 149, dispose
		push0
		send	$4
		bnot
		ldi	$0
		aTop	onMeCheck
code_00f2:	pushi	$95		; 149, dispose
		push0
		super	BitMap, $4
		bnot
		ret

Feature::getName:
		link	$2
		pTos	modNum
		ldi	$0
		gt?
		bnt	code_018e
		pTos	modNum
		pushi	$180		; 384, modNum
		push0
		lag	global[$3]
		send	$4
		bnot
		ne?
		bnt	code_018e
		pushi	$6		; maxScale
		push2
		pTos	modNum
		pTos	noun
		push0
		pTos	case
		push1
		callk	kernel_72, $c
		bnot
		bnt	code_014b
		pushi	$8d		; 141, new
		push0
		class	Str
		send	$4
		bnot
		sat	temp[$0]
		pushi	$7		; priority
		push0
		pTos	modNum
		pTos	noun
		push0
		pTos	case
		push1
		pushi	$71		; 113, 'q', data
		push0
		send	$4
		bnot
		push
		callk	kernel_72, $e
		bnot
		lat	temp[$0]
		ret

		jmp	code_019a

code_014b:	pushi	$6		; maxScale
		push2
		pTos	modNum
		pTos	noun
		push0
		push0
		push1
		callk	kernel_72, $c
		bnot
		bnt	code_0180
		pushi	$8d		; 141, new
		push0
		class	Str
		send	$4
		bnot
		sat	temp[$0]
		pushi	$7		; priority
		push0
		pTos	modNum
		pTos	noun
		push0
		push0
		push1
		pushi	$71		; 113, 'q', data
		push0
		send	$4
		bnot
		push
		callk	kernel_72, $e
		bnot
		lat	temp[$0]
		ret

		jmp	code_019a

code_0180:	pushi	$f6		; 246, newCopies
		push1
		pTos	name
		class	Str
		send	$6
		bnot
		ret

		jmp	code_019a

code_018e:	pushi	$f6		; 246, newCopies
		push1
		pTos	name
		class	Str
		send	$6
		bnot
		ret

code_019a:	ret

Feature::handleEvent:
		pushi	$c8		; 200, handleEvent
		push1
		lsp	param[$1]
		super	BitMap, $6
		bnot
		bnt	code_01ac
		ldi	$0
		jmp	code_0243

code_01ac:	pToa	canDrag
		bnt	code_01f9
		pushi	$2b		; 43, '+', type
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		ldi	$1
		eq?
		bnt	code_01f9
		pushi	$48		; 72, 'H', modifiers
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		ldi	$3		; z
		and
		bnt	code_01f9
		pushi	$a3		; 163, contains
		push2
		push1
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		push2
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		self	$8
		bnot
		bnt	code_01f9
		pushi	$50		; 80, 'P', claimed
		push1
		push1
		lap	param[$1]
		send	$6
		bnot
		pushi	$ee		; 238, drag
		push1
		lsp	param[$1]
		self	$6
		bnot
		jmp	code_0243

code_01f9:	pToa	canDrag
		not
		bnt	code_0243
		pushi	$2b		; 43, '+', type
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		ldi	$1
		eq?
		bnt	code_0243
		pushi	$48		; 72, 'H', modifiers
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		ldi	$3		; z
		and
		bnt	code_0243
		pushi	$a3		; 163, contains
		push2
		push1
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		push2
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		self	$8
		bnot
		bnt	code_0243
		pushi	$50		; 80, 'P', claimed
		push1
		push1
		lap	param[$1]
		send	$6
		bnot
		pushi	$191		; 401, help
		push0
		self	$4
		bnot
code_0243:	pushi	$50		; 80, 'P', claimed
		push0
		lap	param[$1]
		send	$4
		bnot
		ret

Feature::onMe:
		link	$2
		lsp	param[$0]
		ldi	$1
		eq?
		bnt	code_0269
		push1
		push0
		lap	param[$1]
		send	$4
		bnot
		sat	temp[$0]
		push2
		push0
		lap	param[$1]
		send	$4
		bnot
		sat	temp[$1]
		jmp	code_0271

code_0269:	lap	param[$1]
		sat	temp[$0]
		lap	param[$2]
		sat	temp[$1]
code_0271:	pToa	onMeCheck
		not
		bnt	code_02a1
		pToa	left
		bt	code_0284
		pToa	right
		bt	code_0284
		pToa	top
		bt	code_0284
		pToa	bottom
code_0284:	not
		bt	code_02d0
		pTos	left
		lat	temp[$0]
		le?
		bnt	code_02d0
		pprev
		pToa	right
		le?
		bnt	code_02d0
		pTos	top
		lat	temp[$1]
		le?
		bnt	code_02d0
		pprev
		pToa	bottom
		le?
		jmp	code_02d0

code_02a1:	pushi	$97		; 151, isKindOf
		push1
		class	List
		push
		pToa	onMeCheck
		send	$6
		bnot
		bnt	code_02c3
		pushi	$a0		; 160, firstTrue
		pushi	$3		; z
		pushi	$eb		; 235, onMe
		lst	temp[$0]
		lst	temp[$1]
		pToa	onMeCheck
		send	$a
		bnot
		jmp	code_02d0

code_02c3:	pushi	$eb		; 235, onMe
		push2
		lst	temp[$0]
		lst	temp[$1]
		pToa	onMeCheck
		send	$8
		bnot
code_02d0:	ret

Feature::doVerb:
		link	$5
		lag	global[$2c]
		bnt	code_02d9
		jmp	code_02dc

code_02d9:	lofsa	dftDoVerb
code_02dc:	sat	temp[$0]
		pTos	modNum
		ldi	$ff		; 255, asInteger
		eq?
		bnt	code_02e9
		lag	global[$34]
		aTop	modNum
code_02e9:	lag	global[$45]
		bnt	code_0316
		pushi	$6		; maxScale
		push0
		pTos	modNum
		pTos	noun
		lsp	param[$1]
		pTos	case
		push1
		callk	kernel_72, $c
		bnot
		bnt	code_0316
		pushi	$193		; 403, say
		pushi	$6		; maxScale
		pTos	noun
		lsp	param[$1]
		pTos	case
		push0
		push0
		pTos	modNum
		lag	global[$14]
		send	$10
		bnot
		jmp	code_0321

code_0316:	pushi	$45		; 69, 'E', doit
		push2
		lsp	param[$1]
		pushSelf
		lat	temp[$0]
		send	$8
		bnot
code_0321:	ret

Feature::actionVerbs:
		link	$1
		lap	param[$0]
		bnt	code_0375
		pToa	_actionVerbs
		bnt	code_033b
		pushi	$a6		; 166, release
		push0
		pushi	$95		; 149, dispose
		push0
		send	$8
		bnot
		ldi	$0
		aTop	_actionVerbs
code_033b:	lsp	param[$1]
		ldi	$0
		ge?
		bnt	code_0385
		pushi	$20		; 32, ' ', name
		push1
		lofsa	string_00a0	; "actionVerbsList"
		push
		pushi	$8d		; 141, new
		push0
		class	List
		send	$4
		bnot
		aTop	_actionVerbs
		send	$6
		bnot
		ldi	$0
		sat	temp[$0]
code_035b:	lst	temp[$0]
		lap	param[$0]
		lt?
		bnt	code_0385
		pushi	$9f		; 159, add
		push1
		lat	temp[$0]
		lspi	param[$1]
		pToa	_actionVerbs
		send	$6
		bnot
		+at	temp[$0]
		jmp	code_035b

		jmp	code_0385

code_0375:	pToa	_actionVerbs
		bnt	code_0382
		pushi	$5a		; 90, 'Z', size
		push0
		send	$4
		bnot
		ret

		jmp	code_0385

code_0382:	ldi	$0
		ret

code_0385:	ret

Feature::approachVerbs:
		link	$1
		lap	param[$0]
		bnt	code_03d4
		ldi	$0
		lapi	param[$1]
		bnt	code_03d4
		pToa	_approachVerbs
		bnt	code_03a1
		pushi	$a6		; 166, release
		push0
		pushi	$95		; 149, dispose
		push0
		send	$8
		bnot
code_03a1:	pushi	$20		; 32, ' ', name
		push1
		lofsa	string_00b0	; "approachVerbsList"
		push
		pushi	$8d		; 141, new
		push0
		class	List
		send	$4
		bnot
		aTop	_approachVerbs
		send	$6
		bnot
		ldi	$0
		sat	temp[$0]
code_03ba:	lst	temp[$0]
		lap	param[$0]
		lt?
		bnt	code_03e3
		pushi	$9f		; 159, add
		push1
		lat	temp[$0]
		lspi	param[$1]
		pToa	_approachVerbs
		send	$6
		bnot
		+at	temp[$0]
		jmp	code_03ba

		jmp	code_03e3

code_03d4:	pToa	_approachVerbs
		bnt	code_03e3
		pushi	$95		; 149, dispose
		push0
		send	$4
		bnot
		ldi	$0
		aTop	_approachVerbs
code_03e3:	ret

Feature::facingMe:
		link	$4
		lap	param[$0]
		bnt	code_03f4
		lap	param[$1]
		bnt	code_03f4
		lap	param[$1]
		sat	temp[$0]
		jmp	code_0411

code_03f4:	pushi	$a3		; 163, contains
		push1
		lsg	global[$1]
		pushi	$f2		; 242, pCast
		push0
		lag	global[$3]
		send	$4
		bnot
		send	$6
		bnot
		bnt	code_040e
		lag	global[$1]
		sat	temp[$0]
		jmp	code_0411

code_040e:	ldi	$1
		ret

code_0411:	lst	temp[$0]
		selfID
		eq?
		bnt	code_041a
		ldi	$1
		ret

code_041a:	lsp	param[$0]
		ldi	$3		; z
		eq?
		bnt	code_042b
		lap	param[$2]
		sat	temp[$2]
		lap	param[$3]
		sat	temp[$3]
		jmp	code_0433

code_042b:	pToa	x
		sat	temp[$2]
		pToa	y
		sat	temp[$3]
code_0433:	push1
		pushi	$4		; scaleX
		push1
		push0
		lat	temp[$0]
		send	$4
		bnot
		push
		push2
		push0
		lat	temp[$0]
		send	$4
		bnot
		push
		pTos	x
		pTos	y
		callk	kernel_63, $8
		bnot
		push
		pushi	$43		; 67, 'C', heading
		push0
		lat	temp[$0]
		send	$4
		bnot
		sub
		push
		callk	kernel_61, $2
		bnot
		sat	temp[$1]
		push
		ldi	$b4		; 180, end
		gt?
		bnt	code_046e
		pushi	$168		; 360, pY1
		lat	temp[$1]
		sub
		sat	temp[$1]
code_046e:	lst	temp[$1]
		pToa	sightAngle
		le?
		bnt	code_047a
		ldi	$1
		ret

		jmp	code_047d

code_047a:	ldi	$0
		ret

code_047d:	ret

Feature::setPolygon:
		pToa	onMeCheck
		bnt	code_048d
		pushi	$95		; 149, dispose
		push0
		send	$4
		bnot
		ldi	$0
		aTop	onMeCheck
code_048d:	lap	param[$0]
		not
		bt	code_0497
		lsp	param[$1]
		ldi	$0
		eq?
code_0497:	bnt	code_049c
		ret

		jmp	code_04ca

code_049c:	lsp	param[$0]
		ldi	$1
		eq?
		bnt	code_04ab
		ldi	$0
		lapi	param[$1]
		aTop	onMeCheck
		jmp	code_04ca

code_04ab:	pushi	$8d		; 141, new
		push0
		class	List
		send	$4
		bnot
		aTop	onMeCheck
		pushi	$9f		; 159, add
		push1
		lsp	param[$1]
		&rest	$2
		pushi	$20		; 32, ' ', name
		push1
		lofsa	string_00c2	; "omMeList"
		push
		pToa	onMeCheck
		send	$c
		bnot
code_04ca:	ret

Feature::createPoly:
		pToa	onMeCheck
		bnt	code_04d6
		pushi	$95		; 149, dispose
		push0
		send	$4
		bnot
code_04d6:	pushi	$8d		; 141, new
		push0
		class	Polygon
		send	$4
		bnot
		aTop	onMeCheck
		pushi	$94		; 148, init
		push1
		lsp	param[$1]
		&rest	$2
		pushi	$2b		; 43, '+', type
		push1
		push0
		pToa	onMeCheck
		send	$c
		bnot
		ret

Feature::help:
		ret

Feature::trackDoit:
		ldi	$1
		ret

Feature::dragDoit:
		pushi	$db		; 219, moveTo
		push2
		push1
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		pTos	left
		pToa	x
		sub
		sub
		push
		push2
		push0
		lap	param[$1]
		send	$4
		bnot
		push
		pTos	top
		pToa	y
		sub
		sub
		push
		self	$8
		bnot
		ret

Actions::doVerb:
		ldi	$0
		ret

dftDoVerb::doit:
		ldi	$1
		ret

