self stuff
set types done