inputCallback :: IORef Scene -> KeyboardMouseCallback
inputCallback sceneRef (SpecialKey key) Down _ _ = do
    scene <- get sceneRef
    if isValidScene scene then do
        sceneRef $= reactionOn key scene
        postRedisplay Nothing
        else when (key == KeyDown) startNewGame 
inputCallback :: IORef Scene -> KeyboardMouseCallback
inputCallback sceneRef (SpecialKey key) Down _ _ = do
    scene <- get sceneRef
    if isValidScene scene then do
        sceneRef $= reactionOn key scene
        postRedisplay Nothing
        else when (key == KeyDown) startNewGame 
inputCallback sceneRef (SpecialKey key) Down _ _ = do
    scene <- get sceneRef
    if isValidScene scene then do
        sceneRef $= reactionOn key scene
        postRedisplay Nothing
        else when (key == KeyDown) startNewGame 