Since we have pretty much finished optimizing the first program, here is another program to optimize. Like before, the goal is to optimize for size.

```
:0→Xmin
:94→Xmax
:1→Ymin
:63→Ymax
:PlotsOff
:CoordOff
:AxesOff
:GridOff
:FnOff
:Lbl A
:0→B
:randInt(10,85)→C
:ClrDraw
:ClrHome
:Line(C,1,C+5,1
:Line(C+1,2,C+4,2
:For(A,1,500)
:End
:Lbl B
:ClrDraw
:Input "SHOT POWER=",S
:B+1→B
:(1/S)→S
:Line(C,1,C+5,1
:Line(C+1,2,C+4,2
:For(X,0,95,.25
:(-S(X^2)+63)→Y
:Y→Z
:Pt-On(X,Y)
:If Z<0 or Z=0
:Goto C
:End
:Lbl C
:1→M
:If X>(C-1) and X<(C+6)
:Then
:2→M
:X→K
:Line(K,1,K-8,3
:Line(K,1,K+8,3
:Line(K,1,K-6,8
:Line(K,1,K+6,8
:Line(K,1,K-2,6
:Line(K,1,K+2,6
:End
:For(A,1,200)
:End
:If M=2
:Then
:ClrHome
:If B=1
:Then
:For(I,1,3)
:Output(4,4,"FIRST TRY!"
:For(A,1,100)
:End
:Output(4,4," (10 spaces)
:For(A,1,100)
:End
:End
:Output(4,4,"FIRST TRY!:"
:End
:If B>1
:Then
:Output(4,4,B
:Output(4,8,"SHOTS"
:End
:Pause
:ClrHome
:Goto D
:End
:ClrHome
:Disp "SHOOT AGAIN:"
:Goto B
:Lbl D
:ClrHome
:Menu("PLAY AGAIN?","YES",A,"NO",E
:Lbl E
:ClrHome
:Stop
```