// GENERATED CODE - DO NOT MODIFY BY HAND

part of 'reference_implementation.dart';

// **************************************************************************
// _IsarCollectionGenerator
// **************************************************************************

// coverage:ignore-file
// ignore_for_file: duplicate_ignore, invalid_use_of_protected_member, lines_longer_than_80_chars, constant_identifier_names, avoid_js_rounded_ints, no_leading_underscores_for_local_identifiers, require_trailing_commas, unnecessary_parenthesis, unnecessary_raw_strings, unnecessary_null_in_if_null_operators, library_private_types_in_public_api, prefer_const_constructors
// ignore_for_file: type=lint

extension GetReferenceImplementationCollection on Isar {
  IsarCollection<int, ReferenceImplementation> get referenceImplementations =>
      this.collection();
}

const ReferenceImplementationSchema = IsarGeneratedSchema(
  schema: IsarSchema(
    name: 'ReferenceImplementation',
    idName: 'id',
    embedded: false,
    properties: [
      IsarPropertySchema(
        name: 'listOfMeasures',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'dateStart',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'businessDirectory',
        type: IsarType.objectList,
        target: 'IdValue',
      ),
      IsarPropertySchema(
        name: 'measures',
        type: IsarType.objectList,
        target: 'IdValue',
      ),
      IsarPropertySchema(
        name: 'areaSize',
        type: IsarType.long,
      ),
      IsarPropertySchema(
        name: 'description',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'images',
        type: IsarType.objectList,
        target: 'FilePart',
      ),
      IsarPropertySchema(
        name: 'costsTotal',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'linkToGeo',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'status',
        type: IsarType.object,
        target: 'IdValueColor',
      ),
      IsarPropertySchema(
        name: 'externalOrder',
        type: IsarType.bool,
      ),
      IsarPropertySchema(
        name: 'elementCount',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'orderValue',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'shippingCosts',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'constructionCosts',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'shrubsCosts',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'treeCosts',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'shrubsPlantingCosts',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'treePlantingCosts',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'shrubsCount',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'treeCount',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'note',
        type: IsarType.string,
      ),
      IsarPropertySchema(
        name: 'editedBy',
        type: IsarType.object,
        target: 'IdValue',
      ),
    ],
    indexes: [
      IsarIndexSchema(
        name: 'listOfMeasures',
        properties: [
          "listOfMeasures",
        ],
        unique: false,
        hash: false,
      ),
    ],
  ),
  converter: IsarObjectConverter<int, ReferenceImplementation>(
    serialize: serializeReferenceImplementation,
    deserialize: deserializeReferenceImplementation,
    deserializeProperty: deserializeReferenceImplementationProp,
  ),
  embeddedSchemas: [
    IdValueSchema,
    FilePartSchema,
    ThumbnailsSchema,
    ThumbnailSchema,
    IdValueColorSchema
  ],
);

@isarProtected
int serializeReferenceImplementation(
    IsarWriter writer, ReferenceImplementation object) {
  {
    final value = object.listOfMeasures;
    if (value == null) {
      IsarCore.writeNull(writer, 1);
    } else {
      IsarCore.writeString(writer, 1, value);
    }
  }
  {
    final value = object.dateStart;
    if (value == null) {
      IsarCore.writeNull(writer, 2);
    } else {
      IsarCore.writeString(writer, 2, value);
    }
  }
  {
    final list = object.businessDirectory;
    if (list == null) {
      IsarCore.writeNull(writer, 3);
    } else {
      final listWriter = IsarCore.beginList(writer, 3, list.length);
      for (var i = 0; i < list.length; i++) {
        {
          final value = list[i];
          final objectWriter = IsarCore.beginObject(listWriter, i);
          serializeIdValue(objectWriter, value);
          IsarCore.endObject(listWriter, objectWriter);
        }
      }
      IsarCore.endList(writer, listWriter);
    }
  }
  {
    final list = object.measures;
    if (list == null) {
      IsarCore.writeNull(writer, 4);
    } else {
      final listWriter = IsarCore.beginList(writer, 4, list.length);
      for (var i = 0; i < list.length; i++) {
        {
          final value = list[i];
          final objectWriter = IsarCore.beginObject(listWriter, i);
          serializeIdValue(objectWriter, value);
          IsarCore.endObject(listWriter, objectWriter);
        }
      }
      IsarCore.endList(writer, listWriter);
    }
  }
  IsarCore.writeLong(writer, 5, object.areaSize ?? -9223372036854775808);
  {
    final value = object.description;
    if (value == null) {
      IsarCore.writeNull(writer, 6);
    } else {
      IsarCore.writeString(writer, 6, value);
    }
  }
  {
    final list = object.images;
    final listWriter = IsarCore.beginList(writer, 7, list.length);
    for (var i = 0; i < list.length; i++) {
      {
        final value = list[i];
        final objectWriter = IsarCore.beginObject(listWriter, i);
        serializeFilePart(objectWriter, value);
        IsarCore.endObject(listWriter, objectWriter);
      }
    }
    IsarCore.endList(writer, listWriter);
  }
  {
    final value = object.costsTotal;
    if (value == null) {
      IsarCore.writeNull(writer, 8);
    } else {
      IsarCore.writeString(writer, 8, value);
    }
  }
  {
    final value = object.linkToGeo;
    if (value == null) {
      IsarCore.writeNull(writer, 9);
    } else {
      IsarCore.writeString(writer, 9, value);
    }
  }
  {
    final value = object.status;
    if (value == null) {
      IsarCore.writeNull(writer, 10);
    } else {
      final objectWriter = IsarCore.beginObject(writer, 10);
      serializeIdValueColor(objectWriter, value);
      IsarCore.endObject(writer, objectWriter);
    }
  }
  IsarCore.writeBool(writer, 11, object.externalOrder);
  {
    final value = object.elementCount;
    if (value == null) {
      IsarCore.writeNull(writer, 12);
    } else {
      IsarCore.writeString(writer, 12, value);
    }
  }
  {
    final value = object.orderValue;
    if (value == null) {
      IsarCore.writeNull(writer, 13);
    } else {
      IsarCore.writeString(writer, 13, value);
    }
  }
  {
    final value = object.shippingCosts;
    if (value == null) {
      IsarCore.writeNull(writer, 14);
    } else {
      IsarCore.writeString(writer, 14, value);
    }
  }
  {
    final value = object.constructionCosts;
    if (value == null) {
      IsarCore.writeNull(writer, 15);
    } else {
      IsarCore.writeString(writer, 15, value);
    }
  }
  {
    final value = object.shrubsCosts;
    if (value == null) {
      IsarCore.writeNull(writer, 16);
    } else {
      IsarCore.writeString(writer, 16, value);
    }
  }
  {
    final value = object.treeCosts;
    if (value == null) {
      IsarCore.writeNull(writer, 17);
    } else {
      IsarCore.writeString(writer, 17, value);
    }
  }
  {
    final value = object.shrubsPlantingCosts;
    if (value == null) {
      IsarCore.writeNull(writer, 18);
    } else {
      IsarCore.writeString(writer, 18, value);
    }
  }
  {
    final value = object.treePlantingCosts;
    if (value == null) {
      IsarCore.writeNull(writer, 19);
    } else {
      IsarCore.writeString(writer, 19, value);
    }
  }
  {
    final value = object.shrubsCount;
    if (value == null) {
      IsarCore.writeNull(writer, 20);
    } else {
      IsarCore.writeString(writer, 20, value);
    }
  }
  {
    final value = object.treeCount;
    if (value == null) {
      IsarCore.writeNull(writer, 21);
    } else {
      IsarCore.writeString(writer, 21, value);
    }
  }
  {
    final value = object.note;
    if (value == null) {
      IsarCore.writeNull(writer, 22);
    } else {
      IsarCore.writeString(writer, 22, value);
    }
  }
  {
    final value = object.editedBy;
    if (value == null) {
      IsarCore.writeNull(writer, 23);
    } else {
      final objectWriter = IsarCore.beginObject(writer, 23);
      serializeIdValue(objectWriter, value);
      IsarCore.endObject(writer, objectWriter);
    }
  }
  return object.id;
}

