learn about types