initial extraction of type system