re - face to: use class to create. remove type;