[Crystal 003] abstract type