         cubeCount += 1
     }
     
-    func drawCube(#color: NSColor, skip: Int)
+    func drawCube(#color: NSColor, skip: Side)
     {
         let (w, h) = cubeSize()
         

    
    func setup() 
    {
        cubeCount = 0
        numrows = randint(30)+10
        
        // start at centre
        let (cw, ch) = cubeSize()
        pos = (width()/cw/2 , numrows/2)

        size.x = width()/cw
        size.y = height()/ch
        
        center.x = size.x/2
        center.y = size.y/2
                
        keepdir[0] = 0.1 + randflt() * 0.8
        keepdir[1] = 0.1 + randflt() * 0.8
        keepdir[2] = 0.1 + randflt() * 0.8
        keepdir[3] = keepdir[0]
        keepdir[4] = keepdir[1]
        keepdir[5] = keepdir[2]         
    }
    
    func clear(color:NSColor = NSColor.blackColor())

            path.fill()
        }
        
        if skip != .RIGHT
        {
            color.darken(0.25).set()
            var path = NSBezierPath()
