Distinct list of embedded Objects

class SubFakeClass: EmbeddedObjects {
    @Persisted var minLength: Double?
    @Persisted var maxLength: Double?
    @Persisted var angle: Double?
    @Persisted var sort: Int
}

class MainFakeClass: Object {
    @Persisted(primaryKey: true) var _id: String
    @Persisted(indexed: true) var name: String
    @Persisted(indexed: true) var propertyOne: Int
    @Persisted(indexed: true) var propertyTwo: Int
    // ...
    @Persisted var fakes: List<SubFakeClass>
    var mainSubFake: SubFakeClass? {
        fakes.first
    }
}

How can i get a distinct (by minLength and maxLength) list of SubFakeClass Objects?

minLength could be null. Even if the class declaration obove does tell another story, maxLength does always have a value. That said, the list should be sorted by maxLength ascending