code base now uses Val instead of TypedVal