IfVarAnd( :SQL40 3FF 0x0004 )
 IfVarAnd( :SQL20 3FF 0x0002 )
 IfVarAnd( :SQL10 3FF 0x0001 )
 mif( $car5 )
   setVar( 31c $car5 )
   TransformCall( :move0 0 0 int[-0.75*$len] 0 0 0 0 180 0 )
  mifend
   jump( :SQP )
  :SQL10
  mif( $car2 )
   setVar( 31c $car2 )
   TransformCall( :move0 0 0 int[-1.0*$len] 0 0 0 0 180 0 )
  mifend
  jump( :SQP )
:SQL20
 IfVarAnd( :SQL11 3FF 0x0001 )
  mif( $car2 )
   setVar( 31c $car2 )
   TransformCall( :move0 0 0 int[-0.75*$len] 0 0 0 0 180 0 )
  mifend
  jump( :SQP )
  :SQL11
   mif( $car3 )
   setVar( 31c $car3 )
   TransformCall( :move0 0 0 int[-1.0*$len] 0 0 0 0 180 0 )
  mifend
  jump( :SQP )
:SQL40
 IfVarAnd( :SQL22 3FF 0x0002 )
 IfVarAnd( :SQL12 3FF 0x0001 )
    mif( $car3 )
   setVar( 31c $car3 )
   TransformCall( :move0 0 0 int[-0.75*$len] 0 0 0 0 180 0 )
  mifend
  jump( :SQP )
  :SQL12
  mif( $car4 )
   setVar( 31c $car4 )
   TransformCall( :move0 0 0 [-1.0*$len] 0 0 0 0 180 0 )
  mifend
  jump( :SQP )
:SQL22
 IfVarAnd( :SQL13 3FF 0x0001 )
  mif( $car4 )
   setVar( 31c $car4 )
   TransformCall( :move0 0 0 [-0.75*$len] 0 0 0 0 180 0 )
  mifend
  jump( :SQP )
  :SQL13
  mif( $car5 )
   setVar( 31c $car5 )
   TransformCall( :move0 0 0 int[-1.0*$len] 0 0 0 0 180 0 )
  mifend
:SQP
IfVarAnd( :SQL14 3FF 0x0001 )
;Fast cars running south
     mif( $car6 )
    setVar( 31c $car6 )
    TransformCall( :move20 0 0 int[-1.75*$len] 0 0 0 0 180 0)
   mifend
   jump( :SQL34 )
   mif( $car1 )
  :SQL14
   setVar( 31c $car1 )
   TransformCall( :move20 0 0 int[-1.75*$len] 0 0 0 0 180 0)
  :SQL34
  mifend
; Now a potential middle
  mif([$61 >= 1])
    include( ..\includes\laterneq.inc )
  mifend
;Fast cars running north
  mif( $car1 )
  IfVarAnd( :NQL14 3FF 0x0001 )
   setVar( 31c $car1 )
     TransformCall( :move20 0 0 int[1.75*$len] 0 0 0 0 0 0)
    jump( :NQL34 )
  mifend
  :NQL14
   mif( $car6 )
   setVar( 31c $car6 )
    TransformCall( :move20 0 0 int[1.75*$len] 0 0 0 0 0 0)
   mifend
:NQL34
 IfVarAnd( :NQL40 3FF 0x0004 )
 IfVarAnd( :NQL20 3FF 0x0002 )
 IfVarAnd( :NQL10 3FF 0x0001 )
  mif( $car2 )
   setVar( 31c $car2 )
    TransformCall( :move0 0 0 int[0.75*$len] 0 0 0 0 0 0)
  mifend
  jump( :NQP )
  :NQL10
  mif( $car3 )
   setVar( 31c $car3 )
   TransformCall( :move0 0 0 int[1.00*$len] 0 0 0 0 0 0)
  mifend
 jump( :NQP )
:NQL20
 IfVarAnd( :NQL11 3FF 0x0001 )
    mif( $car3 )
   setVar( 31c $car3 )
   TransformCall( :move0 0 0 int[0.75*$len] 0 0 0 0 0 0)
  mifend
  jump( :NQP )
  :NQL11
    mif( $car4 )
   setVar( 31c $car4 )
   TransformCall( :move0 0 0 [1.0*$len] 0 0 0 0 0 0)
  mifend
  jump( :NQP )
:NQL40
 IfVarAnd( :NQL22 3FF 0x0002 )
 IfVarAnd( :NQL12 3FF 0x0001 )
    mif( $car4 )
   setVar( 31c $car4 )
   TransformCall( :move0 0 0 int[0.75*$len] 0 0 0 0 0 0)
  mifend
  jump( :NQP )
  :NQL12
    mif( $car5 )
   setVar( 31c $car5 )
   TransformCall( :move0 0 0 int[1.0*$len] 0 0 0 0 0 0)
  mifend
  jump( :NQP )
:NQL22
 IfVarAnd( :NQL13 3FF 0x0001 )
    mif( $car5 )
   setVar( 31c $car5 )
   TransformCall( :move0 0 0 int[0.75*$len] 0 0 0 0 0 0)
  mifend
   jump( :NQP )
  :NQL13
  mif( $car2 )
   setVar( 31c $car2 )
   TransformCall( :move0 0 0 int[1.0*$len] 0 0 0 0 0 0)
  mifend
  jump( :NQP )
:NQP
