gaia implement go a step further
type convert safe
type convert safe
type convert safe