handle embedded types