--------------------------------------------------

-- | Because we're overloaded in the type of the tunable, we can tune
-- over arbitrary-dimensional tuning spaces by just
example1 :: String -> (Int,Int) -> (String,Score)
example1 inp (i,j) = (inp++ " done", fromIntegral (i*j))
example1 :: String -> (Int,Int) -> (String,Score)
example1 inp (i,j) = (inp++ " done", fromIntegral (i*j))
example1 inp (i,j) = (inp++ " done", fromIntegral (i*j))