Arbitrary makes Records and GetFields too