// Code generated by BobGen psql v0.42.5. DO NOT EDIT.
// This file is meant to be re-generated in place and/or deleted at any time.

package factory

import (
	"context"
	"encoding/json"
	"time"

	"github.com/Gleipnir-Technology/bob/types"
	"github.com/Gleipnir-Technology/bob/types/pgtypes"
	enums "github.com/Gleipnir-Technology/nidus-sync/db/enums"
	models "github.com/Gleipnir-Technology/nidus-sync/db/models"
	"github.com/aarondl/opt/null"
	"github.com/google/uuid"
	"github.com/lib/pq"
	"github.com/shopspring/decimal"
)

type Factory struct {
	baseAddressMods                           AddressModSlice
	baseArcgisAccountMods                     ArcgisAccountModSlice
	baseArcgisAddressMappingMods              ArcgisAddressMappingModSlice
	baseArcgisLayerMods                       ArcgisLayerModSlice
	baseArcgisLayerFieldMods                  ArcgisLayerFieldModSlice
	baseArcgisOauthTokenMods                  ArcgisOauthTokenModSlice
	baseArcgisParcelMappingMods               ArcgisParcelMappingModSlice
	baseArcgisServiceFeatureMods              ArcgisServiceFeatureModSlice
	baseArcgisServiceMapMods                  ArcgisServiceMapModSlice
	baseArcgisUserMods                        ArcgisUserModSlice
	baseArcgisUserPrivilegeMods               ArcgisUserPrivilegeModSlice
	baseCommsEmailContactMods                 CommsEmailContactModSlice
	baseCommsEmailLogMods                     CommsEmailLogModSlice
	baseCommsEmailTemplateMods                CommsEmailTemplateModSlice
	baseCommsMailerMods                       CommsMailerModSlice
	baseCommsPhoneMods                        CommsPhoneModSlice
	baseCommsTextJobMods                      CommsTextJobModSlice
	baseCommsTextLogMods                      CommsTextLogModSlice
	baseComplianceReportRequestMods           ComplianceReportRequestModSlice
	baseComplianceReportRequestMailerMods     ComplianceReportRequestMailerModSlice
	baseDistrictSubscriptionEmailMods         DistrictSubscriptionEmailModSlice
	baseDistrictSubscriptionPhoneMods         DistrictSubscriptionPhoneModSlice
	baseFieldseekerContainerrelateMods        FieldseekerContainerrelateModSlice
	baseFieldseekerFieldscoutinglogMods       FieldseekerFieldscoutinglogModSlice
	baseFieldseekerHabitatrelateMods          FieldseekerHabitatrelateModSlice
	baseFieldseekerInspectionsampleMods       FieldseekerInspectionsampleModSlice
	baseFieldseekerInspectionsampledetailMods FieldseekerInspectionsampledetailModSlice
	baseFieldseekerLinelocationMods           FieldseekerLinelocationModSlice
	baseFieldseekerLocationtrackingMods       FieldseekerLocationtrackingModSlice
	baseFieldseekerMosquitoinspectionMods     FieldseekerMosquitoinspectionModSlice
	baseFieldseekerPointlocationMods          FieldseekerPointlocationModSlice
	baseFieldseekerPolygonlocationMods        FieldseekerPolygonlocationModSlice
	baseFieldseekerPoolMods                   FieldseekerPoolModSlice
	baseFieldseekerPooldetailMods             FieldseekerPooldetailModSlice
	baseFieldseekerProposedtreatmentareaMods  FieldseekerProposedtreatmentareaModSlice
	baseFieldseekerQamosquitoinspectionMods   FieldseekerQamosquitoinspectionModSlice
	baseFieldseekerRodentlocationMods         FieldseekerRodentlocationModSlice
	baseFieldseekerSamplecollectionMods       FieldseekerSamplecollectionModSlice
	baseFieldseekerSamplelocationMods         FieldseekerSamplelocationModSlice
	baseFieldseekerServicerequestMods         FieldseekerServicerequestModSlice
	baseFieldseekerSpeciesabundanceMods       FieldseekerSpeciesabundanceModSlice
	baseFieldseekerStormdrainMods             FieldseekerStormdrainModSlice
	baseFieldseekerTimecardMods               FieldseekerTimecardModSlice
	baseFieldseekerTrapdatumMods              FieldseekerTrapdatumModSlice
	baseFieldseekerTraplocationMods           FieldseekerTraplocationModSlice
	baseFieldseekerTreatmentMods              FieldseekerTreatmentModSlice
	baseFieldseekerTreatmentareaMods          FieldseekerTreatmentareaModSlice
	baseFieldseekerZoneMods                   FieldseekerZoneModSlice
	baseFieldseekerZones2Mods                 FieldseekerZones2ModSlice
	baseFieldseekerSyncMods                   FieldseekerSyncModSlice
	baseFileuploadCSVMods                     FileuploadCSVModSlice
	baseFileuploadErrorCSVMods                FileuploadErrorCSVModSlice
	baseFileuploadErrorFileMods               FileuploadErrorFileModSlice
	baseFileuploadFileMods                    FileuploadFileModSlice
	baseFileuploadFlyoverAerialServiceMods    FileuploadFlyoverAerialServiceModSlice
	baseFileuploadPoolMods                    FileuploadPoolModSlice
	baseGeographyColumnMods                   GeographyColumnModSlice
	baseGeometryColumnMods                    GeometryColumnModSlice
	baseGooseDBVersionMods                    GooseDBVersionModSlice
	baseH3AggregationMods                     H3AggregationModSlice
	baseNoteAudioMods                         NoteAudioModSlice
	baseNoteAudioBreadcrumbMods               NoteAudioBreadcrumbModSlice
	baseNoteAudioDatumMods                    NoteAudioDatumModSlice
	baseNoteImageMods                         NoteImageModSlice
	baseNoteImageBreadcrumbMods               NoteImageBreadcrumbModSlice
	baseNoteImageDatumMods                    NoteImageDatumModSlice
	baseNotificationMods                      NotificationModSlice
	baseOrganizationMods                      OrganizationModSlice
	baseParcelMods                            ParcelModSlice
	basePoolMods                              PoolModSlice
	basePublicreportImageMods                 PublicreportImageModSlice
	basePublicreportImageExifMods             PublicreportImageExifModSlice
	basePublicreportNotifyEmailNuisanceMods   PublicreportNotifyEmailNuisanceModSlice
	basePublicreportNotifyEmailPoolMods       PublicreportNotifyEmailPoolModSlice
	basePublicreportNotifyPhoneNuisanceMods   PublicreportNotifyPhoneNuisanceModSlice
	basePublicreportNotifyPhonePoolMods       PublicreportNotifyPhonePoolModSlice
	basePublicreportNuisanceMods              PublicreportNuisanceModSlice
	basePublicreportNuisanceImageMods         PublicreportNuisanceImageModSlice
	basePublicreportPoolMods                  PublicreportPoolModSlice
	basePublicreportPoolImageMods             PublicreportPoolImageModSlice
	basePublicreportQuickMods                 PublicreportQuickModSlice
	basePublicreportQuickImageMods            PublicreportQuickImageModSlice
	basePublicreportReportLocationMods        PublicreportReportLocationModSlice
	basePublicreportSubscribeEmailMods        PublicreportSubscribeEmailModSlice
	basePublicreportSubscribePhoneMods        PublicreportSubscribePhoneModSlice
	baseRasterColumnMods                      RasterColumnModSlice
	baseRasterOverviewMods                    RasterOverviewModSlice
	baseResidentMods                          ResidentModSlice
	baseSessionMods                           SessionModSlice
	baseSiteMods                              SiteModSlice
	baseSpatialRefSyMods                      SpatialRefSyModSlice
	baseUserMods                              UserModSlice
}

func New() *Factory {
	return &Factory{}
}

func (f *Factory) NewAddress(mods ...AddressMod) *AddressTemplate {
	return f.NewAddressWithContext(context.Background(), mods...)
}

