safeGet i j m@(Matrix r c _) 
    | i < 1 || j < 1 || i > r || j > c = Nothing
    | otherwise = Just $ unsafeGet i j m
safeGet i j m@(Matrix r c _) 
    | i < 1 || j < 1 || i > r || j > c = Nothing
    | otherwise = Just $ unsafeGet i j m
safeGet i j m@(Matrix r c _) 
    | i < 1 || j < 1 || i > r || j > c = Nothing
    | otherwise = Just $ unsafeGet i j m