N1  #50=0
    #500=0
N3  #501=0
N4  #502=0
    #505=0
N6  #403=-1
N7  IF(#14 LT 0 )   THEN #502=1
N8  IF(#14 EQ #400) THEN #501=1
N9  IF(#14 GT #402) THEN #500=1
N10 M888
N11 ENDIF
N12 IF(#500 EQ 1) GOTO 390
N13 IF(#501 EQ 1) GOTO 390
N14 IF(#502 EQ 1) GOTO 390

    G53 
    H0 G90 M05
    G04 P100

N22 IF(#407 NE 1) GOTO 26
    STAF(Z-axis go to zero point)
    G283 
    G04 P50

N26 IF(#408 NE 1) GOTO 30
    STAF(Z-axis go to position for change tool!)
    G01 Z#409 F#415
    G04 P100

N30 IF(#416 NE 1) GOTO 33
    STAF(Spindle Orientation!)
    M61
    G04 P20
    M22

N33 IF(#417 NE 1) GOTO 35
    M60
   
N35 STAF(XY-axis go to position for change tool!)
    IF(#410 NE 1) GOTO 40
    G1 X#411 Y#412 F#415
    G04 P50

N40 STAF(A-axis go to position for change tool!)
    IF(#313 NE 1) GOTO 50
    G1 A#414 F#415
    G04 P50

N50 IF(#401 EQ #14) GOTO 282
N51 IF(#301 EQ #14)THEN #403=1
N52 IF(#302 EQ #14)THEN #403=2
N53 IF(#303 EQ #14)THEN #403=3
N54 IF(#304 EQ #14)THEN #403=4
N55 IF(#305 EQ #14)THEN #403=5
N56 IF(#306 EQ #14)THEN #403=6
N57 IF(#307 EQ #14)THEN #403=7
N58 IF(#308 EQ #14)THEN #403=8
N59 IF(#309 EQ #14)THEN #403=9
N60 IF(#310 EQ #14)THEN #403=10
N61 IF(#311 EQ #14)THEN #403=11
N62 IF(#312 EQ #14)THEN #403=12
N63 IF(#313 EQ #14)THEN #403=13
N64 IF(#314 EQ #14)THEN #403=14
N65 IF(#315 EQ #14)THEN #403=15
N66 IF(#316 EQ #14)THEN #403=16
N67 IF(#317 EQ #14)THEN #403=17
N68 IF(#318 EQ #14)THEN #403=18
N69 IF(#319 EQ #14)THEN #403=19
N70 IF(#320 EQ #14)THEN #403=20
N71 IF(#321 EQ #14)THEN #403=21
N72 IF(#322 EQ #14)THEN #403=22
N73 IF(#323 EQ #14)THEN #403=23
N74 IF(#324 EQ #14)THEN #403=24
N75 IF(#325 EQ #14)THEN #403=25
N76 IF(#326 EQ #14)THEN #403=26
N77 IF(#327 EQ #14)THEN #403=27
N78 IF(#328 EQ #14)THEN #403=28
N79 IF(#329 EQ #14)THEN #403=29
N80 IF(#330 EQ #14)THEN #403=30
N81 IF(#331 EQ #14)THEN #403=31
N82 IF(#331 EQ #14)THEN #403=32

    IF(#403 EQ -1)THEN #505=1
    M888 
    IF(#505 EQ 1) GOTO 390

N151 #404=#403-#300
     #50=#402/2
     #406=FIX(#50)
     M888
     
N155 OUT-Y18-Y19
     STAF(Tool Magazine Rotate & Select Tool!)
     IF(#404 GT 0) GOTO 160
     IF(#404 LT 0) THEN #405=-#404
     IF(#404 LT -#406)
     #405=#402+#404
     OUT-Y19+Y18
     ELSE
     OUT-Y18+Y19
     ENDIF
N160 IF(#404 LT 0) GOTO 165
     IF(#404 GT 0) THEN #405=#404
     IF(#404 GT #406) 
     #405=#402-#364
     OUT-Y18+Y19
     ELSE
     OUT-Y19+Y18
     ENDIF
N165 IF(#405 NE 1) GOTO 170
      WAT-X07
      WAT+X07
      ENDIF
N170 IF(#405 NE 2) GOTO 175
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N175 IF(#405 NE 3) GOTO 180
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N180 IF(#405 NE 4) GOTO 185
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N185 IF(#405 NE 5) GOTO 190
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N190 IF(#405 NE 6) GOTO 195
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N195 IF(#405 NE 7) GOTO 200
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N200 IF(#405 NE 8) GOTO 205
      WAT-X07
      WAT+X07 
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N205 IF(#405 NE 9) GOTO 210
      WAT-X07
      WAT+X07 
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N210 IF(#405 NE 10) GOTO 215
      WAT-X07
      WAT+X07 
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N215 IF(#405 NE 11) GOTO 220
      WAT-X07
      WAT+X07 
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N220 IF(#405 NE 12) GOTO 225
      WAT-X07
      WAT+X07 
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N225 IF(#405 NE 13) GOTO 230
      WAT-X07
      WAT+X07 
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N230 IF(#405 NE 14) GOTO 235
      WAT-X07
      WAT+X07 
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N235 IF(#405 NE 15) GOTO 240
      WAT-X07
      WAT+X07 
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N240 IF(#405 NE 16) GOTO 245
      WAT-X07
      WAT+X07 
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      G04 P300
      WAT-X07
      WAT+X07
      ENDIF
N245  WAT+X01

N250 IF(#301 NE #14)GOTO 251
     WAT+X40-X41-X42-X43-X44+X45
N251 IF(#302 NE #14)GOTO 252
     WAT-X40+X41-X42-X43-X44+X45
N252 IF(#303 NE #14)GOTO 253
     WAT+X40+X41-X42-X43-X44-X45
N253 IF(#304 NE #14)GOTO 254
     WAT-X40-X41+X42-X43-X44+X45
N254 IF(#305 NE #14)GOTO 255
     WAT+X40-X41+X42-X43-X44-X45
N255 IF(#306 NE #14)GOTO 256
     WAT-X40+X41+X42-X43-X44-X45
N256 IF(#307 NE #14)GOTO 257
     WAT+X40+X41+X42-X43-X44+X45
N257 IF(#308 NE #14)GOTO 258
     WAT-X40-X41-X42+X43-X44+X45
N258 IF(#309 NE #14)GOTO 259
     WAT+X40-X41-X42+X43-X44-X45
N259 IF(#310 NE #14)GOTO 260
     WAT-X40+X41-X42+X43-X44-X45
N260 IF(#311 NE #14)GOTO 261
     WAT+X40+X41-X42+X43-X44+X45
N261 IF(#312 NE #14)GOTO 262
     WAT-X40-X41+X42+X43-X44-X45
N262 IF(#313 NE #14)GOTO 263
     WAT+X40-X41+X42+X43-X44+X45
N263 IF(#314 NE #14)GOTO 264
     WAT-X40+X41+X42+X43-X44+X45
N264 IF(#315 NE #14)GOTO 265
     WAT+X40+X41+X42+X43-X44-X45
N265 IF(#316 NE #14)GOTO 266
     WAT-X40-X41-X42-X43+X44+X45
N266 IF(#317 NE #14)GOTO 267
     WAT+X40-X41-X42-X43+X44-X45
N267 IF(#318 NE #14)GOTO 268
     WAT-X40+X41-X42-X43+X44-X45
N268 IF(#319 NE #14)GOTO 269
     WAT+X40+X41-X42-X43+X44+X45
N269 IF(#320 NE #14)GOTO 271
     WAT-X40-X41+X42-X43+X44-X45
N271 IF(#321 NE #14)GOTO 272
     WAT+X40-X41+X42-X43+X44+X45
N272 IF(#322 NE #14)GOTO 273
     WAT-X40+X41+X42-X43+X44+X45
N273 IF(#323 NE #14)GOTO 274
     WAT+X40+X41+X42-X43+X44-X45
N274 IF(#324 NE #14)GOTO 275
     WAT-X40-X41-X42+X43+X44-X45
N275 IF(#325 NE #14)GOTO 276
     WAT+X40-X41-X42+X43+X44+X45
N276 IF(#326 NE #14)GOTO 277
     WAT-X40+X41-X42+X43+X44+X45
N277 IF(#327 NE #14)GOTO 278
     WAT+X40+X41-X42+X43+X44-X45
N278 IF(#328 NE #14)GOTO 279
     WAT-X40-X41+X42+X43+X44+X45
N279 IF(#329 NE #14)GOTO 280
     WAT+X40-X41+X42+X43+X44-X45
N280 IF(#330 NE #14)GOTO 281
     WAT-X40+X41+X42+X43+X44-X45
N281 IF(#331 NE #14) GOTO 282
     WAT+X40+X41+X42+X43+X44-X45
N282 OUT-Y18-Y19
     M888 

N283 STAF(Tool Holder is fall down!)
     WAT+X01     
     OUT+Y27-Y28
     G04 P500
     WAT-X04+X05
     G04 P1000
     WAT-X04+X05
N284 STAF(ATC Arm Take Tool!)
     OUT+Y29
     G04 P150
     WAT+X02
     G04 P50
     WAT+X02
     OUT-Y29
N285 STAF(Spindle Loose Tool!)
     M11
     G04 P150
     M12
     G04 P1000
     M12
N286 STAF(ATC Arm Exchange Tool!)
     OUT+Y29
     G04 P100
     WAT+X02
     G04 P30
     WAT+X02
     OUT-Y29
N287 STAF(Spindle Tighten Tool!)
     M10
     G04 P150
     M14
     G04 P150
N290 STAF(ATC Arm back home!)
     OUT+Y29
     G04 P150
     WAT+X02
     G04 P50
     WAT+X02
     OUT-Y29
N295 STAF(Tool Holder is lift up!)
     OUT-Y27+Y28
     G04 P150
     WAT+X04-X05
     G04 P150
     WAT+X04-X05
       
N300 M60
N301 IF(#301 NE #14) GOTO 302
     #300=1
     #301=#400
     #401=#400
     #400=#14

N302 IF(#302 NE #14) GOTO 303
     #300=2
     #302=#400
     #401=#400
     #400=#14

N303 IF(#303 NE #14) GOTO 304
     #300=3
     #303=#400
     #401=#400
     #400=#14

N304 IF(#304 NE #14) GOTO 305
     #300=4
     #304=#400
     #401=#400
     #400=#14

N305 IF(#305 NE #14) GOTO 306
     #300=5
     #305=#400
     #401=#400
     #400=#14

N306 IF(#306 NE #14) GOTO 307
     #300=6
     #306=#400
     #401=#400
     #400=#14

N307 IF(#307 NE #14) GOTO 308
     #300=7
     #307=#400
     #401=#400
     #400=#14

N308 IF(#308 NE #14) GOTO 309
     #300=8
     #308=#400
     #401=#400
     #400=#14

N309 IF(#309 NE #14) GOTO 310
     #300=9
     #309=#400
     #401=#400
     #400=#14

N310 IF(#310 NE #14) GOTO 311
     #300=10
     #310=#400
     #401=#400
     #400=#14

N311 IF(#311 NE #14) GOTO 312
     #311=#14
     #311=#400
     #401=#400
     #400=#14

N312 IF(#312 NE #14) GOTO 313
     #300=12
     #312=#400
     #401=#400
     #400=#14

N313 IF(#313 NE #14) GOTO 314
     #300=13
     #313=#400
     #401=#400
     #400=#14

N314 IF(#314 NE #14) GOTO 315
     #300=14
     #314=#400
     #401=#400
     #400=#14

N315 IF(#315 NE #14) GOTO 316
     #300=15
     #315=#400
     #401=#400
     #400=#14

N316 IF(#316 NE #14) GOTO 317
     #300=16
     #316=#400
     #401=#400
     #400=#14

N317 IF(#317 NE #14) GOTO 318
     #300=17
     #317=#400
     #401=#400
     #400=#14

N318 IF(#318 NE #14) GOTO 319 
     #300=18
     #318=#400
     #400=#14

N319 IF(#319 NE #14) GOTO 320
     #300=19
     #319=#400
     #401=#400
     #400=#14

N320 IF(#320 NE #14) GOTO 321 
     #300=20
     #320=#400
     #401=#400
     #400=#14

N321 IF(#321 NE #14) GOTO 322
     #300=21
     #321=#400
     #401=#400
     #400=#14

N322 IF(#322 NE #14) GOTO 323
     #300=22
     #322=#400
     #401=#400
     #400=#14

N323 IF(#323 NE #14) GOTO 324
     #300=23
     #323=#400
     #401=#400
     #400=#14

N324 IF(#324 NE #14) GOTO 325
     #300=24
     #324=#400
     #401=#400
     #400=#14

N325 IF(#325 NE #14) GOTO 326
     #300=25
     #325=#400
     #401=#400
     #400=#14

N326 IF(#326 NE #14) GOTO 327
     #300=26
     #326=#400
     #401=#400
     #400=#14

N327 IF(#327 NE #14) GOTO 328
     #300=27
     #327=#400
     #401=#400
     #400=#14

N328 IF(#328 NE #14) GOTO 329
     #300=28
     #328=#400
     #401=#400
     #400=#14

N329 IF(#329 NE #14) GOTO 330
     #300=29
     #329=#400
     #401=#400
     #400=#14

N330 IF(#330 NE #14) GOTO 331
     #300=30
     #330=#400
     #401=#400
     #400=#14

N331 IF(#331 NE #14) GOTO 332
     #300=31
     #331=#400
     #401=#400
     #400=#14

N332 IF(#332 NE #14) GOTO 333
     #300=32
     #332=#400
     #401=#400
     #400=#14

N333 M888
     STAF(Exchanging Tool Successfully!)
     G04 P1000
     STAF()
N390 M99 