func (f *Factory) NewAddressWithContext(ctx context.Context, mods ...AddressMod) *AddressTemplate {
	o := &AddressTemplate{f: f}

	if f != nil {
		f.baseAddressMods.Apply(ctx, o)
	}

	AddressModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingAddress(m *models.Address) *AddressTemplate {
	o := &AddressTemplate{f: f, alreadyPersisted: true}

	o.Country = func() enums.Countrytype { return m.Country }
	o.Created = func() time.Time { return m.Created }
	o.Geom = func() string { return m.Geom }
	o.H3cell = func() string { return m.H3cell }
	o.ID = func() int32 { return m.ID }
	o.Locality = func() string { return m.Locality }
	o.Number = func() int32 { return m.Number }
	o.PostalCode = func() string { return m.PostalCode }
	o.Street = func() string { return m.Street }
	o.Unit = func() string { return m.Unit }

	ctx := context.Background()
	if len(m.R.Mailers) > 0 {
		AddressMods.AddExistingMailers(m.R.Mailers...).Apply(ctx, o)
	}
	if len(m.R.Residents) > 0 {
		AddressMods.AddExistingResidents(m.R.Residents...).Apply(ctx, o)
	}
	if m.R.Site != nil {
		AddressMods.WithExistingSite(m.R.Site).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewArcgisAccount(mods ...ArcgisAccountMod) *ArcgisAccountTemplate {
	return f.NewArcgisAccountWithContext(context.Background(), mods...)
}

func (f *Factory) NewArcgisAccountWithContext(ctx context.Context, mods ...ArcgisAccountMod) *ArcgisAccountTemplate {
	o := &ArcgisAccountTemplate{f: f}

	if f != nil {
		f.baseArcgisAccountMods.Apply(ctx, o)
	}

	ArcgisAccountModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingArcgisAccount(m *models.ArcgisAccount) *ArcgisAccountTemplate {
	o := &ArcgisAccountTemplate{f: f, alreadyPersisted: true}

	o.ID = func() string { return m.ID }
	o.Name = func() string { return m.Name }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.URLFeatures = func() null.Val[string] { return m.URLFeatures }
	o.URLInsights = func() null.Val[string] { return m.URLInsights }
	o.URLGeometry = func() null.Val[string] { return m.URLGeometry }
	o.URLNotebooks = func() null.Val[string] { return m.URLNotebooks }
	o.URLTiles = func() null.Val[string] { return m.URLTiles }

	ctx := context.Background()
	if m.R.Organization != nil {
		ArcgisAccountMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}
	if len(m.R.ArcgisAccountOauthTokens) > 0 {
		ArcgisAccountMods.AddExistingArcgisAccountOauthTokens(m.R.ArcgisAccountOauthTokens...).Apply(ctx, o)
	}
	if len(m.R.ServiceFeatures) > 0 {
		ArcgisAccountMods.AddExistingServiceFeatures(m.R.ServiceFeatures...).Apply(ctx, o)
	}
	if len(m.R.ServiceMaps) > 0 {
		ArcgisAccountMods.AddExistingServiceMaps(m.R.ServiceMaps...).Apply(ctx, o)
	}
	if len(m.R.ArcgisAccountOrganizations) > 0 {
		ArcgisAccountMods.AddExistingArcgisAccountOrganizations(m.R.ArcgisAccountOrganizations...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewArcgisAddressMapping(mods ...ArcgisAddressMappingMod) *ArcgisAddressMappingTemplate {
	return f.NewArcgisAddressMappingWithContext(context.Background(), mods...)
}

func (f *Factory) NewArcgisAddressMappingWithContext(ctx context.Context, mods ...ArcgisAddressMappingMod) *ArcgisAddressMappingTemplate {
	o := &ArcgisAddressMappingTemplate{f: f}

	if f != nil {
		f.baseArcgisAddressMappingMods.Apply(ctx, o)
	}

	ArcgisAddressMappingModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingArcgisAddressMapping(m *models.ArcgisAddressMapping) *ArcgisAddressMappingTemplate {
	o := &ArcgisAddressMappingTemplate{f: f, alreadyPersisted: true}

	o.Destination = func() enums.ArcgisMappingdestinationaddress { return m.Destination }
	o.LayerFeatureServiceItemID = func() string { return m.LayerFeatureServiceItemID }
	o.LayerIndex = func() int32 { return m.LayerIndex }
	o.LayerFieldName = func() string { return m.LayerFieldName }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.LayerField != nil {
		ArcgisAddressMappingMods.WithExistingLayerField(m.R.LayerField).Apply(ctx, o)
	}
	if m.R.Organization != nil {
		ArcgisAddressMappingMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewArcgisLayer(mods ...ArcgisLayerMod) *ArcgisLayerTemplate {
	return f.NewArcgisLayerWithContext(context.Background(), mods...)
}

func (f *Factory) NewArcgisLayerWithContext(ctx context.Context, mods ...ArcgisLayerMod) *ArcgisLayerTemplate {
	o := &ArcgisLayerTemplate{f: f}

	if f != nil {
		f.baseArcgisLayerMods.Apply(ctx, o)
	}

	ArcgisLayerModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingArcgisLayer(m *models.ArcgisLayer) *ArcgisLayerTemplate {
	o := &ArcgisLayerTemplate{f: f, alreadyPersisted: true}

	o.Extent = func() string { return m.Extent }
	o.FeatureServiceItemID = func() string { return m.FeatureServiceItemID }
	o.Index = func() int32 { return m.Index }

	ctx := context.Background()
	if m.R.FeatureServiceItemServiceFeature != nil {
		ArcgisLayerMods.WithExistingFeatureServiceItemServiceFeature(m.R.FeatureServiceItemServiceFeature).Apply(ctx, o)
	}
	if len(m.R.LayerFields) > 0 {
		ArcgisLayerMods.AddExistingLayerFields(m.R.LayerFields...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewArcgisLayerField(mods ...ArcgisLayerFieldMod) *ArcgisLayerFieldTemplate {
	return f.NewArcgisLayerFieldWithContext(context.Background(), mods...)
}

func (f *Factory) NewArcgisLayerFieldWithContext(ctx context.Context, mods ...ArcgisLayerFieldMod) *ArcgisLayerFieldTemplate {
	o := &ArcgisLayerFieldTemplate{f: f}

	if f != nil {
		f.baseArcgisLayerFieldMods.Apply(ctx, o)
	}

	ArcgisLayerFieldModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingArcgisLayerField(m *models.ArcgisLayerField) *ArcgisLayerFieldTemplate {
	o := &ArcgisLayerFieldTemplate{f: f, alreadyPersisted: true}

	o.LayerFeatureServiceItemID = func() string { return m.LayerFeatureServiceItemID }
	o.LayerIndex = func() int32 { return m.LayerIndex }
	o.Name = func() string { return m.Name }
	o.Type = func() enums.ArcgisFieldtype { return m.Type }

	ctx := context.Background()
	if len(m.R.AddressMappings) > 0 {
		ArcgisLayerFieldMods.AddExistingAddressMappings(m.R.AddressMappings...).Apply(ctx, o)
	}
	if m.R.Layer != nil {
		ArcgisLayerFieldMods.WithExistingLayer(m.R.Layer).Apply(ctx, o)
	}
	if len(m.R.ParcelMappings) > 0 {
		ArcgisLayerFieldMods.AddExistingParcelMappings(m.R.ParcelMappings...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewArcgisOauthToken(mods ...ArcgisOauthTokenMod) *ArcgisOauthTokenTemplate {
	return f.NewArcgisOauthTokenWithContext(context.Background(), mods...)
}

func (f *Factory) NewArcgisOauthTokenWithContext(ctx context.Context, mods ...ArcgisOauthTokenMod) *ArcgisOauthTokenTemplate {
	o := &ArcgisOauthTokenTemplate{f: f}

	if f != nil {
		f.baseArcgisOauthTokenMods.Apply(ctx, o)
	}

	ArcgisOauthTokenModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingArcgisOauthToken(m *models.ArcgisOauthToken) *ArcgisOauthTokenTemplate {
	o := &ArcgisOauthTokenTemplate{f: f, alreadyPersisted: true}

	o.AccessToken = func() string { return m.AccessToken }
	o.AccessTokenExpires = func() time.Time { return m.AccessTokenExpires }
	o.ArcgisAccountID = func() null.Val[string] { return m.ArcgisAccountID }
	o.ArcgisID = func() null.Val[string] { return m.ArcgisID }
	o.ArcgisLicenseTypeID = func() null.Val[string] { return m.ArcgisLicenseTypeID }
	o.Created = func() time.Time { return m.Created }
	o.ID = func() int32 { return m.ID }
	o.InvalidatedAt = func() null.Val[time.Time] { return m.InvalidatedAt }
	o.RefreshToken = func() string { return m.RefreshToken }
	o.RefreshTokenExpires = func() time.Time { return m.RefreshTokenExpires }
	o.UserID = func() int32 { return m.UserID }
	o.Username = func() string { return m.Username }

	ctx := context.Background()
	if m.R.ArcgisAccountAccount != nil {
		ArcgisOauthTokenMods.WithExistingArcgisAccountAccount(m.R.ArcgisAccountAccount).Apply(ctx, o)
	}
	if m.R.UserUser != nil {
		ArcgisOauthTokenMods.WithExistingUserUser(m.R.UserUser).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewArcgisParcelMapping(mods ...ArcgisParcelMappingMod) *ArcgisParcelMappingTemplate {
	return f.NewArcgisParcelMappingWithContext(context.Background(), mods...)
}

func (f *Factory) NewArcgisParcelMappingWithContext(ctx context.Context, mods ...ArcgisParcelMappingMod) *ArcgisParcelMappingTemplate {
	o := &ArcgisParcelMappingTemplate{f: f}

	if f != nil {
		f.baseArcgisParcelMappingMods.Apply(ctx, o)
	}

	ArcgisParcelMappingModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingArcgisParcelMapping(m *models.ArcgisParcelMapping) *ArcgisParcelMappingTemplate {
	o := &ArcgisParcelMappingTemplate{f: f, alreadyPersisted: true}

	o.Destination = func() enums.ArcgisMappingdestinationparcel { return m.Destination }
	o.LayerFeatureServiceItemID = func() string { return m.LayerFeatureServiceItemID }
	o.LayerIndex = func() int32 { return m.LayerIndex }
	o.LayerFieldName = func() string { return m.LayerFieldName }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.LayerField != nil {
		ArcgisParcelMappingMods.WithExistingLayerField(m.R.LayerField).Apply(ctx, o)
	}
	if m.R.Organization != nil {
		ArcgisParcelMappingMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewArcgisServiceFeature(mods ...ArcgisServiceFeatureMod) *ArcgisServiceFeatureTemplate {
	return f.NewArcgisServiceFeatureWithContext(context.Background(), mods...)
}

func (f *Factory) NewArcgisServiceFeatureWithContext(ctx context.Context, mods ...ArcgisServiceFeatureMod) *ArcgisServiceFeatureTemplate {
	o := &ArcgisServiceFeatureTemplate{f: f}

	if f != nil {
		f.baseArcgisServiceFeatureMods.Apply(ctx, o)
	}

	ArcgisServiceFeatureModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingArcgisServiceFeature(m *models.ArcgisServiceFeature) *ArcgisServiceFeatureTemplate {
	o := &ArcgisServiceFeatureTemplate{f: f, alreadyPersisted: true}

	o.Extent = func() string { return m.Extent }
	o.ItemID = func() string { return m.ItemID }
	o.SpatialReference = func() int32 { return m.SpatialReference }
	o.URL = func() string { return m.URL }
	o.AccountID = func() null.Val[string] { return m.AccountID }

	ctx := context.Background()
	if len(m.R.FeatureServiceItemLayers) > 0 {
		ArcgisServiceFeatureMods.AddExistingFeatureServiceItemLayers(m.R.FeatureServiceItemLayers...).Apply(ctx, o)
	}
	if m.R.Account != nil {
		ArcgisServiceFeatureMods.WithExistingAccount(m.R.Account).Apply(ctx, o)
	}
	if len(m.R.FieldseekerServiceFeatureItemOrganizations) > 0 {
		ArcgisServiceFeatureMods.AddExistingFieldseekerServiceFeatureItemOrganizations(m.R.FieldseekerServiceFeatureItemOrganizations...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewArcgisServiceMap(mods ...ArcgisServiceMapMod) *ArcgisServiceMapTemplate {
	return f.NewArcgisServiceMapWithContext(context.Background(), mods...)
}

func (f *Factory) NewArcgisServiceMapWithContext(ctx context.Context, mods ...ArcgisServiceMapMod) *ArcgisServiceMapTemplate {
	o := &ArcgisServiceMapTemplate{f: f}

	if f != nil {
		f.baseArcgisServiceMapMods.Apply(ctx, o)
	}

	ArcgisServiceMapModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingArcgisServiceMap(m *models.ArcgisServiceMap) *ArcgisServiceMapTemplate {
	o := &ArcgisServiceMapTemplate{f: f, alreadyPersisted: true}

	o.AccountID = func() string { return m.AccountID }
	o.ArcgisID = func() string { return m.ArcgisID }
	o.Name = func() string { return m.Name }
	o.Title = func() string { return m.Title }
	o.URL = func() string { return m.URL }

	ctx := context.Background()
	if m.R.Account != nil {
		ArcgisServiceMapMods.WithExistingAccount(m.R.Account).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewArcgisUser(mods ...ArcgisUserMod) *ArcgisUserTemplate {
	return f.NewArcgisUserWithContext(context.Background(), mods...)
}

func (f *Factory) NewArcgisUserWithContext(ctx context.Context, mods ...ArcgisUserMod) *ArcgisUserTemplate {
	o := &ArcgisUserTemplate{f: f}

	if f != nil {
		f.baseArcgisUserMods.Apply(ctx, o)
	}

	ArcgisUserModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingArcgisUser(m *models.ArcgisUser) *ArcgisUserTemplate {
	o := &ArcgisUserTemplate{f: f, alreadyPersisted: true}

	o.Access = func() string { return m.Access }
	o.Created = func() time.Time { return m.Created }
	o.Email = func() string { return m.Email }
	o.FullName = func() string { return m.FullName }
	o.ID = func() string { return m.ID }
	o.Level = func() string { return m.Level }
	o.OrgID = func() string { return m.OrgID }
	o.PublicUserID = func() int32 { return m.PublicUserID }
	o.Region = func() string { return m.Region }
	o.Role = func() string { return m.Role }
	o.RoleID = func() string { return m.RoleID }
	o.Username = func() string { return m.Username }
	o.UserLicenseTypeID = func() string { return m.UserLicenseTypeID }
	o.UserType = func() string { return m.UserType }

	ctx := context.Background()
	if m.R.PublicUserUser != nil {
		ArcgisUserMods.WithExistingPublicUserUser(m.R.PublicUserUser).Apply(ctx, o)
	}
	if len(m.R.UserUserPrivileges) > 0 {
		ArcgisUserMods.AddExistingUserUserPrivileges(m.R.UserUserPrivileges...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewArcgisUserPrivilege(mods ...ArcgisUserPrivilegeMod) *ArcgisUserPrivilegeTemplate {
	return f.NewArcgisUserPrivilegeWithContext(context.Background(), mods...)
}

func (f *Factory) NewArcgisUserPrivilegeWithContext(ctx context.Context, mods ...ArcgisUserPrivilegeMod) *ArcgisUserPrivilegeTemplate {
	o := &ArcgisUserPrivilegeTemplate{f: f}

	if f != nil {
		f.baseArcgisUserPrivilegeMods.Apply(ctx, o)
	}

	ArcgisUserPrivilegeModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingArcgisUserPrivilege(m *models.ArcgisUserPrivilege) *ArcgisUserPrivilegeTemplate {
	o := &ArcgisUserPrivilegeTemplate{f: f, alreadyPersisted: true}

	o.UserID = func() string { return m.UserID }
	o.Privilege = func() string { return m.Privilege }

	ctx := context.Background()
	if m.R.UserUser != nil {
		ArcgisUserPrivilegeMods.WithExistingUserUser(m.R.UserUser).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewCommsEmailContact(mods ...CommsEmailContactMod) *CommsEmailContactTemplate {
	return f.NewCommsEmailContactWithContext(context.Background(), mods...)
}

func (f *Factory) NewCommsEmailContactWithContext(ctx context.Context, mods ...CommsEmailContactMod) *CommsEmailContactTemplate {
	o := &CommsEmailContactTemplate{f: f}

	if f != nil {
		f.baseCommsEmailContactMods.Apply(ctx, o)
	}

	CommsEmailContactModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingCommsEmailContact(m *models.CommsEmailContact) *CommsEmailContactTemplate {
	o := &CommsEmailContactTemplate{f: f, alreadyPersisted: true}

	o.Address = func() string { return m.Address }
	o.Confirmed = func() bool { return m.Confirmed }
	o.IsSubscribed = func() bool { return m.IsSubscribed }
	o.PublicID = func() string { return m.PublicID }

	ctx := context.Background()
	if len(m.R.DestinationEmailLogs) > 0 {
		CommsEmailContactMods.AddExistingDestinationEmailLogs(m.R.DestinationEmailLogs...).Apply(ctx, o)
	}
	if len(m.R.Organizations) > 0 {
		CommsEmailContactMods.AddExistingOrganizations(m.R.Organizations...).Apply(ctx, o)
	}
	if len(m.R.EmailAddressNotifyEmailNuisances) > 0 {
		CommsEmailContactMods.AddExistingEmailAddressNotifyEmailNuisances(m.R.EmailAddressNotifyEmailNuisances...).Apply(ctx, o)
	}
	if len(m.R.EmailAddressNotifyEmailPools) > 0 {
		CommsEmailContactMods.AddExistingEmailAddressNotifyEmailPools(m.R.EmailAddressNotifyEmailPools...).Apply(ctx, o)
	}
	if len(m.R.EmailAddressSubscribeEmails) > 0 {
		CommsEmailContactMods.AddExistingEmailAddressSubscribeEmails(m.R.EmailAddressSubscribeEmails...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewCommsEmailLog(mods ...CommsEmailLogMod) *CommsEmailLogTemplate {
	return f.NewCommsEmailLogWithContext(context.Background(), mods...)
}

func (f *Factory) NewCommsEmailLogWithContext(ctx context.Context, mods ...CommsEmailLogMod) *CommsEmailLogTemplate {
	o := &CommsEmailLogTemplate{f: f}

	if f != nil {
		f.baseCommsEmailLogMods.Apply(ctx, o)
	}

	CommsEmailLogModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingCommsEmailLog(m *models.CommsEmailLog) *CommsEmailLogTemplate {
	o := &CommsEmailLogTemplate{f: f, alreadyPersisted: true}

	o.ID = func() int32 { return m.ID }
	o.Created = func() time.Time { return m.Created }
	o.DeliveryStatus = func() string { return m.DeliveryStatus }
	o.Destination = func() string { return m.Destination }
	o.PublicID = func() string { return m.PublicID }
	o.SentAt = func() null.Val[time.Time] { return m.SentAt }
	o.Source = func() string { return m.Source }
	o.Subject = func() string { return m.Subject }
	o.TemplateID = func() int32 { return m.TemplateID }
	o.TemplateData = func() pgtypes.HStore { return m.TemplateData }
	o.Type = func() enums.CommsMessagetypeemail { return m.Type }

	ctx := context.Background()
	if m.R.DestinationEmailContact != nil {
		CommsEmailLogMods.WithExistingDestinationEmailContact(m.R.DestinationEmailContact).Apply(ctx, o)
	}
	if m.R.TemplateEmailTemplate != nil {
		CommsEmailLogMods.WithExistingTemplateEmailTemplate(m.R.TemplateEmailTemplate).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewCommsEmailTemplate(mods ...CommsEmailTemplateMod) *CommsEmailTemplateTemplate {
	return f.NewCommsEmailTemplateWithContext(context.Background(), mods...)
}

func (f *Factory) NewCommsEmailTemplateWithContext(ctx context.Context, mods ...CommsEmailTemplateMod) *CommsEmailTemplateTemplate {
	o := &CommsEmailTemplateTemplate{f: f}

	if f != nil {
		f.baseCommsEmailTemplateMods.Apply(ctx, o)
	}

	CommsEmailTemplateModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingCommsEmailTemplate(m *models.CommsEmailTemplate) *CommsEmailTemplateTemplate {
	o := &CommsEmailTemplateTemplate{f: f, alreadyPersisted: true}

	o.ContentHTML = func() string { return m.ContentHTML }
	o.ContentTXT = func() string { return m.ContentTXT }
	o.ContentHashHTML = func() string { return m.ContentHashHTML }
	o.ContentHashTXT = func() string { return m.ContentHashTXT }
	o.Created = func() time.Time { return m.Created }
	o.ID = func() int32 { return m.ID }
	o.Superceded = func() null.Val[time.Time] { return m.Superceded }
	o.MessageType = func() enums.CommsMessagetypeemail { return m.MessageType }

	ctx := context.Background()
	if len(m.R.TemplateEmailLogs) > 0 {
		CommsEmailTemplateMods.AddExistingTemplateEmailLogs(m.R.TemplateEmailLogs...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewCommsMailer(mods ...CommsMailerMod) *CommsMailerTemplate {
	return f.NewCommsMailerWithContext(context.Background(), mods...)
}

func (f *Factory) NewCommsMailerWithContext(ctx context.Context, mods ...CommsMailerMod) *CommsMailerTemplate {
	o := &CommsMailerTemplate{f: f}

	if f != nil {
		f.baseCommsMailerMods.Apply(ctx, o)
	}

	CommsMailerModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingCommsMailer(m *models.CommsMailer) *CommsMailerTemplate {
	o := &CommsMailerTemplate{f: f, alreadyPersisted: true}

	o.AddressID = func() int32 { return m.AddressID }
	o.Created = func() time.Time { return m.Created }
	o.ID = func() int32 { return m.ID }
	o.Recipient = func() string { return m.Recipient }
	o.UUID = func() uuid.UUID { return m.UUID }

	ctx := context.Background()
	if m.R.Address != nil {
		CommsMailerMods.WithExistingAddress(m.R.Address).Apply(ctx, o)
	}
	if len(m.R.ComplianceReportRequests) > 0 {
		CommsMailerMods.AddExistingComplianceReportRequests(m.R.ComplianceReportRequests...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewCommsPhone(mods ...CommsPhoneMod) *CommsPhoneTemplate {
	return f.NewCommsPhoneWithContext(context.Background(), mods...)
}

func (f *Factory) NewCommsPhoneWithContext(ctx context.Context, mods ...CommsPhoneMod) *CommsPhoneTemplate {
	o := &CommsPhoneTemplate{f: f}

	if f != nil {
		f.baseCommsPhoneMods.Apply(ctx, o)
	}

	CommsPhoneModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingCommsPhone(m *models.CommsPhone) *CommsPhoneTemplate {
	o := &CommsPhoneTemplate{f: f, alreadyPersisted: true}

	o.E164 = func() string { return m.E164 }
	o.IsSubscribed = func() bool { return m.IsSubscribed }
	o.Status = func() enums.CommsPhonestatustype { return m.Status }

	ctx := context.Background()
	if len(m.R.DestinationTextJobs) > 0 {
		CommsPhoneMods.AddExistingDestinationTextJobs(m.R.DestinationTextJobs...).Apply(ctx, o)
	}
	if len(m.R.DestinationTextLogs) > 0 {
		CommsPhoneMods.AddExistingDestinationTextLogs(m.R.DestinationTextLogs...).Apply(ctx, o)
	}
	if len(m.R.SourceTextLogs) > 0 {
		CommsPhoneMods.AddExistingSourceTextLogs(m.R.SourceTextLogs...).Apply(ctx, o)
	}
	if len(m.R.Organizations) > 0 {
		CommsPhoneMods.AddExistingOrganizations(m.R.Organizations...).Apply(ctx, o)
	}
	if len(m.R.PropertyOwnerPhoneE164Pools) > 0 {
		CommsPhoneMods.AddExistingPropertyOwnerPhoneE164Pools(m.R.PropertyOwnerPhoneE164Pools...).Apply(ctx, o)
	}
	if len(m.R.ResidentPhoneE164Pools) > 0 {
		CommsPhoneMods.AddExistingResidentPhoneE164Pools(m.R.ResidentPhoneE164Pools...).Apply(ctx, o)
	}
	if len(m.R.PhoneE164NotifyPhoneNuisances) > 0 {
		CommsPhoneMods.AddExistingPhoneE164NotifyPhoneNuisances(m.R.PhoneE164NotifyPhoneNuisances...).Apply(ctx, o)
	}
	if len(m.R.PhoneE164NotifyPhonePools) > 0 {
		CommsPhoneMods.AddExistingPhoneE164NotifyPhonePools(m.R.PhoneE164NotifyPhonePools...).Apply(ctx, o)
	}
	if len(m.R.PhoneE164SubscribePhones) > 0 {
		CommsPhoneMods.AddExistingPhoneE164SubscribePhones(m.R.PhoneE164SubscribePhones...).Apply(ctx, o)
	}
	if len(m.R.PhoneMobileResidents) > 0 {
		CommsPhoneMods.AddExistingPhoneMobileResidents(m.R.PhoneMobileResidents...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewCommsTextJob(mods ...CommsTextJobMod) *CommsTextJobTemplate {
	return f.NewCommsTextJobWithContext(context.Background(), mods...)
}

func (f *Factory) NewCommsTextJobWithContext(ctx context.Context, mods ...CommsTextJobMod) *CommsTextJobTemplate {
	o := &CommsTextJobTemplate{f: f}

	if f != nil {
		f.baseCommsTextJobMods.Apply(ctx, o)
	}

	CommsTextJobModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingCommsTextJob(m *models.CommsTextJob) *CommsTextJobTemplate {
	o := &CommsTextJobTemplate{f: f, alreadyPersisted: true}

	o.Content = func() string { return m.Content }
	o.Created = func() time.Time { return m.Created }
	o.Destination = func() string { return m.Destination }
	o.ID = func() int32 { return m.ID }
	o.Type = func() enums.CommsTextjobtype { return m.Type }
	o.Source = func() enums.CommsTextjobsource { return m.Source }
	o.Completed = func() null.Val[time.Time] { return m.Completed }

	ctx := context.Background()
	if m.R.DestinationPhone != nil {
		CommsTextJobMods.WithExistingDestinationPhone(m.R.DestinationPhone).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewCommsTextLog(mods ...CommsTextLogMod) *CommsTextLogTemplate {
	return f.NewCommsTextLogWithContext(context.Background(), mods...)
}

func (f *Factory) NewCommsTextLogWithContext(ctx context.Context, mods ...CommsTextLogMod) *CommsTextLogTemplate {
	o := &CommsTextLogTemplate{f: f}

	if f != nil {
		f.baseCommsTextLogMods.Apply(ctx, o)
	}

	CommsTextLogModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingCommsTextLog(m *models.CommsTextLog) *CommsTextLogTemplate {
	o := &CommsTextLogTemplate{f: f, alreadyPersisted: true}

	o.Content = func() string { return m.Content }
	o.Created = func() time.Time { return m.Created }
	o.Destination = func() string { return m.Destination }
	o.ID = func() int32 { return m.ID }
	o.IsWelcome = func() bool { return m.IsWelcome }
	o.Origin = func() enums.CommsTextorigin { return m.Origin }
	o.Source = func() string { return m.Source }
	o.TwilioSid = func() null.Val[string] { return m.TwilioSid }
	o.TwilioStatus = func() string { return m.TwilioStatus }
	o.IsVisibleToLLM = func() bool { return m.IsVisibleToLLM }

	ctx := context.Background()
	if m.R.DestinationPhone != nil {
		CommsTextLogMods.WithExistingDestinationPhone(m.R.DestinationPhone).Apply(ctx, o)
	}
	if m.R.SourcePhone != nil {
		CommsTextLogMods.WithExistingSourcePhone(m.R.SourcePhone).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewComplianceReportRequest(mods ...ComplianceReportRequestMod) *ComplianceReportRequestTemplate {
	return f.NewComplianceReportRequestWithContext(context.Background(), mods...)
}

func (f *Factory) NewComplianceReportRequestWithContext(ctx context.Context, mods ...ComplianceReportRequestMod) *ComplianceReportRequestTemplate {
	o := &ComplianceReportRequestTemplate{f: f}

	if f != nil {
		f.baseComplianceReportRequestMods.Apply(ctx, o)
	}

	ComplianceReportRequestModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingComplianceReportRequest(m *models.ComplianceReportRequest) *ComplianceReportRequestTemplate {
	o := &ComplianceReportRequestTemplate{f: f, alreadyPersisted: true}

	o.Created = func() time.Time { return m.Created }
	o.Creator = func() int32 { return m.Creator }
	o.ID = func() int32 { return m.ID }
	o.PublicID = func() string { return m.PublicID }
	o.SiteID = func() int32 { return m.SiteID }
	o.SiteVersion = func() int32 { return m.SiteVersion }

	ctx := context.Background()
	if m.R.CreatorUser != nil {
		ComplianceReportRequestMods.WithExistingCreatorUser(m.R.CreatorUser).Apply(ctx, o)
	}
	if m.R.Site != nil {
		ComplianceReportRequestMods.WithExistingSite(m.R.Site).Apply(ctx, o)
	}
	if len(m.R.Mailers) > 0 {
		ComplianceReportRequestMods.AddExistingMailers(m.R.Mailers...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewComplianceReportRequestMailer(mods ...ComplianceReportRequestMailerMod) *ComplianceReportRequestMailerTemplate {
	return f.NewComplianceReportRequestMailerWithContext(context.Background(), mods...)
}

func (f *Factory) NewComplianceReportRequestMailerWithContext(ctx context.Context, mods ...ComplianceReportRequestMailerMod) *ComplianceReportRequestMailerTemplate {
	o := &ComplianceReportRequestMailerTemplate{f: f}

	if f != nil {
		f.baseComplianceReportRequestMailerMods.Apply(ctx, o)
	}

	ComplianceReportRequestMailerModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingComplianceReportRequestMailer(m *models.ComplianceReportRequestMailer) *ComplianceReportRequestMailerTemplate {
	o := &ComplianceReportRequestMailerTemplate{f: f, alreadyPersisted: true}

	o.ComplianceReportRequestID = func() int32 { return m.ComplianceReportRequestID }
	o.MailerID = func() int32 { return m.MailerID }

	ctx := context.Background()
	if m.R.ComplianceReportRequest != nil {
		ComplianceReportRequestMailerMods.WithExistingComplianceReportRequest(m.R.ComplianceReportRequest).Apply(ctx, o)
	}
	if m.R.Mailer != nil {
		ComplianceReportRequestMailerMods.WithExistingMailer(m.R.Mailer).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewDistrictSubscriptionEmail(mods ...DistrictSubscriptionEmailMod) *DistrictSubscriptionEmailTemplate {
	return f.NewDistrictSubscriptionEmailWithContext(context.Background(), mods...)
}

func (f *Factory) NewDistrictSubscriptionEmailWithContext(ctx context.Context, mods ...DistrictSubscriptionEmailMod) *DistrictSubscriptionEmailTemplate {
	o := &DistrictSubscriptionEmailTemplate{f: f}

	if f != nil {
		f.baseDistrictSubscriptionEmailMods.Apply(ctx, o)
	}

	DistrictSubscriptionEmailModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingDistrictSubscriptionEmail(m *models.DistrictSubscriptionEmail) *DistrictSubscriptionEmailTemplate {
	o := &DistrictSubscriptionEmailTemplate{f: f, alreadyPersisted: true}

	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.EmailContactAddress = func() string { return m.EmailContactAddress }

	ctx := context.Background()
	if m.R.EmailContactAddressEmailContact != nil {
		DistrictSubscriptionEmailMods.WithExistingEmailContactAddressEmailContact(m.R.EmailContactAddressEmailContact).Apply(ctx, o)
	}
	if m.R.Organization != nil {
		DistrictSubscriptionEmailMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewDistrictSubscriptionPhone(mods ...DistrictSubscriptionPhoneMod) *DistrictSubscriptionPhoneTemplate {
	return f.NewDistrictSubscriptionPhoneWithContext(context.Background(), mods...)
}

func (f *Factory) NewDistrictSubscriptionPhoneWithContext(ctx context.Context, mods ...DistrictSubscriptionPhoneMod) *DistrictSubscriptionPhoneTemplate {
	o := &DistrictSubscriptionPhoneTemplate{f: f}

	if f != nil {
		f.baseDistrictSubscriptionPhoneMods.Apply(ctx, o)
	}

	DistrictSubscriptionPhoneModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingDistrictSubscriptionPhone(m *models.DistrictSubscriptionPhone) *DistrictSubscriptionPhoneTemplate {
	o := &DistrictSubscriptionPhoneTemplate{f: f, alreadyPersisted: true}

	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.PhoneE164 = func() string { return m.PhoneE164 }

	ctx := context.Background()
	if m.R.Organization != nil {
		DistrictSubscriptionPhoneMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}
	if m.R.PhoneE164Phone != nil {
		DistrictSubscriptionPhoneMods.WithExistingPhoneE164Phone(m.R.PhoneE164Phone).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerContainerrelate(mods ...FieldseekerContainerrelateMod) *FieldseekerContainerrelateTemplate {
	return f.NewFieldseekerContainerrelateWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerContainerrelateWithContext(ctx context.Context, mods ...FieldseekerContainerrelateMod) *FieldseekerContainerrelateTemplate {
	o := &FieldseekerContainerrelateTemplate{f: f}

	if f != nil {
		f.baseFieldseekerContainerrelateMods.Apply(ctx, o)
	}

	FieldseekerContainerrelateModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerContainerrelate(m *models.FieldseekerContainerrelate) *FieldseekerContainerrelateTemplate {
	o := &FieldseekerContainerrelateTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Inspsampleid = func() null.Val[uuid.UUID] { return m.Inspsampleid }
	o.Mosquitoinspid = func() null.Val[uuid.UUID] { return m.Mosquitoinspid }
	o.Treatmentid = func() null.Val[uuid.UUID] { return m.Treatmentid }
	o.Containertype = func() null.Val[string] { return m.Containertype }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerContainerrelateMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerFieldscoutinglog(mods ...FieldseekerFieldscoutinglogMod) *FieldseekerFieldscoutinglogTemplate {
	return f.NewFieldseekerFieldscoutinglogWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerFieldscoutinglogWithContext(ctx context.Context, mods ...FieldseekerFieldscoutinglogMod) *FieldseekerFieldscoutinglogTemplate {
	o := &FieldseekerFieldscoutinglogTemplate{f: f}

	if f != nil {
		f.baseFieldseekerFieldscoutinglogMods.Apply(ctx, o)
	}

	FieldseekerFieldscoutinglogModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerFieldscoutinglog(m *models.FieldseekerFieldscoutinglog) *FieldseekerFieldscoutinglogTemplate {
	o := &FieldseekerFieldscoutinglogTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Status = func() null.Val[int16] { return m.Status }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerFieldscoutinglogMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerHabitatrelate(mods ...FieldseekerHabitatrelateMod) *FieldseekerHabitatrelateTemplate {
	return f.NewFieldseekerHabitatrelateWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerHabitatrelateWithContext(ctx context.Context, mods ...FieldseekerHabitatrelateMod) *FieldseekerHabitatrelateTemplate {
	o := &FieldseekerHabitatrelateTemplate{f: f}

	if f != nil {
		f.baseFieldseekerHabitatrelateMods.Apply(ctx, o)
	}

	FieldseekerHabitatrelateModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerHabitatrelate(m *models.FieldseekerHabitatrelate) *FieldseekerHabitatrelateTemplate {
	o := &FieldseekerHabitatrelateTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.ForeignID = func() null.Val[uuid.UUID] { return m.ForeignID }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Habitattype = func() null.Val[string] { return m.Habitattype }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerHabitatrelateMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerInspectionsample(mods ...FieldseekerInspectionsampleMod) *FieldseekerInspectionsampleTemplate {
	return f.NewFieldseekerInspectionsampleWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerInspectionsampleWithContext(ctx context.Context, mods ...FieldseekerInspectionsampleMod) *FieldseekerInspectionsampleTemplate {
	o := &FieldseekerInspectionsampleTemplate{f: f}

	if f != nil {
		f.baseFieldseekerInspectionsampleMods.Apply(ctx, o)
	}

	FieldseekerInspectionsampleModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerInspectionsample(m *models.FieldseekerInspectionsample) *FieldseekerInspectionsampleTemplate {
	o := &FieldseekerInspectionsampleTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.InspID = func() null.Val[uuid.UUID] { return m.InspID }
	o.Sampleid = func() null.Val[string] { return m.Sampleid }
	o.Processed = func() null.Val[int16] { return m.Processed }
	o.Idbytech = func() null.Val[string] { return m.Idbytech }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerInspectionsampleMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerInspectionsampledetail(mods ...FieldseekerInspectionsampledetailMod) *FieldseekerInspectionsampledetailTemplate {
	return f.NewFieldseekerInspectionsampledetailWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerInspectionsampledetailWithContext(ctx context.Context, mods ...FieldseekerInspectionsampledetailMod) *FieldseekerInspectionsampledetailTemplate {
	o := &FieldseekerInspectionsampledetailTemplate{f: f}

	if f != nil {
		f.baseFieldseekerInspectionsampledetailMods.Apply(ctx, o)
	}

	FieldseekerInspectionsampledetailModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerInspectionsampledetail(m *models.FieldseekerInspectionsampledetail) *FieldseekerInspectionsampledetailTemplate {
	o := &FieldseekerInspectionsampledetailTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.InspsampleID = func() null.Val[uuid.UUID] { return m.InspsampleID }
	o.Fieldspecies = func() null.Val[string] { return m.Fieldspecies }
	o.Flarvcount = func() null.Val[int16] { return m.Flarvcount }
	o.Fpupcount = func() null.Val[int16] { return m.Fpupcount }
	o.Feggcount = func() null.Val[int16] { return m.Feggcount }
	o.Flstages = func() null.Val[string] { return m.Flstages }
	o.Fdomstage = func() null.Val[string] { return m.Fdomstage }
	o.Fadultact = func() null.Val[string] { return m.Fadultact }
	o.Labspecies = func() null.Val[string] { return m.Labspecies }
	o.Llarvcount = func() null.Val[int16] { return m.Llarvcount }
	o.Lpupcount = func() null.Val[int16] { return m.Lpupcount }
	o.Leggcount = func() null.Val[int16] { return m.Leggcount }
	o.Ldomstage = func() null.Val[string] { return m.Ldomstage }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Processed = func() null.Val[int16] { return m.Processed }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerInspectionsampledetailMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerLinelocation(mods ...FieldseekerLinelocationMod) *FieldseekerLinelocationTemplate {
	return f.NewFieldseekerLinelocationWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerLinelocationWithContext(ctx context.Context, mods ...FieldseekerLinelocationMod) *FieldseekerLinelocationTemplate {
	o := &FieldseekerLinelocationTemplate{f: f}

	if f != nil {
		f.baseFieldseekerLinelocationMods.Apply(ctx, o)
	}

	FieldseekerLinelocationModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerLinelocation(m *models.FieldseekerLinelocation) *FieldseekerLinelocationTemplate {
	o := &FieldseekerLinelocationTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Name = func() null.Val[string] { return m.Name }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Habitat = func() null.Val[string] { return m.Habitat }
	o.Priority = func() null.Val[string] { return m.Priority }
	o.Usetype = func() null.Val[string] { return m.Usetype }
	o.Active = func() null.Val[int16] { return m.Active }
	o.Description = func() null.Val[string] { return m.Description }
	o.Accessdesc = func() null.Val[string] { return m.Accessdesc }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Symbology = func() null.Val[string] { return m.Symbology }
	o.Externalid = func() null.Val[string] { return m.Externalid }
	o.Acres = func() null.Val[float64] { return m.Acres }
	o.Nextactiondatescheduled = func() null.Val[time.Time] { return m.Nextactiondatescheduled }
	o.Larvinspectinterval = func() null.Val[int16] { return m.Larvinspectinterval }
	o.LengthFT = func() null.Val[float64] { return m.LengthFT }
	o.WidthFT = func() null.Val[float64] { return m.WidthFT }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Locationnumber = func() null.Val[int32] { return m.Locationnumber }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Lastinspectdate = func() null.Val[time.Time] { return m.Lastinspectdate }
	o.Lastinspectbreeding = func() null.Val[string] { return m.Lastinspectbreeding }
	o.Lastinspectavglarvae = func() null.Val[float64] { return m.Lastinspectavglarvae }
	o.Lastinspectavgpupae = func() null.Val[float64] { return m.Lastinspectavgpupae }
	o.Lastinspectlstages = func() null.Val[string] { return m.Lastinspectlstages }
	o.Lastinspectactiontaken = func() null.Val[string] { return m.Lastinspectactiontaken }
	o.Lastinspectfieldspecies = func() null.Val[string] { return m.Lastinspectfieldspecies }
	o.Lasttreatdate = func() null.Val[time.Time] { return m.Lasttreatdate }
	o.Lasttreatproduct = func() null.Val[string] { return m.Lasttreatproduct }
	o.Lasttreatqty = func() null.Val[float64] { return m.Lasttreatqty }
	o.Lasttreatqtyunit = func() null.Val[string] { return m.Lasttreatqtyunit }
	o.Hectares = func() null.Val[float64] { return m.Hectares }
	o.Lastinspectactivity = func() null.Val[string] { return m.Lastinspectactivity }
	o.Lasttreatactivity = func() null.Val[string] { return m.Lasttreatactivity }
	o.LengthMeters = func() null.Val[float64] { return m.LengthMeters }
	o.WidthMeters = func() null.Val[float64] { return m.WidthMeters }
	o.Lastinspectconditions = func() null.Val[string] { return m.Lastinspectconditions }
	o.Waterorigin = func() null.Val[string] { return m.Waterorigin }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Jurisdiction = func() null.Val[string] { return m.Jurisdiction }
	o.ShapeLength = func() null.Val[float64] { return m.ShapeLength }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerLinelocationMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerLocationtracking(mods ...FieldseekerLocationtrackingMod) *FieldseekerLocationtrackingTemplate {
	return f.NewFieldseekerLocationtrackingWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerLocationtrackingWithContext(ctx context.Context, mods ...FieldseekerLocationtrackingMod) *FieldseekerLocationtrackingTemplate {
	o := &FieldseekerLocationtrackingTemplate{f: f}

	if f != nil {
		f.baseFieldseekerLocationtrackingMods.Apply(ctx, o)
	}

	FieldseekerLocationtrackingModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerLocationtracking(m *models.FieldseekerLocationtracking) *FieldseekerLocationtrackingTemplate {
	o := &FieldseekerLocationtrackingTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Accuracy = func() null.Val[float64] { return m.Accuracy }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.Fieldtech = func() null.Val[string] { return m.Fieldtech }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerLocationtrackingMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerMosquitoinspection(mods ...FieldseekerMosquitoinspectionMod) *FieldseekerMosquitoinspectionTemplate {
	return f.NewFieldseekerMosquitoinspectionWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerMosquitoinspectionWithContext(ctx context.Context, mods ...FieldseekerMosquitoinspectionMod) *FieldseekerMosquitoinspectionTemplate {
	o := &FieldseekerMosquitoinspectionTemplate{f: f}

	if f != nil {
		f.baseFieldseekerMosquitoinspectionMods.Apply(ctx, o)
	}

	FieldseekerMosquitoinspectionModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerMosquitoinspection(m *models.FieldseekerMosquitoinspection) *FieldseekerMosquitoinspectionTemplate {
	o := &FieldseekerMosquitoinspectionTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Numdips = func() null.Val[int16] { return m.Numdips }
	o.Activity = func() null.Val[string] { return m.Activity }
	o.Breeding = func() null.Val[string] { return m.Breeding }
	o.Totlarvae = func() null.Val[int16] { return m.Totlarvae }
	o.Totpupae = func() null.Val[int16] { return m.Totpupae }
	o.Eggs = func() null.Val[int16] { return m.Eggs }
	o.Posdips = func() null.Val[int16] { return m.Posdips }
	o.Adultact = func() null.Val[string] { return m.Adultact }
	o.Lstages = func() null.Val[string] { return m.Lstages }
	o.Domstage = func() null.Val[string] { return m.Domstage }
	o.Actiontaken = func() null.Val[string] { return m.Actiontaken }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Avetemp = func() null.Val[float64] { return m.Avetemp }
	o.Windspeed = func() null.Val[float64] { return m.Windspeed }
	o.Raingauge = func() null.Val[float64] { return m.Raingauge }
	o.Startdatetime = func() null.Val[time.Time] { return m.Startdatetime }
	o.Enddatetime = func() null.Val[time.Time] { return m.Enddatetime }
	o.Winddir = func() null.Val[string] { return m.Winddir }
	o.Avglarvae = func() null.Val[float64] { return m.Avglarvae }
	o.Avgpupae = func() null.Val[float64] { return m.Avgpupae }
	o.Reviewed = func() null.Val[int16] { return m.Reviewed }
	o.Reviewedby = func() null.Val[string] { return m.Reviewedby }
	o.Revieweddate = func() null.Val[time.Time] { return m.Revieweddate }
	o.Locationname = func() null.Val[string] { return m.Locationname }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Recordstatus = func() null.Val[int16] { return m.Recordstatus }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Personalcontact = func() null.Val[int16] { return m.Personalcontact }
	o.Tirecount = func() null.Val[int16] { return m.Tirecount }
	o.Cbcount = func() null.Val[int16] { return m.Cbcount }
	o.Containercount = func() null.Val[int16] { return m.Containercount }
	o.Fieldspecies = func() null.Val[string] { return m.Fieldspecies }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Linelocid = func() null.Val[uuid.UUID] { return m.Linelocid }
	o.Pointlocid = func() null.Val[uuid.UUID] { return m.Pointlocid }
	o.Polygonlocid = func() null.Val[uuid.UUID] { return m.Polygonlocid }
	o.Srid = func() null.Val[uuid.UUID] { return m.Srid }
	o.Fieldtech = func() null.Val[string] { return m.Fieldtech }
	o.Larvaepresent = func() null.Val[int16] { return m.Larvaepresent }
	o.Pupaepresent = func() null.Val[int16] { return m.Pupaepresent }
	o.Sdid = func() null.Val[uuid.UUID] { return m.Sdid }
	o.Sitecond = func() null.Val[string] { return m.Sitecond }
	o.Positivecontainercount = func() null.Val[int16] { return m.Positivecontainercount }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Jurisdiction = func() null.Val[string] { return m.Jurisdiction }
	o.Visualmonitoring = func() null.Val[int16] { return m.Visualmonitoring }
	o.Vmcomments = func() null.Val[string] { return m.Vmcomments }
	o.Adminaction = func() null.Val[string] { return m.Adminaction }
	o.Ptaid = func() null.Val[uuid.UUID] { return m.Ptaid }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerMosquitoinspectionMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerPointlocation(mods ...FieldseekerPointlocationMod) *FieldseekerPointlocationTemplate {
	return f.NewFieldseekerPointlocationWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerPointlocationWithContext(ctx context.Context, mods ...FieldseekerPointlocationMod) *FieldseekerPointlocationTemplate {
	o := &FieldseekerPointlocationTemplate{f: f}

	if f != nil {
		f.baseFieldseekerPointlocationMods.Apply(ctx, o)
	}

	FieldseekerPointlocationModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerPointlocation(m *models.FieldseekerPointlocation) *FieldseekerPointlocationTemplate {
	o := &FieldseekerPointlocationTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Name = func() null.Val[string] { return m.Name }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Habitat = func() null.Val[string] { return m.Habitat }
	o.Priority = func() null.Val[string] { return m.Priority }
	o.Usetype = func() null.Val[string] { return m.Usetype }
	o.Active = func() null.Val[int16] { return m.Active }
	o.Description = func() null.Val[string] { return m.Description }
	o.Accessdesc = func() null.Val[string] { return m.Accessdesc }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Symbology = func() null.Val[string] { return m.Symbology }
	o.Externalid = func() null.Val[string] { return m.Externalid }
	o.Nextactiondatescheduled = func() null.Val[time.Time] { return m.Nextactiondatescheduled }
	o.Larvinspectinterval = func() null.Val[int16] { return m.Larvinspectinterval }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Locationnumber = func() null.Val[int32] { return m.Locationnumber }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.Stype = func() null.Val[string] { return m.Stype }
	o.Lastinspectdate = func() null.Val[time.Time] { return m.Lastinspectdate }
	o.Lastinspectbreeding = func() null.Val[string] { return m.Lastinspectbreeding }
	o.Lastinspectavglarvae = func() null.Val[float64] { return m.Lastinspectavglarvae }
	o.Lastinspectavgpupae = func() null.Val[float64] { return m.Lastinspectavgpupae }
	o.Lastinspectlstages = func() null.Val[string] { return m.Lastinspectlstages }
	o.Lastinspectactiontaken = func() null.Val[string] { return m.Lastinspectactiontaken }
	o.Lastinspectfieldspecies = func() null.Val[string] { return m.Lastinspectfieldspecies }
	o.Lasttreatdate = func() null.Val[time.Time] { return m.Lasttreatdate }
	o.Lasttreatproduct = func() null.Val[string] { return m.Lasttreatproduct }
	o.Lasttreatqty = func() null.Val[float64] { return m.Lasttreatqty }
	o.Lasttreatqtyunit = func() null.Val[string] { return m.Lasttreatqtyunit }
	o.Lastinspectactivity = func() null.Val[string] { return m.Lastinspectactivity }
	o.Lasttreatactivity = func() null.Val[string] { return m.Lasttreatactivity }
	o.Lastinspectconditions = func() null.Val[string] { return m.Lastinspectconditions }
	o.Waterorigin = func() null.Val[string] { return m.Waterorigin }
	o.X = func() null.Val[float64] { return m.X }
	o.Y = func() null.Val[float64] { return m.Y }
	o.Assignedtech = func() null.Val[string] { return m.Assignedtech }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Jurisdiction = func() null.Val[string] { return m.Jurisdiction }
	o.DeactivateReason = func() null.Val[string] { return m.DeactivateReason }
	o.Scalarpriority = func() null.Val[int32] { return m.Scalarpriority }
	o.Sourcestatus = func() null.Val[string] { return m.Sourcestatus }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.H3cell = func() null.Val[string] { return m.H3cell }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerPointlocationMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerPolygonlocation(mods ...FieldseekerPolygonlocationMod) *FieldseekerPolygonlocationTemplate {
	return f.NewFieldseekerPolygonlocationWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerPolygonlocationWithContext(ctx context.Context, mods ...FieldseekerPolygonlocationMod) *FieldseekerPolygonlocationTemplate {
	o := &FieldseekerPolygonlocationTemplate{f: f}

	if f != nil {
		f.baseFieldseekerPolygonlocationMods.Apply(ctx, o)
	}

	FieldseekerPolygonlocationModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerPolygonlocation(m *models.FieldseekerPolygonlocation) *FieldseekerPolygonlocationTemplate {
	o := &FieldseekerPolygonlocationTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Name = func() null.Val[string] { return m.Name }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Habitat = func() null.Val[string] { return m.Habitat }
	o.Priority = func() null.Val[string] { return m.Priority }
	o.Usetype = func() null.Val[string] { return m.Usetype }
	o.Active = func() null.Val[int16] { return m.Active }
	o.Description = func() null.Val[string] { return m.Description }
	o.Accessdesc = func() null.Val[string] { return m.Accessdesc }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Symbology = func() null.Val[string] { return m.Symbology }
	o.Externalid = func() null.Val[string] { return m.Externalid }
	o.Acres = func() null.Val[float64] { return m.Acres }
	o.Nextactiondatescheduled = func() null.Val[time.Time] { return m.Nextactiondatescheduled }
	o.Larvinspectinterval = func() null.Val[int16] { return m.Larvinspectinterval }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Locationnumber = func() null.Val[int32] { return m.Locationnumber }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.Lastinspectdate = func() null.Val[time.Time] { return m.Lastinspectdate }
	o.Lastinspectbreeding = func() null.Val[string] { return m.Lastinspectbreeding }
	o.Lastinspectavglarvae = func() null.Val[float64] { return m.Lastinspectavglarvae }
	o.Lastinspectavgpupae = func() null.Val[float64] { return m.Lastinspectavgpupae }
	o.Lastinspectlstages = func() null.Val[string] { return m.Lastinspectlstages }
	o.Lastinspectactiontaken = func() null.Val[string] { return m.Lastinspectactiontaken }
	o.Lastinspectfieldspecies = func() null.Val[string] { return m.Lastinspectfieldspecies }
	o.Lasttreatdate = func() null.Val[time.Time] { return m.Lasttreatdate }
	o.Lasttreatproduct = func() null.Val[string] { return m.Lasttreatproduct }
	o.Lasttreatqty = func() null.Val[float64] { return m.Lasttreatqty }
	o.Lasttreatqtyunit = func() null.Val[string] { return m.Lasttreatqtyunit }
	o.Hectares = func() null.Val[float64] { return m.Hectares }
	o.Lastinspectactivity = func() null.Val[string] { return m.Lastinspectactivity }
	o.Lasttreatactivity = func() null.Val[string] { return m.Lasttreatactivity }
	o.Lastinspectconditions = func() null.Val[string] { return m.Lastinspectconditions }
	o.Waterorigin = func() null.Val[string] { return m.Waterorigin }
	o.Filter = func() null.Val[string] { return m.Filter }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Jurisdiction = func() null.Val[string] { return m.Jurisdiction }
	o.ShapeArea = func() null.Val[float64] { return m.ShapeArea }
	o.ShapeLength = func() null.Val[float64] { return m.ShapeLength }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerPolygonlocationMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerPool(mods ...FieldseekerPoolMod) *FieldseekerPoolTemplate {
	return f.NewFieldseekerPoolWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerPoolWithContext(ctx context.Context, mods ...FieldseekerPoolMod) *FieldseekerPoolTemplate {
	o := &FieldseekerPoolTemplate{f: f}

	if f != nil {
		f.baseFieldseekerPoolMods.Apply(ctx, o)
	}

	FieldseekerPoolModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerPool(m *models.FieldseekerPool) *FieldseekerPoolTemplate {
	o := &FieldseekerPoolTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.TrapdataID = func() null.Val[uuid.UUID] { return m.TrapdataID }
	o.Datesent = func() null.Val[time.Time] { return m.Datesent }
	o.Survtech = func() null.Val[string] { return m.Survtech }
	o.Datetested = func() null.Val[time.Time] { return m.Datetested }
	o.Testtech = func() null.Val[string] { return m.Testtech }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Sampleid = func() null.Val[string] { return m.Sampleid }
	o.Processed = func() null.Val[int16] { return m.Processed }
	o.LabID = func() null.Val[uuid.UUID] { return m.LabID }
	o.Testmethod = func() null.Val[string] { return m.Testmethod }
	o.Diseasetested = func() null.Val[string] { return m.Diseasetested }
	o.Diseasepos = func() null.Val[string] { return m.Diseasepos }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Lab = func() null.Val[string] { return m.Lab }
	o.Poolyear = func() null.Val[int16] { return m.Poolyear }
	o.Gatewaysync = func() null.Val[int16] { return m.Gatewaysync }
	o.Vectorsurvcollectionid = func() null.Val[string] { return m.Vectorsurvcollectionid }
	o.Vectorsurvpoolid = func() null.Val[string] { return m.Vectorsurvpoolid }
	o.Vectorsurvtrapdataid = func() null.Val[string] { return m.Vectorsurvtrapdataid }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerPoolMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerPooldetail(mods ...FieldseekerPooldetailMod) *FieldseekerPooldetailTemplate {
	return f.NewFieldseekerPooldetailWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerPooldetailWithContext(ctx context.Context, mods ...FieldseekerPooldetailMod) *FieldseekerPooldetailTemplate {
	o := &FieldseekerPooldetailTemplate{f: f}

	if f != nil {
		f.baseFieldseekerPooldetailMods.Apply(ctx, o)
	}

	FieldseekerPooldetailModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerPooldetail(m *models.FieldseekerPooldetail) *FieldseekerPooldetailTemplate {
	o := &FieldseekerPooldetailTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.TrapdataID = func() null.Val[uuid.UUID] { return m.TrapdataID }
	o.PoolID = func() null.Val[uuid.UUID] { return m.PoolID }
	o.Species = func() null.Val[string] { return m.Species }
	o.Females = func() null.Val[int16] { return m.Females }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerPooldetailMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerProposedtreatmentarea(mods ...FieldseekerProposedtreatmentareaMod) *FieldseekerProposedtreatmentareaTemplate {
	return f.NewFieldseekerProposedtreatmentareaWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerProposedtreatmentareaWithContext(ctx context.Context, mods ...FieldseekerProposedtreatmentareaMod) *FieldseekerProposedtreatmentareaTemplate {
	o := &FieldseekerProposedtreatmentareaTemplate{f: f}

	if f != nil {
		f.baseFieldseekerProposedtreatmentareaMods.Apply(ctx, o)
	}

	FieldseekerProposedtreatmentareaModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerProposedtreatmentarea(m *models.FieldseekerProposedtreatmentarea) *FieldseekerProposedtreatmentareaTemplate {
	o := &FieldseekerProposedtreatmentareaTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Method = func() null.Val[string] { return m.Method }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Reviewed = func() null.Val[int16] { return m.Reviewed }
	o.Reviewedby = func() null.Val[string] { return m.Reviewedby }
	o.Revieweddate = func() null.Val[time.Time] { return m.Revieweddate }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Completeddate = func() null.Val[time.Time] { return m.Completeddate }
	o.Completedby = func() null.Val[string] { return m.Completedby }
	o.Completed = func() null.Val[int16] { return m.Completed }
	o.Issprayroute = func() null.Val[int16] { return m.Issprayroute }
	o.Name = func() null.Val[string] { return m.Name }
	o.Acres = func() null.Val[float64] { return m.Acres }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.Exported = func() null.Val[int16] { return m.Exported }
	o.Targetproduct = func() null.Val[string] { return m.Targetproduct }
	o.Targetapprate = func() null.Val[float64] { return m.Targetapprate }
	o.Hectares = func() null.Val[float64] { return m.Hectares }
	o.Lasttreatactivity = func() null.Val[string] { return m.Lasttreatactivity }
	o.Lasttreatdate = func() null.Val[time.Time] { return m.Lasttreatdate }
	o.Lasttreatproduct = func() null.Val[string] { return m.Lasttreatproduct }
	o.Lasttreatqty = func() null.Val[float64] { return m.Lasttreatqty }
	o.Lasttreatqtyunit = func() null.Val[string] { return m.Lasttreatqtyunit }
	o.Priority = func() null.Val[string] { return m.Priority }
	o.Duedate = func() null.Val[time.Time] { return m.Duedate }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Targetspecies = func() null.Val[string] { return m.Targetspecies }
	o.ShapeArea = func() null.Val[float64] { return m.ShapeArea }
	o.ShapeLength = func() null.Val[float64] { return m.ShapeLength }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerProposedtreatmentareaMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerQamosquitoinspection(mods ...FieldseekerQamosquitoinspectionMod) *FieldseekerQamosquitoinspectionTemplate {
	return f.NewFieldseekerQamosquitoinspectionWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerQamosquitoinspectionWithContext(ctx context.Context, mods ...FieldseekerQamosquitoinspectionMod) *FieldseekerQamosquitoinspectionTemplate {
	o := &FieldseekerQamosquitoinspectionTemplate{f: f}

	if f != nil {
		f.baseFieldseekerQamosquitoinspectionMods.Apply(ctx, o)
	}

	FieldseekerQamosquitoinspectionModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerQamosquitoinspection(m *models.FieldseekerQamosquitoinspection) *FieldseekerQamosquitoinspectionTemplate {
	o := &FieldseekerQamosquitoinspectionTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Posdips = func() null.Val[int16] { return m.Posdips }
	o.Actiontaken = func() null.Val[string] { return m.Actiontaken }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Avetemp = func() null.Val[float64] { return m.Avetemp }
	o.Windspeed = func() null.Val[float64] { return m.Windspeed }
	o.Raingauge = func() null.Val[float64] { return m.Raingauge }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.Startdatetime = func() null.Val[time.Time] { return m.Startdatetime }
	o.Enddatetime = func() null.Val[time.Time] { return m.Enddatetime }
	o.Winddir = func() null.Val[string] { return m.Winddir }
	o.Reviewed = func() null.Val[int16] { return m.Reviewed }
	o.Reviewedby = func() null.Val[string] { return m.Reviewedby }
	o.Revieweddate = func() null.Val[time.Time] { return m.Revieweddate }
	o.Locationname = func() null.Val[string] { return m.Locationname }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Recordstatus = func() null.Val[int16] { return m.Recordstatus }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.LR = func() null.Val[int16] { return m.LR }
	o.Negdips = func() null.Val[int16] { return m.Negdips }
	o.Totalacres = func() null.Val[float64] { return m.Totalacres }
	o.Acresbreeding = func() null.Val[float64] { return m.Acresbreeding }
	o.Fish = func() null.Val[int16] { return m.Fish }
	o.Sitetype = func() null.Val[string] { return m.Sitetype }
	o.Breedingpotential = func() null.Val[string] { return m.Breedingpotential }
	o.Movingwater = func() null.Val[int16] { return m.Movingwater }
	o.Nowaterever = func() null.Val[int16] { return m.Nowaterever }
	o.Mosquitohabitat = func() null.Val[string] { return m.Mosquitohabitat }
	o.Habvalue1 = func() null.Val[int16] { return m.Habvalue1 }
	o.Habvalue1percent = func() null.Val[int16] { return m.Habvalue1percent }
	o.Habvalue2 = func() null.Val[int16] { return m.Habvalue2 }
	o.Habvalue2percent = func() null.Val[int16] { return m.Habvalue2percent }
	o.Potential = func() null.Val[int16] { return m.Potential }
	o.Larvaepresent = func() null.Val[int16] { return m.Larvaepresent }
	o.Larvaeinsidetreatedarea = func() null.Val[int16] { return m.Larvaeinsidetreatedarea }
	o.Larvaeoutsidetreatedarea = func() null.Val[int16] { return m.Larvaeoutsidetreatedarea }
	o.Larvaereason = func() null.Val[string] { return m.Larvaereason }
	o.Aquaticorganisms = func() null.Val[string] { return m.Aquaticorganisms }
	o.Vegetation = func() null.Val[string] { return m.Vegetation }
	o.Sourcereduction = func() null.Val[string] { return m.Sourcereduction }
	o.Waterpresent = func() null.Val[int16] { return m.Waterpresent }
	o.Watermovement1 = func() null.Val[string] { return m.Watermovement1 }
	o.Watermovement1percent = func() null.Val[int16] { return m.Watermovement1percent }
	o.Watermovement2 = func() null.Val[string] { return m.Watermovement2 }
	o.Watermovement2percent = func() null.Val[int16] { return m.Watermovement2percent }
	o.Soilconditions = func() null.Val[string] { return m.Soilconditions }
	o.Waterduration = func() null.Val[string] { return m.Waterduration }
	o.Watersource = func() null.Val[string] { return m.Watersource }
	o.Waterconditions = func() null.Val[string] { return m.Waterconditions }
	o.Adultactivity = func() null.Val[int16] { return m.Adultactivity }
	o.Linelocid = func() null.Val[uuid.UUID] { return m.Linelocid }
	o.Pointlocid = func() null.Val[uuid.UUID] { return m.Pointlocid }
	o.Polygonlocid = func() null.Val[uuid.UUID] { return m.Polygonlocid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Fieldtech = func() null.Val[string] { return m.Fieldtech }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerQamosquitoinspectionMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerRodentlocation(mods ...FieldseekerRodentlocationMod) *FieldseekerRodentlocationTemplate {
	return f.NewFieldseekerRodentlocationWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerRodentlocationWithContext(ctx context.Context, mods ...FieldseekerRodentlocationMod) *FieldseekerRodentlocationTemplate {
	o := &FieldseekerRodentlocationTemplate{f: f}

	if f != nil {
		f.baseFieldseekerRodentlocationMods.Apply(ctx, o)
	}

	FieldseekerRodentlocationModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerRodentlocation(m *models.FieldseekerRodentlocation) *FieldseekerRodentlocationTemplate {
	o := &FieldseekerRodentlocationTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Locationname = func() null.Val[string] { return m.Locationname }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Habitat = func() null.Val[string] { return m.Habitat }
	o.Priority = func() null.Val[string] { return m.Priority }
	o.Usetype = func() null.Val[string] { return m.Usetype }
	o.Active = func() null.Val[int16] { return m.Active }
	o.Description = func() null.Val[string] { return m.Description }
	o.Accessdesc = func() null.Val[string] { return m.Accessdesc }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Symbology = func() null.Val[string] { return m.Symbology }
	o.Externalid = func() null.Val[string] { return m.Externalid }
	o.Nextactiondatescheduled = func() null.Val[time.Time] { return m.Nextactiondatescheduled }
	o.Locationnumber = func() null.Val[int32] { return m.Locationnumber }
	o.Lastinspectdate = func() null.Val[time.Time] { return m.Lastinspectdate }
	o.Lastinspectspecies = func() null.Val[string] { return m.Lastinspectspecies }
	o.Lastinspectaction = func() null.Val[string] { return m.Lastinspectaction }
	o.Lastinspectconditions = func() null.Val[string] { return m.Lastinspectconditions }
	o.Lastinspectrodentevidence = func() null.Val[string] { return m.Lastinspectrodentevidence }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Jurisdiction = func() null.Val[string] { return m.Jurisdiction }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerRodentlocationMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerSamplecollection(mods ...FieldseekerSamplecollectionMod) *FieldseekerSamplecollectionTemplate {
	return f.NewFieldseekerSamplecollectionWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerSamplecollectionWithContext(ctx context.Context, mods ...FieldseekerSamplecollectionMod) *FieldseekerSamplecollectionTemplate {
	o := &FieldseekerSamplecollectionTemplate{f: f}

	if f != nil {
		f.baseFieldseekerSamplecollectionMods.Apply(ctx, o)
	}

	FieldseekerSamplecollectionModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerSamplecollection(m *models.FieldseekerSamplecollection) *FieldseekerSamplecollectionTemplate {
	o := &FieldseekerSamplecollectionTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.LocID = func() null.Val[uuid.UUID] { return m.LocID }
	o.Startdatetime = func() null.Val[time.Time] { return m.Startdatetime }
	o.Enddatetime = func() null.Val[time.Time] { return m.Enddatetime }
	o.Sitecond = func() null.Val[string] { return m.Sitecond }
	o.Sampleid = func() null.Val[string] { return m.Sampleid }
	o.Survtech = func() null.Val[string] { return m.Survtech }
	o.Datesent = func() null.Val[time.Time] { return m.Datesent }
	o.Datetested = func() null.Val[time.Time] { return m.Datetested }
	o.Testtech = func() null.Val[string] { return m.Testtech }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Processed = func() null.Val[int16] { return m.Processed }
	o.Sampletype = func() null.Val[string] { return m.Sampletype }
	o.Samplecond = func() null.Val[string] { return m.Samplecond }
	o.Species = func() null.Val[string] { return m.Species }
	o.Sex = func() null.Val[string] { return m.Sex }
	o.Avetemp = func() null.Val[float64] { return m.Avetemp }
	o.Windspeed = func() null.Val[float64] { return m.Windspeed }
	o.Winddir = func() null.Val[string] { return m.Winddir }
	o.Raingauge = func() null.Val[float64] { return m.Raingauge }
	o.Activity = func() null.Val[string] { return m.Activity }
	o.Testmethod = func() null.Val[string] { return m.Testmethod }
	o.Diseasetested = func() null.Val[string] { return m.Diseasetested }
	o.Diseasepos = func() null.Val[string] { return m.Diseasepos }
	o.Reviewed = func() null.Val[int16] { return m.Reviewed }
	o.Reviewedby = func() null.Val[string] { return m.Reviewedby }
	o.Revieweddate = func() null.Val[time.Time] { return m.Revieweddate }
	o.Locationname = func() null.Val[string] { return m.Locationname }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Recordstatus = func() null.Val[int16] { return m.Recordstatus }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Lab = func() null.Val[string] { return m.Lab }
	o.Fieldtech = func() null.Val[string] { return m.Fieldtech }
	o.Flockid = func() null.Val[uuid.UUID] { return m.Flockid }
	o.Samplecount = func() null.Val[int16] { return m.Samplecount }
	o.Chickenid = func() null.Val[uuid.UUID] { return m.Chickenid }
	o.Gatewaysync = func() null.Val[int16] { return m.Gatewaysync }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerSamplecollectionMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerSamplelocation(mods ...FieldseekerSamplelocationMod) *FieldseekerSamplelocationTemplate {
	return f.NewFieldseekerSamplelocationWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerSamplelocationWithContext(ctx context.Context, mods ...FieldseekerSamplelocationMod) *FieldseekerSamplelocationTemplate {
	o := &FieldseekerSamplelocationTemplate{f: f}

	if f != nil {
		f.baseFieldseekerSamplelocationMods.Apply(ctx, o)
	}

	FieldseekerSamplelocationModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerSamplelocation(m *models.FieldseekerSamplelocation) *FieldseekerSamplelocationTemplate {
	o := &FieldseekerSamplelocationTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Name = func() null.Val[string] { return m.Name }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Habitat = func() null.Val[string] { return m.Habitat }
	o.Priority = func() null.Val[string] { return m.Priority }
	o.Usetype = func() null.Val[string] { return m.Usetype }
	o.Active = func() null.Val[int16] { return m.Active }
	o.Description = func() null.Val[string] { return m.Description }
	o.Accessdesc = func() null.Val[string] { return m.Accessdesc }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Externalid = func() null.Val[string] { return m.Externalid }
	o.Nextactiondatescheduled = func() null.Val[time.Time] { return m.Nextactiondatescheduled }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Locationnumber = func() null.Val[int32] { return m.Locationnumber }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Gatewaysync = func() null.Val[int16] { return m.Gatewaysync }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerSamplelocationMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerServicerequest(mods ...FieldseekerServicerequestMod) *FieldseekerServicerequestTemplate {
	return f.NewFieldseekerServicerequestWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerServicerequestWithContext(ctx context.Context, mods ...FieldseekerServicerequestMod) *FieldseekerServicerequestTemplate {
	o := &FieldseekerServicerequestTemplate{f: f}

	if f != nil {
		f.baseFieldseekerServicerequestMods.Apply(ctx, o)
	}

	FieldseekerServicerequestModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerServicerequest(m *models.FieldseekerServicerequest) *FieldseekerServicerequestTemplate {
	o := &FieldseekerServicerequestTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Recdatetime = func() null.Val[time.Time] { return m.Recdatetime }
	o.Source = func() null.Val[string] { return m.Source }
	o.Entrytech = func() null.Val[string] { return m.Entrytech }
	o.Priority = func() null.Val[string] { return m.Priority }
	o.Supervisor = func() null.Val[string] { return m.Supervisor }
	o.Assignedtech = func() null.Val[string] { return m.Assignedtech }
	o.Status = func() null.Val[string] { return m.Status }
	o.Clranon = func() null.Val[int16] { return m.Clranon }
	o.Clrfname = func() null.Val[string] { return m.Clrfname }
	o.Clrphone1 = func() null.Val[string] { return m.Clrphone1 }
	o.Clrphone2 = func() null.Val[string] { return m.Clrphone2 }
	o.Clremail = func() null.Val[string] { return m.Clremail }
	o.Clrcompany = func() null.Val[string] { return m.Clrcompany }
	o.Clraddr1 = func() null.Val[string] { return m.Clraddr1 }
	o.Clraddr2 = func() null.Val[string] { return m.Clraddr2 }
	o.Clrcity = func() null.Val[string] { return m.Clrcity }
	o.Clrstate = func() null.Val[string] { return m.Clrstate }
	o.Clrzip = func() null.Val[string] { return m.Clrzip }
	o.Clrother = func() null.Val[string] { return m.Clrother }
	o.Clrcontpref = func() null.Val[string] { return m.Clrcontpref }
	o.Reqcompany = func() null.Val[string] { return m.Reqcompany }
	o.Reqaddr1 = func() null.Val[string] { return m.Reqaddr1 }
	o.Reqaddr2 = func() null.Val[string] { return m.Reqaddr2 }
	o.Reqcity = func() null.Val[string] { return m.Reqcity }
	o.Reqstate = func() null.Val[string] { return m.Reqstate }
	o.Reqzip = func() null.Val[string] { return m.Reqzip }
	o.Reqcrossst = func() null.Val[string] { return m.Reqcrossst }
	o.Reqsubdiv = func() null.Val[string] { return m.Reqsubdiv }
	o.Reqmapgrid = func() null.Val[string] { return m.Reqmapgrid }
	o.Reqpermission = func() null.Val[int16] { return m.Reqpermission }
	o.Reqtarget = func() null.Val[string] { return m.Reqtarget }
	o.Reqdescr = func() null.Val[string] { return m.Reqdescr }
	o.Reqnotesfortech = func() null.Val[string] { return m.Reqnotesfortech }
	o.Reqnotesforcust = func() null.Val[string] { return m.Reqnotesforcust }
	o.Reqfldnotes = func() null.Val[string] { return m.Reqfldnotes }
	o.Reqprogramactions = func() null.Val[string] { return m.Reqprogramactions }
	o.Datetimeclosed = func() null.Val[time.Time] { return m.Datetimeclosed }
	o.Techclosed = func() null.Val[string] { return m.Techclosed }
	o.SRNumber = func() null.Val[int32] { return m.SRNumber }
	o.Reviewed = func() null.Val[int16] { return m.Reviewed }
	o.Reviewedby = func() null.Val[string] { return m.Reviewedby }
	o.Revieweddate = func() null.Val[time.Time] { return m.Revieweddate }
	o.Accepted = func() null.Val[int16] { return m.Accepted }
	o.Accepteddate = func() null.Val[time.Time] { return m.Accepteddate }
	o.Rejectedby = func() null.Val[string] { return m.Rejectedby }
	o.Rejecteddate = func() null.Val[time.Time] { return m.Rejecteddate }
	o.Rejectedreason = func() null.Val[string] { return m.Rejectedreason }
	o.Duedate = func() null.Val[time.Time] { return m.Duedate }
	o.Acceptedby = func() null.Val[string] { return m.Acceptedby }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Estcompletedate = func() null.Val[time.Time] { return m.Estcompletedate }
	o.Nextaction = func() null.Val[string] { return m.Nextaction }
	o.Recordstatus = func() null.Val[int16] { return m.Recordstatus }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Firstresponsedate = func() null.Val[time.Time] { return m.Firstresponsedate }
	o.Responsedaycount = func() null.Val[int16] { return m.Responsedaycount }
	o.Allowed = func() null.Val[string] { return m.Allowed }
	o.Xvalue = func() null.Val[string] { return m.Xvalue }
	o.Yvalue = func() null.Val[string] { return m.Yvalue }
	o.Validx = func() null.Val[string] { return m.Validx }
	o.Validy = func() null.Val[string] { return m.Validy }
	o.Externalid = func() null.Val[string] { return m.Externalid }
	o.Externalerror = func() null.Val[string] { return m.Externalerror }
	o.Pointlocid = func() null.Val[uuid.UUID] { return m.Pointlocid }
	o.Notified = func() null.Val[int16] { return m.Notified }
	o.Notifieddate = func() null.Val[time.Time] { return m.Notifieddate }
	o.Scheduled = func() null.Val[int16] { return m.Scheduled }
	o.Scheduleddate = func() null.Val[time.Time] { return m.Scheduleddate }
	o.Dog = func() null.Val[int32] { return m.Dog }
	o.SchedulePeriod = func() null.Val[string] { return m.SchedulePeriod }
	o.ScheduleNotes = func() null.Val[string] { return m.ScheduleNotes }
	o.Spanish = func() null.Val[int32] { return m.Spanish }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Issuesreported = func() null.Val[string] { return m.Issuesreported }
	o.Jurisdiction = func() null.Val[string] { return m.Jurisdiction }
	o.Notificationtimestamp = func() null.Val[string] { return m.Notificationtimestamp }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.H3cell = func() null.Val[string] { return m.H3cell }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerServicerequestMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerSpeciesabundance(mods ...FieldseekerSpeciesabundanceMod) *FieldseekerSpeciesabundanceTemplate {
	return f.NewFieldseekerSpeciesabundanceWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerSpeciesabundanceWithContext(ctx context.Context, mods ...FieldseekerSpeciesabundanceMod) *FieldseekerSpeciesabundanceTemplate {
	o := &FieldseekerSpeciesabundanceTemplate{f: f}

	if f != nil {
		f.baseFieldseekerSpeciesabundanceMods.Apply(ctx, o)
	}

	FieldseekerSpeciesabundanceModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerSpeciesabundance(m *models.FieldseekerSpeciesabundance) *FieldseekerSpeciesabundanceTemplate {
	o := &FieldseekerSpeciesabundanceTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.TrapdataID = func() null.Val[uuid.UUID] { return m.TrapdataID }
	o.Species = func() null.Val[string] { return m.Species }
	o.Males = func() null.Val[int16] { return m.Males }
	o.Unknown = func() null.Val[int16] { return m.Unknown }
	o.Bloodedfem = func() null.Val[int16] { return m.Bloodedfem }
	o.Gravidfem = func() null.Val[int16] { return m.Gravidfem }
	o.Larvae = func() null.Val[int16] { return m.Larvae }
	o.Poolstogen = func() null.Val[int16] { return m.Poolstogen }
	o.Processed = func() null.Val[int16] { return m.Processed }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Pupae = func() null.Val[int16] { return m.Pupae }
	o.Eggs = func() null.Val[int16] { return m.Eggs }
	o.Females = func() null.Val[int32] { return m.Females }
	o.Total = func() null.Val[int32] { return m.Total }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Yearweek = func() null.Val[int32] { return m.Yearweek }
	o.Globalzscore = func() null.Val[float64] { return m.Globalzscore }
	o.R7score = func() null.Val[float64] { return m.R7score }
	o.R8score = func() null.Val[float64] { return m.R8score }
	o.H3R7 = func() null.Val[string] { return m.H3R7 }
	o.H3R8 = func() null.Val[string] { return m.H3R8 }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerSpeciesabundanceMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerStormdrain(mods ...FieldseekerStormdrainMod) *FieldseekerStormdrainTemplate {
	return f.NewFieldseekerStormdrainWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerStormdrainWithContext(ctx context.Context, mods ...FieldseekerStormdrainMod) *FieldseekerStormdrainTemplate {
	o := &FieldseekerStormdrainTemplate{f: f}

	if f != nil {
		f.baseFieldseekerStormdrainMods.Apply(ctx, o)
	}

	FieldseekerStormdrainModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerStormdrain(m *models.FieldseekerStormdrain) *FieldseekerStormdrainTemplate {
	o := &FieldseekerStormdrainTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Nexttreatmentdate = func() null.Val[time.Time] { return m.Nexttreatmentdate }
	o.Lasttreatdate = func() null.Val[time.Time] { return m.Lasttreatdate }
	o.Lastaction = func() null.Val[string] { return m.Lastaction }
	o.Symbology = func() null.Val[string] { return m.Symbology }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Laststatus = func() null.Val[string] { return m.Laststatus }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Type = func() null.Val[string] { return m.Type }
	o.Jurisdiction = func() null.Val[string] { return m.Jurisdiction }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerStormdrainMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerTimecard(mods ...FieldseekerTimecardMod) *FieldseekerTimecardTemplate {
	return f.NewFieldseekerTimecardWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerTimecardWithContext(ctx context.Context, mods ...FieldseekerTimecardMod) *FieldseekerTimecardTemplate {
	o := &FieldseekerTimecardTemplate{f: f}

	if f != nil {
		f.baseFieldseekerTimecardMods.Apply(ctx, o)
	}

	FieldseekerTimecardModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerTimecard(m *models.FieldseekerTimecard) *FieldseekerTimecardTemplate {
	o := &FieldseekerTimecardTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Activity = func() null.Val[string] { return m.Activity }
	o.Startdatetime = func() null.Val[time.Time] { return m.Startdatetime }
	o.Enddatetime = func() null.Val[time.Time] { return m.Enddatetime }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Externalid = func() null.Val[string] { return m.Externalid }
	o.Equiptype = func() null.Val[string] { return m.Equiptype }
	o.Locationname = func() null.Val[string] { return m.Locationname }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Linelocid = func() null.Val[uuid.UUID] { return m.Linelocid }
	o.Pointlocid = func() null.Val[uuid.UUID] { return m.Pointlocid }
	o.Polygonlocid = func() null.Val[uuid.UUID] { return m.Polygonlocid }
	o.Lclocid = func() null.Val[uuid.UUID] { return m.Lclocid }
	o.Samplelocid = func() null.Val[uuid.UUID] { return m.Samplelocid }
	o.Srid = func() null.Val[uuid.UUID] { return m.Srid }
	o.Traplocid = func() null.Val[uuid.UUID] { return m.Traplocid }
	o.Fieldtech = func() null.Val[string] { return m.Fieldtech }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Rodentlocid = func() null.Val[uuid.UUID] { return m.Rodentlocid }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerTimecardMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerTrapdatum(mods ...FieldseekerTrapdatumMod) *FieldseekerTrapdatumTemplate {
	return f.NewFieldseekerTrapdatumWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerTrapdatumWithContext(ctx context.Context, mods ...FieldseekerTrapdatumMod) *FieldseekerTrapdatumTemplate {
	o := &FieldseekerTrapdatumTemplate{f: f}

	if f != nil {
		f.baseFieldseekerTrapdatumMods.Apply(ctx, o)
	}

	FieldseekerTrapdatumModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerTrapdatum(m *models.FieldseekerTrapdatum) *FieldseekerTrapdatumTemplate {
	o := &FieldseekerTrapdatumTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Traptype = func() null.Val[string] { return m.Traptype }
	o.Trapactivitytype = func() null.Val[string] { return m.Trapactivitytype }
	o.Startdatetime = func() null.Val[time.Time] { return m.Startdatetime }
	o.Enddatetime = func() null.Val[time.Time] { return m.Enddatetime }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Idbytech = func() null.Val[string] { return m.Idbytech }
	o.Sortbytech = func() null.Val[string] { return m.Sortbytech }
	o.Processed = func() null.Val[int16] { return m.Processed }
	o.Sitecond = func() null.Val[string] { return m.Sitecond }
	o.Locationname = func() null.Val[string] { return m.Locationname }
	o.Recordstatus = func() null.Val[int16] { return m.Recordstatus }
	o.Reviewed = func() null.Val[int16] { return m.Reviewed }
	o.Reviewedby = func() null.Val[string] { return m.Reviewedby }
	o.Revieweddate = func() null.Val[time.Time] { return m.Revieweddate }
	o.Trapcondition = func() null.Val[string] { return m.Trapcondition }
	o.Trapnights = func() null.Val[int16] { return m.Trapnights }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Srid = func() null.Val[uuid.UUID] { return m.Srid }
	o.Fieldtech = func() null.Val[string] { return m.Fieldtech }
	o.Gatewaysync = func() null.Val[int16] { return m.Gatewaysync }
	o.LocID = func() null.Val[uuid.UUID] { return m.LocID }
	o.Voltage = func() null.Val[float64] { return m.Voltage }
	o.Winddir = func() null.Val[string] { return m.Winddir }
	o.Windspeed = func() null.Val[float64] { return m.Windspeed }
	o.Avetemp = func() null.Val[float64] { return m.Avetemp }
	o.Raingauge = func() null.Val[float64] { return m.Raingauge }
	o.LR = func() null.Val[int16] { return m.LR }
	o.Field = func() null.Val[int32] { return m.Field }
	o.Vectorsurvtrapdataid = func() null.Val[string] { return m.Vectorsurvtrapdataid }
	o.Vectorsurvtraplocationid = func() null.Val[string] { return m.Vectorsurvtraplocationid }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Lure = func() null.Val[string] { return m.Lure }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.H3cell = func() null.Val[string] { return m.H3cell }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerTrapdatumMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerTraplocation(mods ...FieldseekerTraplocationMod) *FieldseekerTraplocationTemplate {
	return f.NewFieldseekerTraplocationWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerTraplocationWithContext(ctx context.Context, mods ...FieldseekerTraplocationMod) *FieldseekerTraplocationTemplate {
	o := &FieldseekerTraplocationTemplate{f: f}

	if f != nil {
		f.baseFieldseekerTraplocationMods.Apply(ctx, o)
	}

	FieldseekerTraplocationModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerTraplocation(m *models.FieldseekerTraplocation) *FieldseekerTraplocationTemplate {
	o := &FieldseekerTraplocationTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Name = func() null.Val[string] { return m.Name }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Habitat = func() null.Val[string] { return m.Habitat }
	o.Priority = func() null.Val[string] { return m.Priority }
	o.Usetype = func() null.Val[string] { return m.Usetype }
	o.Active = func() null.Val[int16] { return m.Active }
	o.Description = func() null.Val[string] { return m.Description }
	o.Accessdesc = func() null.Val[string] { return m.Accessdesc }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Externalid = func() null.Val[string] { return m.Externalid }
	o.Nextactiondatescheduled = func() null.Val[time.Time] { return m.Nextactiondatescheduled }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Locationnumber = func() null.Val[int32] { return m.Locationnumber }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Gatewaysync = func() null.Val[int16] { return m.Gatewaysync }
	o.Route = func() null.Val[int32] { return m.Route }
	o.SetDow = func() null.Val[int32] { return m.SetDow }
	o.RouteOrder = func() null.Val[int32] { return m.RouteOrder }
	o.Vectorsurvsiteid = func() null.Val[string] { return m.Vectorsurvsiteid }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.H3R7 = func() null.Val[string] { return m.H3R7 }
	o.H3R8 = func() null.Val[string] { return m.H3R8 }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.H3cell = func() null.Val[string] { return m.H3cell }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerTraplocationMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerTreatment(mods ...FieldseekerTreatmentMod) *FieldseekerTreatmentTemplate {
	return f.NewFieldseekerTreatmentWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerTreatmentWithContext(ctx context.Context, mods ...FieldseekerTreatmentMod) *FieldseekerTreatmentTemplate {
	o := &FieldseekerTreatmentTemplate{f: f}

	if f != nil {
		f.baseFieldseekerTreatmentMods.Apply(ctx, o)
	}

	FieldseekerTreatmentModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerTreatment(m *models.FieldseekerTreatment) *FieldseekerTreatmentTemplate {
	o := &FieldseekerTreatmentTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Activity = func() null.Val[string] { return m.Activity }
	o.Treatarea = func() null.Val[float64] { return m.Treatarea }
	o.Areaunit = func() null.Val[string] { return m.Areaunit }
	o.Product = func() null.Val[string] { return m.Product }
	o.Qty = func() null.Val[float64] { return m.Qty }
	o.Qtyunit = func() null.Val[string] { return m.Qtyunit }
	o.Method = func() null.Val[string] { return m.Method }
	o.Equiptype = func() null.Val[string] { return m.Equiptype }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Avetemp = func() null.Val[float64] { return m.Avetemp }
	o.Windspeed = func() null.Val[float64] { return m.Windspeed }
	o.Winddir = func() null.Val[string] { return m.Winddir }
	o.Raingauge = func() null.Val[float64] { return m.Raingauge }
	o.Startdatetime = func() null.Val[time.Time] { return m.Startdatetime }
	o.Enddatetime = func() null.Val[time.Time] { return m.Enddatetime }
	o.InspID = func() null.Val[uuid.UUID] { return m.InspID }
	o.Reviewed = func() null.Val[int16] { return m.Reviewed }
	o.Reviewedby = func() null.Val[string] { return m.Reviewedby }
	o.Revieweddate = func() null.Val[time.Time] { return m.Revieweddate }
	o.Locationname = func() null.Val[string] { return m.Locationname }
	o.Zone = func() null.Val[string] { return m.Zone }
	o.Warningoverride = func() null.Val[int16] { return m.Warningoverride }
	o.Recordstatus = func() null.Val[int16] { return m.Recordstatus }
	o.Zone2 = func() null.Val[string] { return m.Zone2 }
	o.Treatacres = func() null.Val[float64] { return m.Treatacres }
	o.Tirecount = func() null.Val[int16] { return m.Tirecount }
	o.Cbcount = func() null.Val[int16] { return m.Cbcount }
	o.Containercount = func() null.Val[int16] { return m.Containercount }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.Treatmentlength = func() null.Val[float64] { return m.Treatmentlength }
	o.Treatmenthours = func() null.Val[float64] { return m.Treatmenthours }
	o.Treatmentlengthunits = func() null.Val[string] { return m.Treatmentlengthunits }
	o.Linelocid = func() null.Val[uuid.UUID] { return m.Linelocid }
	o.Pointlocid = func() null.Val[uuid.UUID] { return m.Pointlocid }
	o.Polygonlocid = func() null.Val[uuid.UUID] { return m.Polygonlocid }
	o.Srid = func() null.Val[uuid.UUID] { return m.Srid }
	o.Sdid = func() null.Val[uuid.UUID] { return m.Sdid }
	o.Barrierrouteid = func() null.Val[uuid.UUID] { return m.Barrierrouteid }
	o.Ulvrouteid = func() null.Val[uuid.UUID] { return m.Ulvrouteid }
	o.Fieldtech = func() null.Val[string] { return m.Fieldtech }
	o.Ptaid = func() null.Val[uuid.UUID] { return m.Ptaid }
	o.Flowrate = func() null.Val[float64] { return m.Flowrate }
	o.Habitat = func() null.Val[string] { return m.Habitat }
	o.Treathectares = func() null.Val[float64] { return m.Treathectares }
	o.Invloc = func() null.Val[string] { return m.Invloc }
	o.TempSitecond = func() null.Val[string] { return m.TempSitecond }
	o.Sitecond = func() null.Val[string] { return m.Sitecond }
	o.Totalcostprodcut = func() null.Val[float64] { return m.Totalcostprodcut }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.Targetspecies = func() null.Val[string] { return m.Targetspecies }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.H3cell = func() null.Val[string] { return m.H3cell }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerTreatmentMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerTreatmentarea(mods ...FieldseekerTreatmentareaMod) *FieldseekerTreatmentareaTemplate {
	return f.NewFieldseekerTreatmentareaWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerTreatmentareaWithContext(ctx context.Context, mods ...FieldseekerTreatmentareaMod) *FieldseekerTreatmentareaTemplate {
	o := &FieldseekerTreatmentareaTemplate{f: f}

	if f != nil {
		f.baseFieldseekerTreatmentareaMods.Apply(ctx, o)
	}

	FieldseekerTreatmentareaModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerTreatmentarea(m *models.FieldseekerTreatmentarea) *FieldseekerTreatmentareaTemplate {
	o := &FieldseekerTreatmentareaTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.TreatID = func() null.Val[uuid.UUID] { return m.TreatID }
	o.SessionID = func() null.Val[uuid.UUID] { return m.SessionID }
	o.Treatdate = func() null.Val[time.Time] { return m.Treatdate }
	o.Comments = func() null.Val[string] { return m.Comments }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Notified = func() null.Val[int16] { return m.Notified }
	o.Type = func() null.Val[string] { return m.Type }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.ShapeArea = func() null.Val[float64] { return m.ShapeArea }
	o.ShapeLength = func() null.Val[float64] { return m.ShapeLength }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerTreatmentareaMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerZone(mods ...FieldseekerZoneMod) *FieldseekerZoneTemplate {
	return f.NewFieldseekerZoneWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerZoneWithContext(ctx context.Context, mods ...FieldseekerZoneMod) *FieldseekerZoneTemplate {
	o := &FieldseekerZoneTemplate{f: f}

	if f != nil {
		f.baseFieldseekerZoneMods.Apply(ctx, o)
	}

	FieldseekerZoneModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerZone(m *models.FieldseekerZone) *FieldseekerZoneTemplate {
	o := &FieldseekerZoneTemplate{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Name = func() null.Val[string] { return m.Name }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Active = func() null.Val[int32] { return m.Active }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.ShapeArea = func() null.Val[float64] { return m.ShapeArea }
	o.ShapeLength = func() null.Val[float64] { return m.ShapeLength }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerZoneMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerZones2(mods ...FieldseekerZones2Mod) *FieldseekerZones2Template {
	return f.NewFieldseekerZones2WithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerZones2WithContext(ctx context.Context, mods ...FieldseekerZones2Mod) *FieldseekerZones2Template {
	o := &FieldseekerZones2Template{f: f}

	if f != nil {
		f.baseFieldseekerZones2Mods.Apply(ctx, o)
	}

	FieldseekerZones2ModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerZones2(m *models.FieldseekerZones2) *FieldseekerZones2Template {
	o := &FieldseekerZones2Template{f: f, alreadyPersisted: true}

	o.Objectid = func() int64 { return m.Objectid }
	o.Name = func() null.Val[string] { return m.Name }
	o.Globalid = func() uuid.UUID { return m.Globalid }
	o.CreatedUser = func() null.Val[string] { return m.CreatedUser }
	o.CreatedDate = func() null.Val[time.Time] { return m.CreatedDate }
	o.LastEditedUser = func() null.Val[string] { return m.LastEditedUser }
	o.LastEditedDate = func() null.Val[time.Time] { return m.LastEditedDate }
	o.Creationdate = func() null.Val[time.Time] { return m.Creationdate }
	o.Creator = func() null.Val[string] { return m.Creator }
	o.Editdate = func() null.Val[time.Time] { return m.Editdate }
	o.Editor = func() null.Val[string] { return m.Editor }
	o.ShapeArea = func() null.Val[float64] { return m.ShapeArea }
	o.ShapeLength = func() null.Val[float64] { return m.ShapeLength }
	o.Geometry = func() types.JSON[json.RawMessage] { return m.Geometry }
	o.Geospatial = func() null.Val[string] { return m.Geospatial }
	o.Version = func() int32 { return m.Version }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerZones2Mods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFieldseekerSync(mods ...FieldseekerSyncMod) *FieldseekerSyncTemplate {
	return f.NewFieldseekerSyncWithContext(context.Background(), mods...)
}

func (f *Factory) NewFieldseekerSyncWithContext(ctx context.Context, mods ...FieldseekerSyncMod) *FieldseekerSyncTemplate {
	o := &FieldseekerSyncTemplate{f: f}

	if f != nil {
		f.baseFieldseekerSyncMods.Apply(ctx, o)
	}

	FieldseekerSyncModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFieldseekerSync(m *models.FieldseekerSync) *FieldseekerSyncTemplate {
	o := &FieldseekerSyncTemplate{f: f, alreadyPersisted: true}

	o.ID = func() int32 { return m.ID }
	o.Created = func() time.Time { return m.Created }
	o.RecordsCreated = func() int32 { return m.RecordsCreated }
	o.RecordsUpdated = func() int32 { return m.RecordsUpdated }
	o.RecordsUnchanged = func() int32 { return m.RecordsUnchanged }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		FieldseekerSyncMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFileuploadCSV(mods ...FileuploadCSVMod) *FileuploadCSVTemplate {
	return f.NewFileuploadCSVWithContext(context.Background(), mods...)
}

func (f *Factory) NewFileuploadCSVWithContext(ctx context.Context, mods ...FileuploadCSVMod) *FileuploadCSVTemplate {
	o := &FileuploadCSVTemplate{f: f}

	if f != nil {
		f.baseFileuploadCSVMods.Apply(ctx, o)
	}

	FileuploadCSVModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFileuploadCSV(m *models.FileuploadCSV) *FileuploadCSVTemplate {
	o := &FileuploadCSVTemplate{f: f, alreadyPersisted: true}

	o.Committed = func() null.Val[time.Time] { return m.Committed }
	o.FileID = func() int32 { return m.FileID }
	o.Rowcount = func() int32 { return m.Rowcount }
	o.Type = func() enums.FileuploadCsvtype { return m.Type }

	ctx := context.Background()
	if m.R.File != nil {
		FileuploadCSVMods.WithExistingFile(m.R.File).Apply(ctx, o)
	}
	if len(m.R.CSVFileErrorCSVS) > 0 {
		FileuploadCSVMods.AddExistingCSVFileErrorCSVS(m.R.CSVFileErrorCSVS...).Apply(ctx, o)
	}
	if len(m.R.CSVFileFlyoverAerialServices) > 0 {
		FileuploadCSVMods.AddExistingCSVFileFlyoverAerialServices(m.R.CSVFileFlyoverAerialServices...).Apply(ctx, o)
	}
	if len(m.R.CSVFilePools) > 0 {
		FileuploadCSVMods.AddExistingCSVFilePools(m.R.CSVFilePools...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFileuploadErrorCSV(mods ...FileuploadErrorCSVMod) *FileuploadErrorCSVTemplate {
	return f.NewFileuploadErrorCSVWithContext(context.Background(), mods...)
}

func (f *Factory) NewFileuploadErrorCSVWithContext(ctx context.Context, mods ...FileuploadErrorCSVMod) *FileuploadErrorCSVTemplate {
	o := &FileuploadErrorCSVTemplate{f: f}

	if f != nil {
		f.baseFileuploadErrorCSVMods.Apply(ctx, o)
	}

	FileuploadErrorCSVModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFileuploadErrorCSV(m *models.FileuploadErrorCSV) *FileuploadErrorCSVTemplate {
	o := &FileuploadErrorCSVTemplate{f: f, alreadyPersisted: true}

	o.Col = func() int32 { return m.Col }
	o.CSVFileID = func() int32 { return m.CSVFileID }
	o.ID = func() int32 { return m.ID }
	o.Line = func() int32 { return m.Line }
	o.Message = func() string { return m.Message }

	ctx := context.Background()
	if m.R.CSVFileCSV != nil {
		FileuploadErrorCSVMods.WithExistingCSVFileCSV(m.R.CSVFileCSV).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFileuploadErrorFile(mods ...FileuploadErrorFileMod) *FileuploadErrorFileTemplate {
	return f.NewFileuploadErrorFileWithContext(context.Background(), mods...)
}

func (f *Factory) NewFileuploadErrorFileWithContext(ctx context.Context, mods ...FileuploadErrorFileMod) *FileuploadErrorFileTemplate {
	o := &FileuploadErrorFileTemplate{f: f}

	if f != nil {
		f.baseFileuploadErrorFileMods.Apply(ctx, o)
	}

	FileuploadErrorFileModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFileuploadErrorFile(m *models.FileuploadErrorFile) *FileuploadErrorFileTemplate {
	o := &FileuploadErrorFileTemplate{f: f, alreadyPersisted: true}

	o.FileID = func() int32 { return m.FileID }
	o.ID = func() int32 { return m.ID }
	o.Message = func() string { return m.Message }

	ctx := context.Background()
	if m.R.File != nil {
		FileuploadErrorFileMods.WithExistingFile(m.R.File).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFileuploadFile(mods ...FileuploadFileMod) *FileuploadFileTemplate {
	return f.NewFileuploadFileWithContext(context.Background(), mods...)
}

func (f *Factory) NewFileuploadFileWithContext(ctx context.Context, mods ...FileuploadFileMod) *FileuploadFileTemplate {
	o := &FileuploadFileTemplate{f: f}

	if f != nil {
		f.baseFileuploadFileMods.Apply(ctx, o)
	}

	FileuploadFileModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFileuploadFile(m *models.FileuploadFile) *FileuploadFileTemplate {
	o := &FileuploadFileTemplate{f: f, alreadyPersisted: true}

	o.ID = func() int32 { return m.ID }
	o.ContentType = func() string { return m.ContentType }
	o.Created = func() time.Time { return m.Created }
	o.CreatorID = func() int32 { return m.CreatorID }
	o.Deleted = func() null.Val[time.Time] { return m.Deleted }
	o.Name = func() string { return m.Name }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.Status = func() enums.FileuploadFilestatustype { return m.Status }
	o.SizeBytes = func() int32 { return m.SizeBytes }
	o.FileUUID = func() uuid.UUID { return m.FileUUID }

	ctx := context.Background()
	if m.R.CSV != nil {
		FileuploadFileMods.WithExistingCSV(m.R.CSV).Apply(ctx, o)
	}
	if len(m.R.ErrorFiles) > 0 {
		FileuploadFileMods.AddExistingErrorFiles(m.R.ErrorFiles...).Apply(ctx, o)
	}
	if m.R.CreatorUser != nil {
		FileuploadFileMods.WithExistingCreatorUser(m.R.CreatorUser).Apply(ctx, o)
	}
	if m.R.Organization != nil {
		FileuploadFileMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}
	if len(m.R.Sites) > 0 {
		FileuploadFileMods.AddExistingSites(m.R.Sites...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFileuploadFlyoverAerialService(mods ...FileuploadFlyoverAerialServiceMod) *FileuploadFlyoverAerialServiceTemplate {
	return f.NewFileuploadFlyoverAerialServiceWithContext(context.Background(), mods...)
}

func (f *Factory) NewFileuploadFlyoverAerialServiceWithContext(ctx context.Context, mods ...FileuploadFlyoverAerialServiceMod) *FileuploadFlyoverAerialServiceTemplate {
	o := &FileuploadFlyoverAerialServiceTemplate{f: f}

	if f != nil {
		f.baseFileuploadFlyoverAerialServiceMods.Apply(ctx, o)
	}

	FileuploadFlyoverAerialServiceModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFileuploadFlyoverAerialService(m *models.FileuploadFlyoverAerialService) *FileuploadFlyoverAerialServiceTemplate {
	o := &FileuploadFlyoverAerialServiceTemplate{f: f, alreadyPersisted: true}

	o.Committed = func() bool { return m.Committed }
	o.Condition = func() enums.FileuploadPoolconditiontype { return m.Condition }
	o.Created = func() time.Time { return m.Created }
	o.CreatorID = func() int32 { return m.CreatorID }
	o.CSVFile = func() int32 { return m.CSVFile }
	o.Deleted = func() null.Val[time.Time] { return m.Deleted }
	o.Geom = func() null.Val[string] { return m.Geom }
	o.H3cell = func() null.Val[string] { return m.H3cell }
	o.ID = func() int32 { return m.ID }
	o.OrganizationID = func() int32 { return m.OrganizationID }

	ctx := context.Background()
	if m.R.CreatorUser != nil {
		FileuploadFlyoverAerialServiceMods.WithExistingCreatorUser(m.R.CreatorUser).Apply(ctx, o)
	}
	if m.R.CSVFileCSV != nil {
		FileuploadFlyoverAerialServiceMods.WithExistingCSVFileCSV(m.R.CSVFileCSV).Apply(ctx, o)
	}
	if m.R.Organization != nil {
		FileuploadFlyoverAerialServiceMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewFileuploadPool(mods ...FileuploadPoolMod) *FileuploadPoolTemplate {
	return f.NewFileuploadPoolWithContext(context.Background(), mods...)
}

func (f *Factory) NewFileuploadPoolWithContext(ctx context.Context, mods ...FileuploadPoolMod) *FileuploadPoolTemplate {
	o := &FileuploadPoolTemplate{f: f}

	if f != nil {
		f.baseFileuploadPoolMods.Apply(ctx, o)
	}

	FileuploadPoolModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingFileuploadPool(m *models.FileuploadPool) *FileuploadPoolTemplate {
	o := &FileuploadPoolTemplate{f: f, alreadyPersisted: true}

	o.AddressCity = func() string { return m.AddressCity }
	o.AddressPostalCode = func() string { return m.AddressPostalCode }
	o.AddressStreet = func() string { return m.AddressStreet }
	o.Committed = func() bool { return m.Committed }
	o.Condition = func() enums.FileuploadPoolconditiontype { return m.Condition }
	o.Created = func() time.Time { return m.Created }
	o.CreatorID = func() int32 { return m.CreatorID }
	o.CSVFile = func() int32 { return m.CSVFile }
	o.Deleted = func() null.Val[time.Time] { return m.Deleted }
	o.Geom = func() null.Val[string] { return m.Geom }
	o.H3cell = func() null.Val[string] { return m.H3cell }
	o.ID = func() int32 { return m.ID }
	o.IsInDistrict = func() bool { return m.IsInDistrict }
	o.IsNew = func() bool { return m.IsNew }
	o.Notes = func() string { return m.Notes }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.PropertyOwnerName = func() string { return m.PropertyOwnerName }
	o.PropertyOwnerPhoneE164 = func() null.Val[string] { return m.PropertyOwnerPhoneE164 }
	o.ResidentOwned = func() null.Val[bool] { return m.ResidentOwned }
	o.ResidentPhoneE164 = func() null.Val[string] { return m.ResidentPhoneE164 }
	o.LineNumber = func() int32 { return m.LineNumber }
	o.Tags = func() pgtypes.HStore { return m.Tags }

	ctx := context.Background()
	if m.R.CreatorUser != nil {
		FileuploadPoolMods.WithExistingCreatorUser(m.R.CreatorUser).Apply(ctx, o)
	}
	if m.R.CSVFileCSV != nil {
		FileuploadPoolMods.WithExistingCSVFileCSV(m.R.CSVFileCSV).Apply(ctx, o)
	}
	if m.R.Organization != nil {
		FileuploadPoolMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}
	if m.R.PropertyOwnerPhoneE164Phone != nil {
		FileuploadPoolMods.WithExistingPropertyOwnerPhoneE164Phone(m.R.PropertyOwnerPhoneE164Phone).Apply(ctx, o)
	}
	if m.R.ResidentPhoneE164Phone != nil {
		FileuploadPoolMods.WithExistingResidentPhoneE164Phone(m.R.ResidentPhoneE164Phone).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewGeographyColumn(mods ...GeographyColumnMod) *GeographyColumnTemplate {
	return f.NewGeographyColumnWithContext(context.Background(), mods...)
}

func (f *Factory) NewGeographyColumnWithContext(ctx context.Context, mods ...GeographyColumnMod) *GeographyColumnTemplate {
	o := &GeographyColumnTemplate{f: f}

	if f != nil {
		f.baseGeographyColumnMods.Apply(ctx, o)
	}

	GeographyColumnModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingGeographyColumn(m *models.GeographyColumn) *GeographyColumnTemplate {
	o := &GeographyColumnTemplate{f: f, alreadyPersisted: true}

	o.FTableCatalog = func() null.Val[string] { return m.FTableCatalog }
	o.FTableSchema = func() null.Val[string] { return m.FTableSchema }
	o.FTableName = func() null.Val[string] { return m.FTableName }
	o.FGeographyColumn = func() null.Val[string] { return m.FGeographyColumn }
	o.CoordDimension = func() null.Val[int32] { return m.CoordDimension }
	o.Srid = func() null.Val[int32] { return m.Srid }
	o.Type = func() null.Val[string] { return m.Type }

	return o
}

func (f *Factory) NewGeometryColumn(mods ...GeometryColumnMod) *GeometryColumnTemplate {
	return f.NewGeometryColumnWithContext(context.Background(), mods...)
}

func (f *Factory) NewGeometryColumnWithContext(ctx context.Context, mods ...GeometryColumnMod) *GeometryColumnTemplate {
	o := &GeometryColumnTemplate{f: f}

	if f != nil {
		f.baseGeometryColumnMods.Apply(ctx, o)
	}

	GeometryColumnModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingGeometryColumn(m *models.GeometryColumn) *GeometryColumnTemplate {
	o := &GeometryColumnTemplate{f: f, alreadyPersisted: true}

	o.FTableCatalog = func() null.Val[string] { return m.FTableCatalog }
	o.FTableSchema = func() null.Val[string] { return m.FTableSchema }
	o.FTableName = func() null.Val[string] { return m.FTableName }
	o.FGeometryColumn = func() null.Val[string] { return m.FGeometryColumn }
	o.CoordDimension = func() null.Val[int32] { return m.CoordDimension }
	o.Srid = func() null.Val[int32] { return m.Srid }
	o.Type = func() null.Val[string] { return m.Type }

	return o
}

func (f *Factory) NewGooseDBVersion(mods ...GooseDBVersionMod) *GooseDBVersionTemplate {
	return f.NewGooseDBVersionWithContext(context.Background(), mods...)
}

func (f *Factory) NewGooseDBVersionWithContext(ctx context.Context, mods ...GooseDBVersionMod) *GooseDBVersionTemplate {
	o := &GooseDBVersionTemplate{f: f}

	if f != nil {
		f.baseGooseDBVersionMods.Apply(ctx, o)
	}

	GooseDBVersionModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingGooseDBVersion(m *models.GooseDBVersion) *GooseDBVersionTemplate {
	o := &GooseDBVersionTemplate{f: f, alreadyPersisted: true}

	o.ID = func() int32 { return m.ID }
	o.VersionID = func() int64 { return m.VersionID }
	o.IsApplied = func() bool { return m.IsApplied }
	o.Tstamp = func() time.Time { return m.Tstamp }

	return o
}

func (f *Factory) NewH3Aggregation(mods ...H3AggregationMod) *H3AggregationTemplate {
	return f.NewH3AggregationWithContext(context.Background(), mods...)
}

func (f *Factory) NewH3AggregationWithContext(ctx context.Context, mods ...H3AggregationMod) *H3AggregationTemplate {
	o := &H3AggregationTemplate{f: f}

	if f != nil {
		f.baseH3AggregationMods.Apply(ctx, o)
	}

	H3AggregationModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingH3Aggregation(m *models.H3Aggregation) *H3AggregationTemplate {
	o := &H3AggregationTemplate{f: f, alreadyPersisted: true}

	o.ID = func() int32 { return m.ID }
	o.Cell = func() string { return m.Cell }
	o.Count = func() int32 { return m.Count }
	o.Geometry = func() null.Val[string] { return m.Geometry }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.Resolution = func() int32 { return m.Resolution }
	o.Type = func() enums.H3aggregationtype { return m.Type }

	ctx := context.Background()
	if m.R.Organization != nil {
		H3AggregationMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewNoteAudio(mods ...NoteAudioMod) *NoteAudioTemplate {
	return f.NewNoteAudioWithContext(context.Background(), mods...)
}

func (f *Factory) NewNoteAudioWithContext(ctx context.Context, mods ...NoteAudioMod) *NoteAudioTemplate {
	o := &NoteAudioTemplate{f: f}

	if f != nil {
		f.baseNoteAudioMods.Apply(ctx, o)
	}

	NoteAudioModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingNoteAudio(m *models.NoteAudio) *NoteAudioTemplate {
	o := &NoteAudioTemplate{f: f, alreadyPersisted: true}

	o.Created = func() time.Time { return m.Created }
	o.CreatorID = func() int32 { return m.CreatorID }
	o.Deleted = func() null.Val[time.Time] { return m.Deleted }
	o.DeletorID = func() null.Val[int32] { return m.DeletorID }
	o.Duration = func() float32 { return m.Duration }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.Transcription = func() null.Val[string] { return m.Transcription }
	o.TranscriptionUserEdited = func() bool { return m.TranscriptionUserEdited }
	o.Version = func() int32 { return m.Version }
	o.UUID = func() uuid.UUID { return m.UUID }

	ctx := context.Background()
	if m.R.CreatorUser != nil {
		NoteAudioMods.WithExistingCreatorUser(m.R.CreatorUser).Apply(ctx, o)
	}
	if m.R.DeletorUser != nil {
		NoteAudioMods.WithExistingDeletorUser(m.R.DeletorUser).Apply(ctx, o)
	}
	if m.R.Organization != nil {
		NoteAudioMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}
	if len(m.R.NoteAudioBreadcrumbs) > 0 {
		NoteAudioMods.AddExistingNoteAudioBreadcrumbs(m.R.NoteAudioBreadcrumbs...).Apply(ctx, o)
	}
	if len(m.R.NoteAudioData) > 0 {
		NoteAudioMods.AddExistingNoteAudioData(m.R.NoteAudioData...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewNoteAudioBreadcrumb(mods ...NoteAudioBreadcrumbMod) *NoteAudioBreadcrumbTemplate {
	return f.NewNoteAudioBreadcrumbWithContext(context.Background(), mods...)
}

func (f *Factory) NewNoteAudioBreadcrumbWithContext(ctx context.Context, mods ...NoteAudioBreadcrumbMod) *NoteAudioBreadcrumbTemplate {
	o := &NoteAudioBreadcrumbTemplate{f: f}

	if f != nil {
		f.baseNoteAudioBreadcrumbMods.Apply(ctx, o)
	}

	NoteAudioBreadcrumbModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingNoteAudioBreadcrumb(m *models.NoteAudioBreadcrumb) *NoteAudioBreadcrumbTemplate {
	o := &NoteAudioBreadcrumbTemplate{f: f, alreadyPersisted: true}

	o.Cell = func() string { return m.Cell }
	o.Created = func() time.Time { return m.Created }
	o.ManuallySelected = func() bool { return m.ManuallySelected }
	o.NoteAudioVersion = func() int32 { return m.NoteAudioVersion }
	o.NoteAudioUUID = func() uuid.UUID { return m.NoteAudioUUID }
	o.Position = func() int32 { return m.Position }

	ctx := context.Background()
	if m.R.NoteAudio != nil {
		NoteAudioBreadcrumbMods.WithExistingNoteAudio(m.R.NoteAudio).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewNoteAudioDatum(mods ...NoteAudioDatumMod) *NoteAudioDatumTemplate {
	return f.NewNoteAudioDatumWithContext(context.Background(), mods...)
}

func (f *Factory) NewNoteAudioDatumWithContext(ctx context.Context, mods ...NoteAudioDatumMod) *NoteAudioDatumTemplate {
	o := &NoteAudioDatumTemplate{f: f}

	if f != nil {
		f.baseNoteAudioDatumMods.Apply(ctx, o)
	}

	NoteAudioDatumModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingNoteAudioDatum(m *models.NoteAudioDatum) *NoteAudioDatumTemplate {
	o := &NoteAudioDatumTemplate{f: f, alreadyPersisted: true}

	o.Created = func() time.Time { return m.Created }
	o.NoteAudioVersion = func() int32 { return m.NoteAudioVersion }
	o.NoteAudioUUID = func() uuid.UUID { return m.NoteAudioUUID }
	o.Type = func() enums.Audiodatatype { return m.Type }

	ctx := context.Background()
	if m.R.NoteAudio != nil {
		NoteAudioDatumMods.WithExistingNoteAudio(m.R.NoteAudio).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewNoteImage(mods ...NoteImageMod) *NoteImageTemplate {
	return f.NewNoteImageWithContext(context.Background(), mods...)
}

func (f *Factory) NewNoteImageWithContext(ctx context.Context, mods ...NoteImageMod) *NoteImageTemplate {
	o := &NoteImageTemplate{f: f}

	if f != nil {
		f.baseNoteImageMods.Apply(ctx, o)
	}

	NoteImageModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingNoteImage(m *models.NoteImage) *NoteImageTemplate {
	o := &NoteImageTemplate{f: f, alreadyPersisted: true}

	o.Created = func() time.Time { return m.Created }
	o.CreatorID = func() int32 { return m.CreatorID }
	o.Deleted = func() null.Val[time.Time] { return m.Deleted }
	o.DeletorID = func() null.Val[int32] { return m.DeletorID }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.Version = func() int32 { return m.Version }
	o.UUID = func() uuid.UUID { return m.UUID }

	ctx := context.Background()
	if m.R.CreatorUser != nil {
		NoteImageMods.WithExistingCreatorUser(m.R.CreatorUser).Apply(ctx, o)
	}
	if m.R.DeletorUser != nil {
		NoteImageMods.WithExistingDeletorUser(m.R.DeletorUser).Apply(ctx, o)
	}
	if m.R.Organization != nil {
		NoteImageMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}
	if len(m.R.NoteImageBreadcrumbs) > 0 {
		NoteImageMods.AddExistingNoteImageBreadcrumbs(m.R.NoteImageBreadcrumbs...).Apply(ctx, o)
	}
	if len(m.R.NoteImageData) > 0 {
		NoteImageMods.AddExistingNoteImageData(m.R.NoteImageData...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewNoteImageBreadcrumb(mods ...NoteImageBreadcrumbMod) *NoteImageBreadcrumbTemplate {
	return f.NewNoteImageBreadcrumbWithContext(context.Background(), mods...)
}

func (f *Factory) NewNoteImageBreadcrumbWithContext(ctx context.Context, mods ...NoteImageBreadcrumbMod) *NoteImageBreadcrumbTemplate {
	o := &NoteImageBreadcrumbTemplate{f: f}

	if f != nil {
		f.baseNoteImageBreadcrumbMods.Apply(ctx, o)
	}

	NoteImageBreadcrumbModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingNoteImageBreadcrumb(m *models.NoteImageBreadcrumb) *NoteImageBreadcrumbTemplate {
	o := &NoteImageBreadcrumbTemplate{f: f, alreadyPersisted: true}

	o.Cell = func() string { return m.Cell }
	o.Created = func() time.Time { return m.Created }
	o.ManuallySelected = func() bool { return m.ManuallySelected }
	o.NoteImageVersion = func() int32 { return m.NoteImageVersion }
	o.NoteImageUUID = func() uuid.UUID { return m.NoteImageUUID }
	o.Position = func() int32 { return m.Position }

	ctx := context.Background()
	if m.R.NoteImage != nil {
		NoteImageBreadcrumbMods.WithExistingNoteImage(m.R.NoteImage).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewNoteImageDatum(mods ...NoteImageDatumMod) *NoteImageDatumTemplate {
	return f.NewNoteImageDatumWithContext(context.Background(), mods...)
}

func (f *Factory) NewNoteImageDatumWithContext(ctx context.Context, mods ...NoteImageDatumMod) *NoteImageDatumTemplate {
	o := &NoteImageDatumTemplate{f: f}

	if f != nil {
		f.baseNoteImageDatumMods.Apply(ctx, o)
	}

	NoteImageDatumModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingNoteImageDatum(m *models.NoteImageDatum) *NoteImageDatumTemplate {
	o := &NoteImageDatumTemplate{f: f, alreadyPersisted: true}

	o.Created = func() time.Time { return m.Created }
	o.NoteImageVersion = func() int32 { return m.NoteImageVersion }
	o.NoteImageUUID = func() uuid.UUID { return m.NoteImageUUID }
	o.Type = func() enums.Audiodatatype { return m.Type }

	ctx := context.Background()
	if m.R.NoteImage != nil {
		NoteImageDatumMods.WithExistingNoteImage(m.R.NoteImage).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewNotification(mods ...NotificationMod) *NotificationTemplate {
	return f.NewNotificationWithContext(context.Background(), mods...)
}

func (f *Factory) NewNotificationWithContext(ctx context.Context, mods ...NotificationMod) *NotificationTemplate {
	o := &NotificationTemplate{f: f}

	if f != nil {
		f.baseNotificationMods.Apply(ctx, o)
	}

	NotificationModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingNotification(m *models.Notification) *NotificationTemplate {
	o := &NotificationTemplate{f: f, alreadyPersisted: true}

	o.ID = func() int32 { return m.ID }
	o.Created = func() time.Time { return m.Created }
	o.Link = func() string { return m.Link }
	o.Message = func() string { return m.Message }
	o.Type = func() enums.Notificationtype { return m.Type }
	o.UserID = func() int32 { return m.UserID }
	o.ResolvedAt = func() null.Val[time.Time] { return m.ResolvedAt }

	ctx := context.Background()
	if m.R.UserUser != nil {
		NotificationMods.WithExistingUserUser(m.R.UserUser).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewOrganization(mods ...OrganizationMod) *OrganizationTemplate {
	return f.NewOrganizationWithContext(context.Background(), mods...)
}

func (f *Factory) NewOrganizationWithContext(ctx context.Context, mods ...OrganizationMod) *OrganizationTemplate {
	o := &OrganizationTemplate{f: f}

	if f != nil {
		f.baseOrganizationMods.Apply(ctx, o)
	}

	OrganizationModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingOrganization(m *models.Organization) *OrganizationTemplate {
	o := &OrganizationTemplate{f: f, alreadyPersisted: true}

	o.ID = func() int32 { return m.ID }
	o.Name = func() string { return m.Name }
	o.ImportDistrictGid = func() null.Val[int32] { return m.ImportDistrictGid }
	o.Website = func() null.Val[string] { return m.Website }
	o.LogoUUID = func() null.Val[uuid.UUID] { return m.LogoUUID }
	o.Slug = func() null.Val[string] { return m.Slug }
	o.GeneralManagerName = func() null.Val[string] { return m.GeneralManagerName }
	o.MailingAddressCity = func() null.Val[string] { return m.MailingAddressCity }
	o.MailingAddressPostalCode = func() null.Val[string] { return m.MailingAddressPostalCode }
	o.MailingAddressStreet = func() null.Val[string] { return m.MailingAddressStreet }
	o.OfficeAddressCity = func() null.Val[string] { return m.OfficeAddressCity }
	o.OfficeAddressPostalCode = func() null.Val[string] { return m.OfficeAddressPostalCode }
	o.OfficeAddressStreet = func() null.Val[string] { return m.OfficeAddressStreet }
	o.ServiceAreaGeometry = func() null.Val[string] { return m.ServiceAreaGeometry }
	o.ServiceAreaSquareMeters = func() null.Val[decimal.Decimal] { return m.ServiceAreaSquareMeters }
	o.ServiceAreaCentroid = func() null.Val[string] { return m.ServiceAreaCentroid }
	o.ServiceAreaExtent = func() null.Val[string] { return m.ServiceAreaExtent }
	o.OfficeFax = func() null.Val[string] { return m.OfficeFax }
	o.OfficePhone = func() null.Val[string] { return m.OfficePhone }
	o.ServiceAreaXmin = func() null.Val[float64] { return m.ServiceAreaXmin }
	o.ServiceAreaYmin = func() null.Val[float64] { return m.ServiceAreaYmin }
	o.ServiceAreaXmax = func() null.Val[float64] { return m.ServiceAreaXmax }
	o.ServiceAreaYmax = func() null.Val[float64] { return m.ServiceAreaYmax }
	o.ServiceAreaCentroidGeojson = func() null.Val[string] { return m.ServiceAreaCentroidGeojson }
	o.ServiceAreaCentroidX = func() null.Val[float64] { return m.ServiceAreaCentroidX }
	o.ServiceAreaCentroidY = func() null.Val[float64] { return m.ServiceAreaCentroidY }
	o.MailingAddressCountry = func() null.Val[string] { return m.MailingAddressCountry }
	o.MailingAddressState = func() null.Val[string] { return m.MailingAddressState }
	o.OfficeAddressCountry = func() null.Val[string] { return m.OfficeAddressCountry }
	o.OfficeAddressState = func() null.Val[string] { return m.OfficeAddressState }
	o.ArcgisAccountID = func() null.Val[string] { return m.ArcgisAccountID }
	o.FieldseekerServiceFeatureItemID = func() null.Val[string] { return m.FieldseekerServiceFeatureItemID }

	ctx := context.Background()
	if len(m.R.Accounts) > 0 {
		OrganizationMods.AddExistingAccounts(m.R.Accounts...).Apply(ctx, o)
	}
	if len(m.R.AddressMappings) > 0 {
		OrganizationMods.AddExistingAddressMappings(m.R.AddressMappings...).Apply(ctx, o)
	}
	if len(m.R.ParcelMappings) > 0 {
		OrganizationMods.AddExistingParcelMappings(m.R.ParcelMappings...).Apply(ctx, o)
	}
	if len(m.R.EmailContacts) > 0 {
		OrganizationMods.AddExistingEmailContacts(m.R.EmailContacts...).Apply(ctx, o)
	}
	if len(m.R.Phones) > 0 {
		OrganizationMods.AddExistingPhones(m.R.Phones...).Apply(ctx, o)
	}
	if len(m.R.Containerrelates) > 0 {
		OrganizationMods.AddExistingContainerrelates(m.R.Containerrelates...).Apply(ctx, o)
	}
	if len(m.R.Fieldscoutinglogs) > 0 {
		OrganizationMods.AddExistingFieldscoutinglogs(m.R.Fieldscoutinglogs...).Apply(ctx, o)
	}
	if len(m.R.Habitatrelates) > 0 {
		OrganizationMods.AddExistingHabitatrelates(m.R.Habitatrelates...).Apply(ctx, o)
	}
	if len(m.R.Inspectionsamples) > 0 {
		OrganizationMods.AddExistingInspectionsamples(m.R.Inspectionsamples...).Apply(ctx, o)
	}
	if len(m.R.Inspectionsampledetails) > 0 {
		OrganizationMods.AddExistingInspectionsampledetails(m.R.Inspectionsampledetails...).Apply(ctx, o)
	}
	if len(m.R.Linelocations) > 0 {
		OrganizationMods.AddExistingLinelocations(m.R.Linelocations...).Apply(ctx, o)
	}
	if len(m.R.Locationtrackings) > 0 {
		OrganizationMods.AddExistingLocationtrackings(m.R.Locationtrackings...).Apply(ctx, o)
	}
	if len(m.R.Mosquitoinspections) > 0 {
		OrganizationMods.AddExistingMosquitoinspections(m.R.Mosquitoinspections...).Apply(ctx, o)
	}
	if len(m.R.Pointlocations) > 0 {
		OrganizationMods.AddExistingPointlocations(m.R.Pointlocations...).Apply(ctx, o)
	}
	if len(m.R.Polygonlocations) > 0 {
		OrganizationMods.AddExistingPolygonlocations(m.R.Polygonlocations...).Apply(ctx, o)
	}
	if len(m.R.FieldseekerPool) > 0 {
		OrganizationMods.AddExistingFieldseekerPool(m.R.FieldseekerPool...).Apply(ctx, o)
	}
	if len(m.R.Pooldetails) > 0 {
		OrganizationMods.AddExistingPooldetails(m.R.Pooldetails...).Apply(ctx, o)
	}
	if len(m.R.Proposedtreatmentareas) > 0 {
		OrganizationMods.AddExistingProposedtreatmentareas(m.R.Proposedtreatmentareas...).Apply(ctx, o)
	}
	if len(m.R.Qamosquitoinspections) > 0 {
		OrganizationMods.AddExistingQamosquitoinspections(m.R.Qamosquitoinspections...).Apply(ctx, o)
	}
	if len(m.R.Rodentlocations) > 0 {
		OrganizationMods.AddExistingRodentlocations(m.R.Rodentlocations...).Apply(ctx, o)
	}
	if len(m.R.Samplecollections) > 0 {
		OrganizationMods.AddExistingSamplecollections(m.R.Samplecollections...).Apply(ctx, o)
	}
	if len(m.R.Samplelocations) > 0 {
		OrganizationMods.AddExistingSamplelocations(m.R.Samplelocations...).Apply(ctx, o)
	}
	if len(m.R.Servicerequests) > 0 {
		OrganizationMods.AddExistingServicerequests(m.R.Servicerequests...).Apply(ctx, o)
	}
	if len(m.R.Speciesabundances) > 0 {
		OrganizationMods.AddExistingSpeciesabundances(m.R.Speciesabundances...).Apply(ctx, o)
	}
	if len(m.R.Stormdrains) > 0 {
		OrganizationMods.AddExistingStormdrains(m.R.Stormdrains...).Apply(ctx, o)
	}
	if len(m.R.Timecards) > 0 {
		OrganizationMods.AddExistingTimecards(m.R.Timecards...).Apply(ctx, o)
	}
	if len(m.R.Trapdata) > 0 {
		OrganizationMods.AddExistingTrapdata(m.R.Trapdata...).Apply(ctx, o)
	}
	if len(m.R.Traplocations) > 0 {
		OrganizationMods.AddExistingTraplocations(m.R.Traplocations...).Apply(ctx, o)
	}
	if len(m.R.Treatments) > 0 {
		OrganizationMods.AddExistingTreatments(m.R.Treatments...).Apply(ctx, o)
	}
	if len(m.R.Treatmentareas) > 0 {
		OrganizationMods.AddExistingTreatmentareas(m.R.Treatmentareas...).Apply(ctx, o)
	}
	if len(m.R.Zones) > 0 {
		OrganizationMods.AddExistingZones(m.R.Zones...).Apply(ctx, o)
	}
	if len(m.R.Zones2s) > 0 {
		OrganizationMods.AddExistingZones2s(m.R.Zones2s...).Apply(ctx, o)
	}
	if len(m.R.FieldseekerSyncs) > 0 {
		OrganizationMods.AddExistingFieldseekerSyncs(m.R.FieldseekerSyncs...).Apply(ctx, o)
	}
	if len(m.R.Files) > 0 {
		OrganizationMods.AddExistingFiles(m.R.Files...).Apply(ctx, o)
	}
	if len(m.R.FlyoverAerialServices) > 0 {
		OrganizationMods.AddExistingFlyoverAerialServices(m.R.FlyoverAerialServices...).Apply(ctx, o)
	}
	if len(m.R.Pools) > 0 {
		OrganizationMods.AddExistingPools(m.R.Pools...).Apply(ctx, o)
	}
	if len(m.R.H3Aggregations) > 0 {
		OrganizationMods.AddExistingH3Aggregations(m.R.H3Aggregations...).Apply(ctx, o)
	}
	if len(m.R.NoteAudios) > 0 {
		OrganizationMods.AddExistingNoteAudios(m.R.NoteAudios...).Apply(ctx, o)
	}
	if len(m.R.NoteImages) > 0 {
		OrganizationMods.AddExistingNoteImages(m.R.NoteImages...).Apply(ctx, o)
	}
	if m.R.ArcgisAccountAccount != nil {
		OrganizationMods.WithExistingArcgisAccountAccount(m.R.ArcgisAccountAccount).Apply(ctx, o)
	}
	if m.R.FieldseekerServiceFeatureItemServiceFeature != nil {
		OrganizationMods.WithExistingFieldseekerServiceFeatureItemServiceFeature(m.R.FieldseekerServiceFeatureItemServiceFeature).Apply(ctx, o)
	}
	if len(m.R.Nuisances) > 0 {
		OrganizationMods.AddExistingNuisances(m.R.Nuisances...).Apply(ctx, o)
	}
	if len(m.R.PublicreportPool) > 0 {
		OrganizationMods.AddExistingPublicreportPool(m.R.PublicreportPool...).Apply(ctx, o)
	}
	if len(m.R.Quicks) > 0 {
		OrganizationMods.AddExistingQuicks(m.R.Quicks...).Apply(ctx, o)
	}
	if len(m.R.User) > 0 {
		OrganizationMods.AddExistingUser(m.R.User...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewParcel(mods ...ParcelMod) *ParcelTemplate {
	return f.NewParcelWithContext(context.Background(), mods...)
}

func (f *Factory) NewParcelWithContext(ctx context.Context, mods ...ParcelMod) *ParcelTemplate {
	o := &ParcelTemplate{f: f}

	if f != nil {
		f.baseParcelMods.Apply(ctx, o)
	}

	ParcelModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingParcel(m *models.Parcel) *ParcelTemplate {
	o := &ParcelTemplate{f: f, alreadyPersisted: true}

	o.Apn = func() null.Val[string] { return m.Apn }
	o.Description = func() null.Val[string] { return m.Description }
	o.ID = func() int32 { return m.ID }
	o.Geometry = func() string { return m.Geometry }

	ctx := context.Background()
	if len(m.R.Sites) > 0 {
		ParcelMods.AddExistingSites(m.R.Sites...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPool(mods ...PoolMod) *PoolTemplate {
	return f.NewPoolWithContext(context.Background(), mods...)
}

func (f *Factory) NewPoolWithContext(ctx context.Context, mods ...PoolMod) *PoolTemplate {
	o := &PoolTemplate{f: f}

	if f != nil {
		f.basePoolMods.Apply(ctx, o)
	}

	PoolModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPool(m *models.Pool) *PoolTemplate {
	o := &PoolTemplate{f: f, alreadyPersisted: true}

	o.Condition = func() enums.Poolconditiontype { return m.Condition }
	o.Created = func() time.Time { return m.Created }
	o.CreatorID = func() int32 { return m.CreatorID }
	o.ID = func() int32 { return m.ID }
	o.SiteID = func() int32 { return m.SiteID }
	o.SiteVersion = func() int32 { return m.SiteVersion }

	ctx := context.Background()
	if m.R.CreatorUser != nil {
		PoolMods.WithExistingCreatorUser(m.R.CreatorUser).Apply(ctx, o)
	}
	if m.R.Site != nil {
		PoolMods.WithExistingSite(m.R.Site).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportImage(mods ...PublicreportImageMod) *PublicreportImageTemplate {
	return f.NewPublicreportImageWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportImageWithContext(ctx context.Context, mods ...PublicreportImageMod) *PublicreportImageTemplate {
	o := &PublicreportImageTemplate{f: f}

	if f != nil {
		f.basePublicreportImageMods.Apply(ctx, o)
	}

	PublicreportImageModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportImage(m *models.PublicreportImage) *PublicreportImageTemplate {
	o := &PublicreportImageTemplate{f: f, alreadyPersisted: true}

	o.ID = func() int32 { return m.ID }
	o.ContentType = func() string { return m.ContentType }
	o.Created = func() time.Time { return m.Created }
	o.Location = func() null.Val[string] { return m.Location }
	o.ResolutionX = func() int32 { return m.ResolutionX }
	o.ResolutionY = func() int32 { return m.ResolutionY }
	o.StorageUUID = func() uuid.UUID { return m.StorageUUID }
	o.StorageSize = func() int64 { return m.StorageSize }
	o.UploadedFilename = func() string { return m.UploadedFilename }

	ctx := context.Background()
	if len(m.R.ImageExifs) > 0 {
		PublicreportImageMods.AddExistingImageExifs(m.R.ImageExifs...).Apply(ctx, o)
	}
	if len(m.R.Nuisances) > 0 {
		PublicreportImageMods.AddExistingNuisances(m.R.Nuisances...).Apply(ctx, o)
	}
	if len(m.R.Pools) > 0 {
		PublicreportImageMods.AddExistingPools(m.R.Pools...).Apply(ctx, o)
	}
	if len(m.R.Quicks) > 0 {
		PublicreportImageMods.AddExistingQuicks(m.R.Quicks...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportImageExif(mods ...PublicreportImageExifMod) *PublicreportImageExifTemplate {
	return f.NewPublicreportImageExifWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportImageExifWithContext(ctx context.Context, mods ...PublicreportImageExifMod) *PublicreportImageExifTemplate {
	o := &PublicreportImageExifTemplate{f: f}

	if f != nil {
		f.basePublicreportImageExifMods.Apply(ctx, o)
	}

	PublicreportImageExifModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportImageExif(m *models.PublicreportImageExif) *PublicreportImageExifTemplate {
	o := &PublicreportImageExifTemplate{f: f, alreadyPersisted: true}

	o.ImageID = func() int32 { return m.ImageID }
	o.Name = func() string { return m.Name }
	o.Value = func() string { return m.Value }

	ctx := context.Background()
	if m.R.Image != nil {
		PublicreportImageExifMods.WithExistingImage(m.R.Image).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportNotifyEmailNuisance(mods ...PublicreportNotifyEmailNuisanceMod) *PublicreportNotifyEmailNuisanceTemplate {
	return f.NewPublicreportNotifyEmailNuisanceWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportNotifyEmailNuisanceWithContext(ctx context.Context, mods ...PublicreportNotifyEmailNuisanceMod) *PublicreportNotifyEmailNuisanceTemplate {
	o := &PublicreportNotifyEmailNuisanceTemplate{f: f}

	if f != nil {
		f.basePublicreportNotifyEmailNuisanceMods.Apply(ctx, o)
	}

	PublicreportNotifyEmailNuisanceModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportNotifyEmailNuisance(m *models.PublicreportNotifyEmailNuisance) *PublicreportNotifyEmailNuisanceTemplate {
	o := &PublicreportNotifyEmailNuisanceTemplate{f: f, alreadyPersisted: true}

	o.Created = func() time.Time { return m.Created }
	o.Deleted = func() null.Val[time.Time] { return m.Deleted }
	o.NuisanceID = func() int32 { return m.NuisanceID }
	o.EmailAddress = func() string { return m.EmailAddress }

	ctx := context.Background()
	if m.R.EmailAddressEmailContact != nil {
		PublicreportNotifyEmailNuisanceMods.WithExistingEmailAddressEmailContact(m.R.EmailAddressEmailContact).Apply(ctx, o)
	}
	if m.R.Nuisance != nil {
		PublicreportNotifyEmailNuisanceMods.WithExistingNuisance(m.R.Nuisance).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportNotifyEmailPool(mods ...PublicreportNotifyEmailPoolMod) *PublicreportNotifyEmailPoolTemplate {
	return f.NewPublicreportNotifyEmailPoolWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportNotifyEmailPoolWithContext(ctx context.Context, mods ...PublicreportNotifyEmailPoolMod) *PublicreportNotifyEmailPoolTemplate {
	o := &PublicreportNotifyEmailPoolTemplate{f: f}

	if f != nil {
		f.basePublicreportNotifyEmailPoolMods.Apply(ctx, o)
	}

	PublicreportNotifyEmailPoolModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportNotifyEmailPool(m *models.PublicreportNotifyEmailPool) *PublicreportNotifyEmailPoolTemplate {
	o := &PublicreportNotifyEmailPoolTemplate{f: f, alreadyPersisted: true}

	o.Created = func() time.Time { return m.Created }
	o.Deleted = func() null.Val[time.Time] { return m.Deleted }
	o.PoolID = func() int32 { return m.PoolID }
	o.EmailAddress = func() string { return m.EmailAddress }

	ctx := context.Background()
	if m.R.EmailAddressEmailContact != nil {
		PublicreportNotifyEmailPoolMods.WithExistingEmailAddressEmailContact(m.R.EmailAddressEmailContact).Apply(ctx, o)
	}
	if m.R.Pool != nil {
		PublicreportNotifyEmailPoolMods.WithExistingPool(m.R.Pool).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportNotifyPhoneNuisance(mods ...PublicreportNotifyPhoneNuisanceMod) *PublicreportNotifyPhoneNuisanceTemplate {
	return f.NewPublicreportNotifyPhoneNuisanceWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportNotifyPhoneNuisanceWithContext(ctx context.Context, mods ...PublicreportNotifyPhoneNuisanceMod) *PublicreportNotifyPhoneNuisanceTemplate {
	o := &PublicreportNotifyPhoneNuisanceTemplate{f: f}

	if f != nil {
		f.basePublicreportNotifyPhoneNuisanceMods.Apply(ctx, o)
	}

	PublicreportNotifyPhoneNuisanceModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportNotifyPhoneNuisance(m *models.PublicreportNotifyPhoneNuisance) *PublicreportNotifyPhoneNuisanceTemplate {
	o := &PublicreportNotifyPhoneNuisanceTemplate{f: f, alreadyPersisted: true}

	o.Created = func() time.Time { return m.Created }
	o.Deleted = func() null.Val[time.Time] { return m.Deleted }
	o.NuisanceID = func() int32 { return m.NuisanceID }
	o.PhoneE164 = func() string { return m.PhoneE164 }

	ctx := context.Background()
	if m.R.Nuisance != nil {
		PublicreportNotifyPhoneNuisanceMods.WithExistingNuisance(m.R.Nuisance).Apply(ctx, o)
	}
	if m.R.PhoneE164Phone != nil {
		PublicreportNotifyPhoneNuisanceMods.WithExistingPhoneE164Phone(m.R.PhoneE164Phone).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportNotifyPhonePool(mods ...PublicreportNotifyPhonePoolMod) *PublicreportNotifyPhonePoolTemplate {
	return f.NewPublicreportNotifyPhonePoolWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportNotifyPhonePoolWithContext(ctx context.Context, mods ...PublicreportNotifyPhonePoolMod) *PublicreportNotifyPhonePoolTemplate {
	o := &PublicreportNotifyPhonePoolTemplate{f: f}

	if f != nil {
		f.basePublicreportNotifyPhonePoolMods.Apply(ctx, o)
	}

	PublicreportNotifyPhonePoolModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportNotifyPhonePool(m *models.PublicreportNotifyPhonePool) *PublicreportNotifyPhonePoolTemplate {
	o := &PublicreportNotifyPhonePoolTemplate{f: f, alreadyPersisted: true}

	o.Created = func() time.Time { return m.Created }
	o.Deleted = func() null.Val[time.Time] { return m.Deleted }
	o.PhoneE164 = func() string { return m.PhoneE164 }
	o.PoolID = func() int32 { return m.PoolID }

	ctx := context.Background()
	if m.R.PhoneE164Phone != nil {
		PublicreportNotifyPhonePoolMods.WithExistingPhoneE164Phone(m.R.PhoneE164Phone).Apply(ctx, o)
	}
	if m.R.Pool != nil {
		PublicreportNotifyPhonePoolMods.WithExistingPool(m.R.Pool).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportNuisance(mods ...PublicreportNuisanceMod) *PublicreportNuisanceTemplate {
	return f.NewPublicreportNuisanceWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportNuisanceWithContext(ctx context.Context, mods ...PublicreportNuisanceMod) *PublicreportNuisanceTemplate {
	o := &PublicreportNuisanceTemplate{f: f}

	if f != nil {
		f.basePublicreportNuisanceMods.Apply(ctx, o)
	}

	PublicreportNuisanceModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportNuisance(m *models.PublicreportNuisance) *PublicreportNuisanceTemplate {
	o := &PublicreportNuisanceTemplate{f: f, alreadyPersisted: true}

	o.ID = func() int32 { return m.ID }
	o.AdditionalInfo = func() string { return m.AdditionalInfo }
	o.Created = func() time.Time { return m.Created }
	o.Duration = func() enums.PublicreportNuisancedurationtype { return m.Duration }
	o.SourceContainer = func() bool { return m.SourceContainer }
	o.SourceDescription = func() string { return m.SourceDescription }
	o.SourceStagnant = func() bool { return m.SourceStagnant }
	o.PublicID = func() string { return m.PublicID }
	o.ReporterEmail = func() null.Val[string] { return m.ReporterEmail }
	o.ReporterName = func() null.Val[string] { return m.ReporterName }
	o.ReporterPhone = func() null.Val[string] { return m.ReporterPhone }
	o.Address = func() string { return m.Address }
	o.Location = func() null.Val[string] { return m.Location }
	o.Status = func() enums.PublicreportReportstatustype { return m.Status }
	o.OrganizationID = func() null.Val[int32] { return m.OrganizationID }
	o.SourceGutter = func() bool { return m.SourceGutter }
	o.H3cell = func() null.Val[string] { return m.H3cell }
	o.AddressCountry = func() string { return m.AddressCountry }
	o.AddressPlace = func() string { return m.AddressPlace }
	o.AddressPostcode = func() string { return m.AddressPostcode }
	o.AddressRegion = func() string { return m.AddressRegion }
	o.AddressStreet = func() string { return m.AddressStreet }
	o.IsLocationBackyard = func() bool { return m.IsLocationBackyard }
	o.IsLocationFrontyard = func() bool { return m.IsLocationFrontyard }
	o.IsLocationGarden = func() bool { return m.IsLocationGarden }
	o.IsLocationOther = func() bool { return m.IsLocationOther }
	o.IsLocationPool = func() bool { return m.IsLocationPool }
	o.MapZoom = func() float32 { return m.MapZoom }
	o.TodEarly = func() bool { return m.TodEarly }
	o.TodDay = func() bool { return m.TodDay }
	o.TodEvening = func() bool { return m.TodEvening }
	o.TodNight = func() bool { return m.TodNight }
	o.LatlngAccuracyType = func() enums.PublicreportAccuracytype { return m.LatlngAccuracyType }
	o.LatlngAccuracyValue = func() float32 { return m.LatlngAccuracyValue }
	o.ReporterContactConsent = func() null.Val[bool] { return m.ReporterContactConsent }

	ctx := context.Background()
	if len(m.R.NotifyEmailNuisances) > 0 {
		PublicreportNuisanceMods.AddExistingNotifyEmailNuisances(m.R.NotifyEmailNuisances...).Apply(ctx, o)
	}
	if len(m.R.NotifyPhoneNuisances) > 0 {
		PublicreportNuisanceMods.AddExistingNotifyPhoneNuisances(m.R.NotifyPhoneNuisances...).Apply(ctx, o)
	}
	if m.R.Organization != nil {
		PublicreportNuisanceMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}
	if len(m.R.Images) > 0 {
		PublicreportNuisanceMods.AddExistingImages(m.R.Images...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportNuisanceImage(mods ...PublicreportNuisanceImageMod) *PublicreportNuisanceImageTemplate {
	return f.NewPublicreportNuisanceImageWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportNuisanceImageWithContext(ctx context.Context, mods ...PublicreportNuisanceImageMod) *PublicreportNuisanceImageTemplate {
	o := &PublicreportNuisanceImageTemplate{f: f}

	if f != nil {
		f.basePublicreportNuisanceImageMods.Apply(ctx, o)
	}

	PublicreportNuisanceImageModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportNuisanceImage(m *models.PublicreportNuisanceImage) *PublicreportNuisanceImageTemplate {
	o := &PublicreportNuisanceImageTemplate{f: f, alreadyPersisted: true}

	o.ImageID = func() int32 { return m.ImageID }
	o.NuisanceID = func() int32 { return m.NuisanceID }

	ctx := context.Background()
	if m.R.Image != nil {
		PublicreportNuisanceImageMods.WithExistingImage(m.R.Image).Apply(ctx, o)
	}
	if m.R.Nuisance != nil {
		PublicreportNuisanceImageMods.WithExistingNuisance(m.R.Nuisance).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportPool(mods ...PublicreportPoolMod) *PublicreportPoolTemplate {
	return f.NewPublicreportPoolWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportPoolWithContext(ctx context.Context, mods ...PublicreportPoolMod) *PublicreportPoolTemplate {
	o := &PublicreportPoolTemplate{f: f}

	if f != nil {
		f.basePublicreportPoolMods.Apply(ctx, o)
	}

	PublicreportPoolModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportPool(m *models.PublicreportPool) *PublicreportPoolTemplate {
	o := &PublicreportPoolTemplate{f: f, alreadyPersisted: true}

	o.ID = func() int32 { return m.ID }
	o.AccessComments = func() string { return m.AccessComments }
	o.AccessGate = func() bool { return m.AccessGate }
	o.AccessFence = func() bool { return m.AccessFence }
	o.AccessLocked = func() bool { return m.AccessLocked }
	o.AccessDog = func() bool { return m.AccessDog }
	o.AccessOther = func() bool { return m.AccessOther }
	o.Address = func() string { return m.Address }
	o.AddressCountry = func() string { return m.AddressCountry }
	o.AddressPostCode = func() string { return m.AddressPostCode }
	o.AddressPlace = func() string { return m.AddressPlace }
	o.AddressStreet = func() string { return m.AddressStreet }
	o.AddressRegion = func() string { return m.AddressRegion }
	o.Comments = func() string { return m.Comments }
	o.Created = func() time.Time { return m.Created }
	o.H3cell = func() null.Val[string] { return m.H3cell }
	o.HasAdult = func() bool { return m.HasAdult }
	o.HasLarvae = func() bool { return m.HasLarvae }
	o.HasPupae = func() bool { return m.HasPupae }
	o.Location = func() null.Val[string] { return m.Location }
	o.MapZoom = func() float32 { return m.MapZoom }
	o.OwnerEmail = func() string { return m.OwnerEmail }
	o.OwnerName = func() string { return m.OwnerName }
	o.OwnerPhone = func() string { return m.OwnerPhone }
	o.PublicID = func() string { return m.PublicID }
	o.ReporterEmail = func() string { return m.ReporterEmail }
	o.ReporterName = func() string { return m.ReporterName }
	o.ReporterPhone = func() string { return m.ReporterPhone }
	o.Status = func() enums.PublicreportReportstatustype { return m.Status }
	o.OrganizationID = func() null.Val[int32] { return m.OrganizationID }
	o.HasBackyardPermission = func() bool { return m.HasBackyardPermission }
	o.IsReporterConfidential = func() bool { return m.IsReporterConfidential }
	o.IsReporterOwner = func() bool { return m.IsReporterOwner }
	o.ReporterContactConsent = func() null.Val[bool] { return m.ReporterContactConsent }

	ctx := context.Background()
	if len(m.R.NotifyEmailPools) > 0 {
		PublicreportPoolMods.AddExistingNotifyEmailPools(m.R.NotifyEmailPools...).Apply(ctx, o)
	}
	if len(m.R.NotifyPhonePools) > 0 {
		PublicreportPoolMods.AddExistingNotifyPhonePools(m.R.NotifyPhonePools...).Apply(ctx, o)
	}
	if m.R.Organization != nil {
		PublicreportPoolMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}
	if len(m.R.Images) > 0 {
		PublicreportPoolMods.AddExistingImages(m.R.Images...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportPoolImage(mods ...PublicreportPoolImageMod) *PublicreportPoolImageTemplate {
	return f.NewPublicreportPoolImageWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportPoolImageWithContext(ctx context.Context, mods ...PublicreportPoolImageMod) *PublicreportPoolImageTemplate {
	o := &PublicreportPoolImageTemplate{f: f}

	if f != nil {
		f.basePublicreportPoolImageMods.Apply(ctx, o)
	}

	PublicreportPoolImageModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportPoolImage(m *models.PublicreportPoolImage) *PublicreportPoolImageTemplate {
	o := &PublicreportPoolImageTemplate{f: f, alreadyPersisted: true}

	o.ImageID = func() int32 { return m.ImageID }
	o.PoolID = func() int32 { return m.PoolID }

	ctx := context.Background()
	if m.R.Image != nil {
		PublicreportPoolImageMods.WithExistingImage(m.R.Image).Apply(ctx, o)
	}
	if m.R.Pool != nil {
		PublicreportPoolImageMods.WithExistingPool(m.R.Pool).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportQuick(mods ...PublicreportQuickMod) *PublicreportQuickTemplate {
	return f.NewPublicreportQuickWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportQuickWithContext(ctx context.Context, mods ...PublicreportQuickMod) *PublicreportQuickTemplate {
	o := &PublicreportQuickTemplate{f: f}

	if f != nil {
		f.basePublicreportQuickMods.Apply(ctx, o)
	}

	PublicreportQuickModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportQuick(m *models.PublicreportQuick) *PublicreportQuickTemplate {
	o := &PublicreportQuickTemplate{f: f, alreadyPersisted: true}

	o.ID = func() int32 { return m.ID }
	o.Created = func() time.Time { return m.Created }
	o.Comments = func() string { return m.Comments }
	o.Location = func() null.Val[string] { return m.Location }
	o.H3cell = func() null.Val[string] { return m.H3cell }
	o.PublicID = func() string { return m.PublicID }
	o.ReporterEmail = func() string { return m.ReporterEmail }
	o.ReporterPhone = func() string { return m.ReporterPhone }
	o.Address = func() string { return m.Address }
	o.Status = func() enums.PublicreportReportstatustype { return m.Status }
	o.OrganizationID = func() null.Val[int32] { return m.OrganizationID }

	ctx := context.Background()
	if m.R.Organization != nil {
		PublicreportQuickMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}
	if len(m.R.Images) > 0 {
		PublicreportQuickMods.AddExistingImages(m.R.Images...).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportQuickImage(mods ...PublicreportQuickImageMod) *PublicreportQuickImageTemplate {
	return f.NewPublicreportQuickImageWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportQuickImageWithContext(ctx context.Context, mods ...PublicreportQuickImageMod) *PublicreportQuickImageTemplate {
	o := &PublicreportQuickImageTemplate{f: f}

	if f != nil {
		f.basePublicreportQuickImageMods.Apply(ctx, o)
	}

	PublicreportQuickImageModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportQuickImage(m *models.PublicreportQuickImage) *PublicreportQuickImageTemplate {
	o := &PublicreportQuickImageTemplate{f: f, alreadyPersisted: true}

	o.ImageID = func() int32 { return m.ImageID }
	o.QuickID = func() int32 { return m.QuickID }

	ctx := context.Background()
	if m.R.Image != nil {
		PublicreportQuickImageMods.WithExistingImage(m.R.Image).Apply(ctx, o)
	}
	if m.R.Quick != nil {
		PublicreportQuickImageMods.WithExistingQuick(m.R.Quick).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportReportLocation(mods ...PublicreportReportLocationMod) *PublicreportReportLocationTemplate {
	return f.NewPublicreportReportLocationWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportReportLocationWithContext(ctx context.Context, mods ...PublicreportReportLocationMod) *PublicreportReportLocationTemplate {
	o := &PublicreportReportLocationTemplate{f: f}

	if f != nil {
		f.basePublicreportReportLocationMods.Apply(ctx, o)
	}

	PublicreportReportLocationModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportReportLocation(m *models.PublicreportReportLocation) *PublicreportReportLocationTemplate {
	o := &PublicreportReportLocationTemplate{f: f, alreadyPersisted: true}

	o.ID = func() null.Val[int64] { return m.ID }
	o.TableName = func() null.Val[string] { return m.TableName }
	o.Address = func() null.Val[string] { return m.Address }
	o.Created = func() null.Val[time.Time] { return m.Created }
	o.Location = func() null.Val[string] { return m.Location }
	o.PublicID = func() null.Val[string] { return m.PublicID }
	o.Status = func() null.Val[enums.PublicreportReportstatustype] { return m.Status }

	return o
}

func (f *Factory) NewPublicreportSubscribeEmail(mods ...PublicreportSubscribeEmailMod) *PublicreportSubscribeEmailTemplate {
	return f.NewPublicreportSubscribeEmailWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportSubscribeEmailWithContext(ctx context.Context, mods ...PublicreportSubscribeEmailMod) *PublicreportSubscribeEmailTemplate {
	o := &PublicreportSubscribeEmailTemplate{f: f}

	if f != nil {
		f.basePublicreportSubscribeEmailMods.Apply(ctx, o)
	}

	PublicreportSubscribeEmailModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportSubscribeEmail(m *models.PublicreportSubscribeEmail) *PublicreportSubscribeEmailTemplate {
	o := &PublicreportSubscribeEmailTemplate{f: f, alreadyPersisted: true}

	o.Created = func() time.Time { return m.Created }
	o.Deleted = func() null.Val[time.Time] { return m.Deleted }
	o.EmailAddress = func() string { return m.EmailAddress }
	o.ID = func() int32 { return m.ID }

	ctx := context.Background()
	if m.R.EmailAddressEmailContact != nil {
		PublicreportSubscribeEmailMods.WithExistingEmailAddressEmailContact(m.R.EmailAddressEmailContact).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewPublicreportSubscribePhone(mods ...PublicreportSubscribePhoneMod) *PublicreportSubscribePhoneTemplate {
	return f.NewPublicreportSubscribePhoneWithContext(context.Background(), mods...)
}

func (f *Factory) NewPublicreportSubscribePhoneWithContext(ctx context.Context, mods ...PublicreportSubscribePhoneMod) *PublicreportSubscribePhoneTemplate {
	o := &PublicreportSubscribePhoneTemplate{f: f}

	if f != nil {
		f.basePublicreportSubscribePhoneMods.Apply(ctx, o)
	}

	PublicreportSubscribePhoneModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingPublicreportSubscribePhone(m *models.PublicreportSubscribePhone) *PublicreportSubscribePhoneTemplate {
	o := &PublicreportSubscribePhoneTemplate{f: f, alreadyPersisted: true}

	o.Created = func() time.Time { return m.Created }
	o.Deleted = func() null.Val[time.Time] { return m.Deleted }
	o.ID = func() int32 { return m.ID }
	o.PhoneE164 = func() string { return m.PhoneE164 }

	ctx := context.Background()
	if m.R.PhoneE164Phone != nil {
		PublicreportSubscribePhoneMods.WithExistingPhoneE164Phone(m.R.PhoneE164Phone).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewRasterColumn(mods ...RasterColumnMod) *RasterColumnTemplate {
	return f.NewRasterColumnWithContext(context.Background(), mods...)
}

func (f *Factory) NewRasterColumnWithContext(ctx context.Context, mods ...RasterColumnMod) *RasterColumnTemplate {
	o := &RasterColumnTemplate{f: f}

	if f != nil {
		f.baseRasterColumnMods.Apply(ctx, o)
	}

	RasterColumnModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingRasterColumn(m *models.RasterColumn) *RasterColumnTemplate {
	o := &RasterColumnTemplate{f: f, alreadyPersisted: true}

	o.RTableCatalog = func() null.Val[string] { return m.RTableCatalog }
	o.RTableSchema = func() null.Val[string] { return m.RTableSchema }
	o.RTableName = func() null.Val[string] { return m.RTableName }
	o.RRasterColumn = func() null.Val[string] { return m.RRasterColumn }
	o.Srid = func() null.Val[int32] { return m.Srid }
	o.ScaleX = func() null.Val[float64] { return m.ScaleX }
	o.ScaleY = func() null.Val[float64] { return m.ScaleY }
	o.BlocksizeX = func() null.Val[int32] { return m.BlocksizeX }
	o.BlocksizeY = func() null.Val[int32] { return m.BlocksizeY }
	o.SameAlignment = func() null.Val[bool] { return m.SameAlignment }
	o.RegularBlocking = func() null.Val[bool] { return m.RegularBlocking }
	o.NumBands = func() null.Val[int32] { return m.NumBands }
	o.PixelTypes = func() null.Val[pq.StringArray] { return m.PixelTypes }
	o.NodataValues = func() null.Val[pq.Float64Array] { return m.NodataValues }
	o.OutDB = func() null.Val[pq.BoolArray] { return m.OutDB }
	o.Extent = func() null.Val[string] { return m.Extent }
	o.SpatialIndex = func() null.Val[bool] { return m.SpatialIndex }

	return o
}

func (f *Factory) NewRasterOverview(mods ...RasterOverviewMod) *RasterOverviewTemplate {
	return f.NewRasterOverviewWithContext(context.Background(), mods...)
}

func (f *Factory) NewRasterOverviewWithContext(ctx context.Context, mods ...RasterOverviewMod) *RasterOverviewTemplate {
	o := &RasterOverviewTemplate{f: f}

	if f != nil {
		f.baseRasterOverviewMods.Apply(ctx, o)
	}

	RasterOverviewModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingRasterOverview(m *models.RasterOverview) *RasterOverviewTemplate {
	o := &RasterOverviewTemplate{f: f, alreadyPersisted: true}

	o.OTableCatalog = func() null.Val[string] { return m.OTableCatalog }
	o.OTableSchema = func() null.Val[string] { return m.OTableSchema }
	o.OTableName = func() null.Val[string] { return m.OTableName }
	o.ORasterColumn = func() null.Val[string] { return m.ORasterColumn }
	o.RTableCatalog = func() null.Val[string] { return m.RTableCatalog }
	o.RTableSchema = func() null.Val[string] { return m.RTableSchema }
	o.RTableName = func() null.Val[string] { return m.RTableName }
	o.RRasterColumn = func() null.Val[string] { return m.RRasterColumn }
	o.OverviewFactor = func() null.Val[int32] { return m.OverviewFactor }

	return o
}

func (f *Factory) NewResident(mods ...ResidentMod) *ResidentTemplate {
	return f.NewResidentWithContext(context.Background(), mods...)
}

func (f *Factory) NewResidentWithContext(ctx context.Context, mods ...ResidentMod) *ResidentTemplate {
	o := &ResidentTemplate{f: f}

	if f != nil {
		f.baseResidentMods.Apply(ctx, o)
	}

	ResidentModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingResident(m *models.Resident) *ResidentTemplate {
	o := &ResidentTemplate{f: f, alreadyPersisted: true}

	o.AddressID = func() int32 { return m.AddressID }
	o.Created = func() time.Time { return m.Created }
	o.Creator = func() int32 { return m.Creator }
	o.ID = func() int32 { return m.ID }
	o.Name = func() string { return m.Name }
	o.PhoneMobile = func() null.Val[string] { return m.PhoneMobile }
	o.SiteID = func() int32 { return m.SiteID }
	o.SiteVersion = func() int32 { return m.SiteVersion }

	ctx := context.Background()
	if m.R.Address != nil {
		ResidentMods.WithExistingAddress(m.R.Address).Apply(ctx, o)
	}
	if m.R.CreatorUser != nil {
		ResidentMods.WithExistingCreatorUser(m.R.CreatorUser).Apply(ctx, o)
	}
	if m.R.PhoneMobilePhone != nil {
		ResidentMods.WithExistingPhoneMobilePhone(m.R.PhoneMobilePhone).Apply(ctx, o)
	}
	if m.R.Site != nil {
		ResidentMods.WithExistingSite(m.R.Site).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewSession(mods ...SessionMod) *SessionTemplate {
	return f.NewSessionWithContext(context.Background(), mods...)
}

func (f *Factory) NewSessionWithContext(ctx context.Context, mods ...SessionMod) *SessionTemplate {
	o := &SessionTemplate{f: f}

	if f != nil {
		f.baseSessionMods.Apply(ctx, o)
	}

	SessionModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingSession(m *models.Session) *SessionTemplate {
	o := &SessionTemplate{f: f, alreadyPersisted: true}

	o.Token = func() string { return m.Token }
	o.Data = func() []byte { return m.Data }
	o.Expiry = func() time.Time { return m.Expiry }

	return o
}

func (f *Factory) NewSite(mods ...SiteMod) *SiteTemplate {
	return f.NewSiteWithContext(context.Background(), mods...)
}

func (f *Factory) NewSiteWithContext(ctx context.Context, mods ...SiteMod) *SiteTemplate {
	o := &SiteTemplate{f: f}

	if f != nil {
		f.baseSiteMods.Apply(ctx, o)
	}

	SiteModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingSite(m *models.Site) *SiteTemplate {
	o := &SiteTemplate{f: f, alreadyPersisted: true}

	o.AddressID = func() int32 { return m.AddressID }
	o.Created = func() time.Time { return m.Created }
	o.CreatorID = func() int32 { return m.CreatorID }
	o.FileID = func() null.Val[int32] { return m.FileID }
	o.ID = func() int32 { return m.ID }
	o.Notes = func() string { return m.Notes }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.OwnerName = func() string { return m.OwnerName }
	o.OwnerPhoneE164 = func() null.Val[string] { return m.OwnerPhoneE164 }
	o.ParcelID = func() int32 { return m.ParcelID }
	o.ResidentOwned = func() null.Val[bool] { return m.ResidentOwned }
	o.Tags = func() pgtypes.HStore { return m.Tags }
	o.Version = func() int32 { return m.Version }

	ctx := context.Background()
	if len(m.R.ComplianceReportRequests) > 0 {
		SiteMods.AddExistingComplianceReportRequests(m.R.ComplianceReportRequests...).Apply(ctx, o)
	}
	if len(m.R.Pools) > 0 {
		SiteMods.AddExistingPools(m.R.Pools...).Apply(ctx, o)
	}
	if len(m.R.Residents) > 0 {
		SiteMods.AddExistingResidents(m.R.Residents...).Apply(ctx, o)
	}
	if m.R.Address != nil {
		SiteMods.WithExistingAddress(m.R.Address).Apply(ctx, o)
	}
	if m.R.CreatorUser != nil {
		SiteMods.WithExistingCreatorUser(m.R.CreatorUser).Apply(ctx, o)
	}
	if m.R.File != nil {
		SiteMods.WithExistingFile(m.R.File).Apply(ctx, o)
	}
	if m.R.Parcel != nil {
		SiteMods.WithExistingParcel(m.R.Parcel).Apply(ctx, o)
	}

	return o
}

func (f *Factory) NewSpatialRefSy(mods ...SpatialRefSyMod) *SpatialRefSyTemplate {
	return f.NewSpatialRefSyWithContext(context.Background(), mods...)
}

func (f *Factory) NewSpatialRefSyWithContext(ctx context.Context, mods ...SpatialRefSyMod) *SpatialRefSyTemplate {
	o := &SpatialRefSyTemplate{f: f}

	if f != nil {
		f.baseSpatialRefSyMods.Apply(ctx, o)
	}

	SpatialRefSyModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingSpatialRefSy(m *models.SpatialRefSy) *SpatialRefSyTemplate {
	o := &SpatialRefSyTemplate{f: f, alreadyPersisted: true}

	o.Srid = func() int32 { return m.Srid }
	o.AuthName = func() null.Val[string] { return m.AuthName }
	o.AuthSrid = func() null.Val[int32] { return m.AuthSrid }
	o.Srtext = func() null.Val[string] { return m.Srtext }
	o.Proj4text = func() null.Val[string] { return m.Proj4text }

	return o
}

func (f *Factory) NewUser(mods ...UserMod) *UserTemplate {
	return f.NewUserWithContext(context.Background(), mods...)
}

func (f *Factory) NewUserWithContext(ctx context.Context, mods ...UserMod) *UserTemplate {
	o := &UserTemplate{f: f}

	if f != nil {
		f.baseUserMods.Apply(ctx, o)
	}

	UserModSlice(mods).Apply(ctx, o)

	return o
}

func (f *Factory) FromExistingUser(m *models.User) *UserTemplate {
	o := &UserTemplate{f: f, alreadyPersisted: true}

	o.ID = func() int32 { return m.ID }
	o.ArcgisAccessToken = func() null.Val[string] { return m.ArcgisAccessToken }
	o.ArcgisLicense = func() null.Val[enums.Arcgislicensetype] { return m.ArcgisLicense }
	o.ArcgisRefreshToken = func() null.Val[string] { return m.ArcgisRefreshToken }
	o.ArcgisRefreshTokenExpires = func() null.Val[time.Time] { return m.ArcgisRefreshTokenExpires }
	o.ArcgisRole = func() null.Val[string] { return m.ArcgisRole }
	o.DisplayName = func() string { return m.DisplayName }
	o.Email = func() null.Val[string] { return m.Email }
	o.OrganizationID = func() int32 { return m.OrganizationID }
	o.Username = func() string { return m.Username }
	o.PasswordHashType = func() enums.Hashtype { return m.PasswordHashType }
	o.PasswordHash = func() string { return m.PasswordHash }
	o.Role = func() enums.Userrole { return m.Role }

	ctx := context.Background()
	if len(m.R.UserOauthTokens) > 0 {
		UserMods.AddExistingUserOauthTokens(m.R.UserOauthTokens...).Apply(ctx, o)
	}
	if len(m.R.PublicUserUser) > 0 {
		UserMods.AddExistingPublicUserUser(m.R.PublicUserUser...).Apply(ctx, o)
	}
	if len(m.R.CreatorComplianceReportRequests) > 0 {
		UserMods.AddExistingCreatorComplianceReportRequests(m.R.CreatorComplianceReportRequests...).Apply(ctx, o)
	}
	if len(m.R.CreatorFiles) > 0 {
		UserMods.AddExistingCreatorFiles(m.R.CreatorFiles...).Apply(ctx, o)
	}
	if len(m.R.CreatorFlyoverAerialServices) > 0 {
		UserMods.AddExistingCreatorFlyoverAerialServices(m.R.CreatorFlyoverAerialServices...).Apply(ctx, o)
	}
	if len(m.R.FileuploadPool) > 0 {
		UserMods.AddExistingFileuploadPool(m.R.FileuploadPool...).Apply(ctx, o)
	}
	if len(m.R.CreatorNoteAudios) > 0 {
		UserMods.AddExistingCreatorNoteAudios(m.R.CreatorNoteAudios...).Apply(ctx, o)
	}
	if len(m.R.DeletorNoteAudios) > 0 {
		UserMods.AddExistingDeletorNoteAudios(m.R.DeletorNoteAudios...).Apply(ctx, o)
	}
	if len(m.R.CreatorNoteImages) > 0 {
		UserMods.AddExistingCreatorNoteImages(m.R.CreatorNoteImages...).Apply(ctx, o)
	}
	if len(m.R.DeletorNoteImages) > 0 {
		UserMods.AddExistingDeletorNoteImages(m.R.DeletorNoteImages...).Apply(ctx, o)
	}
	if len(m.R.UserNotifications) > 0 {
		UserMods.AddExistingUserNotifications(m.R.UserNotifications...).Apply(ctx, o)
	}
	if len(m.R.CreatorPools) > 0 {
		UserMods.AddExistingCreatorPools(m.R.CreatorPools...).Apply(ctx, o)
	}
	if len(m.R.CreatorResidents) > 0 {
		UserMods.AddExistingCreatorResidents(m.R.CreatorResidents...).Apply(ctx, o)
	}
	if len(m.R.CreatorSites) > 0 {
		UserMods.AddExistingCreatorSites(m.R.CreatorSites...).Apply(ctx, o)
	}
	if m.R.Organization != nil {
		UserMods.WithExistingOrganization(m.R.Organization).Apply(ctx, o)
	}

	return o
}

func (f *Factory) ClearBaseAddressMods() {
	f.baseAddressMods = nil
}

func (f *Factory) AddBaseAddressMod(mods ...AddressMod) {
	f.baseAddressMods = append(f.baseAddressMods, mods...)
}

func (f *Factory) ClearBaseArcgisAccountMods() {
	f.baseArcgisAccountMods = nil
}

func (f *Factory) AddBaseArcgisAccountMod(mods ...ArcgisAccountMod) {
	f.baseArcgisAccountMods = append(f.baseArcgisAccountMods, mods...)
}

func (f *Factory) ClearBaseArcgisAddressMappingMods() {
	f.baseArcgisAddressMappingMods = nil
}

func (f *Factory) AddBaseArcgisAddressMappingMod(mods ...ArcgisAddressMappingMod) {
	f.baseArcgisAddressMappingMods = append(f.baseArcgisAddressMappingMods, mods...)
}

func (f *Factory) ClearBaseArcgisLayerMods() {
	f.baseArcgisLayerMods = nil
}

func (f *Factory) AddBaseArcgisLayerMod(mods ...ArcgisLayerMod) {
	f.baseArcgisLayerMods = append(f.baseArcgisLayerMods, mods...)
}

func (f *Factory) ClearBaseArcgisLayerFieldMods() {
	f.baseArcgisLayerFieldMods = nil
}

func (f *Factory) AddBaseArcgisLayerFieldMod(mods ...ArcgisLayerFieldMod) {
	f.baseArcgisLayerFieldMods = append(f.baseArcgisLayerFieldMods, mods...)
}

func (f *Factory) ClearBaseArcgisOauthTokenMods() {
	f.baseArcgisOauthTokenMods = nil
}

func (f *Factory) AddBaseArcgisOauthTokenMod(mods ...ArcgisOauthTokenMod) {
	f.baseArcgisOauthTokenMods = append(f.baseArcgisOauthTokenMods, mods...)
}

func (f *Factory) ClearBaseArcgisParcelMappingMods() {
	f.baseArcgisParcelMappingMods = nil
}

func (f *Factory) AddBaseArcgisParcelMappingMod(mods ...ArcgisParcelMappingMod) {
	f.baseArcgisParcelMappingMods = append(f.baseArcgisParcelMappingMods, mods...)
}

func (f *Factory) ClearBaseArcgisServiceFeatureMods() {
	f.baseArcgisServiceFeatureMods = nil
}

func (f *Factory) AddBaseArcgisServiceFeatureMod(mods ...ArcgisServiceFeatureMod) {
	f.baseArcgisServiceFeatureMods = append(f.baseArcgisServiceFeatureMods, mods...)
}

func (f *Factory) ClearBaseArcgisServiceMapMods() {
	f.baseArcgisServiceMapMods = nil
}

func (f *Factory) AddBaseArcgisServiceMapMod(mods ...ArcgisServiceMapMod) {
	f.baseArcgisServiceMapMods = append(f.baseArcgisServiceMapMods, mods...)
}

func (f *Factory) ClearBaseArcgisUserMods() {
	f.baseArcgisUserMods = nil
}

func (f *Factory) AddBaseArcgisUserMod(mods ...ArcgisUserMod) {
	f.baseArcgisUserMods = append(f.baseArcgisUserMods, mods...)
}

func (f *Factory) ClearBaseArcgisUserPrivilegeMods() {
	f.baseArcgisUserPrivilegeMods = nil
}

func (f *Factory) AddBaseArcgisUserPrivilegeMod(mods ...ArcgisUserPrivilegeMod) {
	f.baseArcgisUserPrivilegeMods = append(f.baseArcgisUserPrivilegeMods, mods...)
}

func (f *Factory) ClearBaseCommsEmailContactMods() {
	f.baseCommsEmailContactMods = nil
}

func (f *Factory) AddBaseCommsEmailContactMod(mods ...CommsEmailContactMod) {
	f.baseCommsEmailContactMods = append(f.baseCommsEmailContactMods, mods...)
}

func (f *Factory) ClearBaseCommsEmailLogMods() {
	f.baseCommsEmailLogMods = nil
}

func (f *Factory) AddBaseCommsEmailLogMod(mods ...CommsEmailLogMod) {
	f.baseCommsEmailLogMods = append(f.baseCommsEmailLogMods, mods...)
}

func (f *Factory) ClearBaseCommsEmailTemplateMods() {
	f.baseCommsEmailTemplateMods = nil
}

func (f *Factory) AddBaseCommsEmailTemplateMod(mods ...CommsEmailTemplateMod) {
	f.baseCommsEmailTemplateMods = append(f.baseCommsEmailTemplateMods, mods...)
}

func (f *Factory) ClearBaseCommsMailerMods() {
	f.baseCommsMailerMods = nil
}

func (f *Factory) AddBaseCommsMailerMod(mods ...CommsMailerMod) {
	f.baseCommsMailerMods = append(f.baseCommsMailerMods, mods...)
}

func (f *Factory) ClearBaseCommsPhoneMods() {
	f.baseCommsPhoneMods = nil
}

func (f *Factory) AddBaseCommsPhoneMod(mods ...CommsPhoneMod) {
	f.baseCommsPhoneMods = append(f.baseCommsPhoneMods, mods...)
}

func (f *Factory) ClearBaseCommsTextJobMods() {
	f.baseCommsTextJobMods = nil
}

func (f *Factory) AddBaseCommsTextJobMod(mods ...CommsTextJobMod) {
	f.baseCommsTextJobMods = append(f.baseCommsTextJobMods, mods...)
}

func (f *Factory) ClearBaseCommsTextLogMods() {
	f.baseCommsTextLogMods = nil
}

func (f *Factory) AddBaseCommsTextLogMod(mods ...CommsTextLogMod) {
	f.baseCommsTextLogMods = append(f.baseCommsTextLogMods, mods...)
}

func (f *Factory) ClearBaseComplianceReportRequestMods() {
	f.baseComplianceReportRequestMods = nil
}

func (f *Factory) AddBaseComplianceReportRequestMod(mods ...ComplianceReportRequestMod) {
	f.baseComplianceReportRequestMods = append(f.baseComplianceReportRequestMods, mods...)
}

func (f *Factory) ClearBaseComplianceReportRequestMailerMods() {
	f.baseComplianceReportRequestMailerMods = nil
}

func (f *Factory) AddBaseComplianceReportRequestMailerMod(mods ...ComplianceReportRequestMailerMod) {
	f.baseComplianceReportRequestMailerMods = append(f.baseComplianceReportRequestMailerMods, mods...)
}

func (f *Factory) ClearBaseDistrictSubscriptionEmailMods() {
	f.baseDistrictSubscriptionEmailMods = nil
}

func (f *Factory) AddBaseDistrictSubscriptionEmailMod(mods ...DistrictSubscriptionEmailMod) {
	f.baseDistrictSubscriptionEmailMods = append(f.baseDistrictSubscriptionEmailMods, mods...)
}

func (f *Factory) ClearBaseDistrictSubscriptionPhoneMods() {
	f.baseDistrictSubscriptionPhoneMods = nil
}

func (f *Factory) AddBaseDistrictSubscriptionPhoneMod(mods ...DistrictSubscriptionPhoneMod) {
	f.baseDistrictSubscriptionPhoneMods = append(f.baseDistrictSubscriptionPhoneMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerContainerrelateMods() {
	f.baseFieldseekerContainerrelateMods = nil
}

func (f *Factory) AddBaseFieldseekerContainerrelateMod(mods ...FieldseekerContainerrelateMod) {
	f.baseFieldseekerContainerrelateMods = append(f.baseFieldseekerContainerrelateMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerFieldscoutinglogMods() {
	f.baseFieldseekerFieldscoutinglogMods = nil
}

func (f *Factory) AddBaseFieldseekerFieldscoutinglogMod(mods ...FieldseekerFieldscoutinglogMod) {
	f.baseFieldseekerFieldscoutinglogMods = append(f.baseFieldseekerFieldscoutinglogMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerHabitatrelateMods() {
	f.baseFieldseekerHabitatrelateMods = nil
}

func (f *Factory) AddBaseFieldseekerHabitatrelateMod(mods ...FieldseekerHabitatrelateMod) {
	f.baseFieldseekerHabitatrelateMods = append(f.baseFieldseekerHabitatrelateMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerInspectionsampleMods() {
	f.baseFieldseekerInspectionsampleMods = nil
}

func (f *Factory) AddBaseFieldseekerInspectionsampleMod(mods ...FieldseekerInspectionsampleMod) {
	f.baseFieldseekerInspectionsampleMods = append(f.baseFieldseekerInspectionsampleMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerInspectionsampledetailMods() {
	f.baseFieldseekerInspectionsampledetailMods = nil
}

func (f *Factory) AddBaseFieldseekerInspectionsampledetailMod(mods ...FieldseekerInspectionsampledetailMod) {
	f.baseFieldseekerInspectionsampledetailMods = append(f.baseFieldseekerInspectionsampledetailMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerLinelocationMods() {
	f.baseFieldseekerLinelocationMods = nil
}

func (f *Factory) AddBaseFieldseekerLinelocationMod(mods ...FieldseekerLinelocationMod) {
	f.baseFieldseekerLinelocationMods = append(f.baseFieldseekerLinelocationMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerLocationtrackingMods() {
	f.baseFieldseekerLocationtrackingMods = nil
}

func (f *Factory) AddBaseFieldseekerLocationtrackingMod(mods ...FieldseekerLocationtrackingMod) {
	f.baseFieldseekerLocationtrackingMods = append(f.baseFieldseekerLocationtrackingMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerMosquitoinspectionMods() {
	f.baseFieldseekerMosquitoinspectionMods = nil
}

func (f *Factory) AddBaseFieldseekerMosquitoinspectionMod(mods ...FieldseekerMosquitoinspectionMod) {
	f.baseFieldseekerMosquitoinspectionMods = append(f.baseFieldseekerMosquitoinspectionMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerPointlocationMods() {
	f.baseFieldseekerPointlocationMods = nil
}

func (f *Factory) AddBaseFieldseekerPointlocationMod(mods ...FieldseekerPointlocationMod) {
	f.baseFieldseekerPointlocationMods = append(f.baseFieldseekerPointlocationMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerPolygonlocationMods() {
	f.baseFieldseekerPolygonlocationMods = nil
}

func (f *Factory) AddBaseFieldseekerPolygonlocationMod(mods ...FieldseekerPolygonlocationMod) {
	f.baseFieldseekerPolygonlocationMods = append(f.baseFieldseekerPolygonlocationMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerPoolMods() {
	f.baseFieldseekerPoolMods = nil
}

func (f *Factory) AddBaseFieldseekerPoolMod(mods ...FieldseekerPoolMod) {
	f.baseFieldseekerPoolMods = append(f.baseFieldseekerPoolMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerPooldetailMods() {
	f.baseFieldseekerPooldetailMods = nil
}

func (f *Factory) AddBaseFieldseekerPooldetailMod(mods ...FieldseekerPooldetailMod) {
	f.baseFieldseekerPooldetailMods = append(f.baseFieldseekerPooldetailMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerProposedtreatmentareaMods() {
	f.baseFieldseekerProposedtreatmentareaMods = nil
}

func (f *Factory) AddBaseFieldseekerProposedtreatmentareaMod(mods ...FieldseekerProposedtreatmentareaMod) {
	f.baseFieldseekerProposedtreatmentareaMods = append(f.baseFieldseekerProposedtreatmentareaMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerQamosquitoinspectionMods() {
	f.baseFieldseekerQamosquitoinspectionMods = nil
}

func (f *Factory) AddBaseFieldseekerQamosquitoinspectionMod(mods ...FieldseekerQamosquitoinspectionMod) {
	f.baseFieldseekerQamosquitoinspectionMods = append(f.baseFieldseekerQamosquitoinspectionMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerRodentlocationMods() {
	f.baseFieldseekerRodentlocationMods = nil
}

func (f *Factory) AddBaseFieldseekerRodentlocationMod(mods ...FieldseekerRodentlocationMod) {
	f.baseFieldseekerRodentlocationMods = append(f.baseFieldseekerRodentlocationMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerSamplecollectionMods() {
	f.baseFieldseekerSamplecollectionMods = nil
}

func (f *Factory) AddBaseFieldseekerSamplecollectionMod(mods ...FieldseekerSamplecollectionMod) {
	f.baseFieldseekerSamplecollectionMods = append(f.baseFieldseekerSamplecollectionMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerSamplelocationMods() {
	f.baseFieldseekerSamplelocationMods = nil
}

func (f *Factory) AddBaseFieldseekerSamplelocationMod(mods ...FieldseekerSamplelocationMod) {
	f.baseFieldseekerSamplelocationMods = append(f.baseFieldseekerSamplelocationMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerServicerequestMods() {
	f.baseFieldseekerServicerequestMods = nil
}

func (f *Factory) AddBaseFieldseekerServicerequestMod(mods ...FieldseekerServicerequestMod) {
	f.baseFieldseekerServicerequestMods = append(f.baseFieldseekerServicerequestMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerSpeciesabundanceMods() {
	f.baseFieldseekerSpeciesabundanceMods = nil
}

func (f *Factory) AddBaseFieldseekerSpeciesabundanceMod(mods ...FieldseekerSpeciesabundanceMod) {
	f.baseFieldseekerSpeciesabundanceMods = append(f.baseFieldseekerSpeciesabundanceMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerStormdrainMods() {
	f.baseFieldseekerStormdrainMods = nil
}

func (f *Factory) AddBaseFieldseekerStormdrainMod(mods ...FieldseekerStormdrainMod) {
	f.baseFieldseekerStormdrainMods = append(f.baseFieldseekerStormdrainMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerTimecardMods() {
	f.baseFieldseekerTimecardMods = nil
}

func (f *Factory) AddBaseFieldseekerTimecardMod(mods ...FieldseekerTimecardMod) {
	f.baseFieldseekerTimecardMods = append(f.baseFieldseekerTimecardMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerTrapdatumMods() {
	f.baseFieldseekerTrapdatumMods = nil
}

func (f *Factory) AddBaseFieldseekerTrapdatumMod(mods ...FieldseekerTrapdatumMod) {
	f.baseFieldseekerTrapdatumMods = append(f.baseFieldseekerTrapdatumMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerTraplocationMods() {
	f.baseFieldseekerTraplocationMods = nil
}

func (f *Factory) AddBaseFieldseekerTraplocationMod(mods ...FieldseekerTraplocationMod) {
	f.baseFieldseekerTraplocationMods = append(f.baseFieldseekerTraplocationMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerTreatmentMods() {
	f.baseFieldseekerTreatmentMods = nil
}

func (f *Factory) AddBaseFieldseekerTreatmentMod(mods ...FieldseekerTreatmentMod) {
	f.baseFieldseekerTreatmentMods = append(f.baseFieldseekerTreatmentMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerTreatmentareaMods() {
	f.baseFieldseekerTreatmentareaMods = nil
}

func (f *Factory) AddBaseFieldseekerTreatmentareaMod(mods ...FieldseekerTreatmentareaMod) {
	f.baseFieldseekerTreatmentareaMods = append(f.baseFieldseekerTreatmentareaMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerZoneMods() {
	f.baseFieldseekerZoneMods = nil
}

func (f *Factory) AddBaseFieldseekerZoneMod(mods ...FieldseekerZoneMod) {
	f.baseFieldseekerZoneMods = append(f.baseFieldseekerZoneMods, mods...)
}

func (f *Factory) ClearBaseFieldseekerZones2Mods() {
	f.baseFieldseekerZones2Mods = nil
}

func (f *Factory) AddBaseFieldseekerZones2Mod(mods ...FieldseekerZones2Mod) {
	f.baseFieldseekerZones2Mods = append(f.baseFieldseekerZones2Mods, mods...)
}

func (f *Factory) ClearBaseFieldseekerSyncMods() {
	f.baseFieldseekerSyncMods = nil
}

func (f *Factory) AddBaseFieldseekerSyncMod(mods ...FieldseekerSyncMod) {
	f.baseFieldseekerSyncMods = append(f.baseFieldseekerSyncMods, mods...)
}

func (f *Factory) ClearBaseFileuploadCSVMods() {
	f.baseFileuploadCSVMods = nil
}

func (f *Factory) AddBaseFileuploadCSVMod(mods ...FileuploadCSVMod) {
	f.baseFileuploadCSVMods = append(f.baseFileuploadCSVMods, mods...)
}

func (f *Factory) ClearBaseFileuploadErrorCSVMods() {
	f.baseFileuploadErrorCSVMods = nil
}

func (f *Factory) AddBaseFileuploadErrorCSVMod(mods ...FileuploadErrorCSVMod) {
	f.baseFileuploadErrorCSVMods = append(f.baseFileuploadErrorCSVMods, mods...)
}

func (f *Factory) ClearBaseFileuploadErrorFileMods() {
	f.baseFileuploadErrorFileMods = nil
}

func (f *Factory) AddBaseFileuploadErrorFileMod(mods ...FileuploadErrorFileMod) {
	f.baseFileuploadErrorFileMods = append(f.baseFileuploadErrorFileMods, mods...)
}

func (f *Factory) ClearBaseFileuploadFileMods() {
	f.baseFileuploadFileMods = nil
}

func (f *Factory) AddBaseFileuploadFileMod(mods ...FileuploadFileMod) {
	f.baseFileuploadFileMods = append(f.baseFileuploadFileMods, mods...)
}

func (f *Factory) ClearBaseFileuploadFlyoverAerialServiceMods() {
	f.baseFileuploadFlyoverAerialServiceMods = nil
}

func (f *Factory) AddBaseFileuploadFlyoverAerialServiceMod(mods ...FileuploadFlyoverAerialServiceMod) {
	f.baseFileuploadFlyoverAerialServiceMods = append(f.baseFileuploadFlyoverAerialServiceMods, mods...)
}

func (f *Factory) ClearBaseFileuploadPoolMods() {
	f.baseFileuploadPoolMods = nil
}

func (f *Factory) AddBaseFileuploadPoolMod(mods ...FileuploadPoolMod) {
	f.baseFileuploadPoolMods = append(f.baseFileuploadPoolMods, mods...)
}

func (f *Factory) ClearBaseGeographyColumnMods() {
	f.baseGeographyColumnMods = nil
}

func (f *Factory) AddBaseGeographyColumnMod(mods ...GeographyColumnMod) {
	f.baseGeographyColumnMods = append(f.baseGeographyColumnMods, mods...)
}

func (f *Factory) ClearBaseGeometryColumnMods() {
	f.baseGeometryColumnMods = nil
}

func (f *Factory) AddBaseGeometryColumnMod(mods ...GeometryColumnMod) {
	f.baseGeometryColumnMods = append(f.baseGeometryColumnMods, mods...)
}

func (f *Factory) ClearBaseGooseDBVersionMods() {
	f.baseGooseDBVersionMods = nil
}

func (f *Factory) AddBaseGooseDBVersionMod(mods ...GooseDBVersionMod) {
	f.baseGooseDBVersionMods = append(f.baseGooseDBVersionMods, mods...)
}

func (f *Factory) ClearBaseH3AggregationMods() {
	f.baseH3AggregationMods = nil
}

func (f *Factory) AddBaseH3AggregationMod(mods ...H3AggregationMod) {
	f.baseH3AggregationMods = append(f.baseH3AggregationMods, mods...)
}

func (f *Factory) ClearBaseNoteAudioMods() {
	f.baseNoteAudioMods = nil
}

func (f *Factory) AddBaseNoteAudioMod(mods ...NoteAudioMod) {
	f.baseNoteAudioMods = append(f.baseNoteAudioMods, mods...)
}

func (f *Factory) ClearBaseNoteAudioBreadcrumbMods() {
	f.baseNoteAudioBreadcrumbMods = nil
}

func (f *Factory) AddBaseNoteAudioBreadcrumbMod(mods ...NoteAudioBreadcrumbMod) {
	f.baseNoteAudioBreadcrumbMods = append(f.baseNoteAudioBreadcrumbMods, mods...)
}

func (f *Factory) ClearBaseNoteAudioDatumMods() {
	f.baseNoteAudioDatumMods = nil
}

func (f *Factory) AddBaseNoteAudioDatumMod(mods ...NoteAudioDatumMod) {
	f.baseNoteAudioDatumMods = append(f.baseNoteAudioDatumMods, mods...)
}

func (f *Factory) ClearBaseNoteImageMods() {
	f.baseNoteImageMods = nil
}

func (f *Factory) AddBaseNoteImageMod(mods ...NoteImageMod) {
	f.baseNoteImageMods = append(f.baseNoteImageMods, mods...)
}

func (f *Factory) ClearBaseNoteImageBreadcrumbMods() {
	f.baseNoteImageBreadcrumbMods = nil
}

func (f *Factory) AddBaseNoteImageBreadcrumbMod(mods ...NoteImageBreadcrumbMod) {
	f.baseNoteImageBreadcrumbMods = append(f.baseNoteImageBreadcrumbMods, mods...)
}

func (f *Factory) ClearBaseNoteImageDatumMods() {
	f.baseNoteImageDatumMods = nil
}

func (f *Factory) AddBaseNoteImageDatumMod(mods ...NoteImageDatumMod) {
	f.baseNoteImageDatumMods = append(f.baseNoteImageDatumMods, mods...)
}

func (f *Factory) ClearBaseNotificationMods() {
	f.baseNotificationMods = nil
}

func (f *Factory) AddBaseNotificationMod(mods ...NotificationMod) {
	f.baseNotificationMods = append(f.baseNotificationMods, mods...)
}

func (f *Factory) ClearBaseOrganizationMods() {
	f.baseOrganizationMods = nil
}

func (f *Factory) AddBaseOrganizationMod(mods ...OrganizationMod) {
	f.baseOrganizationMods = append(f.baseOrganizationMods, mods...)
}

func (f *Factory) ClearBaseParcelMods() {
	f.baseParcelMods = nil
}

func (f *Factory) AddBaseParcelMod(mods ...ParcelMod) {
	f.baseParcelMods = append(f.baseParcelMods, mods...)
}

func (f *Factory) ClearBasePoolMods() {
	f.basePoolMods = nil
}

func (f *Factory) AddBasePoolMod(mods ...PoolMod) {
	f.basePoolMods = append(f.basePoolMods, mods...)
}

func (f *Factory) ClearBasePublicreportImageMods() {
	f.basePublicreportImageMods = nil
}

func (f *Factory) AddBasePublicreportImageMod(mods ...PublicreportImageMod) {
	f.basePublicreportImageMods = append(f.basePublicreportImageMods, mods...)
}

func (f *Factory) ClearBasePublicreportImageExifMods() {
	f.basePublicreportImageExifMods = nil
}

func (f *Factory) AddBasePublicreportImageExifMod(mods ...PublicreportImageExifMod) {
	f.basePublicreportImageExifMods = append(f.basePublicreportImageExifMods, mods...)
}

func (f *Factory) ClearBasePublicreportNotifyEmailNuisanceMods() {
	f.basePublicreportNotifyEmailNuisanceMods = nil
}

func (f *Factory) AddBasePublicreportNotifyEmailNuisanceMod(mods ...PublicreportNotifyEmailNuisanceMod) {
	f.basePublicreportNotifyEmailNuisanceMods = append(f.basePublicreportNotifyEmailNuisanceMods, mods...)
}

func (f *Factory) ClearBasePublicreportNotifyEmailPoolMods() {
	f.basePublicreportNotifyEmailPoolMods = nil
}

func (f *Factory) AddBasePublicreportNotifyEmailPoolMod(mods ...PublicreportNotifyEmailPoolMod) {
	f.basePublicreportNotifyEmailPoolMods = append(f.basePublicreportNotifyEmailPoolMods, mods...)
}

func (f *Factory) ClearBasePublicreportNotifyPhoneNuisanceMods() {
	f.basePublicreportNotifyPhoneNuisanceMods = nil
}

func (f *Factory) AddBasePublicreportNotifyPhoneNuisanceMod(mods ...PublicreportNotifyPhoneNuisanceMod) {
	f.basePublicreportNotifyPhoneNuisanceMods = append(f.basePublicreportNotifyPhoneNuisanceMods, mods...)
}

func (f *Factory) ClearBasePublicreportNotifyPhonePoolMods() {
	f.basePublicreportNotifyPhonePoolMods = nil
}

func (f *Factory) AddBasePublicreportNotifyPhonePoolMod(mods ...PublicreportNotifyPhonePoolMod) {
	f.basePublicreportNotifyPhonePoolMods = append(f.basePublicreportNotifyPhonePoolMods, mods...)
}

func (f *Factory) ClearBasePublicreportNuisanceMods() {
	f.basePublicreportNuisanceMods = nil
}

func (f *Factory) AddBasePublicreportNuisanceMod(mods ...PublicreportNuisanceMod) {
	f.basePublicreportNuisanceMods = append(f.basePublicreportNuisanceMods, mods...)
}

func (f *Factory) ClearBasePublicreportNuisanceImageMods() {
	f.basePublicreportNuisanceImageMods = nil
}

func (f *Factory) AddBasePublicreportNuisanceImageMod(mods ...PublicreportNuisanceImageMod) {
	f.basePublicreportNuisanceImageMods = append(f.basePublicreportNuisanceImageMods, mods...)
}

func (f *Factory) ClearBasePublicreportPoolMods() {
	f.basePublicreportPoolMods = nil
}

func (f *Factory) AddBasePublicreportPoolMod(mods ...PublicreportPoolMod) {
	f.basePublicreportPoolMods = append(f.basePublicreportPoolMods, mods...)
}

func (f *Factory) ClearBasePublicreportPoolImageMods() {
	f.basePublicreportPoolImageMods = nil
}

func (f *Factory) AddBasePublicreportPoolImageMod(mods ...PublicreportPoolImageMod) {
	f.basePublicreportPoolImageMods = append(f.basePublicreportPoolImageMods, mods...)
}

func (f *Factory) ClearBasePublicreportQuickMods() {
	f.basePublicreportQuickMods = nil
}

func (f *Factory) AddBasePublicreportQuickMod(mods ...PublicreportQuickMod) {
	f.basePublicreportQuickMods = append(f.basePublicreportQuickMods, mods...)
}

func (f *Factory) ClearBasePublicreportQuickImageMods() {
	f.basePublicreportQuickImageMods = nil
}

func (f *Factory) AddBasePublicreportQuickImageMod(mods ...PublicreportQuickImageMod) {
	f.basePublicreportQuickImageMods = append(f.basePublicreportQuickImageMods, mods...)
}

func (f *Factory) ClearBasePublicreportReportLocationMods() {
	f.basePublicreportReportLocationMods = nil
}

func (f *Factory) AddBasePublicreportReportLocationMod(mods ...PublicreportReportLocationMod) {
	f.basePublicreportReportLocationMods = append(f.basePublicreportReportLocationMods, mods...)
}

func (f *Factory) ClearBasePublicreportSubscribeEmailMods() {
	f.basePublicreportSubscribeEmailMods = nil
}

func (f *Factory) AddBasePublicreportSubscribeEmailMod(mods ...PublicreportSubscribeEmailMod) {
	f.basePublicreportSubscribeEmailMods = append(f.basePublicreportSubscribeEmailMods, mods...)
}

func (f *Factory) ClearBasePublicreportSubscribePhoneMods() {
	f.basePublicreportSubscribePhoneMods = nil
}

func (f *Factory) AddBasePublicreportSubscribePhoneMod(mods ...PublicreportSubscribePhoneMod) {
	f.basePublicreportSubscribePhoneMods = append(f.basePublicreportSubscribePhoneMods, mods...)
}

func (f *Factory) ClearBaseRasterColumnMods() {
	f.baseRasterColumnMods = nil
}

func (f *Factory) AddBaseRasterColumnMod(mods ...RasterColumnMod) {
	f.baseRasterColumnMods = append(f.baseRasterColumnMods, mods...)
}

func (f *Factory) ClearBaseRasterOverviewMods() {
	f.baseRasterOverviewMods = nil
}

func (f *Factory) AddBaseRasterOverviewMod(mods ...RasterOverviewMod) {
	f.baseRasterOverviewMods = append(f.baseRasterOverviewMods, mods...)
}

func (f *Factory) ClearBaseResidentMods() {
	f.baseResidentMods = nil
}

func (f *Factory) AddBaseResidentMod(mods ...ResidentMod) {
	f.baseResidentMods = append(f.baseResidentMods, mods...)
}

func (f *Factory) ClearBaseSessionMods() {
	f.baseSessionMods = nil
}

func (f *Factory) AddBaseSessionMod(mods ...SessionMod) {
	f.baseSessionMods = append(f.baseSessionMods, mods...)
}

func (f *Factory) ClearBaseSiteMods() {
	f.baseSiteMods = nil
}

func (f *Factory) AddBaseSiteMod(mods ...SiteMod) {
	f.baseSiteMods = append(f.baseSiteMods, mods...)
}

func (f *Factory) ClearBaseSpatialRefSyMods() {
	f.baseSpatialRefSyMods = nil
}

func (f *Factory) AddBaseSpatialRefSyMod(mods ...SpatialRefSyMod) {
	f.baseSpatialRefSyMods = append(f.baseSpatialRefSyMods, mods...)
}

func (f *Factory) ClearBaseUserMods() {
	f.baseUserMods = nil
}

func (f *Factory) AddBaseUserMod(mods ...UserMod) {
	f.baseUserMods = append(f.baseUserMods, mods...)
}
