rename reflect to introspect because ‘reflect’ is apparently not a good
idea to overwrite