     // https://code.google.com/p/google-authenticator/source/browse/mobile/ios/Classes/TOTPGeneratorTest.m
     func testTOTPGoogleValues() {
         let secret = "12345678901234567890".data(using: String.Encoding.ascii)!
-        let times: [TimeInterval] = [1111111111, 1234567890, 2000000000]
+        let timesSinceEpoch: [TimeInterval] = [1111111111, 1234567890, 2000000000]
 
         let expectedValues: [Generator.Algorithm: [String]] = [
             .sha1:   ["050471", "005924", "279037"],

            let secret = secretKey.data(using: String.Encoding.ascii)!
            let generator = Generator(factor: .timer(period: 30), secret: secret, algorithm: algorithm, digits: 8)

            for i in 0..<times.count {
                let expectedPassword = expectedValues[algorithm]?[i]
                let time = Date(timeIntervalSince1970: times[i])
                let password = generator.flatMap { try? $0.password(at: time) }
                XCTAssertEqual(password, expectedPassword,
                    "Incorrect result for \(algorithm) at \(times[i])")
            }
        }
    }


        for (algorithm, expectedPasswords) in expectedValues {
            let generator = Generator(factor: .timer(period: 30), secret: secret, algorithm: algorithm, digits: 6)
            for (timeSinceEpoch, expectedPassword) in zip(timesSinceEpoch, expectedPasswords) {
                let time = Date(timeIntervalSince1970: timeSinceEpoch)
                let password = generator.flatMap { try? $0.password(at: time) }
                XCTAssertEqual(password, expectedPassword,
                    "Incorrect result for \(algorithm) at \(timeSinceEpoch)")
            }
        }
    }