@isarProtected
ReferenceImplementation deserializeReferenceImplementation(IsarReader reader) {
  final object = ReferenceImplementation();
  object.listOfMeasures = IsarCore.readString(reader, 1);
  object.dateStart = IsarCore.readString(reader, 2);
  {
    final length = IsarCore.readList(reader, 3, IsarCore.readerPtrPtr);
    {
      final reader = IsarCore.readerPtr;
      if (reader.isNull) {
        object.businessDirectory = null;
      } else {
        final list = List<IdValue>.filled(length, IdValue(), growable: true);
        for (var i = 0; i < length; i++) {
          {
            final objectReader = IsarCore.readObject(reader, i);
            if (objectReader.isNull) {
              list[i] = IdValue();
            } else {
              final embedded = deserializeIdValue(objectReader);
              IsarCore.freeReader(objectReader);
              list[i] = embedded;
            }
          }
        }
        IsarCore.freeReader(reader);
        object.businessDirectory = list;
      }
    }
  }
  {
    final length = IsarCore.readList(reader, 4, IsarCore.readerPtrPtr);
    {
      final reader = IsarCore.readerPtr;
      if (reader.isNull) {
        object.measures = null;
      } else {
        final list = List<IdValue>.filled(length, IdValue(), growable: true);
        for (var i = 0; i < length; i++) {
          {
            final objectReader = IsarCore.readObject(reader, i);
            if (objectReader.isNull) {
              list[i] = IdValue();
            } else {
              final embedded = deserializeIdValue(objectReader);
              IsarCore.freeReader(objectReader);
              list[i] = embedded;
            }
          }
        }
        IsarCore.freeReader(reader);
        object.measures = list;
      }
    }
  }
  {
    final value = IsarCore.readLong(reader, 5);
    if (value == -9223372036854775808) {
      object.areaSize = null;
    } else {
      object.areaSize = value;
    }
  }
  object.description = IsarCore.readString(reader, 6);
  {
    final length = IsarCore.readList(reader, 7, IsarCore.readerPtrPtr);
    {
      final reader = IsarCore.readerPtr;
      if (reader.isNull) {
        object.images = const <FilePart>[];
      } else {
        final list = List<FilePart>.filled(length, FilePart(), growable: true);
        for (var i = 0; i < length; i++) {
          {
            final objectReader = IsarCore.readObject(reader, i);
            if (objectReader.isNull) {
              list[i] = FilePart();
            } else {
              final embedded = deserializeFilePart(objectReader);
              IsarCore.freeReader(objectReader);
              list[i] = embedded;
            }
          }
        }
        IsarCore.freeReader(reader);
        object.images = list;
      }
    }
  }
  object.costsTotal = IsarCore.readString(reader, 8);
  object.linkToGeo = IsarCore.readString(reader, 9);
  {
    final objectReader = IsarCore.readObject(reader, 10);
    if (objectReader.isNull) {
      object.status = null;
    } else {
      final embedded = deserializeIdValueColor(objectReader);
      IsarCore.freeReader(objectReader);
      object.status = embedded;
    }
  }
  object.externalOrder = IsarCore.readBool(reader, 11);
  object.elementCount = IsarCore.readString(reader, 12);
  object.orderValue = IsarCore.readString(reader, 13);
  object.shippingCosts = IsarCore.readString(reader, 14);
  object.constructionCosts = IsarCore.readString(reader, 15);
  object.shrubsCosts = IsarCore.readString(reader, 16);
  object.treeCosts = IsarCore.readString(reader, 17);
  object.shrubsPlantingCosts = IsarCore.readString(reader, 18);
  object.treePlantingCosts = IsarCore.readString(reader, 19);
  object.shrubsCount = IsarCore.readString(reader, 20);
  object.treeCount = IsarCore.readString(reader, 21);
  object.note = IsarCore.readString(reader, 22);
  {
    final objectReader = IsarCore.readObject(reader, 23);
    if (objectReader.isNull) {
      object.editedBy = null;
    } else {
      final embedded = deserializeIdValue(objectReader);
      IsarCore.freeReader(objectReader);
      object.editedBy = embedded;
    }
  }
  object.id = IsarCore.readId(reader);
  return object;
}

