Made maybe swappable (for move constructible types).