prenormalise only returns value object