Allow passing in arbitrary transformations