     /// Instantiate the table as a square wave
     mutating func standardSquareWave() {
         values = [Float]()
-        let phsOfst = Int(phase*size)
-        for i in 0..<size {
-            if (i+phsOfst)%size < size / 2 {
+        let phaseOffset = Int(phase * size)
+        for i in 0 ..< size {
+            if (i + phaseOffset) % size < size / 2 {
                 values.append(-1.0)
             } else {
                 values.append(1.0)

    mutating func standardTriangleWave() {
        values = [Float]()
        let slope = Float(4.0) / Float(size)
        let phsOfst = Int(phase*size)
        for i in 0..<size {
            if (i+phsOfst)%size < size / 2 {
                values.append(slope * Float((i+phsOfst)%size) - 1.0)
            } else {
                values.append(slope * Float((-i-phsOfst)%size) + 3.0)
            }
        }
    }

    /// Instantiate the table as a sawtooth wave
    mutating func positiveSawtoothWave() {
        values = [Float]()
        let phaseOffset = Int(phase * size)
        for i in 0 ..< size {
            values.append(Float((i + phaseOffset) % size) / Float(size))
        }
    }

    /// Instantiate the table as a reverse sawtooth wave
    mutating func positiveReverseSawtoothWave() {
        values = [Float]()
        let phaseOffset = Int(phase * size)
        for i in 0 ..< size {
            values.append(1.0 - Float((i + phaseOffset) % size) / Float(size))
        }
    }

    /// Instantiate the table as a sine wave
    mutating func positiveSineWave() {
        values = [Float]()
        let phaseOffset = Int(phase*size)
        for i in 0 ..< size {
            values.append(0.5 + 0.5 * sin(2 * 3.14159265 * Float(i + phaseOffset) / Float(size)))
        }
    }
}
