more work on transform api