@isarProtected
dynamic deserializeReferenceImplementationProp(
    IsarReader reader, int property) {
  switch (property) {
    case 1:
      return IsarCore.readString(reader, 1);
    case 2:
      return IsarCore.readString(reader, 2);
    case 3:
      {
        final length = IsarCore.readList(reader, 3, IsarCore.readerPtrPtr);
        {
          final reader = IsarCore.readerPtr;
          if (reader.isNull) {
            return null;
          } else {
            final list =
                List<IdValue>.filled(length, IdValue(), growable: true);
            for (var i = 0; i < length; i++) {
              {
                final objectReader = IsarCore.readObject(reader, i);
                if (objectReader.isNull) {
                  list[i] = IdValue();
                } else {
                  final embedded = deserializeIdValue(objectReader);
                  IsarCore.freeReader(objectReader);
                  list[i] = embedded;
                }
              }
            }
            IsarCore.freeReader(reader);
            return list;
          }
        }
      }
    case 4:
      {
        final length = IsarCore.readList(reader, 4, IsarCore.readerPtrPtr);
        {
          final reader = IsarCore.readerPtr;
          if (reader.isNull) {
            return null;
          } else {
            final list =
                List<IdValue>.filled(length, IdValue(), growable: true);
            for (var i = 0; i < length; i++) {
              {
                final objectReader = IsarCore.readObject(reader, i);
                if (objectReader.isNull) {
                  list[i] = IdValue();
                } else {
                  final embedded = deserializeIdValue(objectReader);
                  IsarCore.freeReader(objectReader);
                  list[i] = embedded;
                }
              }
            }
            IsarCore.freeReader(reader);
            return list;
          }
        }
      }
    case 5:
      {
        final value = IsarCore.readLong(reader, 5);
        if (value == -9223372036854775808) {
          return null;
        } else {
          return value;
        }
      }
    case 6:
      return IsarCore.readString(reader, 6);
    case 7:
      {
        final length = IsarCore.readList(reader, 7, IsarCore.readerPtrPtr);
        {
          final reader = IsarCore.readerPtr;
          if (reader.isNull) {
            return const <FilePart>[];
          } else {
            final list =
                List<FilePart>.filled(length, FilePart(), growable: true);
            for (var i = 0; i < length; i++) {
              {
                final objectReader = IsarCore.readObject(reader, i);
                if (objectReader.isNull) {
                  list[i] = FilePart();
                } else {
                  final embedded = deserializeFilePart(objectReader);
                  IsarCore.freeReader(objectReader);
                  list[i] = embedded;
                }
              }
            }
            IsarCore.freeReader(reader);
            return list;
          }
        }
      }
    case 8:
      return IsarCore.readString(reader, 8);
    case 9:
      return IsarCore.readString(reader, 9);
    case 10:
      {
        final objectReader = IsarCore.readObject(reader, 10);
        if (objectReader.isNull) {
          return null;
        } else {
          final embedded = deserializeIdValueColor(objectReader);
          IsarCore.freeReader(objectReader);
          return embedded;
        }
      }
    case 11:
      return IsarCore.readBool(reader, 11);
    case 12:
      return IsarCore.readString(reader, 12);
    case 13:
      return IsarCore.readString(reader, 13);
    case 14:
      return IsarCore.readString(reader, 14);
    case 15:
      return IsarCore.readString(reader, 15);
    case 16:
      return IsarCore.readString(reader, 16);
    case 17:
      return IsarCore.readString(reader, 17);
    case 18:
      return IsarCore.readString(reader, 18);
    case 19:
      return IsarCore.readString(reader, 19);
    case 20:
      return IsarCore.readString(reader, 20);
    case 21:
      return IsarCore.readString(reader, 21);
    case 22:
      return IsarCore.readString(reader, 22);
    case 23:
      {
        final objectReader = IsarCore.readObject(reader, 23);
        if (objectReader.isNull) {
          return null;
        } else {
          final embedded = deserializeIdValue(objectReader);
          IsarCore.freeReader(objectReader);
          return embedded;
        }
      }
    case 0:
      return IsarCore.readId(reader);
    default:
      throw ArgumentError('Unknown property: $property');
  }
}

sealed class _ReferenceImplementationUpdate {
  bool call({
    required int id,
    String? listOfMeasures,
    String? dateStart,
    int? areaSize,
    String? description,
    String? costsTotal,
    String? linkToGeo,
    bool? externalOrder,
    String? elementCount,
    String? orderValue,
    String? shippingCosts,
    String? constructionCosts,
    String? shrubsCosts,
    String? treeCosts,
    String? shrubsPlantingCosts,
    String? treePlantingCosts,
    String? shrubsCount,
    String? treeCount,
    String? note,
  });
}

class _ReferenceImplementationUpdateImpl
    implements _ReferenceImplementationUpdate {
  const _ReferenceImplementationUpdateImpl(this.collection);

  final IsarCollection<int, ReferenceImplementation> collection;

  @override
  bool call({
    required int id,
    Object? listOfMeasures = ignore,
    Object? dateStart = ignore,
    Object? areaSize = ignore,
    Object? description = ignore,
    Object? costsTotal = ignore,
    Object? linkToGeo = ignore,
    Object? externalOrder = ignore,
    Object? elementCount = ignore,
    Object? orderValue = ignore,
    Object? shippingCosts = ignore,
    Object? constructionCosts = ignore,
    Object? shrubsCosts = ignore,
    Object? treeCosts = ignore,
    Object? shrubsPlantingCosts = ignore,
    Object? treePlantingCosts = ignore,
    Object? shrubsCount = ignore,
    Object? treeCount = ignore,
    Object? note = ignore,
  }) {
    return collection.updateProperties([
          id
        ], {
          if (listOfMeasures != ignore) 1: listOfMeasures as String?,
          if (dateStart != ignore) 2: dateStart as String?,
          if (areaSize != ignore) 5: areaSize as int?,
          if (description != ignore) 6: description as String?,
          if (costsTotal != ignore) 8: costsTotal as String?,
          if (linkToGeo != ignore) 9: linkToGeo as String?,
          if (externalOrder != ignore) 11: externalOrder as bool?,
          if (elementCount != ignore) 12: elementCount as String?,
          if (orderValue != ignore) 13: orderValue as String?,
          if (shippingCosts != ignore) 14: shippingCosts as String?,
          if (constructionCosts != ignore) 15: constructionCosts as String?,
          if (shrubsCosts != ignore) 16: shrubsCosts as String?,
          if (treeCosts != ignore) 17: treeCosts as String?,
          if (shrubsPlantingCosts != ignore) 18: shrubsPlantingCosts as String?,
          if (treePlantingCosts != ignore) 19: treePlantingCosts as String?,
          if (shrubsCount != ignore) 20: shrubsCount as String?,
          if (treeCount != ignore) 21: treeCount as String?,
          if (note != ignore) 22: note as String?,
        }) >
        0;
  }
}

