pre-visiting types, global, and constants
adding support for record updates
updating expected