protocol Compactable : Sequence where Element == Optional<Wrapped> { associatedtype Wrapped func compact() -> [Wrapped] }