sealed class _ReferenceImplementationUpdateAll {
  int call({
    required List<int> id,
    String? listOfMeasures,
    String? dateStart,
    int? areaSize,
    String? description,
    String? costsTotal,
    String? linkToGeo,
    bool? externalOrder,
    String? elementCount,
    String? orderValue,
    String? shippingCosts,
    String? constructionCosts,
    String? shrubsCosts,
    String? treeCosts,
    String? shrubsPlantingCosts,
    String? treePlantingCosts,
    String? shrubsCount,
    String? treeCount,
    String? note,
  });
}

class _ReferenceImplementationUpdateAllImpl
    implements _ReferenceImplementationUpdateAll {
  const _ReferenceImplementationUpdateAllImpl(this.collection);

  final IsarCollection<int, ReferenceImplementation> collection;

  @override
  int call({
    required List<int> id,
    Object? listOfMeasures = ignore,
    Object? dateStart = ignore,
    Object? areaSize = ignore,
    Object? description = ignore,
    Object? costsTotal = ignore,
    Object? linkToGeo = ignore,
    Object? externalOrder = ignore,
    Object? elementCount = ignore,
    Object? orderValue = ignore,
    Object? shippingCosts = ignore,
    Object? constructionCosts = ignore,
    Object? shrubsCosts = ignore,
    Object? treeCosts = ignore,
    Object? shrubsPlantingCosts = ignore,
    Object? treePlantingCosts = ignore,
    Object? shrubsCount = ignore,
    Object? treeCount = ignore,
    Object? note = ignore,
  }) {
    return collection.updateProperties(id, {
      if (listOfMeasures != ignore) 1: listOfMeasures as String?,
      if (dateStart != ignore) 2: dateStart as String?,
      if (areaSize != ignore) 5: areaSize as int?,
      if (description != ignore) 6: description as String?,
      if (costsTotal != ignore) 8: costsTotal as String?,
      if (linkToGeo != ignore) 9: linkToGeo as String?,
      if (externalOrder != ignore) 11: externalOrder as bool?,
      if (elementCount != ignore) 12: elementCount as String?,
      if (orderValue != ignore) 13: orderValue as String?,
      if (shippingCosts != ignore) 14: shippingCosts as String?,
      if (constructionCosts != ignore) 15: constructionCosts as String?,
      if (shrubsCosts != ignore) 16: shrubsCosts as String?,
      if (treeCosts != ignore) 17: treeCosts as String?,
      if (shrubsPlantingCosts != ignore) 18: shrubsPlantingCosts as String?,
      if (treePlantingCosts != ignore) 19: treePlantingCosts as String?,
      if (shrubsCount != ignore) 20: shrubsCount as String?,
      if (treeCount != ignore) 21: treeCount as String?,
      if (note != ignore) 22: note as String?,
    });
  }
}

extension ReferenceImplementationUpdate
    on IsarCollection<int, ReferenceImplementation> {
  _ReferenceImplementationUpdate get update =>
      _ReferenceImplementationUpdateImpl(this);

  _ReferenceImplementationUpdateAll get updateAll =>
      _ReferenceImplementationUpdateAllImpl(this);
}

sealed class _ReferenceImplementationQueryUpdate {
  int call({
    String? listOfMeasures,
    String? dateStart,
    int? areaSize,
    String? description,
    String? costsTotal,
    String? linkToGeo,
    bool? externalOrder,
    String? elementCount,
    String? orderValue,
    String? shippingCosts,
    String? constructionCosts,
    String? shrubsCosts,
    String? treeCosts,
    String? shrubsPlantingCosts,
    String? treePlantingCosts,
    String? shrubsCount,
    String? treeCount,
    String? note,
  });
}

class _ReferenceImplementationQueryUpdateImpl
    implements _ReferenceImplementationQueryUpdate {
  const _ReferenceImplementationQueryUpdateImpl(this.query, {this.limit});

  final IsarQuery<ReferenceImplementation> query;
  final int? limit;

  @override
  int call({
    Object? listOfMeasures = ignore,
    Object? dateStart = ignore,
    Object? areaSize = ignore,
    Object? description = ignore,
    Object? costsTotal = ignore,
    Object? linkToGeo = ignore,
    Object? externalOrder = ignore,
    Object? elementCount = ignore,
    Object? orderValue = ignore,
    Object? shippingCosts = ignore,
    Object? constructionCosts = ignore,
    Object? shrubsCosts = ignore,
    Object? treeCosts = ignore,
    Object? shrubsPlantingCosts = ignore,
    Object? treePlantingCosts = ignore,
    Object? shrubsCount = ignore,
    Object? treeCount = ignore,
    Object? note = ignore,
  }) {
    return query.updateProperties(limit: limit, {
      if (listOfMeasures != ignore) 1: listOfMeasures as String?,
      if (dateStart != ignore) 2: dateStart as String?,
      if (areaSize != ignore) 5: areaSize as int?,
      if (description != ignore) 6: description as String?,
      if (costsTotal != ignore) 8: costsTotal as String?,
      if (linkToGeo != ignore) 9: linkToGeo as String?,
      if (externalOrder != ignore) 11: externalOrder as bool?,
      if (elementCount != ignore) 12: elementCount as String?,
      if (orderValue != ignore) 13: orderValue as String?,
      if (shippingCosts != ignore) 14: shippingCosts as String?,
      if (constructionCosts != ignore) 15: constructionCosts as String?,
      if (shrubsCosts != ignore) 16: shrubsCosts as String?,
      if (treeCosts != ignore) 17: treeCosts as String?,
      if (shrubsPlantingCosts != ignore) 18: shrubsPlantingCosts as String?,
      if (treePlantingCosts != ignore) 19: treePlantingCosts as String?,
      if (shrubsCount != ignore) 20: shrubsCount as String?,
      if (treeCount != ignore) 21: treeCount as String?,
      if (note != ignore) 22: note as String?,
    });
  }
}

extension ReferenceImplementationQueryUpdate
    on IsarQuery<ReferenceImplementation> {
  _ReferenceImplementationQueryUpdate get updateFirst =>
      _ReferenceImplementationQueryUpdateImpl(this, limit: 1);

  _ReferenceImplementationQueryUpdate get updateAll =>
      _ReferenceImplementationQueryUpdateImpl(this);
}

