         stride = calculateStride(shape)
         count = shape.reduce(1, combine: *)
         
-        cartesianFn = checkFn(transformFn(definition, stride: stride), shape: shape)
-        linearFn = checkFn(definition, count: count)
+        cartesianFn = transformFn(definition, stride: stride)
+        linearFn = definition
         unified = false
     }
     

        guard count == baseArray.shape.reduce(1, combine: *) else { fatalError("Reshaped arrays must contain the same number of elements") }
        
        let definition = { index in baseArray[linear: index] }
        cartesianFn = checkFn(transformFn(definition, stride: stride), shape: shape)
        linearFn = definition
        unified = baseArray.unified
    }
}

// MARK: - Linear Access

        stride = calculateStride(shape)
        count = shape.reduce(1, combine: *)
        
        cartesianFn = { _ in repeatedValue }
        linearFn = { _ in repeatedValue }
        unified = true
    }
    
