translateDS :: Double -> Double -> DrawState -> DrawState
translateDS x y = mapDSAT $ \(AffineTransformation a b c d e f) ->
  AffineTransformation
    a
    b
    c
    d
    (a * x + c * y + e)
    (b * x + d * y + f)
translateDS :: Double -> Double -> DrawState -> DrawState
translateDS x y = mapDSAT $ \(AffineTransformation a b c d e f) ->
  AffineTransformation
    a
    b
    c
    d
    (a * x + c * y + e)
    (b * x + d * y + f)
translateDS x y = mapDSAT $ \(AffineTransformation a b c d e f) ->
  AffineTransformation
    a
    b
    c
    d
    (a * x + c * y + e)
    (b * x + d * y + f)