class _ReferenceImplementationQueryBuilderUpdateImpl
    implements _ReferenceImplementationQueryUpdate {
  const _ReferenceImplementationQueryBuilderUpdateImpl(this.query,
      {this.limit});

  final QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QOperations> query;
  final int? limit;

  @override
  int call({
    Object? listOfMeasures = ignore,
    Object? dateStart = ignore,
    Object? areaSize = ignore,
    Object? description = ignore,
    Object? costsTotal = ignore,
    Object? linkToGeo = ignore,
    Object? externalOrder = ignore,
    Object? elementCount = ignore,
    Object? orderValue = ignore,
    Object? shippingCosts = ignore,
    Object? constructionCosts = ignore,
    Object? shrubsCosts = ignore,
    Object? treeCosts = ignore,
    Object? shrubsPlantingCosts = ignore,
    Object? treePlantingCosts = ignore,
    Object? shrubsCount = ignore,
    Object? treeCount = ignore,
    Object? note = ignore,
  }) {
    final q = query.build();
    try {
      return q.updateProperties(limit: limit, {
        if (listOfMeasures != ignore) 1: listOfMeasures as String?,
        if (dateStart != ignore) 2: dateStart as String?,
        if (areaSize != ignore) 5: areaSize as int?,
        if (description != ignore) 6: description as String?,
        if (costsTotal != ignore) 8: costsTotal as String?,
        if (linkToGeo != ignore) 9: linkToGeo as String?,
        if (externalOrder != ignore) 11: externalOrder as bool?,
        if (elementCount != ignore) 12: elementCount as String?,
        if (orderValue != ignore) 13: orderValue as String?,
        if (shippingCosts != ignore) 14: shippingCosts as String?,
        if (constructionCosts != ignore) 15: constructionCosts as String?,
        if (shrubsCosts != ignore) 16: shrubsCosts as String?,
        if (treeCosts != ignore) 17: treeCosts as String?,
        if (shrubsPlantingCosts != ignore) 18: shrubsPlantingCosts as String?,
        if (treePlantingCosts != ignore) 19: treePlantingCosts as String?,
        if (shrubsCount != ignore) 20: shrubsCount as String?,
        if (treeCount != ignore) 21: treeCount as String?,
        if (note != ignore) 22: note as String?,
      });
    } finally {
      q.close();
    }
  }
}

extension ReferenceImplementationQueryBuilderUpdate on QueryBuilder<
    ReferenceImplementation, ReferenceImplementation, QOperations> {
  _ReferenceImplementationQueryUpdate get updateFirst =>
      _ReferenceImplementationQueryBuilderUpdateImpl(this, limit: 1);

  _ReferenceImplementationQueryUpdate get updateAll =>
      _ReferenceImplementationQueryBuilderUpdateImpl(this);
}

