Working version of type lists