reduce context bounds of unit constructors