Partial implementation for an Issue #189 (error-based; still partial union left)