         // top buttons
 
         x = 0
-            // start back at left of screen
+        // start back at left of screen
 
         makeTopButton(minimalBlue, buttonSize: wideButtonSize)
         makeTopButton(minimalBlue, buttonSize: wideButtonSize)


    func makeTopButton(buttonColor: SKColor, buttonSize: CGSize) {
        let anchorPoint = CGPoint(x: 0, y: 0)
        let position = CGPoint(x: x, y: HeightOfScreen - (WidthOfScreen/2))

        // ~~~~
        // color node

    // ~~~~~~~
    // specialized funcs
    func handleNoteStart(noteName: String) {
        switch noteName.characters.last! {
        case "1":
            buttonOneActive = 1
        case "2":
            buttonTwoActive = 1
        case "3":
            buttonThreeActive = 1
        default:
            fatalError("unexpected noteName: \(noteName)")
        }
    }

    func handleNoteEnd(noteName: String) {
        switch noteName.characters.last! {
        case "1":
            buttonOneActive = 0
        case "2":
            buttonTwoActive = 0
        case "3":
            buttonThreeActive = 0
        default:
            fatalError("unexpected noteName: \(noteName)")
        }
    }

    func getCurrentNoteCode() -> Int? {
        let noteCode = buttonOneActive * 1 + buttonTwoActive * 2 + buttonThreeActive * 4
        if noteCode == 0 {
            return nil
        }
        return noteCode
    }

    func makeButtons() {
        let thinButtonSize = CGSize(width: screenWidth / 3, height: screenWidth / 2),
            wideButtonSize = CGSize(width: screenWidth / 3, height: screenWidth / 2)

        // ~~~~~
        // bottom buttons
