optim :: V3 Double -> V3 Double -> (Maybe Double, Maybe Double, Maybe Double)
optim (V3 x y z) (V3 cx cy cz) = (f x cx, f y cy, f z cz)
        where f d c | d == c = Nothing
                    | otherwise = Just d
optim :: V3 Double -> V3 Double -> (Maybe Double, Maybe Double, Maybe Double)
optim (V3 x y z) (V3 cx cy cz) = (f x cx, f y cy, f z cz)
        where f d c | d == c = Nothing
                    | otherwise = Just d
optim (V3 x y z) (V3 cx cy cz) = (f x cx, f y cy, f z cz)
        where f d c | d == c = Nothing
                    | otherwise = Just d