extension ReferenceImplementationQueryFilter on QueryBuilder<
    ReferenceImplementation, ReferenceImplementation, QFilterCondition> {
  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> listOfMeasuresIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 1));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> listOfMeasuresIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 1));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> listOfMeasuresEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 1,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> listOfMeasuresGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 1,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> listOfMeasuresGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 1,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> listOfMeasuresLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 1,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> listOfMeasuresLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 1,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> listOfMeasuresBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 1,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> listOfMeasuresStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 1,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> listOfMeasuresEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 1,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      listOfMeasuresContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 1,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      listOfMeasuresMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 1,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> listOfMeasuresIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 1,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> listOfMeasuresIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 1,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> dateStartIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 2));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> dateStartIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 2));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> dateStartEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 2,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> dateStartGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 2,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> dateStartGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 2,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> dateStartLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 2,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> dateStartLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 2,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> dateStartBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 2,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> dateStartStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 2,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> dateStartEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 2,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      dateStartContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 2,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      dateStartMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 2,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> dateStartIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 2,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> dateStartIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 2,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> businessDirectoryIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 3));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> businessDirectoryIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 3));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> businessDirectoryIsEmpty() {
    return not().group(
      (q) => q.businessDirectoryIsNull().or().businessDirectoryIsNotEmpty(),
    );
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> businessDirectoryIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterOrEqualCondition(property: 3, value: null),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> measuresIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 4));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> measuresIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 4));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> measuresIsEmpty() {
    return not().group(
      (q) => q.measuresIsNull().or().measuresIsNotEmpty(),
    );
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> measuresIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterOrEqualCondition(property: 4, value: null),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> areaSizeIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 5));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> areaSizeIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 5));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> areaSizeEqualTo(
    int? value,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 5,
          value: value,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> areaSizeGreaterThan(
    int? value,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 5,
          value: value,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> areaSizeGreaterThanOrEqualTo(
    int? value,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 5,
          value: value,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> areaSizeLessThan(
    int? value,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 5,
          value: value,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> areaSizeLessThanOrEqualTo(
    int? value,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 5,
          value: value,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> areaSizeBetween(
    int? lower,
    int? upper,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 5,
          lower: lower,
          upper: upper,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> descriptionIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 6));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> descriptionIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 6));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> descriptionEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 6,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> descriptionGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 6,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> descriptionGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 6,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> descriptionLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 6,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> descriptionLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 6,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> descriptionBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 6,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> descriptionStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 6,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> descriptionEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 6,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      descriptionContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 6,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      descriptionMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 6,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> descriptionIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 6,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> descriptionIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 6,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> imagesIsEmpty() {
    return not().imagesIsNotEmpty();
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> imagesIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterOrEqualCondition(property: 7, value: null),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> costsTotalIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 8));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> costsTotalIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 8));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> costsTotalEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 8,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> costsTotalGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 8,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> costsTotalGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 8,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> costsTotalLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 8,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> costsTotalLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 8,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> costsTotalBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 8,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> costsTotalStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 8,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> costsTotalEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 8,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      costsTotalContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 8,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      costsTotalMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 8,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> costsTotalIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 8,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> costsTotalIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 8,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> linkToGeoIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 9));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> linkToGeoIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 9));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> linkToGeoEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 9,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> linkToGeoGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 9,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> linkToGeoGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 9,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> linkToGeoLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 9,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> linkToGeoLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 9,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> linkToGeoBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 9,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> linkToGeoStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 9,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> linkToGeoEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 9,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      linkToGeoContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 9,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      linkToGeoMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 9,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> linkToGeoIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 9,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> linkToGeoIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 9,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> statusIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 10));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> statusIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 10));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> externalOrderEqualTo(
    bool value,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 11,
          value: value,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> elementCountIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 12));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> elementCountIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 12));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> elementCountEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 12,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> elementCountGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 12,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> elementCountGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 12,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> elementCountLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 12,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> elementCountLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 12,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> elementCountBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 12,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> elementCountStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 12,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> elementCountEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 12,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      elementCountContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 12,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      elementCountMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 12,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> elementCountIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 12,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> elementCountIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 12,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> orderValueIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 13));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> orderValueIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 13));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> orderValueEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 13,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> orderValueGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 13,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> orderValueGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 13,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> orderValueLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 13,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> orderValueLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 13,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> orderValueBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 13,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> orderValueStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 13,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> orderValueEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 13,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      orderValueContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 13,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      orderValueMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 13,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> orderValueIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 13,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> orderValueIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 13,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shippingCostsIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 14));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shippingCostsIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 14));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shippingCostsEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 14,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shippingCostsGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 14,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shippingCostsGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 14,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shippingCostsLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 14,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shippingCostsLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 14,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shippingCostsBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 14,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shippingCostsStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 14,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shippingCostsEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 14,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      shippingCostsContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 14,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      shippingCostsMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 14,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shippingCostsIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 14,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shippingCostsIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 14,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> constructionCostsIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 15));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> constructionCostsIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 15));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> constructionCostsEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 15,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> constructionCostsGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 15,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> constructionCostsGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 15,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> constructionCostsLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 15,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> constructionCostsLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 15,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> constructionCostsBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 15,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> constructionCostsStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 15,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> constructionCostsEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 15,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      constructionCostsContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 15,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      constructionCostsMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 15,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> constructionCostsIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 15,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> constructionCostsIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 15,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCostsIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 16));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCostsIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 16));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCostsEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 16,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCostsGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 16,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCostsGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 16,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCostsLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 16,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCostsLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 16,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCostsBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 16,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCostsStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 16,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCostsEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 16,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      shrubsCostsContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 16,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      shrubsCostsMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 16,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCostsIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 16,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCostsIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 16,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCostsIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 17));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCostsIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 17));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCostsEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 17,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCostsGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 17,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCostsGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 17,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCostsLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 17,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCostsLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 17,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCostsBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 17,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCostsStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 17,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCostsEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 17,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      treeCostsContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 17,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      treeCostsMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 17,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCostsIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 17,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCostsIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 17,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsPlantingCostsIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 18));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsPlantingCostsIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 18));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsPlantingCostsEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 18,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsPlantingCostsGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 18,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsPlantingCostsGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 18,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsPlantingCostsLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 18,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsPlantingCostsLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 18,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsPlantingCostsBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 18,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsPlantingCostsStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 18,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsPlantingCostsEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 18,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      shrubsPlantingCostsContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 18,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      shrubsPlantingCostsMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 18,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsPlantingCostsIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 18,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsPlantingCostsIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 18,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treePlantingCostsIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 19));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treePlantingCostsIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 19));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treePlantingCostsEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 19,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treePlantingCostsGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 19,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treePlantingCostsGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 19,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treePlantingCostsLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 19,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treePlantingCostsLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 19,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treePlantingCostsBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 19,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treePlantingCostsStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 19,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treePlantingCostsEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 19,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      treePlantingCostsContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 19,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      treePlantingCostsMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 19,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treePlantingCostsIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 19,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treePlantingCostsIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 19,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCountIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 20));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCountIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 20));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCountEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 20,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCountGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 20,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCountGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 20,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCountLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 20,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCountLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 20,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCountBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 20,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCountStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 20,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCountEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 20,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      shrubsCountContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 20,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      shrubsCountMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 20,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCountIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 20,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> shrubsCountIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 20,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCountIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 21));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCountIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 21));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCountEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 21,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCountGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 21,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCountGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 21,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCountLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 21,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCountLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 21,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCountBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 21,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCountStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 21,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCountEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 21,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      treeCountContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 21,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      treeCountMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 21,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCountIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 21,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> treeCountIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 21,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> noteIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 22));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> noteIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 22));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> noteEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 22,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> noteGreaterThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 22,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> noteGreaterThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 22,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> noteLessThan(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 22,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> noteLessThanOrEqualTo(
    String? value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 22,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> noteBetween(
    String? lower,
    String? upper, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 22,
          lower: lower,
          upper: upper,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> noteStartsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        StartsWithCondition(
          property: 22,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> noteEndsWith(
    String value, {
    bool caseSensitive = true,
  }) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EndsWithCondition(
          property: 22,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      noteContains(String value, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        ContainsCondition(
          property: 22,
          value: value,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
          QAfterFilterCondition>
      noteMatches(String pattern, {bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        MatchesCondition(
          property: 22,
          wildcard: pattern,
          caseSensitive: caseSensitive,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> noteIsEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const EqualCondition(
          property: 22,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> noteIsNotEmpty() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        const GreaterCondition(
          property: 22,
          value: '',
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> editedByIsNull() {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(const IsNullCondition(property: 23));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> editedByIsNotNull() {
    return QueryBuilder.apply(not(), (query) {
      return query.addFilterCondition(const IsNullCondition(property: 23));
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> idEqualTo(
    int value,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        EqualCondition(
          property: 0,
          value: value,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> idGreaterThan(
    int value,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterCondition(
          property: 0,
          value: value,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> idGreaterThanOrEqualTo(
    int value,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        GreaterOrEqualCondition(
          property: 0,
          value: value,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> idLessThan(
    int value,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessCondition(
          property: 0,
          value: value,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> idLessThanOrEqualTo(
    int value,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        LessOrEqualCondition(
          property: 0,
          value: value,
        ),
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> idBetween(
    int lower,
    int upper,
  ) {
    return QueryBuilder.apply(this, (query) {
      return query.addFilterCondition(
        BetweenCondition(
          property: 0,
          lower: lower,
          upper: upper,
        ),
      );
    });
  }
}

extension ReferenceImplementationQueryObject on QueryBuilder<
    ReferenceImplementation, ReferenceImplementation, QFilterCondition> {
  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> status(FilterQuery<IdValueColor> q) {
    return QueryBuilder.apply(this, (query) {
      return query.object(q, 10);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation,
      QAfterFilterCondition> editedBy(FilterQuery<IdValue> q) {
    return QueryBuilder.apply(this, (query) {
      return query.object(q, 23);
    });
  }
}

extension ReferenceImplementationQuerySortBy
    on QueryBuilder<ReferenceImplementation, ReferenceImplementation, QSortBy> {
  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByListOfMeasures({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        1,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByListOfMeasuresDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        1,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByDateStart({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        2,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByDateStartDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        2,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByAreaSize() {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(5);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByAreaSizeDesc() {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(5, sort: Sort.desc);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByDescription({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        6,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByDescriptionDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        6,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByCostsTotal({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        8,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByCostsTotalDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        8,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByLinkToGeo({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        9,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByLinkToGeoDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        9,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByExternalOrder() {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(11);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByExternalOrderDesc() {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(11, sort: Sort.desc);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByElementCount({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        12,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByElementCountDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        12,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByOrderValue({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        13,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByOrderValueDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        13,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByShippingCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        14,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByShippingCostsDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        14,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByConstructionCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        15,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByConstructionCostsDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        15,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByShrubsCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        16,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByShrubsCostsDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        16,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByTreeCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        17,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByTreeCostsDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        17,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByShrubsPlantingCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        18,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByShrubsPlantingCostsDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        18,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByTreePlantingCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        19,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByTreePlantingCostsDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        19,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByShrubsCount({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        20,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByShrubsCountDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        20,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByTreeCount({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        21,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByTreeCountDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        21,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByNote({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        22,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByNoteDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(
        22,
        sort: Sort.desc,
        caseSensitive: caseSensitive,
      );
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortById() {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(0);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      sortByIdDesc() {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(0, sort: Sort.desc);
    });
  }
}

extension ReferenceImplementationQuerySortThenBy on QueryBuilder<
    ReferenceImplementation, ReferenceImplementation, QSortThenBy> {
  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByListOfMeasures({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(1, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByListOfMeasuresDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(1, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByDateStart({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(2, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByDateStartDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(2, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByAreaSize() {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(5);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByAreaSizeDesc() {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(5, sort: Sort.desc);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByDescription({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(6, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByDescriptionDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(6, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByCostsTotal({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(8, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByCostsTotalDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(8, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByLinkToGeo({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(9, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByLinkToGeoDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(9, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByExternalOrder() {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(11);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByExternalOrderDesc() {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(11, sort: Sort.desc);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByElementCount({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(12, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByElementCountDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(12, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByOrderValue({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(13, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByOrderValueDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(13, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByShippingCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(14, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByShippingCostsDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(14, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByConstructionCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(15, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByConstructionCostsDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(15, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByShrubsCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(16, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByShrubsCostsDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(16, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByTreeCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(17, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByTreeCostsDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(17, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByShrubsPlantingCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(18, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByShrubsPlantingCostsDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(18, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByTreePlantingCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(19, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByTreePlantingCostsDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(19, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByShrubsCount({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(20, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByShrubsCountDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(20, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByTreeCount({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(21, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByTreeCountDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(21, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByNote({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(22, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByNoteDesc({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(22, sort: Sort.desc, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenById() {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(0);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterSortBy>
      thenByIdDesc() {
    return QueryBuilder.apply(this, (query) {
      return query.addSortBy(0, sort: Sort.desc);
    });
  }
}

extension ReferenceImplementationQueryWhereDistinct on QueryBuilder<
    ReferenceImplementation, ReferenceImplementation, QDistinct> {
  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByListOfMeasures({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(1, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByDateStart({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(2, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByAreaSize() {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(5);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByDescription({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(6, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByCostsTotal({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(8, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByLinkToGeo({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(9, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByExternalOrder() {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(11);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByElementCount({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(12, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByOrderValue({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(13, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByShippingCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(14, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByConstructionCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(15, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByShrubsCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(16, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByTreeCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(17, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByShrubsPlantingCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(18, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByTreePlantingCosts({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(19, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByShrubsCount({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(20, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByTreeCount({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(21, caseSensitive: caseSensitive);
    });
  }

  QueryBuilder<ReferenceImplementation, ReferenceImplementation, QAfterDistinct>
      distinctByNote({bool caseSensitive = true}) {
    return QueryBuilder.apply(this, (query) {
      return query.addDistinctBy(22, caseSensitive: caseSensitive);
    });
  }
}

extension ReferenceImplementationQueryProperty1 on QueryBuilder<
    ReferenceImplementation, ReferenceImplementation, QProperty> {
  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      listOfMeasuresProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(1);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      dateStartProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(2);
    });
  }

  QueryBuilder<ReferenceImplementation, List<IdValue>?, QAfterProperty>
      businessDirectoryProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(3);
    });
  }

  QueryBuilder<ReferenceImplementation, List<IdValue>?, QAfterProperty>
      measuresProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(4);
    });
  }

  QueryBuilder<ReferenceImplementation, int?, QAfterProperty>
      areaSizeProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(5);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      descriptionProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(6);
    });
  }

  QueryBuilder<ReferenceImplementation, List<FilePart>, QAfterProperty>
      imagesProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(7);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      costsTotalProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(8);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      linkToGeoProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(9);
    });
  }

  QueryBuilder<ReferenceImplementation, IdValueColor?, QAfterProperty>
      statusProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(10);
    });
  }

  QueryBuilder<ReferenceImplementation, bool, QAfterProperty>
      externalOrderProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(11);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      elementCountProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(12);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      orderValueProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(13);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      shippingCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(14);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      constructionCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(15);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      shrubsCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(16);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      treeCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(17);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      shrubsPlantingCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(18);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      treePlantingCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(19);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      shrubsCountProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(20);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      treeCountProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(21);
    });
  }

  QueryBuilder<ReferenceImplementation, String?, QAfterProperty>
      noteProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(22);
    });
  }

  QueryBuilder<ReferenceImplementation, IdValue?, QAfterProperty>
      editedByProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(23);
    });
  }

  QueryBuilder<ReferenceImplementation, int, QAfterProperty> idProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(0);
    });
  }
}

extension ReferenceImplementationQueryProperty2<R>
    on QueryBuilder<ReferenceImplementation, R, QAfterProperty> {
  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      listOfMeasuresProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(1);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      dateStartProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(2);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, List<IdValue>?), QAfterProperty>
      businessDirectoryProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(3);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, List<IdValue>?), QAfterProperty>
      measuresProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(4);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, int?), QAfterProperty>
      areaSizeProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(5);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      descriptionProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(6);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, List<FilePart>), QAfterProperty>
      imagesProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(7);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      costsTotalProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(8);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      linkToGeoProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(9);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, IdValueColor?), QAfterProperty>
      statusProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(10);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, bool), QAfterProperty>
      externalOrderProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(11);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      elementCountProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(12);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      orderValueProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(13);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      shippingCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(14);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      constructionCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(15);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      shrubsCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(16);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      treeCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(17);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      shrubsPlantingCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(18);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      treePlantingCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(19);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      shrubsCountProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(20);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      treeCountProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(21);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, String?), QAfterProperty>
      noteProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(22);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, IdValue?), QAfterProperty>
      editedByProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(23);
    });
  }

  QueryBuilder<ReferenceImplementation, (R, int), QAfterProperty> idProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(0);
    });
  }
}

extension ReferenceImplementationQueryProperty3<R1, R2>
    on QueryBuilder<ReferenceImplementation, (R1, R2), QAfterProperty> {
  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      listOfMeasuresProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(1);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      dateStartProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(2);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, List<IdValue>?), QOperations>
      businessDirectoryProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(3);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, List<IdValue>?), QOperations>
      measuresProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(4);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, int?), QOperations>
      areaSizeProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(5);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      descriptionProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(6);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, List<FilePart>), QOperations>
      imagesProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(7);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      costsTotalProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(8);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      linkToGeoProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(9);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, IdValueColor?), QOperations>
      statusProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(10);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, bool), QOperations>
      externalOrderProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(11);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      elementCountProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(12);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      orderValueProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(13);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      shippingCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(14);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      constructionCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(15);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      shrubsCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(16);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      treeCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(17);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      shrubsPlantingCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(18);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      treePlantingCostsProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(19);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      shrubsCountProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(20);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      treeCountProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(21);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, String?), QOperations>
      noteProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(22);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, IdValue?), QOperations>
      editedByProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(23);
    });
  }

  QueryBuilder<ReferenceImplementation, (R1, R2, int), QOperations>
      idProperty() {
    return QueryBuilder.apply(this, (query) {
      return query.addProperty(0);
    });
  }
}

// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************

ReferenceImplementation _$ReferenceImplementationFromJson(
        Map<String, dynamic> json) =>
    ReferenceImplementation()
      ..id = (json['id'] as num).toInt()
      ..listOfMeasures = json['Liste aller Maßnahmen'] as String?
      ..dateStart = json['Datum der Anlage'] as String?
      ..businessDirectory = (json['06 Betriebsverzeichnis'] as List<dynamic>?)
          ?.map((e) => IdValue.fromJson(e as Map<String, dynamic>))
          .toList()
      ..measures = (json['00 Maßnahmendatenbank'] as List<dynamic>?)
          ?.map((e) => IdValue.fromJson(e as Map<String, dynamic>))
          .toList()
      ..areaSize = (json['Größe in m²'] as num?)?.toInt()
      ..description = json['Beschreibung'] as String?
      ..images = (json['Fotos'] as List<dynamic>)
          .map((e) => FilePart.fromJson(e as Map<String, dynamic>))
          .toList()
      ..costsTotal = json['Gesamtkosten'] as String?
      ..linkToGeo = json['Link zum Geomarker'] as String?
      ..status = json['Status'] == null
          ? null
          : IdValueColor.fromJson(json['Status'] as Map<String, dynamic>)
      ..externalOrder = json['Materialbezug ohne AmBiTo'] as bool
      ..elementCount = json['Anzahl Elemente'] as String?
      ..orderValue = json['Bestellwert'] as String?
      ..shippingCosts = json['Lieferung'] as String?
      ..constructionCosts = json['Anlage'] as String?
      ..shrubsCosts = json['Sträucher Kosten'] as String?
      ..treeCosts = json['Bäume Kosten'] as String?
      ..shrubsPlantingCosts = json['Sträucher Pflanzkosten'] as String?
      ..treePlantingCosts = json['Bäume Pflanzkosten'] as String?
      ..shrubsCount = json['Anzahl Sträucher'] as String?
      ..treeCount = json['Anzahl Bäume'] as String?
      ..note = json['Anmerkung'] as String?
      ..editedBy = json['Bearbeitet von'] == null
          ? null
          : IdValue.fromJson(json['Bearbeitet von'] as Map<String, dynamic>);

Map<String, dynamic> _$ReferenceImplementationToJson(
        ReferenceImplementation instance) =>
    <String, dynamic>{
      'id': instance.id,
      'Liste aller Maßnahmen': instance.listOfMeasures,
      'Datum der Anlage': instance.dateStart,
      '06 Betriebsverzeichnis': instance.businessDirectory,
      '00 Maßnahmendatenbank': instance.measures,
      'Größe in m²': instance.areaSize,
      'Beschreibung': instance.description,
      'Fotos': instance.images,
      'Gesamtkosten': instance.costsTotal,
      'Link zum Geomarker': instance.linkToGeo,
      'Status': instance.status,
      'Materialbezug ohne AmBiTo': instance.externalOrder,
      'Anzahl Elemente': instance.elementCount,
      'Bestellwert': instance.orderValue,
      'Lieferung': instance.shippingCosts,
      'Anlage': instance.constructionCosts,
      'Sträucher Kosten': instance.shrubsCosts,
      'Bäume Kosten': instance.treeCosts,
      'Sträucher Pflanzkosten': instance.shrubsPlantingCosts,
      'Bäume Pflanzkosten': instance.treePlantingCosts,
      'Anzahl Sträucher': instance.shrubsCount,
      'Anzahl Bäume': instance.treeCount,
      'Anmerkung': instance.note,
      'Bearbeitet von': instance.editedBy,
    };
