Configuration

https://apistaging.golfvancouverisland.ca

dev → config

Config manifest

page:
  db: []
  has_one: []
  casting:
    LeadFormInstance: HTMLText
  preconnect:
    - //google.com
    - //www.gstatic.com
    - //fonts.gstatic.com
    - //static.doubleclick.net
  dns_prefetch:
    - //gstatic.com
    - //google.com
    - //fonts.googleapis.com
    - //storage.googleapis.com
    - //www.googletagmanager.com
    - //www.google-analytics.com
    - //youtube.com
    - //player.vimeo.com
  preload:
    font:
      - /_resources/themes/default/dist/assets/socials.woff
    image: null
    style:
      - /_resources/themes/default/dist/assets/css/main.css
      - /_resources/themes/default/dist/assets/css/theme.css
      - '//fonts.googleapis.com/css2?family=Material+Icons&family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;1,300;1,400;1,600;1,700&display=swap'
    script:
      - /assets/_js/config.js
      - /_resources/themes/default/dist/assets/main.js
      - //player.vimeo.com/api/player.js
pagecontroller:
  page_links: []
composer\autoload\classloader: []
composer\installedversions:
  installed: null
  canGetVendors: null
  installedByVendor: []
composerautoloaderinit662b0dd82887d525dabc551d2f6faecd: []
composer\autoload\composerstaticinit662b0dd82887d525dabc551d2f6faecd: []
apicontroller:
  allowed_actions:
    - index
  extensions:
    - RS\Extension\ControllerExtension
  cors:
    Enabled: true
    Allow-Origin: '*'
    Allow-Headers: '*'
    Allow-Methods: 'OPTIONS, GET'
    Max-Age: 86400
apipartnerscontroller:
  allowed_actions:
    - index
    - auth
    - view
    - partners
    - region
    - locale
    - tag
    - collection
  url_handlers:
    region//$Action/$ID/$Type/$Limit: region
    locale//$Action/$ID/$Type/$Limit: locale
    tag//$Action/$ID/$Type/$Limit: tag
    collection//$Action/$ID/$Type/$Limit: collection
    $ID/$OtherID: index
    /: index
  extensions:
    - RS\Extension\ControllerExtension
  cors:
    Enabled: true
    Allow-Origin: '*'
    Allow-Headers: '*'
    Allow-Methods: 'OPTIONS, GET'
    Max-Age: 86400
apikeyadmin:
  url_segment: apikeys
  managed_models:
    RS\Model\APIKey:
      title: Key
  menu_title: 'API Keys'
  menu_icon_class: font-icon-lock
partneradmin:
  url_segment: partners
  managed_models:
    RS\Model\Partner:
      title: Partners
      segment: partner
    RS\Model\PartnerCollection:
      title: Collections
      segment: collections
    RS\Model\Category:
      title: Categories
      segment: categories
    RS\Model\Tag:
      title: Tags
      segment: tags
    RS\Model\Amenity:
      title: Amenities
      segment: amenities
    RS\Model\Accommodation:
      title: Accommodations
      segment: accommodations
  menu_title: Partners
  menu_icon_class: font-icon-torsos-all
regionadmin:
  url_segment: regions
  managed_models:
    RS\Model\Region:
      title: Regions
      segment: region
    RS\Model\Locale:
      title: Locales
      segment: locale
    RS\Model\City:
      title: Cities
      segment: city
  menu_title: 'Regions & Locales'
  menu_icon_class: font-icon-globe-1
rs\extension\adminleftandmainextension: []
rs\extension\controllerextension: []
rs\extension\dataobjectmanymanycleanup: []
rs\extension\fileformfactoryextension:
  caption_format: '%s | %s'
  caption_delimiter: '|'
  caption_default: 'Lorem ipsum dolor sit amet.'
rs\extension\formfieldextension: []
rs\extension\geojsonextension: []
rs\extension\groupextension: []
rs\extension\historyextension: []
rs\extension\imagemetaextension:
  db:
    AltText: Varchar(255)
    Caption: Varchar(255)
    Credit: Varchar(255)
    Copyright: Varchar(255)
    Description: Text
rs\extension\imageshortcodehandler: []
rs\extension\linkextension:
  db:
    ButtonLabel: Varchar(50)
    RelOptions: Varchar(50)
    ExtraCSS: Varchar(255)
    Key: Varchar(200)
    Description: Text
  has_one:
    Image: SilverStripe\Assets\Image
  summary_fields:
    RelOptions: Rel
    ExtraCSS: 'Extra CSS Classes'
  owns:
    - Image
rs\extension\memberextension:
  db:
    Bio: Text
    Position: Varchar(255)
    UUID: Varchar(255)
  has_one:
    Image: SilverStripe\Assets\Image
    APIKey: RS\Model\APIKey
  has_many: []
  many_many: []
  belongs_many_many: []
  owns:
    - Image
  cascade_deletes:
    - Image
rs\extension\noteextension:
  has_many:
    Notes: RS\Model\Note.NoteOwner
  many_many_extraFields:
    Notes:
      SortOrder: Int
rs\extension\partneroutputextension: []
rs\extension\seoextension:
  db:
    OGTitle: Varchar(100)
    OGType: Varchar(50)
    OGDescription: Text
  defaults:
    OGType: website
  has_one:
    Image: SilverStripe\Assets\Image
    OGImage: SilverStripe\Assets\Image
  owns:
    - Image
    - OGImage
  unused_fields:
    - generator
  title_delimiter: '|'
  title_format: '{$Title} {$Delimiter} {$SiteTitle}'
rs\formfields\rgbacolorfield: []
rs\forms\colorpickerfield: []
rs\forms\gridfield\gridfieldduplicateaction: []
rs\forms\rangefield: []
rs\geojson\geojsonfeature: []
rs\geojson\geojsongeometry: []
rs\geojson\geojsonproperty: []
rs\geojson\geojsonpropertybag: []
rs\geojson\geojsonschema: []
rs\model\apikey:
  table_name: APIKey
  db:
    Token: Text
    PublicKey: Text
    Status: Boolean
  belongs_to:
    Member: SilverStripe\Security\Member
  summary_fields:
    PublicKey: 'Public Key'
    Status: Status
    Created: Created
    LastEdited: LastEdited
rs\model\accommodation:
  table_name: Accommodations
  db:
    Title: Varchar(255)
    URLSegment: Varchar(200)
    Description: Text
    SortOrder: Int
  indexes:
    SortOrder: true
    Title_Index:
      type: unique
      columns:
        - Title
    URLSegment_Index:
      type: unique
      columns:
        - URLSegment
  belongs_many_many:
    Partners: RS\Model\Partner
  has_one:
    Image: SilverStripe\Assets\Image
  owns:
    - Image
  extensions:
    - RS\Extension\DataObjectManyManyCleanup
  default_sort: 'SortOrder ASC'
  searchable_fields:
    - Title
  summary_fields:
    Title: Title
    Partners.Count: Partners
  field_labels:
    Title: Title
rs\model\address:
  table_name: Addresses
  db:
    Address1: Varchar(100)
    Address2: Varchar(120)
    Address3: Varchar(120)
    City: Varchar(100)
    Region: Varchar(3)
    Country: Varchar(3)
    PostalCode: Varchar(16)
  has_one:
    Lead: RS\Model\Lead
  summary_fields:
    Address1: Address
    City: City
    Region: Province
    PostalCode: 'Postal Code'
    Country: Country
  default_sort:
    Created: DESC
rs\model\amenity:
  table_name: Amenities
  db:
    Title: Varchar(255)
    URLSegment: Varchar(200)
    Description: Text
    SortOrder: Int
  indexes:
    SortOrder: true
    Title_Index:
      type: unique
      columns:
        - Title
    URLSegment_Index:
      type: unique
      columns:
        - URLSegment
  belongs_many_many:
    Partners: RS\Model\Partner
  has_one:
    Image: SilverStripe\Assets\Image
  owns:
    - Image
  extensions:
    - RS\Extension\DataObjectManyManyCleanup
  default_sort: 'SortOrder ASC'
  searchable_fields:
    - Title
  summary_fields:
    Title: Title
    Partners.Count: Partners
  field_labels:
    Title: Title
rs\model\category:
  table_name: Category
  db:
    Title: Varchar(255)
    SortOrder: Int
    URLSegment: Varchar(200)
  indexes:
    SortOrder: true
    Title_Index:
      type: unique
      columns:
        - Title
    URLSegment_Index:
      type: unique
      columns:
        - URLSegment
  belongs_many_many:
    Partners: RS\Model\Partner
  has_one:
    Image: SilverStripe\Assets\Image
  owns:
    - Image
  extensions:
    - RS\Extension\DataObjectManyManyCleanup
    - RS\Extension\SEOExtension
  default_sort: 'SortOrder ASC'
  searchable_fields:
    - Title
  summary_fields:
    Title: Title
  field_labels:
    Title: Title
rs\model\city:
  table_name: Cities
  db:
    Title: Varchar(255)
    URLSegment: Varchar(200)
  indexes:
    Title_Index:
      type: unique
      columns:
        - Title
    URLSegment_Index:
      type: unique
      columns:
        - URLSegment
  default_sort:
    - Title
  belongs_many_many: []
  many_many: []
  has_one: []
  owns: []
  searchable_fields:
    - Title
    - URLSegment
  summary_fields:
    Title: Title
    URLSegment: URLSegment
    LastEdited: LastEdited
rs\model\locale:
  table_name: Locale
  db:
    Title: Varchar(255)
    URLSegment: Varchar(200)
    Description: Text
    SortOrder: Int
  indexes:
    Title_Index:
      type: unique
      columns:
        - Title
    URLSegment_Index:
      type: unique
      columns:
        - URLSegment
  default_sort:
    - Title
  belongs_many_many:
    Regions: RS\Model\Region
  many_many:
    Partners: RS\Model\Partner
    Links: gorriecoe\Link\Models\Link
  many_many_extraFields:
    Links:
      Sort: Int
  has_one:
    Image: SilverStripe\Assets\Image
  owns:
    - Image
  searchable_fields:
    Title: PartialMatchFilter
  summary_fields:
    Title: Title
    URLSegment: URLSegment
    LastEdited: LastEdited
  extensions:
    - TWA\Extension\GoogleMapExtension
    - RS\Extension\GeoJSONExtension
    - RS\Extension\SEOExtension
rs\model\note:
  table_name: Note
  db:
    Title: Varchar(255)
    Content: HTMLText
    SortOrder: Int
  has_one:
    NoteOwner: SilverStripe\ORM\DataObject
  summary_fields:
    Title: Title
    Created: Created
    LastEdited: LastEdited
rs\model\partner:
  table_name: Partners
  max_excerpt_length: 160
  db:
    Title: Varchar(255)
    URLSegment: Varchar(200)
    Excerpt: Text
    Description: HTMLText
    Tips: HTMLText
    URL: Varchar(255)
    VideoURL: Varchar(255)
    Phone: Varchar(255)
    TollFree: Varchar(255)
    Email: Varchar(255)
    Address: Varchar(255)
    PostalCode: Varchar(8)
    Province: Varchar(255)
    Hours: Varchar(255)
    SortOrder: Int
  indexes:
    Title_Index:
      type: unique
      columns:
        - Title
    URLSegment_Index:
      type: unique
      columns:
        - URLSegment
  versioned_gridfield_extensions: true
  default_sort: 'Title ASC'
  extensions:
    - SilverStripe\Versioned\Versioned
    - TWA\Extension\GoogleMapExtension
    - RS\Extension\PartnerOutputExtension
    - RS\Extension\SEOExtension
  belongs_many_many:
    Regions: RS\Model\Region
    Locales: RS\Model\Locale
    Collections: RS\Model\PartnerCollection.Partners
  has_one:
    Logo: SilverStripe\Assets\Image
    Image: SilverStripe\Assets\Image
    City: RS\Model\City
  many_many:
    Categories: RS\Model\Category
    Tags: RS\Model\Tag
    Amenities: RS\Model\Amenity
    Accommodations: RS\Model\Accommodation
    Links: gorriecoe\Link\Models\Link
    Images: gorriecoe\Link\Models\Link
  many_many_extraFields:
    Links:
      Sort: Int
    Images:
      SortOrder: Int
  owns:
    - Logo
    - Image
    - Images
  searchable_fields:
    Title: PartialMatchFilter
    0: URLSegment
    1: Excerpt
    2: Description
    3: Address
  summary_fields:
    LogoThumbnail: Logo
    ImageThumbnail: Image
    Title: Title
    RegionsList: Regions
    LocalesList: Locale
    City.Title: City
    CategoriesList: Category
rs\model\partnercollection:
  table_name: PartnerCollections
  db:
    Title: Varchar(255)
    Key: Varchar(255)
    Description: Text
    Content: HTMLText
  indexes:
    Title_Index:
      type: unique
      columns:
        - Title
    Key_Index:
      type: unique
      columns:
        - Key
  belongs_many_many: []
  many_many:
    Partners: RS\Model\Partner
  has_one: []
  many_many_extraFields:
    Partners:
      Sort: Int
  owns: []
  summary_fields:
    Title: Title
    Key: Key
rs\model\region:
  table_name: Region
  db:
    Title: Varchar(255)
    URLSegment: Varchar(200)
    Description: Text
    DescriptionAlt: Text
    SortOrder: Int
  defaults:
    Title: null
    URLSegment: null
    Description: null
  indexes:
    Title_Index:
      type: unique
      columns:
        - Title
    URLSegment_Index:
      type: unique
      columns:
        - URLSegment
  default_sort: 'Title ASC'
  has_one:
    Image: SilverStripe\Assets\Image
  many_many:
    Locales: RS\Model\Locale
    Partners: RS\Model\Partner
  has_many: []
  owns:
    - Image
  searchable_fields:
    Title: PartialMatchFilter
  summary_fields:
    Title: Title
    LastEdited: LastEdited
    Partners.Count: Partners
  extensions:
    - TWA\Extension\GoogleMapExtension
    - RS\Extension\GeoJSONExtension
    - RS\Extension\SEOExtension
rs\model\tag:
  table_name: Tag
  db:
    Title: Varchar(255)
    SortOrder: Int
    URLSegment: Varchar(200)
  indexes:
    SortOrder: true
    Title_Index:
      type: unique
      columns:
        - Title
    URLSegment_Index:
      type: unique
      columns:
        - URLSegment
  belongs_many_many:
    Partners: RS\Model\Partner
  has_one:
    Image: SilverStripe\Assets\Image
  owns:
    - Image
  extensions:
    - RS\Extension\DataObjectManyManyCleanup
    - RS\Extension\SEOExtension
  default_sort: 'SortOrder ASC'
  searchable_fields:
    - Title
  summary_fields:
    Title: Title
  field_labels:
    Title: Title
rs\utils\appconfigcompiler:
  processed_folder: _js
  processed_files: []
  already_flushed: false
  allowed_filenames:
    - config.js
    - gtm.js
    - recaptcha.js
rs\utils\cookieconsent:
  cookieGroups: []
  include_javascript: true
  include_css: true
  create_default_pages: true
rs\utils\httpstatus:
  m_instance: null
  messages:
    100: '100 Continue'
    101: '101 Switching Protocols'
    200: '200 OK'
    201: '201 Created'
    202: '202 Accepted'
    203: '203 Non-Authoritative Information'
    204: '204 No Content'
    205: '205 Reset Content'
    206: '206 Partial Content'
    300: '300 Multiple Choices'
    301: '301 Moved Permanently'
    302: '302 Found'
    303: '303 See Other'
    304: '304 Not Modified'
    305: '305 Use Proxy'
    306: '306 (Unused)'
    307: '307 Temporary Redirect'
    400: '400 Bad Request'
    401: '401 Unauthorized'
    402: '402 Payment Required'
    403: '403 Forbidden'
    404: '404 Not Found'
    405: '405 Method Not Allowed'
    406: '406 Not Acceptable'
    407: '407 Proxy Authentication Required'
    408: '408 Request Timeout'
    409: '409 Conflict'
    410: '410 Gone'
    411: '411 Length Required'
    412: '412 Precondition Failed'
    413: '413 Request Entity Too Large'
    414: '414 Request-URI Too Long'
    415: '415 Unsupported Media Type'
    416: '416 Requested Range Not Satisfiable'
    417: '417 Expectation Failed'
    500: '500 Internal Server Error'
    501: '501 Not Implemented'
    502: '502 Bad Gateway'
    503: '503 Service Unavailable'
    504: '504 Gateway Timeout'
    505: '505 HTTP Version Not Supported'
rs\utils\httputils: []
rs\utils\jwtutils: []
rs\utils\locomotivetemplateutils:
  utility_functions:
    - isLocomotivePage
    - LocomotiveContainer
    - LocomotiveSection
    - LocomotiveSectionID
    - LocomotiveProperties
    - LocomotiveScrollOffset
    - LocomotiveScrollDirection
    - LocomotiveScrollPosition
    - LocomotiveSpeedProperties
    - LocmotiveNavigation
    - LocomotiveProgressbar
    - html_attributes
rs\utils\log:
  instance: null
  calls: null
  app_path: null
rs\utils\logstreamhandler: []
rs\utils\loremipsum: []
rs\utils\maputils:
  instance: null
rs\utils\recaptcha:
  site_key: null
  secret_key: null
  endpoint: 'https://www.google.com/recaptcha/api/siteverify'
  recaptcha_version: 3
  minimum_score: 0.2
rs\utils\robots:
  sitemap: sitemap.xml
  disallow_unsearchable: true
  disallowed_urls:
    - /admin
    - /dev
    - '/*/acceptCookies'
    - '/*/revokeCookies'
  allowed_urls: []
rs\utils\shortcodes: []
rs\utils\staticlistutils: []
rs\utils\templateutils:
  utility_functions:
    - EnvType
    - EnvDev
    - EnvTest
    - EnvLive
    - StringTernary
    - ToLowerCase
    - CamelCaseToWords
    - Log
    - VoidLink
    - SiteConfig
    - CopyrightNotice
    - Credit
    - PageLinkByClass
    - PageLinkAndActions
    - TruncateWords
    - TruncateChr
    - Truncate
    - NumberFormat
    - LayoutGrid
    - FPOPlaceImage
    - FPOUnsplashImage
    - FPORandomUnsplashImage
    - ImageByID
    - SprintF
    - NL2BR
    - HTMLString
    - StripTags
    - HTMLWrap
    - HTMLWrapAdvanced
    - PlainText
    - RecaptchaSiteKey
    - RecaptchaScripts
    - BEMClassContext
    - HighlightKeywords
    - ProcessField
    - SearchForm
    - ColorIsLight
    - Luminance
    - Readability
    - IsReadable
    - UNIQUEID
    - DeveloperCredit
    - Socials
    - GoogleMap
    - SimpleNavigation
  casting:
    BEMClassContext: HTMLText
    RecaptchaScripts: HTMLText
    FPOUnsplashImage: HTMLText
    FPORandomUnsplashImage: HTMLText
    FPOPlaceImage: HTMLText
    HighlightKeywords: HTMLText
    ProcessField: HTMLText
    DeveloperCredit: HTMLText
    Weather: HTMLText
  _cached_page: null
rs\utils\text: []
rs\utils\videoutils: []
rs\i18n\strings: []
flxlabs\dataobjectlink\dataobjectlinkextension: []
flxlabs\dataobjectlink\dataobjectlinkformfactory: []
flxlabs\dataobjectlink\dataobjectlinkmodalextension:
  allowed_actions:
    - editorDataObjectLink
gorriecoe\linkfield\linkfield:
  sort_column: Sort
silvershop\hasonefield\gridfieldhasonebuttonrow: []
silvershop\hasonefield\gridfieldhasoneeditbutton: []
silvershop\hasonefield\gridfieldhasoneunlinkbutton: []
silvershop\hasonefield\gridfieldsummaryfield: []
silvershop\hasonefield\hasoneaddexistingautocompleter: []
silvershop\hasonefield\hasonebuttonfield: []
silvershop\hasonefield\hasonebuttonrelationlist: []
silverstripe\admin\adminerrorextension: []
silverstripe\admin\adminrootcontroller:
  url_base: admin
  default_panel: SilverStripe\CMS\Controllers\CMSPagesController
silverstripe\admin\cmsbatchaction: []
silverstripe\admin\cmsbatchactionhandler:
  batch_actions: []
  registered_actions: null
  url_handlers:
    $BatchAction/applicablepages: handleApplicablePages
    $BatchAction/confirmation: handleConfirmation
    $BatchAction: handleBatchAction
  allowed_actions:
    - handleBatchAction
    - handleApplicablePages
    - handleConfirmation
silverstripe\admin\cmseditlinkextension:
  cms_edit_owner: ''
silverstripe\admin\cmsmenu: []
silverstripe\admin\cmsmenuitem: []
silverstripe\admin\cmsprofilecontroller:
  url_segment: myprofile
  menu_title: 'My Profile'
  required_permission_codes: false
  tree_class: SilverStripe\Security\Member
silverstripe\admin\leftandmain:
  client_debugging: true
  url_segment: null
  url_rule: /$Action/$ID/$OtherID
  menu_title: null
  menu_icon: null
  menu_priority: 0
  url_priority: 50
  tree_class: null
  allowed_actions:
    - index
    - save
    - printable
    - show
    - Modals
    - EditForm
    - AddForm
    - batchactions
    - BatchActionsForm
    - schema
    - methodSchema
  url_handlers:
    'GET schema/$FormName/$ItemID/$OtherItemID': schema
    'GET methodSchema/$Method/$FormName/$ItemID': methodSchema
  dependencies:
    FormSchema: '%$SilverStripe\Forms\Schema\FormSchema'
    VersionProvider: '%$SilverStripe\Core\Manifest\VersionProvider'
  admin_themes:
    - 'silverstripe/admin:cms-forms'
    - $default
  required_permission_codes: null
  session_namespace: null
  extra_requirements_javascript:
    - 'bummzack/sortablefile: client/dist/js/main.js'
    - vendor/flxlabs/silverstripe-dataobject-links/client/dist/js/sslink-dataobject-transforms.js
    - 'jonom/focuspoint: client/dist/js/main.js'
    - 'jonom/silverstripe-betternavigator: javascript/BN.LeftAndMain.Preview.js'
    - 'silverstripe/cms: client/dist/js/bundle.js'
    - 'silverstripe/cms: client/dist/js/SilverStripeNavigator.js'
    - 'silverstripe/session-manager: client/dist/js/bundle.js'
    - 'silverstripe/tagfield:client/dist/js/bundle.js'
    - 'silverstripe/tagfield:client/dist/js/bundle.js'
    - 'silverstripe/versioned-admin:client/dist/js/bundle.js'
    - 'https://code.jquery.com/jquery-migrate-3.4.0.min.js'
  extra_requirements_css:
    - 'bummzack/sortablefile: client/dist/styles/main.css'
    - 'jonom/focuspoint: client/dist/styles/main.css'
    - 'silverstripe/cms: client/dist/styles/bundle.css'
    - 'silverstripe/session-manager: client/dist/styles/bundle.css'
    - 'silverstripe/tagfield:client/dist/styles/bundle.css'
    - 'silverstripe/tagfield:client/dist/styles/bundle.css'
    - 'silverstripe/versioned-admin:client/dist/styles/bundle.css'
  extra_requirements_themedCss: []
  session_keepalive_ping: true
  frame_options: SAMEORIGIN
  section_name: null
  help_links:
    'CMS User help': 'https://userhelp.silverstripe.org/en/5'
    'Developer docs': 'https://docs.silverstripe.org/en/5/'
    Community: 'https://www.silverstripe.org/'
    Feedback: 'https://www.silverstripe.org/give-feedback/'
  application_link: //www.silverstripe.org/
  application_name: GVI
  extensions:
    0: FLXLabs\DataObjectLink\DataObjectLinkExtension
    1: SilverStripe\AssetAdmin\Controller\AssetAdminFieldsExtension
    2: SilverStripe\CampaignAdmin\CampaignAdminExtension
    3: SilverStripe\CMS\Controllers\LeftAndMainPageIconsExtension
    4: SilverStripe\CMS\Controllers\LeftAndMainBatchActionsExtension
    5: SilverStripe\GraphQL\Extensions\ClientConfigProvider
    RecursivePublishableHandler: SilverStripe\Versioned\RecursivePublishableHandler
    6: RS\Extension\AdminLeftAndMainExtension
    7: RS\Extension\LeftAndMainExtension
  graphql_legacy: false
silverstripe\admin\leftandmainextension: []
silverstripe\admin\leftandmainformrequesthandler: []
silverstripe\admin\leftandmain_httpresponse: []
silverstripe\admin\modalcontroller:
  allowed_actions:
    - EditorExternalLink
    - EditorEmailLink
  extensions:
    - SilverStripe\CMS\Forms\InternalLinkModalExtension
    - FLXLabs\DataObjectLink\DataObjectLinkModalExtension
    - SilverStripe\AssetAdmin\Extensions\RemoteFileModalExtension
silverstripe\admin\modeladmin:
  url_rule: /$ModelClass/$Action
  managed_models: null
  menu_priority: -0.5
  menu_icon_class: font-icon-database
  allowed_actions:
    - ImportForm
    - SearchForm
  url_handlers:
    $ModelClass/$Action: handleAction
  model_importers: null
  page_length: 30
silverstripe\admin\securityadmin:
  managed_models:
    users:
      title: Users
      dataClass: SilverStripe\Security\Member
    groups:
      title: Groups
      dataClass: SilverStripe\Security\Group
    roles:
      title: Roles
      dataClass: SilverStripe\Security\PermissionRole
  model_importers:
    users: SilverStripe\Security\MemberCsvBulkLoader
    SilverStripe\Security\Member: SilverStripe\Security\MemberCsvBulkLoader
    groups: SilverStripe\Security\GroupCsvBulkLoader
    SilverStripe\Security\Group: SilverStripe\Security\GroupCsvBulkLoader
  allowed_actions:
    - ImportForm
  url_segment: security
  menu_title: Security
  menu_priority: 0
  tree_class: SilverStripe\Security\Group
  required_permission_codes: CMS_ACCESS_SecurityAdmin
  menu_icon_class: font-icon-torsos-all
silverstripe\admin\sudomodecontroller:
  url_segment: sudomode
  ignore_menuitem: true
  allowed_actions:
    - check
    - activate
  dependencies:
    SudoModeService: '%$SilverStripe\Security\SudoMode\SudoModeServiceInterface'
  help_link: 'https://userhelp.silverstripe.org/en/5/managing_your_website/logging_in/#sudo-mode'
  required_permission_codes: false
silverstripe\assets\assetcontrolextension:
  keep_archived_assets: false
silverstripe\assets\assetmanipulationlist: []
silverstripe\assets\file:
  default_sort: '"Name"'
  singular_name: File
  plural_name: Files
  resample_images: true
  non_live_permissions:
    - CMS_ACCESS
    - VIEW_DRAFT_CONTENT
  db:
    Name: Varchar(255)
    Title: Varchar(255)
    File: DBFile
    ShowInSearch: Boolean(1)
  has_one:
    Parent: SilverStripe\Assets\File
    Owner: SilverStripe\Security\Member
  has_many:
    BackLinks: SilverStripe\Assets\Shortcodes\FileLink.Linked
  owned_by:
    - BackLinks
  indexes:
    FileHash: true
  defaults:
    ShowInSearch: 1
  extensions:
    0: SilverStripe\ORM\Hierarchy\Hierarchy
    1: SilverStripe\Security\InheritedPermissionsExtension
    2: SilverStripe\AssetAdmin\Controller\AssetAdminFile
    Versioned: SilverStripe\Versioned\Versioned
    3: SilverStripe\VersionedAdmin\Extensions\FileArchiveExtension
  casting:
    TreeTitle: HTMLFragment
    getTreeTitle: HTMLFragment
    Tag: HTMLFragment
    getTag: HTMLFragment
    AttributesHTML: HTMLFragment
    getAttributesHTML: HTMLFragment
  table_name: File
  allowed_extensions:
    - ''
    - ace
    - arc
    - arj
    - asf
    - au
    - avi
    - bmp
    - bz2
    - cab
    - cda
    - csv
    - dmg
    - doc
    - docx
    - dotx
    - flv
    - gif
    - gz
    - hqx
    - ico
    - jpeg
    - jpg
    - kml
    - m4a
    - m4v
    - mid
    - midi
    - mkv
    - mov
    - mp3
    - mp4
    - mpa
    - mpeg
    - mpg
    - ogg
    - ogv
    - pages
    - pcx
    - pdf
    - png
    - pps
    - ppt
    - pptx
    - potx
    - ra
    - ram
    - rm
    - rtf
    - sit
    - sitx
    - tar
    - tgz
    - tif
    - tiff
    - txt
    - wav
    - webm
    - webp
    - wma
    - wmv
    - xls
    - xlsx
    - xltx
    - zip
    - zipx
    - woff
    - woff2
    - ttf
    - eot
    - svg
    - graphql
  app_categories:
    archive:
      - ace
      - arc
      - arj
      - bz
      - bz2
      - cab
      - dmg
      - gz
      - hqx
      - jar
      - rar
      - sit
      - sitx
      - tar
      - tgz
      - zip
      - zipx
    audio:
      - aif
      - aifc
      - aiff
      - apl
      - au
      - avr
      - cda
      - m4a
      - mid
      - midi
      - mp3
      - ogg
      - ra
      - ram
      - rm
      - snd
      - wav
      - wma
    document:
      - css
      - csv
      - doc
      - docx
      - dotm
      - dotx
      - htm
      - html
      - js
      - kml
      - pages
      - pdf
      - potm
      - potx
      - pps
      - ppt
      - pptx
      - rtf
      - txt
      - xhtml
      - xls
      - xlsx
      - xltm
      - xltx
      - xml
      - graphql
    image:
      - alpha
      - als
      - bmp
      - cel
      - gif
      - ico
      - icon
      - jpeg
      - jpg
      - pcx
      - png
      - ps
      - psd
      - tif
      - tiff
      - webp
    image/supported:
      - gif
      - jpeg
      - jpg
      - png
      - bmp
      - ico
      - webp
    flash:
      - fla
      - swf
    video:
      - asf
      - avi
      - flv
      - ifo
      - m1v
      - m2v
      - m4v
      - mkv
      - mov
      - mp2
      - mp4
      - mpa
      - mpe
      - mpeg
      - mpg
      - ogv
      - qt
      - vob
      - webm
      - wmv
  class_for_file_extension:
    '*': SilverStripe\Assets\File
    jpg: SilverStripe\Assets\Image
    jpeg: SilverStripe\Assets\Image
    png: SilverStripe\Assets\Image
    gif: SilverStripe\Assets\Image
    bmp: SilverStripe\Assets\Image
    ico: SilverStripe\Assets\Image
    webp: SilverStripe\Assets\Image
  apply_restrictions_to_admin: true
  update_filesystem: true
  file_types:
    gif: 'GIF image - good for diagrams'
    jpg: 'JPEG image - good for photos'
    jpeg: 'JPEG image - good for photos'
    png: 'PNG image - good general-purpose format'
    ico: 'Icon image'
    tiff: 'Tagged image format'
    doc: 'Word document'
    xls: 'Excel spreadsheet'
    ppt: 'PowerPoint presentation'
    docx: 'Word document'
    xlsx: 'Excel spreadsheet'
    pptx: 'PowerPoint presentation'
    zip: 'ZIP compressed file'
    gz: 'GZIP compressed file'
    dmg: 'Apple disk image'
    pdf: 'Adobe Acrobat PDF file'
    mp3: 'MP3 audio file'
    wav: 'WAV audio file'
    avi: 'AVI video file'
    mpg: 'MPEG video file'
    mpeg: 'MPEG video file'
    js: 'Javascript file'
    css: 'CSS file'
    html: 'HTML file'
    htm: 'HTML file'
    webp: 'WEBP Image'
  force_resample: false
  strip_thumbnail_width: 50
  strip_thumbnail_height: 50
  cms_thumbnail_width: 100
  cms_thumbnail_height: 100
  asset_preview_width: 930
  asset_preview_height: 336
silverstripe\assets\filedefaultpermissions: []
silverstripe\assets\filefinder: []
silverstripe\assets\filenamefilter:
  default_use_transliterator: true
  default_replacements:
    /\s/: '-'
    '/[^-_A-Za-z0-9+.]+/': ''
    '/_{2,}/': _
    '/-{2,}/': '-'
    '/^[-_\.]+/': ''
silverstripe\assets\filesystem:
  file_create_mask: 1533
  folder_create_mask: 1533
silverstripe\assets\folder:
  singular_name: Folder
  plural_name: Folders
  table_name: Folder
silverstripe\assets\foldernamefilter:
  default_replacements:
    /\./: '-'
silverstripe\assets\image:
  table_name: Image
  singular_name: Image
  plural_name: Images
  lazy_loading_enabled: true
  extensions:
    - RS\Extension\ImageMetaExtension
    - JonoM\FocusPoint\Extensions\FocusPointImageExtension
silverstripe\assets\imagebackendfactory: []
silverstripe\assets\interventionbackend:
  flush_enabled: true
  error_cache_ttl:
    invalid: 0
    missing: '5,10,20,40,80'
    unknown: 300
  local_temp_path: /home/golfvancouverisl/apistaging.golfvancouverisland.ca/releases/2/silverstripe-cache/golfvancouverisl
silverstripe\assets\upload:
  allowed_actions:
    - index
    - load
  uploads_folder: Uploads
  version_prefix: '-v'
silverstripe\assets\upload_validator:
  default_max_file_size: []
  use_is_uploaded_file: true
silverstripe\assets\util: []
silverstripe\campaignadmin\addtocampaignhandler: []
silverstripe\campaignadmin\addtocampaignhandler_formaction: []
silverstripe\campaignadmin\addtocampaignvalidator: []
silverstripe\campaignadmin\campaignadmin:
  allowed_actions:
    - set
    - sets
    - EditForm
    - campaignEditForm
    - campaignCreateForm
    - readCampaigns
    - readCampaign
    - deleteCampaign
    - publishCampaign
    - removeCampaignItem
  menu_priority: 3
  sync_expires: 300
  menu_title: Campaigns
  menu_icon_class: font-icon-page-multiple
  tree_class: SilverStripe\Versioned\ChangeSet
  show_published: true
  show_inferred: false
  url_handlers:
    'GET sets': readCampaigns
    'POST set/$ID/publish': publishCampaign
    'GET set/$ID/$Name': readCampaign
    'DELETE set/$ID': deleteCampaign
    campaignEditForm/$ID: campaignEditForm
    campaignCreateForm: campaignCreateForm
    'POST removeCampaignItem/$CampaignID/$ItemID': removeCampaignItem
  url_segment: campaigns
  thumbnail_width: 64
  thumbnail_height: 64
  required_permission_codes: CMS_ACCESS_CampaignAdmin
silverstripe\campaignadmin\campaignadminextension: []
silverstripe\campaignadmin\campaignadminlist: []
silverstripe\campaignadmin\sitetreeextension: []
silverstripe\errorpage\errorpage:
  db:
    ErrorCode: Int
  defaults:
    ShowInMenus: 0
    ShowInSearch: 0
    ErrorCode: 400
  table_name: ErrorPage
  allowed_children: []
  description: 'Custom content for different error cases (e.g. "Page not found")'
  icon_class: font-icon-p-error
  dev_append_error_message: true
  enable_static_file: true
  store_filepath: null
silverstripe\errorpage\errorpagecontroller: []
silverstripe\errorpage\errorpagecontrollerextension: []
silverstripe\errorpage\errorpageerrorformatter: []
silverstripe\errorpage\errorpagefileextension: []
silverstripe\graphql\controller:
  cors:
    Enabled: true
    Allow-Origin: '*'
    Allow-Headers: 'Authorization, Content-Type'
    Allow-Methods: 'GET, POST, OPTIONS'
    Allow-Credentials: 'true'
    Max-Age: 600
silverstripe\loginforms\enablerextension:
  login_themes:
    - $public
    - 'silverstripe/login-forms:login-forms'
    - $default
  excluded_actions:
    - index
    - ping
  enable_dark_mode: true
silverstripe\mimevalidator\mimeuploadvalidator:
  MimeTypes:
    csv:
      - application/csv
      - text/plain
    ico:
      - image/vnd.microsoft.icon
      - image/x-icon
      - image/x-ico
    ics:
      - text/plain
    docx:
      - application/vnd.openxmlformats-officedocument.wordprocessingml.document
      - application/zip
    docm:
      - application/vnd.ms-word.document.macroEnabled.12
      - application/zip
    dotx:
      - application/vnd.openxmlformats-officedocument.wordprocessingml.template
      - application/zip
    dotm:
      - application/vnd.ms-word.template.macroEnabled.12
      - application/zip
    xlsx:
      - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
      - application/zip
    xlsm:
      - application/vnd.ms-excel.sheet.macroEnabled.12
      - application/zip
    xltx:
      - application/vnd.openxmlformats-officedocument.spreadsheetml.template
      - application/zip
    xltm:
      - application/vnd.ms-excel.template.macroEnabled.12
      - application/zip
    xlsb:
      - application/vnd.ms-excel.sheet.binary.macroEnabled.12
      - application/zip
    xlam:
      - application/vnd.ms-excel.addin.macroEnabled.12
      - application/zip
    pptx:
      - application/vnd.openxmlformats-officedocument.presentationml.presentation
      - application/zip
    pptm:
      - application/vnd.ms-powerpoint.presentation.macroEnabled.12
      - application/zip
    ppsx:
      - application/vnd.openxmlformats-officedocument.presentationml.slideshow
      - application/zip
    ppsm:
      - application/vnd.ms-powerpoint.slideshow.macroEnabled.12
      - application/zip
    potx:
      - application/vnd.openxmlformats-officedocument.presentationml.template
      - application/zip
    potm:
      - application/vnd.ms-powerpoint.template.macroEnabled.12
      - application/zip
    ppam:
      - application/vnd.ms-powerpoint.addin.macroEnabled.12
      - application/zip
    sldx:
      - application/vnd.openxmlformats-officedocument.presentationml.slide
      - application/zip
    sldm:
      - application/vnd.ms-powerpoint.slide.macroEnabled.12
      - application/zip
    one:
      - application/msonenote
      - application/zip
    onetoc2:
      - application/msonenote
      - application/zip
    onetmp:
      - application/msonenote
      - application/zip
    onepkg:
      - application/msonenote
      - application/zip
    thmx:
      - application/vnd.ms-officetheme
      - application/zip
silverstripe\mimevalidator\mimeuploadvalidatorexception: []
silverstripe\reports\report:
  excluded_reports:
    - SilverStripe\Reports\Report
    - SilverStripe\Reports\ReportWrapper
    - SilverStripe\Reports\SideReportWrapper
  limit_count_in_overview: 10000
silverstripe\reports\reportadmin:
  url_segment: reports
  menu_title: Reports
  menu_icon_class: font-icon-chart-line
  template_path: null
  tree_class: SilverStripe\Reports\Report
  url_handlers:
    show/$ReportClass/$Action: handleAction
  required_permission_codes: CMS_ACCESS_ReportAdmin
silverstripe\reports\reportwrapper: []
silverstripe\reports\sidereportview: []
silverstripe\reports\sidereportwrapper: []
silverstripe\forms\segmentfield:
  allowed_actions:
    - suggest
silverstripe\siteconfig\siteconfig:
  db:
    Title: Varchar(255)
    Tagline: Varchar(255)
    CanViewType: "Enum('Anyone, LoggedInUsers, OnlyTheseUsers', 'Anyone')"
    CanEditType: "Enum('LoggedInUsers, OnlyTheseUsers', 'LoggedInUsers')"
    CanCreateTopLevelType: "Enum('LoggedInUsers, OnlyTheseUsers', 'LoggedInUsers')"
  many_many:
    ViewerGroups: SilverStripe\Security\Group
    EditorGroups: SilverStripe\Security\Group
    CreateTopLevelGroups: SilverStripe\Security\Group
  defaults:
    CanViewType: Anyone
    CanEditType: LoggedInUsers
    CanCreateTopLevelType: LoggedInUsers
  table_name: SiteConfig
  required_permission:
    - CMS_ACCESS_CMSMain
    - CMS_ACCESS_LeftAndMain
silverstripe\siteconfig\siteconfigleftandmain:
  url_segment: settings
  url_rule: /$Action/$ID/$OtherID
  menu_priority: -1
  menu_title: Settings
  menu_icon_class: font-icon-cog
  tree_class: SilverStripe\SiteConfig\SiteConfig
  required_permission_codes:
    - EDIT_SITECONFIG
silverstripe\siteconfig\siteconfigpagepermissions: []
silverstripe\tagfield\readonlytagfield: []
silverstripe\tagfield\stringtagfield:
  allowed_actions:
    - suggest
silverstripe\tagfield\tagfield:
  allowed_actions:
    - suggest
silverstripe\versioned\changeset:
  singular_name: Campaign
  plural_name: Campaigns
  table_name: ChangeSet
  db:
    Name: Varchar
    State: "Enum('open,published,reverted','open')"
    IsInferred: Boolean(0)
    Description: Text
    PublishDate: Datetime
    LastSynced: Datetime
  has_many:
    Changes: SilverStripe\Versioned\ChangeSetItem
  defaults:
    State: open
  has_one:
    Owner: SilverStripe\Security\Member
    Publisher: SilverStripe\Security\Member
  casting:
    Details: Text
  default_sort: '"ChangeSet"."State" ASC, "ChangeSet"."ID" ASC'
  important_classes:
    - SilverStripe\CMS\Model\SiteTree
    - SilverStripe\Assets\File
  summary_fields:
    Name: Title
    Details: Items
    StateLabel: Status
    PublishedLabel: Published
  required_permission:
    - CMS_ACCESS_CampaignAdmin
    - CMS_ACCESS_LeftAndMain
silverstripe\versioned\changesetitem:
  table_name: ChangeSetItem
  db:
    VersionBefore: Int
    VersionAfter: Int
    Added: "Enum('explicitly, implicitly', 'implicitly')"
  has_one:
    ChangeSet: SilverStripe\Versioned\ChangeSet
    Object: SilverStripe\ORM\DataObject
  many_many:
    ReferencedBy: SilverStripe\Versioned\ChangeSetItem
  belongs_many_many:
    References: SilverStripe\Versioned\ChangeSetItem.ReferencedBy
  indexes:
    ObjectUniquePerChangeSet:
      type: unique
      columns:
        - ObjectID
        - ObjectClass
        - ChangeSetID
silverstripe\versioned\datadifferencer: []
silverstripe\versioned\gridfieldarchiveaction: []
silverstripe\versioned\gridfieldrestoreaction: []
silverstripe\versioned\readingmode: []
silverstripe\versioned\recursivepublishable:
  owns: []
  owned_by: []
silverstripe\versioned\recursivepublishablehandler: []
silverstripe\versioned\restoreaction: []
silverstripe\versioned\versioned:
  draft_site_secured: true
  non_virtual_fields:
    - MigratingVersion
    - NextWriteWithoutVersioned
    - DeleteWritesVersionDisabled
  db_for_versions_table:
    RecordID: Int
    Version: Int
    WasPublished: Boolean
    WasDeleted: Boolean
    WasDraft: Boolean(1)
    AuthorID: Int
    PublisherID: Int
  casting:
    RecordID: Int
    WasPublished: Boolean
    WasDeleted: Boolean
    WasDraft: Boolean
    AuthorID: Int
    PublisherID: Int
  db:
    Version: Int
  prepopulate_versionnumber_cache: true
  use_conditions_over_inner_joins: false
  indexes_for_versions_table:
    RecordID_Version:
      type: index
      columns:
        - RecordID
        - Version
    RecordID:
      type: index
      columns:
        - RecordID
    Version:
      type: index
      columns:
        - Version
    AuthorID:
      type: index
      columns:
        - AuthorID
    PublisherID:
      type: index
      columns:
        - PublisherID
  versionableExtensions: []
  non_live_permissions:
    - CMS_ACCESS_LeftAndMain
    - CMS_ACCESS_CMSMain
    - VIEW_DRAFT_CONTENT
  use_session: false
silverstripe\versioned\versionedgridfieldarchiveextension: []
silverstripe\versioned\versionedgridfielddetailform: []
silverstripe\versioned\versionedgridfielditemrequest:
  extensions:
    - SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction
silverstripe\versioned\versionedgridfieldstateextension: []
silverstripe\versioned\versionedhttpmiddleware: []
silverstripe\versioned\versionedstateextension: []
silverstripe\versioned\versionedtabledataqueryextension: []
silverstripe\versioned\versioned_version: []
silverstripe\versionedadmin\archiveadmin:
  url_segment: archive
  menu_title: Archive
  menu_icon_class: font-icon-box
symbiote\gridfieldextensions\gridfieldaddexistingsearchbutton:
  allowed_actions:
    - handleSearch
symbiote\gridfieldextensions\gridfieldaddexistingsearchhandler:
  allowed_actions:
    - index
    - add
    - SearchForm
symbiote\gridfieldextensions\gridfieldaddnewinlinebutton: []
symbiote\gridfieldextensions\gridfieldaddnewmulticlass:
  allowed_actions:
    - handleAdd
  showEmptyString: true
symbiote\gridfieldextensions\gridfieldaddnewmulticlasshandler: []
symbiote\gridfieldextensions\gridfieldconfigurablepaginator:
  default_page_sizes:
    - 15
    - 30
    - 60
symbiote\gridfieldextensions\gridfieldeditablecolumns:
  allowed_actions:
    - handleForm
symbiote\gridfieldextensions\gridfieldextensions: []
symbiote\gridfieldextensions\gridfieldexternallink: []
symbiote\gridfieldextensions\gridfieldorderablerows:
  default_immediate_update: true
  allowed_actions:
    - handleReorder
    - handleMoveToPage
symbiote\gridfieldextensions\gridfieldrequesthandler:
  allowed_actions:
    - Form
symbiote\gridfieldextensions\gridfieldtitleheader: []
unclecheese\displaylogic\criteria:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
  comparisons:
    - isEqualTo
    - isNotEqualTo
    - isGreaterThan
    - isLessThan
    - contains
    - startsWith
    - endsWith
    - isEmpty
    - isNotEmpty
    - isBetween
    - isChecked
    - isNotChecked
    - hasCheckedOption
    - hasCheckedAtLeast
    - hasCheckedLessThan
  animations:
    - toggle
    - slide
    - fade
  default_animation: toggle
unclecheese\displaylogic\criterion:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
wilr\googlesitemaps\googlesitemap:
  dataobjects: []
  routes: []
  exclude_redirector_pages: true
  search_indexes:
    google: 'http://www.google.com/webmasters/sitemaps/ping?sitemap='
    bing: 'http://www.bing.com/ping?sitemap='
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
  enabled: true
  objects_per_sitemap: 1000
  google_notification_enabled: false
  use_show_in_search: true
axllent\imageoptimiser\flysystem\flysystemassetstore:
  chains:
    Spatie\ImageOptimizer\Optimizers\Jpegoptim:
      - '--max=85'
      - '--all-progressive'
    Spatie\ImageOptimizer\Optimizers\Pngquant:
      - '--force'
    Spatie\ImageOptimizer\Optimizers\Optipng:
      - '-i0'
      - '-o2'
      - '-quiet'
    Spatie\ImageOptimizer\Optimizers\Gifsicle:
      - '-b'
      - '-O3'
axllent\imageoptimiser\tasks\imageoptimisertask:
  segment: ImageOptimiser
bummzack\sortablefile\forms\sortableuploadfield:
  dependencies:
    logger: '%$Psr\Log\LoggerInterface'
gorriecoe\link\extensions\automaticmarkupid: []
gorriecoe\link\extensions\dbstringlink: []
gorriecoe\link\extensions\defineablemarkupid:
  db:
    IDCustomValue: Text
gorriecoe\link\extensions\linksitetree:
  db:
    Anchor: Varchar(255)
  has_one:
    SiteTree: SilverStripe\CMS\Model\SiteTree
  types:
    SiteTree: 'Page on this website'
  sitetree_field_label: MenuTitle
gorriecoe\link\extensions\sitetreelink: []
gorriecoe\link\models\link:
  table_name: Link
  db:
    Title: Varchar
    Type: Varchar(50)
    URL: Text
    Email: Varchar
    Phone: Varchar(30)
    OpenInNewWindow: Boolean
    SelectedStyle: Varchar
  has_one:
    File: SilverStripe\Assets\File
  owns:
    - File
  summary_fields:
    Title: Title
    TypeLabel: Type
    LinkURL: Link
  searchable_fields:
    - Title
    - URL
    - Email
    - Phone
  styles: []
  types:
    URL: URL
    Email: 'Email address'
    Phone: 'Phone number'
    File: 'File on this website'
  allowed_types: null
  casting:
    ClassAttr: HTMLFragment
    TargetAttr: HTMLFragment
    IDAttr: HTMLFragment
  linking_mode_default: link
  linking_mode_current: current
  linking_mode_section: section
  link_to_folders: false
  gql_fields: []
  gql_nested_queries: []
  extensions:
    - RS\Extension\LinkExtension
    - gorriecoe\Link\Extensions\LinkSiteTree
    - gorriecoe\LinkField\Extensions\LinkExtension
gorriecoe\link\view\phone:
  default_country: CA
gorriecoe\linkfield\extensions\linkextension: []
jonom\focuspoint\dev\focuspointmigrationtask:
  segment: FocusPointMigrationTask
jonom\focuspoint\extensions\focuspointassetformfactoryextension: []
jonom\focuspoint\extensions\focuspointdbfileextension: []
jonom\focuspoint\extensions\focuspointextension: []
jonom\focuspoint\extensions\focuspointimageextension:
  db:
    FocusPoint: JonoM\FocusPoint\FieldType\DBFocusPoint
jonom\focuspoint\fieldtype\dbfocuspoint:
  composite_db:
    X: Double
    'Y': Double
    Width: Int
    Height: Int
jonom\focuspoint\forms\focuspointfield:
  debug: false
  max_width: 300
  max_height: 150
hydratefocuspointtask:
  segment: HydrateFocusPointTask
jonom\betternavigator\extension\betternavigatorextension:
  better_navigator_edit_permission: CMS_ACCESS_CMSMain
  better_navigator_edit_permission_mode: any
rs\extension\leftandmainextension: []
rs\formfield\materialcolorpickerfield: []
silverstripe\admin\forms\editoremaillinkformfactory: []
silverstripe\admin\forms\editorexternallinkformfactory: []
silverstripe\forms\formmessagebootstrapextension: []
silverstripe\admin\forms\gridfielddetailformpreviewextension: []
silverstripe\admin\forms\gridfieldprintbuttonextension: []
silverstripe\admin\forms\linkformfactory:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\admin\forms\usedontable:
  allowed_actions:
    - usage
  extensions:
    - SilverStripe\AssetAdmin\Extensions\UsedOnTableExtension
    - SilverStripe\VersionedAdmin\Extensions\UsedOnTableExtension
silverstripe\admin\navigator\silverstripenavigator: []
silverstripe\admin\navigator\silverstripenavigatoritem: []
silverstripe\admin\navigator\silverstripenavigatoritem_unversioned: []
silverstripe\assetadmin\batchaction\deleteassets: []
silverstripe\assetadmin\controller\assetadmin:
  url_segment: assets
  url_rule: /$Action/$ID
  menu_title: Files
  menu_icon_class: font-icon-image
  tree_class: SilverStripe\Assets\Folder
  url_handlers:
    EditForm/field/File/item/$FileID/$Action: legacyRedirectForEditView
    show/$FolderID/edit/$FileID: index
    'POST api/createFile': apiCreateFile
    'POST api/uploadFile': apiUploadFile
    'GET api/history': apiHistory
    fileEditForm/$ID: fileEditForm
    fileInsertForm/$ID: fileInsertForm
    fileEditorLinkForm/$ID: fileEditorLinkForm
    fileHistoryForm/$ID/$VersionID: fileHistoryForm
    folderCreateForm/$ParentID: folderCreateForm
    fileSelectForm/$ID: fileSelectForm
    moveForm/$ID: moveForm
  page_length: 50
  max_history_entries: 100
  max_upload_size: null
  image_retry_min: 0
  image_retry_max: 0
  image_retry_failure_expiry: 300
  allowed_actions:
    - legacyRedirectForEditView
    - apiCreateFile
    - apiUploadFile
    - apiHistory
    - folderCreateForm
    - fileEditForm
    - fileHistoryForm
    - addToCampaignForm
    - fileInsertForm
    - fileEditorLinkForm
    - schema
    - fileSelectForm
    - fileSearchForm
    - moveForm
  required_permission_codes: CMS_ACCESS_AssetAdmin
  thumbnail_width: 352
  thumbnail_height: 264
  bust_cache: true
silverstripe\assetadmin\controller\assetadminfieldsextension: []
silverstripe\assetadmin\controller\assetadminfile:
  insert_width: 600
  insert_height: 400
silverstripe\assetadmin\exceptions\invalidremoteurlexception: []
silverstripe\assetadmin\extensions\campaignadminextension: []
silverstripe\assetadmin\extensions\remotefilemodalextension:
  allowed_actions:
    - remoteCreateForm
    - remoteEditForm
    - remoteEditFormSchema
silverstripe\assetadmin\extensions\usedontableextension: []
silverstripe\assetadmin\forms\assetformfactory:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\assetadmin\forms\fileformfactory:
  show_history: false
  extensions:
    - SilverStripe\AssetAdmin\Extensions\CampaignAdminExtension
silverstripe\assetadmin\forms\filehistoryformfactory: []
silverstripe\assetadmin\forms\filesearchformfactory:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\assetadmin\forms\foldercreateformfactory: []
silverstripe\assetadmin\forms\folderformfactory: []
silverstripe\assetadmin\forms\historylistfield: []
silverstripe\assetadmin\forms\imageformfactory:
  extensions:
    - RS\Extension\FileFormFactoryExtension
    - JonoM\FocusPoint\Extensions\FocusPointAssetFormFactoryExtension
silverstripe\assetadmin\forms\moveformfactory:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\assetadmin\forms\previewimagefield: []
silverstripe\assetadmin\forms\remotefileformfactory:
  fileurl_scheme_whitelist:
    - http
    - https
  fileurl_scheme_blacklist: []
  fileurl_domain_whitelist: []
  fileurl_domain_blacklist: []
  fileurl_port_whitelist:
    - 80
    - 443
  fileurl_port_blacklist: []
  enabled: true
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\assetadmin\forms\uploadfield:
  allowed_actions:
    - upload
  thumbnail_width: 60
  thumbnail_height: 60
silverstripe\assetadmin\graphql\filefilter: []
silverstripe\assetadmin\graphql\notice: []
silverstripe\assetadmin\helper\imagethumbnailhelper:
  dependencies:
    logger: '%$Psr\Log\LoggerInterface.quiet'
silverstripe\assetadmin\model\thumbnailgenerator:
  max_thumbnail_bytes: 200000
  thumbnail_links:
    protected: inline
    public: url
  method: FitMax
silverstripe\assets\filenameparsing\fileidhelperresolutionstrategy:
  dependencies:
    FileHashingService: '%$SilverStripe\Assets\Storage\FileHashingService'
silverstripe\assets\filenameparsing\hashfileidhelper: []
silverstripe\assets\filenameparsing\naturalfileidhelper: []
silverstripe\assets\filenameparsing\parsedfileid: []
silverstripe\assets\flysystem\assetadapter:
  server_configuration: []
  default_server: apache
  file_permissions:
    file:
      public: 436
      private: 384
    dir:
      public: 509
      private: 509
silverstripe\assets\flysystem\filesystem: []
silverstripe\assets\flysystem\flysystemassetstore:
  keep_empty_dirs: false
  denied_response_code: 404
  missing_response_code: 404
  redirect_response_code: 302
  permanent_redirect_response_code: 301
  file_response_headers:
    Cache-Control: private
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\assets\flysystem\generatedassets: []
silverstripe\assets\flysystem\localfilesystemadapter: []
silverstripe\assets\flysystem\protectedassetadapter:
  secure_folder: .protected
  server_configuration:
    apache:
      .htaccess: SilverStripe\Assets\Flysystem\ProtectedAssetAdapter_HTAccess
    microsoft-iis:
      web.config: SilverStripe\Assets\Flysystem\ProtectedAssetAdapter_WebConfig
silverstripe\assets\flysystem\publicassetadapter:
  server_configuration:
    apache:
      .htaccess: SilverStripe\Assets\Flysystem\PublicAssetAdapter_HTAccess
    microsoft-iis:
      web.config: SilverStripe\Assets\Flysystem\PublicAssetAdapter_WebConfig
silverstripe\assets\shortcodes\filelink:
  table_name: FileLink
  owns:
    - Linked
  owned_by:
    - Parent
  has_one:
    Parent: SilverStripe\ORM\DataObject
    Linked: SilverStripe\Assets\File
  hide_in_campaigns: true
silverstripe\assets\shortcodes\filelinktracking:
  dependencies:
    FileParser: '%$SilverStripe\Assets\Shortcodes\FileLinkTrackingParser'
  owns:
    - FileTracking
  many_many:
    FileTracking:
      through: SilverStripe\Assets\Shortcodes\FileLink
      from: Parent
      to: Linked
  show_file_link_tracking: false
silverstripe\assets\shortcodes\filelinktrackingparser: []
silverstripe\assets\shortcodes\fileshortcodeprovider:
  shortcodes_inherit_canview: true
  allow_session_grant: false
  extensions:
    - SilverStripe\ErrorPage\ErrorPageFileExtension
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\assets\shortcodes\imageshortcodeprovider:
  attribute_whitelist:
    - alt
    - class
    - height
    - loading
    - src
    - title
    - width
    - data-attribution
    - data-credit
    - data-copyright
    - data-deferred-src
    - data-defer-type
silverstripe\assets\storage\dbfile:
  supported_images:
    - image/jpg
    - image/jpeg
    - image/pjpeg
    - image/gif
    - image/png
    - image/x-png
    - image/tiff
    - image/tif
    - image/x-tiff
    - image/x-tif
    - image/bmp
    - image/ms-bmp
    - image/x-bitmap
    - image/x-bmp
    - image/x-ms-bmp
    - image/x-win-bitmap
    - image/x-windows-bmp
    - image/x-xbitmap
    - image/x-ico
    - image/x-icon
    - image/vnd.microsoft.icon
    - image/vnd.adobe.photoshop
    - image/webp
  composite_db:
    Hash: Varchar(255)
    Filename: Varchar(255)
    Variant: Varchar(255)
  casting:
    URL: Varchar
    AbsoluteURL: Varchar
    Basename: Varchar
    Title: Varchar
    MimeType: Varchar
    String: Text
    Tag: HTMLFragment
    getTag: HTMLFragment
    Size: Varchar
    AttributesHTML: HTMLFragment
    getAttributesHTML: HTMLFragment
  force_resample: false
  strip_thumbnail_width: 50
  strip_thumbnail_height: 50
  cms_thumbnail_width: 100
  cms_thumbnail_height: 100
  asset_preview_width: 930
  asset_preview_height: 336
  extensions:
    - RS\Extension\FileFormFactoryExtension
    - JonoM\FocusPoint\Extensions\FocusPointDBFileExtension
silverstripe\assets\storage\defaultassetnamegenerator:
  version_prefix: '-v'
silverstripe\assets\storage\protectedfilecontroller:
  url_handlers:
    $Filename: handleFile
  allowed_actions:
    - handleFile
silverstripe\assets\storage\sha1filehashingservice:
  default_cachable: true
silverstripe\cms\batchactions\cmsbatchaction_archive: []
silverstripe\cms\batchactions\cmsbatchaction_publish: []
silverstripe\cms\batchactions\cmsbatchaction_restore: []
silverstripe\cms\batchactions\cmsbatchaction_unpublish: []
silverstripe\cms\controllers\cmsmain:
  url_segment: pages
  url_rule: /$Action/$ID/$OtherID
  url_priority: 39
  menu_title: 'Edit Page'
  menu_icon_class: font-icon-sitemap
  menu_priority: 10
  tree_class: SilverStripe\CMS\Model\SiteTree
  session_namespace: SilverStripe\CMS\Controllers\CMSMain
  required_permission_codes: CMS_ACCESS_CMSMain
  enable_dynamic_archive_warning_message: true
  page_length: 15
  allowed_actions:
    - archive
    - deleteitems
    - DeleteItemsForm
    - dialog
    - duplicate
    - duplicatewithchildren
    - publishall
    - publishitems
    - PublishItemsForm
    - submit
    - EditForm
    - schema
    - SearchForm
    - SiteTreeAsUL
    - getshowdeletedsubtree
    - savetreenode
    - getsubtree
    - updatetreenodes
    - batchactions
    - treeview
    - listview
    - ListViewForm
    - childfilter
  url_handlers:
    EditForm/$ID: EditForm
  casting:
    TreeIsFiltered: Boolean
    AddForm: HTMLFragment
    LinkPages: Text
    Link: Text
    ListViewForm: HTMLFragment
    ExtraTreeTools: HTMLFragment
    PageList: HTMLFragment
    PageListSidebar: HTMLFragment
    SiteTreeHints: HTMLFragment
    SecurityID: Text
    SiteTreeAsUL: HTMLFragment
  dependencies:
    HintsCache: '%$Psr\SimpleCache\CacheInterface.CMSMain_SiteTreeHints'
silverstripe\cms\controllers\cmspageaddcontroller:
  url_segment: pages/add
  url_rule: /$Action/$ID/$OtherID
  url_priority: 42
  menu_title: 'Add page'
  required_permission_codes: CMS_ACCESS_CMSMain
  allowed_actions:
    - AddForm
    - doAdd
    - doCancel
silverstripe\cms\controllers\cmspageeditcontroller:
  url_segment: pages/edit
  url_rule: /$Action/$ID/$OtherID
  url_priority: 41
  required_permission_codes: CMS_ACCESS_CMSMain
  allowed_actions:
    - AddToCampaignForm
silverstripe\cms\controllers\cmspagesettingscontroller:
  url_segment: pages/settings
  url_rule: /$Action/$ID/$OtherID
  url_priority: 42
  required_permission_codes: CMS_ACCESS_CMSMain
silverstripe\cms\controllers\cmspagescontroller:
  url_segment: pages
  url_rule: /$Action/$ID/$OtherID
  url_priority: 40
  menu_title: Pages
  required_permission_codes: CMS_ACCESS_CMSMain
silverstripe\cms\controllers\cmssitetreefilter: []
silverstripe\cms\controllers\cmssitetreefilter_changedpages: []
silverstripe\cms\controllers\cmssitetreefilter_deletedpages: []
silverstripe\cms\controllers\cmssitetreefilter_publishedpages: []
silverstripe\cms\controllers\cmssitetreefilter_search: []
silverstripe\cms\controllers\cmssitetreefilter_statusdeletedpages: []
silverstripe\cms\controllers\cmssitetreefilter_statusdraftpages: []
silverstripe\cms\controllers\cmssitetreefilter_statusremovedfromdraftpages: []
silverstripe\cms\controllers\contentcontroller:
  extensions:
    - SilverStripe\CMS\Controllers\OldPageRedirector
    - JonoM\BetterNavigator\Extension\BetterNavigatorExtension
  allowed_actions:
    - successfullyinstalled
    - deleteinstallfiles
    - LoginForm
  casting:
    SilverStripeNavigator: HTMLFragment
silverstripe\cms\controllers\leftandmainbatchactionsextension: []
silverstripe\cms\controllers\leftandmainpageiconsextension: []
silverstripe\cms\controllers\modelascontroller:
  extensions:
    - SilverStripe\CMS\Controllers\OldPageRedirector
silverstripe\cms\controllers\oldpageredirector: []
silverstripe\cms\controllers\rooturlcontroller:
  default_homepage_link: home
silverstripe\cms\controllers\silverstripenavigatoritem_cmslink:
  priority: 10
silverstripe\cms\forms\anchorlinkformfactory: []
silverstripe\cms\forms\anchorselectorfield:
  allowed_actions:
    - anchors
  url_handlers:
    anchors/$PageID: anchors
silverstripe\cms\forms\internallinkformfactory: []
silverstripe\cms\forms\internallinkmodalextension:
  url_handlers:
    editorAnchorLink/$ItemID: editorAnchorLink
  allowed_actions:
    - editorInternalLink
    - editorAnchorLink
silverstripe\cms\forms\sitetreeurlsegmentfield:
  allowed_actions:
    - suggest
silverstripe\cms\forms\sitetreeurlsegmentfield_readonly: []
silverstripe\cms\graphql\linkableplugin:
  single_field_name: link
  list_field_name: links
  resolver:
    - SilverStripe\CMS\GraphQL\LinkablePlugin
    - applyLinkFilter
silverstripe\cms\graphql\resolver: []
silverstripe\cms\model\redirectorpage:
  description: 'Redirects requests to another location'
  icon_class: font-icon-p-redirect
  show_stage_link: false
  show_live_link: false
  db:
    RedirectionType: "Enum('Internal,External,File','Internal')"
    ExternalURL: Varchar(2083)
  defaults:
    RedirectionType: Internal
  has_one:
    LinkTo: SilverStripe\CMS\Model\SiteTree
    LinkToFile: SilverStripe\Assets\File
  table_name: RedirectorPage
silverstripe\cms\model\redirectorpagecontroller:
  allowed_actions:
    - index
silverstripe\cms\model\sitetree:
  allowed_children:
    - SilverStripe\CMS\Model\SiteTree
  show_stage_link: true
  show_live_link: true
  default_child: Page
  default_classname: Page
  default_parent: null
  can_be_root: true
  need_permission: null
  hide_ancestor: null
  controller_name: null
  cms_edit_owner: SilverStripe\CMS\Controllers\CMSMain
  namespace_map: null
  db:
    URLSegment: Varchar(255)
    Title: Varchar(255)
    MenuTitle: Varchar(100)
    Content: HTMLText
    MetaDescription: Text
    ExtraMeta: "HTMLFragment(['whitelist' => ['meta', 'link']])"
    ShowInMenus: Boolean
    ShowInSearch: Boolean
    Sort: Int
    HasBrokenFile: Boolean
    HasBrokenLink: Boolean
    ReportClass: Varchar
  indexes:
    URLSegment: true
  has_many:
    VirtualPages: SilverStripe\CMS\Model\VirtualPage.CopyContentFrom
    BackLinks: SilverStripe\CMS\Model\SiteTreeLink.Linked
  owned_by:
    - VirtualPages
  cascade_deletes:
    - VirtualPages
  casting:
    Breadcrumbs: HTMLFragment
    LastEdited: Datetime
    Created: Datetime
    Link: Text
    RelativeLink: Text
    AbsoluteLink: Text
    CMSEditLink: Text
    TreeTitle: HTMLFragment
    MetaTags: HTMLFragment
  defaults:
    ShowInMenus: 1
    ShowInSearch: 1
  table_name: SiteTree
  versioning:
    - Stage
    - Live
  default_sort: '"Sort"'
  can_create: true
  icon: null
  icon_class: font-icon-page
  extensions:
    - SilverStripe\ORM\Hierarchy\Hierarchy
    - SilverStripe\Versioned\Versioned
    - SilverStripe\Security\InheritedPermissionsExtension
    - SilverStripe\Admin\CMSEditLinkExtension
    - RS\Extension\SEOExtension
    - gorriecoe\Link\Extensions\SiteTreeLink
    - SilverStripe\CampaignAdmin\SiteTreeExtension
    - SilverStripe\VersionedAdmin\Extensions\SiteTreeArchiveExtension
    - Wilr\GoogleSitemaps\Extensions\GoogleSitemapSiteTreeExtension
  searchable_fields:
    - Title
    - Content
  field_labels:
    URLSegment: URL
  nested_urls: true
  create_default_pages: true
  runCMSFieldsExtensions: true
  enforce_strict_hierarchy: true
  meta_generator: 'Silverstripe CMS'
  show_meta_generator_version: true
  base_plural_name: Pages
  base_singular_name: Page
  description: null
  base_description: 'Generic content page'
  dependencies:
    creatableChildrenCache: '%$Psr\SimpleCache\CacheInterface.SiteTree_CreatableChildren'
  graphql_blacklisted_fields:
    HasBrokenFile: true
    HasBrokenLink: true
    ReportClass: true
    VirtualPages: true
    BackLinks: true
silverstripe\cms\model\sitetreeextension: []
silverstripe\cms\model\sitetreelink:
  table_name: SiteTreeLink
  has_one:
    Parent: SilverStripe\ORM\DataObject
    Linked: SilverStripe\CMS\Model\SiteTree
silverstripe\cms\model\sitetreelinktracking:
  dependencies:
    Parser: '%$SilverStripe\CMS\Model\SiteTreeLinkTracking_Parser'
  many_many:
    LinkTracking:
      through: SilverStripe\CMS\Model\SiteTreeLink
      from: Parent
      to: Linked
  show_sitetree_link_tracking: false
silverstripe\cms\model\sitetreelinktracking_parser: []
silverstripe\cms\model\virtualpage:
  description: 'Displays the content of another page'
  icon_class: font-icon-p-virtual
  non_virtual_fields:
    - ID
    - ClassName
    - ObsoleteClassName
    - SecurityTypeID
    - OwnerID
    - ParentID
    - URLSegment
    - Sort
    - Status
    - ShowInMenus
    - ShowInSearch
    - Version
    - Embargo
    - Expiry
    - CanViewType
    - CanEditType
    - CopyContentFromID
    - HasBrokenLink
  initially_copied_fields:
    - ShowInMenus
    - ShowInSearch
    - URLSegment
  has_one:
    CopyContentFrom: SilverStripe\CMS\Model\SiteTree
  owns:
    - CopyContentFrom
  db:
    VersionID: Int
  table_name: VirtualPage
silverstripe\cms\reports\brokenfilesreport: []
silverstripe\cms\reports\brokenlinksreport: []
silverstripe\cms\reports\brokenredirectorpagesreport: []
silverstripe\cms\reports\brokenvirtualpagesreport: []
silverstripe\cms\reports\emptypagesreport: []
silverstripe\cms\reports\recentlyeditedreport: []
silverstripe\cms\search\contentcontrollersearchextension:
  allowed_actions:
    - SearchForm
silverstripe\cms\search\searchform:
  casting:
    SearchQuery: Text
silverstripe\eventdispatcher\dispatch\dispatcher: []
silverstripe\eventdispatcher\symfony\backend: []
silverstripe\eventdispatcher\symfony\event: []
silverstripe\control\clirequestbuilder: []
silverstripe\control\clicontroller:
  allowed_actions:
    - index
silverstripe\control\contentnegotiator:
  content_type: ''
  encoding: utf-8
  enabled: false
  default_format: html
silverstripe\control\controller:
  add_trailing_slash: false
  url_handlers:
    $Action//$ID/$OtherID: handleAction
  allowed_actions:
    - handleAction
    - handleIndex
  extensions:
    - SilverStripe\ErrorPage\ErrorPageControllerExtension
silverstripe\control\cookie:
  report_errors: true
  default_samesite: Lax
silverstripe\control\cookiejar: []
silverstripe\control\director:
  rules:
    '': SilverStripe\CMS\Controllers\RootURLController
    Security//$Action/$ID/$OtherID: SilverStripe\Security\Security
    CMSSecurity//$Action/$ID/$OtherID: SilverStripe\Security\CMSSecurity
    dev: SilverStripe\Dev\DevelopmentAdmin
    api/v2/partners: APIPartnersController
    api/v2: APIController
    admin/graphql:
      Controller: '%$SilverStripe\GraphQL\Controller.admin'
      Stage: Stage
      Permissions:
        CMS_ACCESS: CMS_ACCESS
    admin: SilverStripe\Admin\AdminRootController
    assets: SilverStripe\Assets\Storage\ProtectedFileController
    admin/cms: '->admin/pages'
    loginsession//$ID: SilverStripe\SessionManager\Controllers\LoginSessionController
    sitemap.xml: Wilr\GoogleSitemaps\Control\GoogleSitemapController
    $URLSegment//$Action/$ID/$OtherID: SilverStripe\CMS\Controllers\ModelAsController
  alternate_base_folder: null
  default_base_url: '`SS_BASE_URL`'
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\control\http:
  ignoreDeprecatedCaching: false
  MimeTypes:
    0: application/vnd.lotus-1-2-3
    3dml: text/vnd.in3d.3dml
    3ds: image/x-3ds
    3g2: video/3gpp2
    3gp: video/3gpp
    7z: application/x-7z-compressed
    aab: application/x-authorware-bin
    aac: audio/x-aac
    aam: application/x-authorware-map
    aas: application/x-authorware-seg
    abw: application/x-abiword
    ac: application/pkix-attr-cert
    acc: application/vnd.americandynamics.acc
    ace: application/x-ace-compressed
    acu: application/vnd.acucobol
    acutc: application/vnd.acucorp
    adp: audio/adpcm
    aep: application/vnd.audiograph
    afm: application/x-font-type1
    afp: application/vnd.ibm.modcap
    ahead: application/vnd.ahead.space
    ai: application/postscript
    aif: audio/x-aiff
    aifc: audio/x-aiff
    aiff: audio/x-aiff
    air: application/vnd.adobe.air-application-installer-package+zip
    ait: application/vnd.dvb.ait
    ami: application/vnd.amiga.ami
    apk: application/vnd.android.package-archive
    appcache: text/cache-manifest
    application: application/x-ms-application
    apr: application/vnd.lotus-approach
    arc: application/x-freearc
    asc: application/pgp-signature
    asf: video/x-ms-asf
    asm: text/x-asm
    aso: application/vnd.accpac.simply.aso
    asx: video/x-ms-asf
    atc: application/vnd.acucorp
    atom: application/atom+xml
    atomcat: application/atomcat+xml
    atomsvc: application/atomsvc+xml
    atx: application/vnd.antix.game-component
    au: audio/basic
    avi: video/x-msvideo
    aw: application/applixware
    azf: application/vnd.airzip.filesecure.azf
    azs: application/vnd.airzip.filesecure.azs
    azw: application/vnd.amazon.ebook
    bat: application/x-msdownload
    bcpio: application/x-bcpio
    bdf: application/x-font-bdf
    bdm: application/vnd.syncml.dm+wbxml
    bed: application/vnd.realvnc.bed
    bh2: application/vnd.fujitsu.oasysprs
    bin: application/octet-stream
    blb: application/x-blorb
    blorb: application/x-blorb
    bmi: application/vnd.bmi
    bmp: image/bmp
    book: application/vnd.framemaker
    box: application/vnd.previewsystems.box
    boz: application/x-bzip2
    bpk: application/octet-stream
    btif: image/prs.btif
    bz: application/x-bzip
    bz2: application/x-bzip2
    c: text/x-c
    c11amc: application/vnd.cluetrust.cartomobile-config
    c11amz: application/vnd.cluetrust.cartomobile-config-pkg
    c4d: application/vnd.clonk.c4group
    c4f: application/vnd.clonk.c4group
    c4g: application/vnd.clonk.c4group
    c4p: application/vnd.clonk.c4group
    c4u: application/vnd.clonk.c4group
    cab: application/vnd.ms-cab-compressed
    caf: audio/x-caf
    cap: application/vnd.tcpdump.pcap
    car: application/vnd.curl.car
    cat: application/vnd.ms-pki.seccat
    cb7: application/x-cbr
    cba: application/x-cbr
    cbr: application/x-cbr
    cbt: application/x-cbr
    cbz: application/x-cbr
    cc: text/x-c
    cct: application/x-director
    ccxml: application/ccxml+xml
    cdbcmsg: application/vnd.contact.cmsg
    cdf: application/x-netcdf
    cdkey: application/vnd.mediastation.cdkey
    cdmia: application/cdmi-capability
    cdmic: application/cdmi-container
    cdmid: application/cdmi-domain
    cdmio: application/cdmi-object
    cdmiq: application/cdmi-queue
    cdx: chemical/x-cdx
    cdxml: application/vnd.chemdraw+xml
    cdy: application/vnd.cinderella
    cer: application/pkix-cert
    cfs: application/x-cfs-compressed
    cgm: image/cgm
    chat: application/x-chat
    chm: application/vnd.ms-htmlhelp
    chrt: application/vnd.kde.kchart
    cif: chemical/x-cif
    cii: application/vnd.anser-web-certificate-issue-initiation
    cil: application/vnd.ms-artgalry
    cla: application/vnd.claymore
    class: application/java-vm
    clkk: application/vnd.crick.clicker.keyboard
    clkp: application/vnd.crick.clicker.palette
    clkt: application/vnd.crick.clicker.template
    clkw: application/vnd.crick.clicker.wordbank
    clkx: application/vnd.crick.clicker
    clp: application/x-msclip
    cmc: application/vnd.cosmocaller
    cmdf: chemical/x-cmdf
    cml: chemical/x-cml
    cmp: application/vnd.yellowriver-custom-menu
    cmx: image/x-cmx
    cod: application/vnd.rim.cod
    com: application/x-msdownload
    conf: text/plain
    cpio: application/x-cpio
    cpp: text/x-c
    cpt: application/mac-compactpro
    crd: application/x-mscardfile
    crl: application/pkix-crl
    crt: application/x-x509-ca-cert
    cryptonote: application/vnd.rig.cryptonote
    csh: application/x-csh
    csml: chemical/x-csml
    csp: application/vnd.commonspace
    css: text/css
    cst: application/x-director
    csv: text/plain
    cu: application/cu-seeme
    curl: text/vnd.curl
    cww: application/prs.cww
    cxt: application/x-director
    cxx: text/x-c
    dae: model/vnd.collada+xml
    daf: application/vnd.mobius.daf
    dart: application/vnd.dart
    dataless: application/vnd.fdsn.seed
    davmount: application/davmount+xml
    dbk: application/docbook+xml
    dcr: application/x-director
    dcurl: text/vnd.curl.dcurl
    dd2: application/vnd.oma.dd2+xml
    ddd: application/vnd.fujixerox.ddd
    deb: application/x-debian-package
    def: text/plain
    deploy: application/octet-stream
    der: application/x-x509-ca-cert
    dfac: application/vnd.dreamfactory
    dgc: application/x-dgc-compressed
    dic: text/x-c
    dir: application/x-director
    dis: application/vnd.mobius.dis
    dist: application/octet-stream
    distz: application/octet-stream
    djv: image/vnd.djvu
    djvu: image/vnd.djvu
    dll: application/x-msdownload
    dmg: application/x-apple-diskimage
    dmp: application/vnd.tcpdump.pcap
    dms: application/octet-stream
    dna: application/vnd.dna
    doc: application/msword
    docm: application/vnd.ms-word.document.macroenabled.12
    docx: application/vnd.openxmlformats-officedocument.wordprocessingml.document
    dot: application/msword
    dotm: application/vnd.ms-word.template.macroenabled.12
    dotx: application/vnd.openxmlformats-officedocument.wordprocessingml.template
    dp: application/vnd.osgi.dp
    dpg: application/vnd.dpgraph
    dra: audio/vnd.dra
    dsc: text/prs.lines.tag
    dssc: application/dssc+der
    dtb: application/x-dtbook+xml
    dtd: application/xml-dtd
    dts: audio/vnd.dts
    dtshd: audio/vnd.dts.hd
    dump: application/octet-stream
    dvb: video/vnd.dvb.file
    dvi: application/x-dvi
    dwf: model/vnd.dwf
    dwg: image/vnd.dwg
    dxf: image/vnd.dxf
    dxp: application/vnd.spotfire.dxp
    dxr: application/x-director
    ecelp4800: audio/vnd.nuera.ecelp4800
    ecelp7470: audio/vnd.nuera.ecelp7470
    ecelp9600: audio/vnd.nuera.ecelp9600
    ecma: application/ecmascript
    edm: application/vnd.novadigm.edm
    edx: application/vnd.novadigm.edx
    efif: application/vnd.picsel
    ei6: application/vnd.pg.osasli
    elc: application/octet-stream
    emf: application/x-msmetafile
    eml: message/rfc822
    emma: application/emma+xml
    emz: application/x-msmetafile
    eol: audio/vnd.digital-winds
    eot: application/vnd.ms-fontobject
    eps: application/postscript
    epub: application/epub+zip
    es3: application/vnd.eszigno3+xml
    esa: application/vnd.osgi.subsystem
    esf: application/vnd.epson.esf
    et3: application/vnd.eszigno3+xml
    etx: text/x-setext
    eva: application/x-eva
    evy: application/x-envoy
    exe: application/x-msdownload
    exi: application/exi
    ext: application/vnd.novadigm.ext
    ez: application/andrew-inset
    ez2: application/vnd.ezpix-album
    ez3: application/vnd.ezpix-package
    f: text/x-fortran
    f4v: video/x-f4v
    f77: text/x-fortran
    f90: text/x-fortran
    fbs: image/vnd.fastbidsheet
    fcdt: application/vnd.adobe.formscentral.fcdt
    fcs: application/vnd.isac.fcs
    fdf: application/vnd.fdf
    fe_launch: application/vnd.denovo.fcselayout-link
    fg5: application/vnd.fujitsu.oasysgp
    fgd: application/x-director
    fh: image/x-freehand
    fh4: image/x-freehand
    fh5: image/x-freehand
    fh7: image/x-freehand
    fhc: image/x-freehand
    fig: application/x-xfig
    flac: audio/x-flac
    fli: video/x-fli
    flo: application/vnd.micrografx.flo
    flv: video/x-flv
    flw: application/vnd.kde.kivio
    flx: text/vnd.fmi.flexstor
    fly: text/vnd.fly
    fm: application/vnd.framemaker
    fnc: application/vnd.frogans.fnc
    for: text/x-fortran
    fpx: image/vnd.fpx
    frame: application/vnd.framemaker
    fsc: application/vnd.fsc.weblaunch
    fst: image/vnd.fst
    ftc: application/vnd.fluxtime.clip
    fti: application/vnd.anser-web-funds-transfer-initiation
    fvt: video/vnd.fvt
    fxp: application/vnd.adobe.fxp
    fxpl: application/vnd.adobe.fxp
    fzs: application/vnd.fuzzysheet
    g2w: application/vnd.geoplan
    g3: image/g3fax
    g3w: application/vnd.geospace
    gac: application/vnd.groove-account
    gam: application/x-tads
    gbr: application/rpki-ghostbusters
    gca: application/x-gca-compressed
    gdl: model/vnd.gdl
    geo: application/vnd.dynageo
    gex: application/vnd.geometry-explorer
    ggb: application/vnd.geogebra.file
    ggt: application/vnd.geogebra.tool
    ghf: application/vnd.groove-help
    gif: image/gif
    gim: application/vnd.groove-identity-message
    gml: application/gml+xml
    gmx: application/vnd.gmx
    gnumeric: application/x-gnumeric
    gph: application/vnd.flographit
    gpx: application/gpx+xml
    gqf: application/vnd.grafeq
    gqs: application/vnd.grafeq
    gram: application/srgs
    gramps: application/x-gramps-xml
    gre: application/vnd.geometry-explorer
    grv: application/vnd.groove-injector
    grxml: application/srgs+xml
    gsf: application/x-font-ghostscript
    gtar: application/x-gtar
    gtm: application/vnd.groove-tool-message
    gtw: model/vnd.gtw
    gv: text/vnd.graphviz
    gxf: application/gxf
    gxt: application/vnd.geonext
    gz: application/gzip
    h: text/x-c
    h261: video/h261
    h263: video/h263
    h264: video/h264
    hal: application/vnd.hal+xml
    hbci: application/vnd.hbci
    hdf: application/x-hdf
    hh: text/x-c
    hlp: application/winhlp
    hpgl: application/vnd.hp-hpgl
    hpid: application/vnd.hp-hpid
    hps: application/vnd.hp-hps
    hqx: application/mac-binhex40
    htke: application/vnd.kenameaapp
    htm: text/html
    html: text/html
    hvd: application/vnd.yamaha.hv-dic
    hvp: application/vnd.yamaha.hv-voice
    hvs: application/vnd.yamaha.hv-script
    i2g: application/vnd.intergeo
    icc: application/vnd.iccprofile
    ice: x-conference/x-cooltalk
    icm: application/vnd.iccprofile
    ico: image/x-icon
    ics: text/calendar
    ief: image/ief
    ifb: text/calendar
    ifm: application/vnd.shana.informed.formdata
    iges: model/iges
    igl: application/vnd.igloader
    igm: application/vnd.insors.igm
    igs: model/iges
    igx: application/vnd.micrografx.igx
    iif: application/vnd.shana.informed.interchange
    imp: application/vnd.accpac.simply.imp
    ims: application/vnd.ms-ims
    in: text/plain
    ink: application/inkml+xml
    inkml: application/inkml+xml
    install: application/x-install-instructions
    iota: application/vnd.astraea-software.iota
    ipfix: application/ipfix
    ipk: application/vnd.shana.informed.package
    irm: application/vnd.ibm.rights-management
    irp: application/vnd.irepository.package+xml
    iso: application/x-iso9660-image
    itp: application/vnd.shana.informed.formtemplate
    ivp: application/vnd.immervision-ivp
    ivu: application/vnd.immervision-ivu
    jad: text/vnd.sun.j2me.app-descriptor
    jam: application/vnd.jam
    jar: application/java-archive
    java: text/x-java-source
    jisp: application/vnd.jisp
    jlt: application/vnd.hp-jlyt
    jnlp: application/x-java-jnlp-file
    joda: application/vnd.joost.joda-archive
    jpe: image/jpeg
    jpeg: image/jpeg
    jpg: image/jpeg
    jpgm: video/jpm
    jpgv: video/jpeg
    jpm: video/jpm
    js: application/javascript
    json: application/json
    jsonml: application/jsonml+json
    kar: audio/midi
    karbon: application/vnd.kde.karbon
    kfo: application/vnd.kde.kformula
    kia: application/vnd.kidspiration
    kml: application/vnd.google-earth.kml+xml
    kmz: application/vnd.google-earth.kmz
    kne: application/vnd.kinar
    knp: application/vnd.kinar
    kon: application/vnd.kde.kontour
    kpr: application/vnd.kde.kpresenter
    kpt: application/vnd.kde.kpresenter
    kpxx: application/vnd.ds-keypoint
    ksp: application/vnd.kde.kspread
    ktr: application/vnd.kahootz
    ktx: image/ktx
    ktz: application/vnd.kahootz
    kwd: application/vnd.kde.kword
    kwt: application/vnd.kde.kword
    lasxml: application/vnd.las.las+xml
    latex: application/x-latex
    lbd: application/vnd.llamagraphics.life-balance.desktop
    lbe: application/vnd.llamagraphics.life-balance.exchange+xml
    les: application/vnd.hhe.lesson-player
    lha: application/x-lzh-compressed
    link66: application/vnd.route66.link66+xml
    list: text/plain
    list3820: application/vnd.ibm.modcap
    listafp: application/vnd.ibm.modcap
    lnk: application/x-ms-shortcut
    log: text/plain
    lostxml: application/lost+xml
    lrf: application/octet-stream
    lrm: application/vnd.ms-lrm
    ltf: application/vnd.frogans.ltf
    lvp: audio/vnd.lucent.voice
    lwp: application/vnd.lotus-wordpro
    lzh: application/x-lzh-compressed
    m13: application/x-msmediaview
    m14: application/x-msmediaview
    m1v: video/mpeg
    m21: application/mp21
    m2a: audio/mpeg
    m2v: video/mpeg
    m3a: audio/mpeg
    m3u: audio/x-mpegurl
    m3u8: application/vnd.apple.mpegurl
    m4u: video/vnd.mpegurl
    m4v: video/x-m4v
    ma: application/mathematica
    mads: application/mads+xml
    mag: application/vnd.ecowin.chart
    maker: application/vnd.framemaker
    man: text/troff
    mar: application/octet-stream
    mathml: application/mathml+xml
    mb: application/mathematica
    mbk: application/vnd.mobius.mbk
    mbox: application/mbox
    mc1: application/vnd.medcalcdata
    mcd: application/vnd.mcd
    mcurl: text/vnd.curl.mcurl
    mdb: application/x-msaccess
    mdi: image/vnd.ms-modi
    me: text/troff
    mesh: model/mesh
    meta4: application/metalink4+xml
    metalink: application/metalink+xml
    mets: application/mets+xml
    mfm: application/vnd.mfmp
    mft: application/rpki-manifest
    mgp: application/vnd.osgeo.mapguide.package
    mgz: application/vnd.proteus.magazine
    mid: audio/midi
    midi: audio/midi
    mie: application/x-mie
    mif: application/vnd.mif
    mime: message/rfc822
    mj2: video/mj2
    mjp2: video/mj2
    mk3d: video/x-matroska
    mka: audio/x-matroska
    mks: video/x-matroska
    mkv: video/x-matroska
    mlp: application/vnd.dolby.mlp
    mmd: application/vnd.chipnuts.karaoke-mmd
    mmf: application/vnd.smaf
    mmr: image/vnd.fujixerox.edmics-mmr
    mng: video/x-mng
    mny: application/x-msmoney
    mobi: application/x-mobipocket-ebook
    mods: application/mods+xml
    mov: video/quicktime
    movie: video/x-sgi-movie
    mp2: audio/mpeg
    mp21: application/mp21
    mp2a: audio/mpeg
    mp3: audio/mpeg
    mp4: video/mp4
    mp4a: audio/mp4
    mp4s: application/mp4
    mp4v: video/mp4
    mpc: application/vnd.mophun.certificate
    mpe: video/mpeg
    mpeg: video/mpeg
    mpg: video/mpeg
    mpg4: video/mp4
    mpga: audio/mpeg
    mpkg: application/vnd.apple.installer+xml
    mpm: application/vnd.blueice.multipass
    mpn: application/vnd.mophun.application
    mpp: application/vnd.ms-project
    mpt: application/vnd.ms-project
    mpy: application/vnd.ibm.minipay
    mqy: application/vnd.mobius.mqy
    mrc: application/marc
    mrcx: application/marcxml+xml
    ms: text/troff
    mscml: application/mediaservercontrol+xml
    mseed: application/vnd.fdsn.mseed
    mseq: application/vnd.mseq
    msf: application/vnd.epson.msf
    msh: model/mesh
    msi: application/x-msdownload
    msl: application/vnd.mobius.msl
    msty: application/vnd.muvee.style
    mts: model/vnd.mts
    mus: application/vnd.musician
    musicxml: application/vnd.recordare.musicxml+xml
    mvb: application/x-msmediaview
    mwf: application/vnd.mfer
    mxf: application/mxf
    mxl: application/vnd.recordare.musicxml
    mxml: application/xv+xml
    mxs: application/vnd.triscape.mxs
    mxu: video/vnd.mpegurl
    n-gage: application/vnd.nokia.n-gage.symbian.install
    n3: text/n3
    nb: application/mathematica
    nbp: application/vnd.wolfram.player
    nc: application/x-netcdf
    ncx: application/x-dtbncx+xml
    nfo: text/x-nfo
    ngdat: application/vnd.nokia.n-gage.data
    nitf: application/vnd.nitf
    nlu: application/vnd.neurolanguage.nlu
    nml: application/vnd.enliven
    nnd: application/vnd.noblenet-directory
    nns: application/vnd.noblenet-sealer
    nnw: application/vnd.noblenet-web
    npx: image/vnd.net-fpx
    nsc: application/x-conference
    nsf: application/vnd.lotus-notes
    ntf: application/vnd.nitf
    nzb: application/x-nzb
    oa2: application/vnd.fujitsu.oasys2
    oa3: application/vnd.fujitsu.oasys3
    oas: application/vnd.fujitsu.oasys
    obd: application/x-msbinder
    obj: application/x-tgif
    oda: application/oda
    odb: application/vnd.oasis.opendocument.database
    odc: application/vnd.oasis.opendocument.chart
    odf: application/vnd.oasis.opendocument.formula
    odft: application/vnd.oasis.opendocument.formula-template
    odg: application/vnd.oasis.opendocument.graphics
    odi: application/vnd.oasis.opendocument.image
    odm: application/vnd.oasis.opendocument.text-master
    odp: application/vnd.oasis.opendocument.presentation
    ods: application/vnd.oasis.opendocument.spreadsheet
    odt: application/vnd.oasis.opendocument.text
    oga: audio/ogg
    ogg: audio/ogg
    ogv: video/ogg
    ogx: application/ogg
    omdoc: application/omdoc+xml
    onepkg: application/onenote
    onetmp: application/onenote
    onetoc: application/onenote
    onetoc2: application/onenote
    opf: application/oebps-package+xml
    opml: text/x-opml
    oprc: application/vnd.palm
    org: application/vnd.lotus-organizer
    osf: application/vnd.yamaha.openscoreformat
    osfpvg: application/vnd.yamaha.openscoreformat.osfpvg+xml
    otc: application/vnd.oasis.opendocument.chart-template
    otf: application/x-font-otf
    otg: application/vnd.oasis.opendocument.graphics-template
    oth: application/vnd.oasis.opendocument.text-web
    oti: application/vnd.oasis.opendocument.image-template
    otp: application/vnd.oasis.opendocument.presentation-template
    ots: application/vnd.oasis.opendocument.spreadsheet-template
    ott: application/vnd.oasis.opendocument.text-template
    oxps: application/oxps
    oxt: application/vnd.openofficeorg.extension
    p: text/x-pascal
    p10: application/pkcs10
    p12: application/x-pkcs12
    p7b: application/x-pkcs7-certificates
    p7c: application/pkcs7-mime
    p7m: application/pkcs7-mime
    p7r: application/x-pkcs7-certreqresp
    p7s: application/pkcs7-signature
    p8: application/pkcs8
    pas: text/x-pascal
    paw: application/vnd.pawaafile
    pbd: application/vnd.powerbuilder6
    pbm: image/x-portable-bitmap
    pcap: application/vnd.tcpdump.pcap
    pcf: application/x-font-pcf
    pcl: application/vnd.hp-pcl
    pclxl: application/vnd.hp-pclxl
    pct: image/x-pict
    pcurl: application/vnd.curl.pcurl
    pcx: image/x-pcx
    pdb: application/vnd.palm
    pdf: application/pdf
    pfa: application/x-font-type1
    pfb: application/x-font-type1
    pfm: application/x-font-type1
    pfr: application/font-tdpfr
    pfx: application/x-pkcs12
    pgm: image/x-portable-graymap
    pgn: application/x-chess-pgn
    pgp: application/pgp-encrypted
    pic: image/x-pict
    pkg: application/octet-stream
    pki: application/pkixcmp
    pkipath: application/pkix-pkipath
    plb: application/vnd.3gpp.pic-bw-large
    plc: application/vnd.mobius.plc
    plf: application/vnd.pocketlearn
    pls: application/pls+xml
    pml: application/vnd.ctc-posml
    png: image/png
    pnm: image/x-portable-anymap
    portpkg: application/vnd.macports.portpkg
    pot: application/vnd.ms-powerpoint
    potm: application/vnd.ms-powerpoint.template.macroenabled.12
    potx: application/vnd.openxmlformats-officedocument.presentationml.template
    ppam: application/vnd.ms-powerpoint.addin.macroenabled.12
    ppd: application/vnd.cups-ppd
    ppm: image/x-portable-pixmap
    pps: application/vnd.ms-powerpoint
    ppsm: application/vnd.ms-powerpoint.slideshow.macroenabled.12
    ppsx: application/vnd.openxmlformats-officedocument.presentationml.slideshow
    ppt: application/vnd.ms-powerpoint
    pptm: application/vnd.ms-powerpoint.presentation.macroenabled.12
    pptx: application/vnd.openxmlformats-officedocument.presentationml.presentation
    pqa: application/vnd.palm
    prc: application/x-mobipocket-ebook
    pre: application/vnd.lotus-freelance
    prf: application/pics-rules
    ps: application/postscript
    psb: application/vnd.3gpp.pic-bw-small
    psd: image/vnd.adobe.photoshop
    psf: application/x-font-linux-psf
    pskcxml: application/pskc+xml
    ptid: application/vnd.pvi.ptid1
    pub: application/x-mspublisher
    pvb: application/vnd.3gpp.pic-bw-var
    pwn: application/vnd.3m.post-it-notes
    pya: audio/vnd.ms-playready.media.pya
    pyv: video/vnd.ms-playready.media.pyv
    qam: application/vnd.epson.quickanime
    qbo: application/vnd.intu.qbo
    qfx: application/vnd.intu.qfx
    qps: application/vnd.publishare-delta-tree
    qt: video/quicktime
    qwd: application/vnd.quark.quarkxpress
    qwt: application/vnd.quark.quarkxpress
    qxb: application/vnd.quark.quarkxpress
    qxd: application/vnd.quark.quarkxpress
    qxl: application/vnd.quark.quarkxpress
    qxt: application/vnd.quark.quarkxpress
    ra: audio/x-pn-realaudio
    ram: audio/x-pn-realaudio
    rar: application/x-rar-compressed
    ras: image/x-cmu-raster
    rcprofile: application/vnd.ipunplugged.rcprofile
    rdf: application/rdf+xml
    rdz: application/vnd.data-vision.rdz
    rep: application/vnd.businessobjects
    res: application/x-dtbresource+xml
    rgb: image/x-rgb
    rif: application/reginfo+xml
    rip: audio/vnd.rip
    ris: application/x-research-info-systems
    rl: application/resource-lists+xml
    rlc: image/vnd.fujixerox.edmics-rlc
    rld: application/resource-lists-diff+xml
    rm: application/vnd.rn-realmedia
    rmi: audio/midi
    rmp: audio/x-pn-realaudio-plugin
    rms: application/vnd.jcp.javame.midlet-rms
    rmvb: application/vnd.rn-realmedia-vbr
    rnc: application/relax-ng-compact-syntax
    roa: application/rpki-roa
    roff: text/troff
    rp9: application/vnd.cloanto.rp9
    rpss: application/vnd.nokia.radio-presets
    rpst: application/vnd.nokia.radio-preset
    rq: application/sparql-query
    rs: application/rls-services+xml
    rsd: application/rsd+xml
    rss: application/rss+xml
    rtf: application/rtf
    rtx: text/richtext
    s: text/x-asm
    s3m: audio/s3m
    saf: application/vnd.yamaha.smaf-audio
    sbml: application/sbml+xml
    sc: application/vnd.ibm.secure-container
    scd: application/x-msschedule
    scm: application/vnd.lotus-screencam
    scq: application/scvp-cv-request
    scs: application/scvp-cv-response
    scurl: text/vnd.curl.scurl
    sda: application/vnd.stardivision.draw
    sdc: application/vnd.stardivision.calc
    sdd: application/vnd.stardivision.impress
    sdkd: application/vnd.solent.sdkm+xml
    sdkm: application/vnd.solent.sdkm+xml
    sdp: application/sdp
    sdw: application/vnd.stardivision.writer
    see: application/vnd.seemail
    seed: application/vnd.fdsn.seed
    sema: application/vnd.sema
    semd: application/vnd.semd
    semf: application/vnd.semf
    ser: application/java-serialized-object
    setpay: application/set-payment-initiation
    setreg: application/set-registration-initiation
    sfd-hdstx: application/vnd.hydrostatix.sof-data
    sfs: application/vnd.spotfire.sfs
    sfv: text/x-sfv
    sgi: image/sgi
    sgl: application/vnd.stardivision.writer-global
    sgm: text/sgml
    sgml: text/sgml
    sh: application/x-sh
    shar: application/x-shar
    shf: application/shf+xml
    sid: image/x-mrsid-image
    sig: application/pgp-signature
    sil: audio/silk
    silo: model/mesh
    sis: application/vnd.symbian.install
    sisx: application/vnd.symbian.install
    sit: application/x-stuffit
    sitx: application/x-stuffitx
    skd: application/vnd.koan
    skm: application/vnd.koan
    skp: application/vnd.koan
    skt: application/vnd.koan
    sldm: application/vnd.ms-powerpoint.slide.macroenabled.12
    sldx: application/vnd.openxmlformats-officedocument.presentationml.slide
    slt: application/vnd.epson.salt
    sm: application/vnd.stepmania.stepchart
    smf: application/vnd.stardivision.math
    smi: application/smil+xml
    smil: application/smil+xml
    smv: video/x-smv
    smzip: application/vnd.stepmania.package
    snd: audio/basic
    snf: application/x-font-snf
    so: application/octet-stream
    spc: application/x-pkcs7-certificates
    spf: application/vnd.yamaha.smaf-phrase
    spl: application/x-futuresplash
    spot: text/vnd.in3d.spot
    spp: application/scvp-vp-response
    spq: application/scvp-vp-request
    spx: audio/ogg
    sql: application/x-sql
    src: application/x-wais-source
    srt: application/x-subrip
    sru: application/sru+xml
    srx: application/sparql-results+xml
    ssdl: application/ssdl+xml
    sse: application/vnd.kodak-descriptor
    ssf: application/vnd.epson.ssf
    ssml: application/ssml+xml
    st: application/vnd.sailingtracker.track
    stc: application/vnd.sun.xml.calc.template
    std: application/vnd.sun.xml.draw.template
    stf: application/vnd.wt.stf
    sti: application/vnd.sun.xml.impress.template
    stk: application/hyperstudio
    stl: application/vnd.ms-pki.stl
    str: application/vnd.pg.format
    stw: application/vnd.sun.xml.writer.template
    sub: text/vnd.dvb.subtitle
    sus: application/vnd.sus-calendar
    susp: application/vnd.sus-calendar
    sv4cpio: application/x-sv4cpio
    sv4crc: application/x-sv4crc
    svc: application/vnd.dvb.service
    svd: application/vnd.svd
    svg: image/svg+xml
    svgz: image/svg+xml
    swa: application/x-director
    swf: application/x-shockwave-flash
    swi: application/vnd.aristanetworks.swi
    sxc: application/vnd.sun.xml.calc
    sxd: application/vnd.sun.xml.draw
    sxg: application/vnd.sun.xml.writer.global
    sxi: application/vnd.sun.xml.impress
    sxm: application/vnd.sun.xml.math
    sxw: application/vnd.sun.xml.writer
    t: text/troff
    t3: application/x-t3vm-image
    taglet: application/vnd.mynfc
    tao: application/vnd.tao.intent-module-archive
    tar: application/x-tar
    tcap: application/vnd.3gpp2.tcap
    tcl: application/x-tcl
    teacher: application/vnd.smart.teacher
    tei: application/tei+xml
    teicorpus: application/tei+xml
    tex: application/x-tex
    texi: application/x-texinfo
    texinfo: application/x-texinfo
    text: text/plain
    tfi: application/thraud+xml
    tfm: application/x-tex-tfm
    tga: image/x-tga
    thmx: application/vnd.ms-officetheme
    tif: image/tiff
    tiff: image/tiff
    tmo: application/vnd.tmobile-livetv
    torrent: application/x-bittorrent
    tpl: application/vnd.groove-tool-template
    tpt: application/vnd.trid.tpt
    tr: text/troff
    tra: application/vnd.trueapp
    trm: application/x-msterminal
    tsd: application/timestamped-data
    tsv: text/tab-separated-values
    ttc: application/x-font-ttf
    ttf: application/x-font-ttf
    ttl: text/turtle
    twd: application/vnd.simtech-mindmapper
    twds: application/vnd.simtech-mindmapper
    txd: application/vnd.genomatix.tuxedo
    txf: application/vnd.mobius.txf
    txt: text/plain
    u32: application/x-authorware-bin
    udeb: application/x-debian-package
    ufd: application/vnd.ufdl
    ufdl: application/vnd.ufdl
    ulx: application/x-glulx
    umj: application/vnd.umajin
    unityweb: application/vnd.unity
    uoml: application/vnd.uoml+xml
    uri: text/uri-list
    uris: text/uri-list
    urls: text/uri-list
    ustar: application/x-ustar
    utz: application/vnd.uiq.theme
    uu: text/x-uuencode
    uva: audio/vnd.dece.audio
    uvd: application/vnd.dece.data
    uvf: application/vnd.dece.data
    uvg: image/vnd.dece.graphic
    uvh: video/vnd.dece.hd
    uvi: image/vnd.dece.graphic
    uvm: video/vnd.dece.mobile
    uvp: video/vnd.dece.pd
    uvs: video/vnd.dece.sd
    uvt: application/vnd.dece.ttml+xml
    uvu: video/vnd.uvvu.mp4
    uvv: video/vnd.dece.video
    uvva: audio/vnd.dece.audio
    uvvd: application/vnd.dece.data
    uvvf: application/vnd.dece.data
    uvvg: image/vnd.dece.graphic
    uvvh: video/vnd.dece.hd
    uvvi: image/vnd.dece.graphic
    uvvm: video/vnd.dece.mobile
    uvvp: video/vnd.dece.pd
    uvvs: video/vnd.dece.sd
    uvvt: application/vnd.dece.ttml+xml
    uvvu: video/vnd.uvvu.mp4
    uvvv: video/vnd.dece.video
    uvvx: application/vnd.dece.unspecified
    uvvz: application/vnd.dece.zip
    uvx: application/vnd.dece.unspecified
    uvz: application/vnd.dece.zip
    vcard: text/vcard
    vcd: application/x-cdlink
    vcf: text/x-vcard
    vcg: application/vnd.groove-vcard
    vcs: text/x-vcalendar
    vcx: application/vnd.vcx
    vis: application/vnd.visionary
    viv: video/vnd.vivo
    vob: video/x-ms-vob
    vor: application/vnd.stardivision.writer
    vox: application/x-authorware-bin
    vrml: model/vrml
    vsd: application/vnd.visio
    vsf: application/vnd.vsf
    vss: application/vnd.visio
    vst: application/vnd.visio
    vsw: application/vnd.visio
    vtu: model/vnd.vtu
    vxml: application/voicexml+xml
    w3d: application/x-director
    wad: application/x-doom
    wav: audio/x-wav
    wax: audio/x-ms-wax
    wbmp: image/vnd.wap.wbmp
    wbs: application/vnd.criticaltools.wbs+xml
    wbxml: application/vnd.wap.wbxml
    wcm: application/vnd.ms-works
    wdb: application/vnd.ms-works
    wdp: image/vnd.ms-photo
    weba: audio/webm
    webm: video/webm
    webp: image/webp
    wg: application/vnd.pmi.widget
    wgt: application/widget
    wks: application/vnd.ms-works
    wm: video/x-ms-wm
    wma: audio/x-ms-wma
    wmd: application/x-ms-wmd
    wmf: application/x-msmetafile
    wml: text/vnd.wap.wml
    wmlc: application/vnd.wap.wmlc
    wmls: text/vnd.wap.wmlscript
    wmlsc: application/vnd.wap.wmlscriptc
    wmv: video/x-ms-wmv
    wmx: video/x-ms-wmx
    wmz: application/x-ms-wmz
    woff: application/x-font-woff
    wpd: application/vnd.wordperfect
    wpl: application/vnd.ms-wpl
    wps: application/vnd.ms-works
    wqd: application/vnd.wqd
    wri: application/x-mswrite
    wrl: model/vrml
    wsdl: application/wsdl+xml
    wspolicy: application/wspolicy+xml
    wtb: application/vnd.webturbo
    wvx: video/x-ms-wvx
    x32: application/x-authorware-bin
    x3d: model/x3d+xml
    x3db: model/x3d+binary
    x3dbz: model/x3d+binary
    x3dv: model/x3d+vrml
    x3dvz: model/x3d+vrml
    x3dz: model/x3d+xml
    xaml: application/xaml+xml
    xap: application/x-silverlight-app
    xar: application/vnd.xara
    xbap: application/x-ms-xbap
    xbd: application/vnd.fujixerox.docuworks.binder
    xbm: image/x-xbitmap
    xdf: application/xcap-diff+xml
    xdm: application/vnd.syncml.dm+xml
    xdp: application/vnd.adobe.xdp+xml
    xdssc: application/dssc+xml
    xdw: application/vnd.fujixerox.docuworks
    xenc: application/xenc+xml
    xer: application/patch-ops-error+xml
    xfdf: application/vnd.adobe.xfdf
    xfdl: application/vnd.xfdl
    xht: application/xhtml+xml
    xhtml: application/xhtml+xml
    xhvml: application/xv+xml
    xif: image/vnd.xiff
    xla: application/vnd.ms-excel
    xlam: application/vnd.ms-excel.addin.macroenabled.12
    xlc: application/vnd.ms-excel
    xlf: application/x-xliff+xml
    xlm: application/vnd.ms-excel
    xls: application/vnd.ms-excel
    xlsb: application/vnd.ms-excel.sheet.binary.macroenabled.12
    xlsm: application/vnd.ms-excel.sheet.macroenabled.12
    xlsx: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
    xlt: application/vnd.ms-excel
    xltm: application/vnd.ms-excel.template.macroenabled.12
    xltx: application/vnd.openxmlformats-officedocument.spreadsheetml.template
    xlw: application/vnd.ms-excel
    xm: audio/xm
    xml: application/xml
    xo: application/vnd.olpc-sugar
    xop: application/xop+xml
    xpi: application/x-xpinstall
    xpl: application/xproc+xml
    xpm: image/x-xpixmap
    xpr: application/vnd.is-xpr
    xps: application/vnd.ms-xpsdocument
    xpw: application/vnd.intercon.formnet
    xpx: application/vnd.intercon.formnet
    xsl: application/xml
    xslt: application/xslt+xml
    xsm: application/vnd.syncml+xml
    xspf: application/xspf+xml
    xul: application/vnd.mozilla.xul+xml
    xvm: application/xv+xml
    xvml: application/xv+xml
    xwd: image/x-xwindowdump
    xyz: chemical/x-xyz
    xz: application/x-xz
    yang: application/yang
    yin: application/yin+xml
    z1: application/x-zmachine
    z2: application/x-zmachine
    z3: application/x-zmachine
    z4: application/x-zmachine
    z5: application/x-zmachine
    z6: application/x-zmachine
    z7: application/x-zmachine
    z8: application/x-zmachine
    zaz: application/vnd.zzazz.deck+xml
    zip: application/zip
    zir: application/vnd.zul
    zirz: application/vnd.zul
    zmm: application/vnd.handheld-entertainment+xml
silverstripe\control\httpapplication: []
silverstripe\control\httprequest: []
silverstripe\control\httprequestbuilder: []
silverstripe\control\httpresponse: []
silverstripe\control\httpresponse_exception: []
silverstripe\control\httpstreamresponse: []
silverstripe\control\nullhttprequest: []
silverstripe\control\pjaxresponsenegotiator: []
silverstripe\control\requesthandler:
  url_segment: null
  url_handlers:
    $Action: $Action
  allowed_actions: null
  extensions:
    - SilverStripe\Admin\AdminErrorExtension
    - SilverStripe\Versioned\VersionedStateExtension
silverstripe\control\session:
  timeout: 0
  session_ips: []
  cookie_domain: null
  cookie_path: null
  session_store_path: null
  cookie_secure: false
  cookie_name_secure: SECSESSID
  cookie_samesite: Lax
  sessionCacheLimiter: ''
  strict_user_agent_check: true
silverstripe\control\simpleresourceurlgenerator:
  url_rewrites: []
silverstripe\core\basekernel: []
silverstripe\core\classinfo: []
silverstripe\core\convert: []
silverstripe\core\corekernel: []
silverstripe\core\databaselesskernel: []
silverstripe\core\environment: []
silverstripe\core\environmentloader: []
silverstripe\core\extension:
  allowed_actions: []
silverstripe\core\path: []
silverstripe\core\tempfolder: []
silverstripe\dev\backtrace:
  ignore_function_args:
    - mssql_connect
    - mysql_connect
    - pg_connect
    -
      - mysqli
      - mysqli
    -
      - mysqli
      - real_connect
    -
      - mysqli
      - select_db
    -
      - SilverStripe\Control\Middleware\ConfirmationMiddleware\GetParameter
      - buildConfirmationItem
    -
      - SilverStripe\Control\Middleware\ConfirmationMiddleware\Url
      - buildConfirmationItem
    -
      - SilverStripe\Control\Middleware\ConfirmationMiddleware\UrlPathStartswith
      - buildConfirmationItem
    -
      - SilverStripe\ORM\DB
      - connect
    -
      - SilverStripe\ORM\DB
      - createDatabase
    -
      - SilverStripe\Security\Confirmation\Item
      - __construct
    -
      - SilverStripe\Security\DefaultAdminService
      - isDefaultAdminCredentials
    -
      - SilverStripe\Security\DefaultAdminService
      - setDefaultAdmin
    -
      - SilverStripe\Security\Member
      - changePassword
    -
      - SilverStripe\Security\MemberAuthenticator\ChangePasswordHandler
      - setSessionToken
    -
      - SilverStripe\Security\MemberAuthenticator\CookieAuthenticationHandler
      - setTokenCookieName
    -
      - SilverStripe\Security\MemberAuthenticator\CookieAuthenticationHandler
      - setTokenCookieSecure
    -
      - SilverStripe\Security\MemberAuthenticator\LostPasswordHandler
      - sendEmail
    -
      - SilverStripe\Security\PasswordEncryptor
      - check
    -
      - SilverStripe\Security\PasswordEncryptor
      - encrypt
    -
      - SilverStripe\Security\PasswordEncryptor
      - salt
    -
      - SilverStripe\Security\PasswordEncryptor_Blowfish
      - encryptA
    -
      - SilverStripe\Security\PasswordEncryptor_Blowfish
      - encryptX
    -
      - SilverStripe\Security\PasswordEncryptor_Blowfish
      - encryptY
    -
      - SilverStripe\Security\PasswordValidator
      - validate
    -
      - SilverStripe\Security\RememberLoginHash
      - setToken
    -
      - SilverStripe\Security\Security
      - encrypt_password
    -
      - '*'
      - checkPassword
    -
      - '*'
      - onAfterChangePassword
    -
      - '*'
      - onBeforeChangePassword
    -
      - '*'
      - updateValidatePassword
    -
      - SilverStripe\GraphQL\QueryHandler\TokenContextProvider
      - __construct
silverstripe\dev\behatfixturefactory: []
silverstripe\dev\buildtask:
  segment: null
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\dev\bulkloader: []
silverstripe\dev\bulkloader_result: []
silverstripe\dev\cli: []
silverstripe\dev\csscontentparser:
  disable_xml_external_entities: true
silverstripe\dev\clidebugview: []
silverstripe\dev\csvbulkloader:
  lines: 1000
silverstripe\dev\debug: []
silverstripe\dev\debugview:
  columns: 100
silverstripe\dev\deprecation: []
silverstripe\dev\devbuildcontroller:
  url_handlers:
    '': build
  allowed_actions:
    - build
silverstripe\dev\devconfigcontroller:
  url_handlers:
    audit: audit
    '': index
  allowed_actions:
    - index
    - audit
silverstripe\dev\devconfirmationcontroller: []
silverstripe\dev\developmentadmin:
  url_handlers:
    '': index
    build/defaults: buildDefaults
    generatesecuretoken: generatesecuretoken
    $Action: runRegisteredController
  allowed_actions:
    - index
    - buildDefaults
    - runRegisteredController
    - generatesecuretoken
  registered_controllers:
    build:
      controller: SilverStripe\Dev\DevBuildController
      links:
        build: 'Build/rebuild this environment. Call this whenever you have updated your project sources'
    tasks:
      controller: SilverStripe\Dev\TaskRunner
      links:
        tasks: 'See a list of build tasks to run'
    confirm:
      controller: SilverStripe\Dev\DevConfirmationController
    config:
      controller: Silverstripe\Dev\DevConfigController
      links:
        config: 'View the current config, useful for debugging'
    graphql:
      controller: SilverStripe\GraphQL\Dev\DevelopmentAdmin
      links:
        graphql: 'List GraphQL development tools'
  allow_all_cli: true
  deny_non_cli: false
silverstripe\dev\fixtureblueprint:
  dependencies:
    factory: '%$SilverStripe\Dev\FixtureFactory'
silverstripe\dev\fixturefactory: []
silverstripe\dev\migrationtask:
  segment: MigrationTask
silverstripe\dev\taskrunner:
  url_handlers:
    '': index
    $TaskName: runTask
  allowed_actions:
    - index
    - runTask
  css:
    - 'silverstripe/framework:client/styles/task-runner.css'
silverstripe\dev\testkernel: []
silverstripe\dev\testmailer: []
silverstripe\dev\testsession:
  extensions:
    - SilverStripe\Versioned\Dev\VersionedTestSessionExtension
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\dev\yamlfixture: []
silverstripe\forms\checkboxfield: []
silverstripe\forms\checkboxfield_readonly: []
silverstripe\forms\checkboxsetfield: []
silverstripe\forms\compositefield: []
silverstripe\forms\compositevalidator: []
silverstripe\forms\confirmedpasswordfield: []
silverstripe\forms\currencyfield: []
silverstripe\forms\currencyfield_disabled: []
silverstripe\forms\currencyfield_readonly: []
silverstripe\forms\datalessfield: []
silverstripe\forms\datefield: []
silverstripe\forms\datefield_disabled: []
silverstripe\forms\datetimefield: []
silverstripe\forms\defaultformfactory:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\forms\disabledtransformation: []
silverstripe\forms\dropdownfield: []
silverstripe\forms\emailfield: []
silverstripe\forms\fieldgroup: []
silverstripe\forms\fieldlist: []
silverstripe\forms\fieldsvalidator: []
silverstripe\forms\filefield: []
silverstripe\forms\form:
  default_classes: []
  casting:
    AttributesHTML: HTMLFragment
    getAttributesHTML: HTMLFragment
    FormAttributes: HTMLFragment
    FormName: Text
    Legend: HTMLFragment
  extensions:
    - SilverStripe\Forms\FormMessageBootstrapExtension
    - SilverStripe\ErrorPage\ErrorPageControllerExtension
silverstripe\forms\formaction:
  casting:
    ButtonContent: HTMLFragment
silverstripe\forms\formfield:
  default_classes: []
  casting:
    FieldHolder: HTMLFragment
    SmallFieldHolder: HTMLFragment
    Field: HTMLFragment
    AttributesHTML: HTMLFragment
    getAttributesHTML: HTMLFragment
    Value: Text
    extraClass: Text
    ID: Text
    isReadOnly: Boolean
    HolderID: Text
    Title: Text
    RightTitle: Text
    Description: HTMLFragment
  extensions:
    - RS\Extension\FormFieldExtension
    - SilverStripe\Forms\FormMessageBootstrapExtension
    - UncleCheese\DisplayLogic\Extensions\DisplayLogic
silverstripe\forms\formrequesthandler:
  allowed_actions:
    - handleField
    - httpSubmission
    - forTemplate
  url_handlers:
    field/$FieldName!: handleField
    'POST ': httpSubmission
    'GET ': httpSubmission
    'HEAD ': httpSubmission
silverstripe\forms\formscaffolder: []
silverstripe\forms\formtemplatehelper: []
silverstripe\forms\formtransformation:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\forms\form_fieldmap: []
silverstripe\forms\groupeddropdownfield: []
silverstripe\forms\htmlreadonlyfield:
  casting:
    Value: HTMLFragment
    ValueEntities: HTMLFragment
silverstripe\forms\headerfield: []
silverstripe\forms\hiddenfield: []
silverstripe\forms\labelfield: []
silverstripe\forms\listboxfield: []
silverstripe\forms\literalfield:
  casting:
    Value: HTMLFragment
silverstripe\forms\lookupfield: []
silverstripe\forms\moneyfield: []
silverstripe\forms\multiselectfield: []
silverstripe\forms\nullablefield: []
silverstripe\forms\numericfield: []
silverstripe\forms\optionsetfield: []
silverstripe\forms\passwordfield:
  autocomplete: null
silverstripe\forms\popoverfield:
  cast:
    PopoverTitle: HTMLText
silverstripe\forms\printabletransformation: []
silverstripe\forms\printabletransformation_tabset: []
silverstripe\forms\readonlyfield: []
silverstripe\forms\readonlytransformation: []
silverstripe\forms\requiredfields: []
silverstripe\forms\selectfield: []
silverstripe\forms\selectiongroup: []
silverstripe\forms\selectiongroup_item: []
silverstripe\forms\singlelookupfield: []
silverstripe\forms\singleselectfield: []
silverstripe\forms\tab: []
silverstripe\forms\tabset: []
silverstripe\forms\textfield: []
silverstripe\forms\textareafield:
  casting:
    Value: Text
    ValueEntities: "HTMLFragment(['shortcodes' => false])"
silverstripe\forms\timefield: []
silverstripe\forms\timefield_readonly: []
silverstripe\forms\tip: []
silverstripe\forms\togglecompositefield: []
silverstripe\forms\treedropdownfield:
  url_handlers:
    $Action!/$ID: $Action
  allowed_actions:
    - tree
  node_threshold_total: 30
silverstripe\forms\treedropdownfield_readonly: []
silverstripe\forms\treemultiselectfield: []
silverstripe\forms\treemultiselectfield_readonly: []
silverstripe\forms\validator:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\logging\debugviewfriendlyerrorformatter: []
silverstripe\logging\detailederrorformatter: []
silverstripe\logging\httpoutputhandler: []
silverstripe\logging\monologerrorhandler: []
silverstripe\logging\preformattedechohandler: []
silverstripe\orm\arraylib: []
silverstripe\orm\arraylist: []
silverstripe\orm\db:
  alternative_database_enabled: true
  connection_attempted: false
silverstripe\orm\dataextension: []
silverstripe\orm\datalist: []
silverstripe\orm\dataobject:
  singular_name: null
  plural_name: null
  api_access: false
  default_classname: null
  validation_enabled: true
  fixed_fields:
    ID: PrimaryKey
    ClassName: DBClassName
    LastEdited: DBDatetime
    Created: DBDatetime
  table_name: null
  cascade_deletes: []
  cascade_duplicates: []
  subclass_access: true
  db: []
  casting:
    Title: Text
  create_table_options:
    MySQLDatabase: ENGINE=InnoDB
  indexes: null
  defaults: []
  default_records: null
  has_one: []
  belongs_to: []
  has_many: []
  many_many: []
  many_many_extraFields: []
  belongs_many_many: []
  default_sort: null
  searchable_fields: null
  general_search_field_name: q
  general_search_field_filter: SilverStripe\ORM\Filters\PartialMatchFilter
  general_search_split_terms: true
  field_labels: []
  summary_fields: []
  extensions:
    0: SilverStripe\Assets\Shortcodes\FileLinkTracking
    1: SilverStripe\Assets\AssetControlExtension
    2: SilverStripe\CMS\Model\SiteTreeLinkTracking
    RecursivePublishable: SilverStripe\Versioned\RecursivePublishable
    3: SilverStripe\Versioned\VersionedStateExtension
  graphql_blacklisted_fields:
    LinkTracking: true
    FileTracking: true
  versioned_gridfield_extensions: true
silverstripe\orm\dataobjectschema:
  table_namespace_separator: _
silverstripe\orm\dataquery:
  extensions:
    - SilverStripe\Versioned\VersionedTableDataQueryExtension
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\orm\dataquery_subgroup: []
silverstripe\orm\databaseadmin:
  allowed_actions:
    - index
    - build
    - cleanup
    - import
  classname_value_remapping:
    File: SilverStripe\Assets\File
    Image: SilverStripe\Assets\Image
    Folder: SilverStripe\Assets\Folder
    Group: SilverStripe\Security\Group
    LoginAttempt: SilverStripe\Security\LoginAttempt
    Member: SilverStripe\Security\Member
    MemberPassword: SilverStripe\Security\MemberPassword
    Permission: SilverStripe\Security\Permission
    PermissionRole: SilverStripe\Security\PermissionRole
    PermissionRoleCode: SilverStripe\Security\PermissionRoleCode
    RememberLoginHash: SilverStripe\Security\RememberLoginHash
  show_record_counts: true
  extensions:
    - SilverStripe\Dev\Validation\DatabaseAdminExtension
    - SilverStripe\GraphQL\Extensions\DevBuildExtension
silverstripe\orm\groupedlist: []
silverstripe\orm\hasmanylist: []
silverstripe\orm\listdecorator: []
silverstripe\orm\manymanylist: []
silverstripe\orm\manymanythroughlist: []
silverstripe\orm\manymanythroughquerymanipulator: []
silverstripe\orm\map: []
silverstripe\orm\paginatedlist: []
silverstripe\orm\polymorphichasmanylist: []
silverstripe\orm\relationlist: []
silverstripe\orm\unexpecteddataexception: []
silverstripe\orm\unsavedrelationlist: []
silverstripe\orm\validationexception: []
silverstripe\orm\validationresult: []
silverstripe\security\authenticationmiddleware: []
silverstripe\security\basicauth:
  entire_site_protected: false
  ignore_cli: true
  entire_site_protected_code: ADMIN
  entire_site_protected_message: 'SilverStripe test website. Use your CMS login.'
silverstripe\security\basicauthmiddleware: []
silverstripe\security\cmssecurity:
  allowed_actions:
    - login
    - success
  reauth_enabled: true
silverstripe\security\defaultadminservice:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\security\group:
  db:
    Title: Varchar(255)
    Description: Text
    Code: Varchar(255)
    Locked: Boolean
    Sort: Int
    HtmlEditorConfig: Text
  has_one:
    Parent: SilverStripe\Security\Group
  has_many:
    Permissions: SilverStripe\Security\Permission
    Groups: SilverStripe\Security\Group
  many_many:
    Members: SilverStripe\Security\Member
    Roles: SilverStripe\Security\PermissionRole
  extensions:
    - SilverStripe\ORM\Hierarchy\Hierarchy
    - SilverStripe\Security\InheritedPermissionFlusher
  table_name: Group
  indexes:
    Title: true
    Code: true
    Sort: true
silverstripe\security\groupcsvbulkloader: []
silverstripe\security\inheritedpermissionflusher: []
silverstripe\security\inheritedpermissions: []
silverstripe\security\inheritedpermissionsextension:
  db:
    CanViewType: "Enum('Anyone, LoggedInUsers, OnlyTheseUsers, Inherit', 'Inherit')"
    CanEditType: "Enum('LoggedInUsers, OnlyTheseUsers, Inherit', 'Inherit')"
  many_many:
    ViewerGroups: SilverStripe\Security\Group
    EditorGroups: SilverStripe\Security\Group
  defaults:
    CanViewType: Inherit
    CanEditType: Inherit
silverstripe\security\loginattempt:
  db:
    EmailHashed: Varchar(255)
    Status: "Enum('Success,Failure')"
    IP: Varchar(255)
  has_one:
    Member: SilverStripe\Security\Member
  indexes:
    EmailHashed: true
  table_name: LoginAttempt
silverstripe\security\loginform: []
silverstripe\security\logoutform: []
silverstripe\security\member:
  db:
    FirstName: Varchar
    Surname: Varchar
    Email: Varchar(254)
    TempIDHash: Varchar(160)
    TempIDExpired: Datetime
    Password: Varchar(160)
    AutoLoginHash: Varchar(160)
    AutoLoginExpired: Datetime
    PasswordEncryption: Varchar(50)
    Salt: Varchar(50)
    PasswordExpiry: Date
    LockedOutUntil: Datetime
    Locale: Varchar(6)
    FailedLoginCount: Int
  belongs_many_many:
    Groups: SilverStripe\Security\Group
  has_many:
    LoggedPasswords: SilverStripe\Security\MemberPassword
    RememberLoginHashes: SilverStripe\Security\RememberLoginHash
  table_name: Member
  default_sort: '"Surname", "FirstName"'
  indexes:
    Email: true
  notify_password_change: true
  searchable_fields:
    - FirstName
    - Surname
    - Email
  summary_fields:
    - FirstName
    - Surname
    - Email
  casting:
    Name: Varchar
  hidden_fields:
    - AutoLoginHash
    - AutoLoginExpired
    - PasswordEncryption
    - PasswordExpiry
    - LockedOutUntil
    - TempIDHash
    - TempIDExpired
    - Salt
  title_format: null
  unique_identifier_field: Email
  password_expiry_days: null
  password_logging_enabled: true
  lock_out_after_incorrect_logins: 10
  lock_out_delay_mins: 15
  login_marker_cookie: null
  session_regenerate_id: true
  temp_id_lifetime: 259200
  auto_login_token_lifetime: 172800
  extensions:
    - RS\Extension\MemberExtension
    - RS\Extension\GroupExtension
    - RS\Extension\NoteExtension
    - SilverStripe\Security\InheritedPermissionFlusher
    - SilverStripe\SessionManager\Extensions\MemberExtension
silverstripe\security\membercsvbulkloader: []
silverstripe\security\memberpassword:
  db:
    Password: Varchar(160)
    Salt: Varchar(50)
    PasswordEncryption: Varchar(50)
  has_one:
    Member: SilverStripe\Security\Member
  table_name: MemberPassword
silverstripe\security\member_groupset: []
silverstripe\security\member_validator: []
silverstripe\security\nullsecuritytoken: []
silverstripe\security\passwordencryptor:
  encryptors:
    none:
      SilverStripe\Security\PasswordEncryptor_None: null
    md5:
      SilverStripe\Security\PasswordEncryptor_LegacyPHPHash: md5
    sha1:
      SilverStripe\Security\PasswordEncryptor_LegacyPHPHash: sha1
    md5_v2.4:
      SilverStripe\Security\PasswordEncryptor_PHPHash: md5
    sha1_v2.4:
      SilverStripe\Security\PasswordEncryptor_PHPHash: sha1
    blowfish:
      SilverStripe\Security\PasswordEncryptor_Blowfish: null
silverstripe\security\passwordencryptor_blowfish: []
silverstripe\security\passwordencryptor_encryptionfailed: []
silverstripe\security\passwordencryptor_legacyphphash: []
silverstripe\security\passwordencryptor_mysqloldpassword: []
silverstripe\security\passwordencryptor_mysqlpassword: []
silverstripe\security\passwordencryptor_none: []
silverstripe\security\passwordencryptor_notfoundexception: []
silverstripe\security\passwordencryptor_phphash: []
silverstripe\security\passwordexpirationmiddleware:
  whitelisted_url_startswith:
    - Security/basicauthlogin/
    - Security/changepassword/
    - Security/login/
    - Security/logout/
  default_redirect: Security/changepassword
  mimetypes_allowing_redirect:
    - '*/*'
    - 'text/*'
    - text/html
    - application/xhtml+xml
    - text/xml
    - application/xml
silverstripe\security\passwordvalidator:
  character_strength_tests:
    lowercase: '/[a-z]/'
    uppercase: '/[A-Z]/'
    digits: '/[0-9]/'
    punctuation: '/[^A-Za-z0-9]/'
  min_length: 8
  min_test_score: null
  historic_count: 6
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\security\permission:
  db:
    Code: Varchar(255)
    Arg: Int
    Type: Int(1)
  has_one:
    Group: SilverStripe\Security\Group
  indexes:
    Code: true
  defaults:
    Type: 1
  table_name: Permission
  strict_checking: true
  admin_implies_all: true
  hidden_permissions: []
  privileged_permissions:
    - ADMIN
    - APPLY_ROLES
    - EDIT_PERMISSIONS
  cache_permissions: []
silverstripe\security\permissioncheckboxsetfield: []
silverstripe\security\permissioncheckboxsetfield_readonly: []
silverstripe\security\permissionfailureexception: []
silverstripe\security\permissionrole:
  db:
    Title: Varchar
    OnlyAdminCanApply: Boolean
  has_many:
    Codes: SilverStripe\Security\PermissionRoleCode
  belongs_many_many:
    Groups: SilverStripe\Security\Group
  table_name: PermissionRole
  default_sort: '"Title"'
  singular_name: Role
  plural_name: Roles
silverstripe\security\permissionrolecode:
  db:
    Code: Varchar
  has_one:
    Role: SilverStripe\Security\PermissionRole
  table_name: PermissionRoleCode
  indexes:
    Code: true
silverstripe\security\permission_group: []
silverstripe\security\randomgenerator: []
silverstripe\security\rememberloginhash:
  singular_name: 'Login Hash'
  plural_name: 'Login Hashes'
  db:
    DeviceID: Varchar(40)
    Hash: Varchar(160)
    ExpiryDate: Datetime
  has_one:
    Member: SilverStripe\Security\Member
  indexes:
    DeviceID: true
    Hash: true
  table_name: RememberLoginHash
  logout_across_devices: false
  token_expiry_days: 30
  device_expiry_days: 365
  force_single_token: false
  extensions:
    - SilverStripe\SessionManager\Extensions\RememberLoginHashExtension
silverstripe\security\requestauthenticationhandler: []
silverstripe\security\security:
  allowed_actions:
    - basicauthlogin
    - changepassword
    - index
    - login
    - logout
    - lostpassword
    - ping
  strict_path_checking: false
  password_encryption_algorithm: blowfish
  autologin_enabled: true
  remember_username: true
  template: BlankPage
  template_main: Page
  page_class: Page
  default_message_set: null
  login_url: Security/login
  logout_url: Security/logout
  lost_password_url: Security/lostpassword
  frame_options: SAMEORIGIN
  robots_tag: 'noindex, nofollow'
  login_recording: false
  default_login_dest: ''
  default_reset_password_dest: null
  extensions:
    - SilverStripe\LoginForms\EnablerExtension
silverstripe\security\securitytoken: []
silverstripe\view\arraydata: []
silverstripe\view\generictemplateglobalprovider: []
silverstripe\view\html:
  void_elements:
    - area
    - base
    - br
    - col
    - embed
    - hr
    - img
    - input
    - keygen
    - link
    - menuitem
    - meta
    - param
    - source
    - track
    - wbr
  legal_empty_attributes:
    - alt
silverstripe\view\publicthemes: []
silverstripe\view\requirements:
  disable_flush_combined: false
  backend: null
silverstripe\view\requirements_backend:
  combine_in_dev: false
  resolve_relative_css_refs: false
  default_combined_files_folder: _combinedfiles
  combine_hash_querystring: false
silverstripe\view\sstemplateparseexception: []
silverstripe\view\sstemplateparser: []
silverstripe\view\ssviewer:
  themes:
    - $public
    - default
    - $default
  theme_enabled: true
  global_key: '$CurrentReadingMode, $CurrentUser.ID'
  source_file_comments: false
  rewrite_hash_links: true
silverstripe\view\ssviewer_basiciteratorsupport: []
silverstripe\view\ssviewer_datapresenter: []
silverstripe\view\ssviewer_fromstring:
  cache_template: true
silverstripe\view\ssviewer_scope: []
silverstripe\view\thememanifest: []
silverstripe\view\themeresourceloader: []
silverstripe\view\viewabledata:
  casting:
    CSSClasses: Varchar
  default_cast: Text
  casting_cache: []
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\view\viewabledata_customised: []
silverstripe\view\viewabledata_debugger: []
silverstripe\i18n\i18n:
  default_locale: en_US
  date_format: yyyy-MM-dd
  time_format: 'H:mm'
  plurals:
    - zero
    - one
    - two
    - few
    - many
    - other
  default_plurals:
    - one
    - other
  missing_default_warning: true
silverstripe\graphql\auth\basicauthauthenticator: []
silverstripe\graphql\auth\handler:
  authenticators:
    -
      class: SilverStripe\GraphQL\Auth\MemberAuthenticator
      priority: 10
silverstripe\graphql\auth\memberauthenticator: []
silverstripe\graphql\config\configuration: []
silverstripe\graphql\config\modelconfiguration: []
silverstripe\graphql\dev\benchmark:
  benchmarks: []
silverstripe\graphql\dev\build:
  url_handlers:
    '': build
  allowed_actions:
    - build
silverstripe\graphql\dev\developmentadmin:
  allowed_actions:
    - runRegisteredController
  url_handlers:
    '': index
    $Action: runRegisteredController
  registered_controllers:
    build:
      controller: SilverStripe\GraphQL\Dev\Build
      links:
        build: 'Build the GraphQL schema'
silverstripe\graphql\extensions\clientconfigprovider: []
silverstripe\graphql\extensions\devbuildextension:
  enabled: true
silverstripe\graphql\extensions\queryrecorderextension: []
silverstripe\graphql\extensions\testsessionenvironmentextension: []
silverstripe\graphql\middleware\csrfmiddleware: []
silverstripe\graphql\middleware\httpmethodmiddleware: []
silverstripe\graphql\middleware\querycachingmiddleware: []
silverstripe\graphql\persistedquery\fileprovider: []
silverstripe\graphql\persistedquery\guzzlehttpclient: []
silverstripe\graphql\persistedquery\httpprovider:
  timeout: 5
silverstripe\graphql\persistedquery\jsonstringprovider: []
silverstripe\graphql\persistedquery\requestidprocessor: []
silverstripe\graphql\queryhandler\deverrorhandler: []
silverstripe\graphql\queryhandler\queryexception: []
silverstripe\graphql\queryhandler\queryhandler:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\graphql\queryhandler\querystateprovider: []
silverstripe\graphql\queryhandler\requestcontextprovider: []
silverstripe\graphql\queryhandler\schemaconfigprovider: []
silverstripe\graphql\queryhandler\tokencontextprovider: []
silverstripe\graphql\queryhandler\usercontextprovider: []
silverstripe\graphql\schema\logger: []
silverstripe\graphql\schema\schema:
  pluraliser:
    - SilverStripe\GraphQL\Schema\Schema
    - pluraliser
  verbose: false
  schemas:
    default:
      src:
        - 'gorriecoe/silverstripe-link: _graphql'
      config:
        modelConfig:
          DataObject:
            parseShortcodes: true
            operations:
              read:
                plugins:
                  filter:
                    before: paginateList
                  sort:
                    before: paginateList
              readOne:
                plugins:
                  filter: true
                  sort: true
            nested_query_plugins:
              paginateList: true
              filter:
                before: paginateList
              sort:
                before: paginateList
              canView:
                after: paginateList
    admin:
      config:
        modelConfig:
          DataObject:
            operations:
              read:
                plugins:
                  filter:
                    before: paginateList
                  sort:
                    before: paginateList
              readOne:
                plugins:
                  filter: true
                  sort: true
            nested_query_plugins:
              paginateList: true
              filter:
                before: paginateList
              sort:
                before: paginateList
              canView:
                after: paginateList
      src:
        assetAdmin: 'silverstripe/asset-admin: _graphql'
        0: 'silverstripe/cms: _graphql'
    '*':
      scalars:
        JSONBlob:
          serialiser: 'SilverStripe\GraphQL\Schema\Resolver\JSONResolver::serialise'
          valueParser: 'SilverStripe\GraphQL\Schema\Resolver\JSONResolver::parseValue'
          literalParser: 'SilverStripe\GraphQL\Schema\Resolver\JSONResolver::parseLiteral'
      config:
        max_query_depth: 15
        max_query_nodes: 500
        resolverStrategy: 'SilverStripe\GraphQL\Schema\Resolver\DefaultResolverStrategy::getResolverMethod'
        defaultResolver: 'SilverStripe\GraphQL\Schema\Resolver\DefaultResolver::defaultFieldResolver'
        modelCreators:
          - SilverStripe\GraphQL\Schema\DataObject\ModelCreator
        defaultBulkLoad:
          inheritanceLoader:
            include:
              - SilverStripe\ORM\DataObject
        modelConfig:
          DataObject:
            type_formatter: 'SilverStripe\Core\ClassInfo::shortName'
            type_prefix: ''
            type_mapping: []
            base_fields:
              ID: ID!
            plugins:
              dbFieldArgs: true
              dbFieldTypes:
                ignore:
                  className: true
                before: scalarDBField
              inheritance:
                useUnionQueries: false
                after: versioning
              scalarDBField:
                after: dbFieldArgs
              inheritedPlugins:
                after: '*'
            operations:
              read:
                class: SilverStripe\GraphQL\Schema\DataObject\ReadCreator
                plugins:
                  paginateList: true
                  canView:
                    after: '*'
              readOne:
                class: SilverStripe\GraphQL\Schema\DataObject\ReadOneCreator
                plugins:
                  firstResult:
                    after: '*'
                  canView:
                    after: '*'
              delete:
                class: SilverStripe\GraphQL\Schema\DataObject\DeleteCreator
              update:
                class: SilverStripe\GraphQL\Schema\DataObject\UpdateCreator
              create:
                class: SilverStripe\GraphQL\Schema\DataObject\CreateCreator
      src:
        versionedSrc: 'silverstripe/versioned: _graphql'
silverstripe\graphql\schema\schemabuilder: []
silverstripe\graphql\schema\schemaconfig: []
silverstripe\graphql\schema\storableschema: []
silverstripe\forms\filter\slugfilter: []
silverstripe\forms\segmentfieldmodifier\abstractsegmentfieldmodifier: []
silverstripe\forms\segmentfieldmodifier\idsegmentfieldmodifier: []
silverstripe\forms\segmentfieldmodifier\slugsegmentfieldmodifier: []
silverstripe\sessionmanager\controllers\loginsessioncontroller:
  url_handlers:
    'DELETE $ID': remove
  url_segment: loginsession
  allowed_actions:
    - remove
silverstripe\sessionmanager\extensions\memberextension:
  session_login_help_url: 'https://userhelp.silverstripe.org/en/4/managing_your_website/session_manager'
  has_many:
    LoginSessions: SilverStripe\SessionManager\Models\LoginSession
silverstripe\sessionmanager\extensions\queuedjobdescriptorextension: []
silverstripe\sessionmanager\extensions\rememberloginhashextension:
  has_one:
    LoginSession: SilverStripe\SessionManager\Models\LoginSession
silverstripe\sessionmanager\formfields\sessionmanagerfield: []
silverstripe\sessionmanager\middleware\loginsessionmiddleware: []
silverstripe\sessionmanager\models\loginsession:
  db:
    LastAccessed: DBDatetime
    IPAddress: Varchar(45)
    UserAgent: Text
    Persistent: Boolean
  has_one:
    Member: SilverStripe\Security\Member
  belongs_to:
    LoginHash: SilverStripe\Security\RememberLoginHash
  indexes:
    LastAccessed: true
  table_name: LoginSession
  default_sort: 'LastAccessed DESC'
  summary_fields:
    IPAddress: 'IP Address'
    LastAccessed: 'Last Accessed'
    Created: 'Signed In'
    FriendlyUserAgent: 'User Agent'
  searchable_fields:
    - IPAddress
  default_session_lifetime: 3600
silverstripe\sessionmanager\security\loginauthenticationhandler: []
silverstripe\sessionmanager\security\logoutauthenticationhandler: []
silverstripe\sessionmanager\services\garbagecollectionservice: []
silverstripe\tasks\garbagecollectiontask:
  segment: LoginSessionGarbageCollectionTask
silverstripe\sessionmanager\tasks\invalidateallsessionstask:
  segment: InvalidateAllSessions
silverstripe\versioned\caching\proxycacheadapter: []
silverstripe\versioned\caching\proxycachefactory: []
silverstripe\versioned\caching\versionedcacheadapter: []
silverstripe\versioned\dev\versionedtestsessionextension: []
silverstripe\versioned\dev\versionedteststate: []
silverstripe\versioned\versionedgridfieldstate\versionedgridfieldstate: []
silverstripe\versionedadmin\controllers\cmspagehistoryviewercontroller:
  url_segment: pages/history
  url_rule: /$Action/$ID/$VersionID/$OtherVersionID
  url_priority: 43
  required_permission_codes: CMS_ACCESS_CMSMain
silverstripe\versionedadmin\controllers\historyviewercontroller:
  url_segment: historyviewer
  url_rule: /$Action
  url_priority: 10
  required_permission_codes: CMS_ACCESS_CMSMain
  allowed_actions:
    - versionForm
    - compareForm
    - schema
silverstripe\versionedadmin\extensions\archiverestoreaction: []
silverstripe\versionedadmin\extensions\blockarchiveextension: []
silverstripe\versionedadmin\extensions\filearchiveextension: []
silverstripe\versionedadmin\extensions\sitetreearchiveextension: []
silverstripe\versionedadmin\extensions\usedontableextension: []
silverstripe\versionedadmin\forms\dataobjectversionformfactory:
  readonly_types:
    - history
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\versionedadmin\forms\difffield: []
silverstripe\versionedadmin\forms\difftransformation: []
silverstripe\versionedadmin\forms\historyviewerfield:
  default_page_size: 30
silverstripe\versionedadmin\navigator\silverstripenavigatoritem_archivelink:
  priority: 40
silverstripe\versionedadmin\navigator\silverstripenavigatoritem_livelink:
  priority: 30
silverstripe\versionedadmin\navigator\silverstripenavigatoritem_stagelink:
  priority: 20
symbiote\gridfieldextensions\extensions\gridfielddetailformitemrequestextension: []
twa\extension\googlemapextension:
  db:
    LocationTitle: Varchar(255)
    Latitude: Varchar
    Longitude: Varchar
    Geometry: Text
twa\forms\googlemapfield:
  default_options:
    api_key: null
    show_search_box: true
    field_names:
      Latitude: Latitude
      Longitude: Longitude
      Geometry: Geometry
      Zoom: Zoom
      Bounds: Bounds
    map:
      zoom: 12
    default_field_values:
      Latitude: 0
      Longitude: 0
      Geometry: null
unclecheese\displaylogic\extensions\displaylogic: []
unclecheese\displaylogic\forms\wrapper: []
wilr\googlesitemaps\control\googlesitemapcontroller:
  allowed_actions:
    - index
    - sitemap
    - styleSheetIndex
    - styleSheet
wilr\googlesitemaps\extensions\googlesitemapextension: []
wilr\googlesitemaps\extensions\googlesitemapsitetreeextension:
  db:
    Priority: Varchar(5)
gorriecoe\linkfield\forms\gridfield\gridfieldhasonedeletebutton: []
gorriecoe\linkfield\forms\gridfield\gridfieldlinkdetailform: []
gorriecoe\linkfield\forms\hasonelinkfield: []
silverstripe\assetadmin\graphql\resolvers\assetadminresolver: []
silverstripe\assetadmin\graphql\resolvers\fieldresolver: []
silverstripe\assetadmin\graphql\resolvers\filetyperesolver:
  dependencies:
    ThumbnailGenerator: '%$SilverStripe\AssetAdmin\Model\ThumbnailGenerator.graphql'
silverstripe\assetadmin\graphql\resolvers\foldertyperesolver: []
silverstripe\assetadmin\graphql\resolvers\publicationresolver: []
silverstripe\assetadmin\graphql\schema\builder: []
silverstripe\assets\dev\tasks\interventionbackendcacheflushtask:
  segment: InterventionBackendCacheFlushTask
silverstripe\control\email\email:
  send_all_emails_to: []
  cc_all_emails_to: []
  bcc_all_emails_to: []
  send_all_emails_from: []
  admin_email: ''
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\control\email\mailersubscriber:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\control\middleware\allowedhostsmiddleware: []
silverstripe\control\middleware\canonicalurlmiddleware: []
silverstripe\control\middleware\changedetectionmiddleware: []
silverstripe\control\middleware\confirmationmiddleware: []
silverstripe\control\middleware\execmetricmiddleware: []
silverstripe\control\middleware\flushmiddleware: []
silverstripe\control\middleware\httpcachecontrolmiddleware:
  defaultState: disabled
  defaultVary:
    X-Forwarded-Protocol: true
  defaultForcingLevel: 3
  allowed_directives:
    - public
    - private
    - no-cache
    - max-age
    - s-maxage
    - must-revalidate
    - proxy-revalidate
    - no-store
    - no-transform
silverstripe\control\middleware\permissionawareconfirmationmiddleware: []
silverstripe\control\middleware\ratelimitmiddleware: []
silverstripe\control\middleware\requesthandlermiddlewareadapter: []
silverstripe\control\middleware\sessionmiddleware: []
silverstripe\control\middleware\trustedproxymiddleware: []
silverstripe\control\middleware\urlspecialsmiddleware: []
silverstripe\control\rss\rssfeed:
  casting:
    Title: Varchar
    Description: Varchar
    Link: Varchar
silverstripe\control\rss\rssfeed_entry: []
silverstripe\control\util\iputils: []
silverstripe\core\cache\apcucachefactory: []
silverstripe\core\cache\defaultcachefactory: []
silverstripe\core\cache\filesystemcachefactory: []
silverstripe\core\cache\manifestcachefactory: []
silverstripe\core\cache\memcachedcachefactory: []
silverstripe\core\cache\ratelimiter: []
silverstripe\core\config\config: []
silverstripe\core\config\configloader: []
silverstripe\core\config\config_forclass: []
silverstripe\core\config\coreconfigfactory: []
silverstripe\core\injector\aopproxyservice: []
silverstripe\core\injector\injectioncreator: []
silverstripe\core\injector\injector:
  instance: null
  SilverStripe\Dev\State\SapphireTestState:
    properties:
      States:
        kernel: '%$SilverStripe\Dev\State\KernelTestState'
        globals: '%$SilverStripe\Dev\State\GlobalsTestState'
        extensions: '%$SilverStripe\Dev\State\ExtensionTestState'
        flushable: '%$SilverStripe\Dev\State\FlushableTestState'
        fixtures: '%$SilverStripe\Dev\State\FixtureTestState'
        requirements: '%$SilverStripe\View\Dev\RequirementsTestState'
        ssviewer: '%$SilverStripe\View\Dev\SSViewerTestState'
        logstate: '%$SilverStripe\Dev\State\LoggerState'
        debugSchema: '%$SilverStripe\GraphQL\Dev\State\DebugSchemaState'
        versioned: '%$SilverStripe\Versioned\Dev\VersionedTestState'
  Psr\SimpleCache\CacheInterface:
    factory: SilverStripe\Core\Cache\CacheFactory
  SilverStripe\Core\Cache\CacheFactory:
    class: SilverStripe\Versioned\Caching\ProxyCacheFactory
    constructor:
      args:
        directory: '`TEMP_PATH`'
        version: null
        container: SilverStripe\Versioned\Caching\VersionedCacheAdapter
      logger: '%$Psr\Log\LoggerInterface'
  Psr\SimpleCache\CacheInterface.cacheblock:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: cacheblock
      defaultLifetime: 600
  Psr\SimpleCache\CacheInterface.VersionProvider_composerlock:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: VersionProvider_composerlock
      disable-container: true
  Psr\SimpleCache\CacheInterface.RateLimiter:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: ratelimiter
      disable-container: true
  Psr\SimpleCache\CacheInterface.InheritedPermissions:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: InheritedPermissions
      disable-container: true
  Psr\SimpleCache\CacheInterface.ThemeResourceLoader:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: ThemeResourceLoader
  Psr\SimpleCache\CacheInterface.DatabaseAdapterRegistry:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: DatabaseAdapterRegistry
  Psr\SimpleCache\CacheInterface.EmbedShortcodeProvider:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: EmbedShortcodeProvider
      defaultLifetime: 86400
  Psr\SimpleCache\CacheInterface.VersionProvider:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: VersionProvider
  Psr\SimpleCache\CacheInterface.etf:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: gvi
      defaultLifetime: 2419200
  SilverStripe\Assets\Flysystem\PublicAdapter:
    class: SilverStripe\Assets\Flysystem\PublicAssetAdapter
  SilverStripe\Assets\Flysystem\ProtectedAdapter:
    class: SilverStripe\Assets\Flysystem\ProtectedAssetAdapter
  League\Flysystem\Filesystem.public:
    class: SilverStripe\Assets\Flysystem\Filesystem
    constructor:
      FilesystemAdapter: '%$SilverStripe\Assets\Flysystem\PublicAdapter'
      FilesystemConfig:
        visibility: public
  League\Flysystem\Filesystem.protected:
    class: SilverStripe\Assets\Flysystem\Filesystem
    constructor:
      FilesystemAdapter: '%$SilverStripe\Assets\Flysystem\ProtectedAdapter'
      FilesystemConfig:
        visibility: private
  SilverStripe\Assets\FilenameParsing\FileResolutionStrategy.public:
    class: SilverStripe\Assets\FilenameParsing\FileIDHelperResolutionStrategy
    properties:
      ResolutionFileIDHelpers:
        - '%$SilverStripe\Assets\FilenameParsing\HashFileIDHelper'
        - '%$SilverStripe\Assets\FilenameParsing\NaturalFileIDHelper'
        - '%$SilverStripe\Assets\FilenameParsing\HashFileIDHelper'
        - '%$SilverStripe\Assets\FilenameParsing\HashFileIDHelper'
        - '%$SilverStripe\Assets\FilenameParsing\NaturalFileIDHelper'
      DefaultFileIDHelper: '%$SilverStripe\Assets\FilenameParsing\NaturalFileIDHelper'
      VersionedStage: Live
  SilverStripe\Assets\FilenameParsing\FileResolutionStrategy.protected:
    class: SilverStripe\Assets\FilenameParsing\FileIDHelperResolutionStrategy
    properties:
      DefaultFileIDHelper: '%$SilverStripe\Assets\FilenameParsing\HashFileIDHelper'
      ResolutionFileIDHelpers:
        - '%$SilverStripe\Assets\FilenameParsing\HashFileIDHelper'
        - '%$SilverStripe\Assets\FilenameParsing\HashFileIDHelper'
        - '%$SilverStripe\Assets\FilenameParsing\HashFileIDHelper'
      VersionedStage: Stage
  Swift_Transport:
    class: Swift_SendmailTransport
  Psr\Log\LoggerInterface:
    calls:
      LogFileHandler:
        - pushHandler
        -
          - '%$LogFileHandler'
    type: singleton
    class: Monolog\Logger
    constructor:
      - error-log
  LogFileHandler:
    class: RS\Utils\LogStreamHandler
    constructor:
      - logs/log.log
      - error
  DisplayErrorHandler:
    class: SilverStripe\Logging\HTTPOutputHandler
    constructor:
      - notice
    properties:
      Formatter: '%$SilverStripe\Logging\DetailedErrorFormatter'
      CLIFormatter: '%$SilverStripe\Logging\DetailedErrorFormatter'
  SilverStripe\Assets\Upload_Validator:
    class: SilverStripe\MimeValidator\MimeUploadValidator
  SilverStripe\View\Requirements_Backend:
    class: RS\Utils\AppConfigCompiler
    properties:
      AssetHandler: '%$SilverStripe\Assets\Storage\GeneratedAssetHandler'
  SilverStripe\Assets\Image_Backend:
    properties:
      Quality: 85
    class: SilverStripe\Assets\InterventionBackend
    factory: '%$SilverStripe\Assets\ImageBackendFactory'
  SilverStripe\Assets\Storage\AssetStore:
    class: Axllent\ImageOptimiser\Flysystem\FlysystemAssetStore
    properties:
      PublicFilesystem: '%$League\Flysystem\Filesystem.public'
      ProtectedFilesystem: '%$League\Flysystem\Filesystem.protected'
  SilverStripe\Assets\Storage\AssetStoreRouter: '%$SilverStripe\Assets\Storage\AssetStore'
  SilverStripe\Assets\Storage\ProtectedFileController:
    properties:
      RouteHandler: '%$SilverStripe\Assets\Storage\AssetStoreRouter'
  SilverStripe\Assets\Storage\AssetNameGenerator:
    class: SilverStripe\Assets\Storage\DefaultAssetNameGenerator
    type: prototype
  SilverStripe\Assets\Storage\GeneratedAssetHandler:
    class: SilverStripe\Assets\Flysystem\GeneratedAssets
    properties:
      Filesystem: '%$League\Flysystem\Filesystem.public'
  SilverStripe\Assets\ImageBackendFactory:
    constructor:
      creator: '%$SilverStripe\Core\Injector\InjectionCreator'
  Boolean:
    class: SilverStripe\ORM\FieldType\DBBoolean
  Currency:
    class: SilverStripe\ORM\FieldType\DBCurrency
  DBClassName:
    class: SilverStripe\ORM\FieldType\DBClassName
  Date:
    class: SilverStripe\ORM\FieldType\DBDate
  Datetime:
    class: SilverStripe\ORM\FieldType\DBDatetime
  DBDatetime:
    class: SilverStripe\ORM\FieldType\DBDatetime
  Decimal:
    class: SilverStripe\ORM\FieldType\DBDecimal
  Double:
    class: SilverStripe\ORM\FieldType\DBDouble
  Enum:
    class: SilverStripe\ORM\FieldType\DBEnum
  Float:
    class: SilverStripe\ORM\FieldType\DBFloat
  ForeignKey:
    class: SilverStripe\ORM\FieldType\DBForeignKey
  HTMLText:
    class: SilverStripe\ORM\FieldType\DBHTMLText
    properties:
      ProcessShortcodes: true
  HTMLFragment:
    class: SilverStripe\ORM\FieldType\DBHTMLText
  HTMLVarchar:
    class: SilverStripe\ORM\FieldType\DBHTMLVarchar
  Int:
    class: SilverStripe\ORM\FieldType\DBInt
  BigInt:
    class: SilverStripe\ORM\FieldType\DBBigInt
  Locale:
    class: SilverStripe\ORM\FieldType\DBLocale
  DBLocale:
    class: SilverStripe\ORM\FieldType\DBLocale
  Money:
    class: SilverStripe\ORM\FieldType\DBMoney
  MultiEnum:
    class: SilverStripe\ORM\FieldType\DBMultiEnum
  Percentage:
    class: SilverStripe\ORM\FieldType\DBPercentage
  PolymorphicForeignKey:
    class: SilverStripe\ORM\FieldType\DBPolymorphicForeignKey
  PrimaryKey:
    class: SilverStripe\ORM\FieldType\DBPrimaryKey
  Text:
    class: SilverStripe\ORM\FieldType\DBText
  Time:
    class: SilverStripe\ORM\FieldType\DBTime
  Varchar:
    class: SilverStripe\ORM\FieldType\DBVarchar
  Year:
    class: SilverStripe\ORM\FieldType\DBYear
  FocusPoint:
    class: JonoM\FocusPoint\FieldType\DBFocusPoint
  SilverStripe\GraphQL\Controller.admin:
    class: SilverStripe\GraphQL\Controller
    constructor:
      schema: admin
  SilverStripe\EventDispatcher\Dispatch\Dispatcher:
    properties:
      handlers:
        graphqlTranscribe:
          'on':
            - graphqlSchemaBuild.admin
          handler: '%$SilverStripe\GraphQL\Schema\Services\SchemaTranscribeHandler'
    constructor:
      backend: '%$SilverStripe\EventDispatcher\Symfony\Backend'
  SilverStripe\AssetAdmin\Model\ThumbnailGenerator.assetadmin:
    class: SilverStripe\AssetAdmin\Model\ThumbnailGenerator
    properties:
      Generates: true
  SilverStripe\AssetAdmin\Controller\AssetAdmin:
    properties:
      ThumbnailGenerator: '%$SilverStripe\AssetAdmin\Model\ThumbnailGenerator.assetadmin'
  SilverStripe\Forms\FileHandleField:
    class: SilverStripe\AssetAdmin\Forms\UploadField
  SilverStripe\AssetAdmin\Model\ThumbnailGenerator.graphql:
    class: SilverStripe\AssetAdmin\Model\ThumbnailGenerator
    properties:
      Generates: false
  SilverStripe\AssetAdmin\GraphQL\FileTypeCreator:
    properties:
      ThumbnailGenerator: '%$SilverStripe\AssetAdmin\Model\ThumbnailGenerator.graphql'
  Psr\SimpleCache\CacheInterface.InterventionBackend_Manipulations:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: Intervention_Manipulations
  Psr\SimpleCache\CacheInterface.FileShortcodeProvider:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: FileShortcodeProvider
  Psr\SimpleCache\CacheInterface.ImageShortcodeProvider:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: ImageShortcodeProvider
  Psr\SimpleCache\CacheInterface.Sha1FileHashingService:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: Sha1FileHashingService
      disable-container: true
      defaultLifetime: 0
      useInMemoryCache: false
  SilverStripe\Assets\Storage\FileHashingService:
    class: SilverStripe\Assets\Storage\Sha1FileHashingService
  DBFile:
    class: SilverStripe\Assets\Storage\DBFile
  SilverStripe\Security\PermissionChecker.file:
    class: SilverStripe\Security\InheritedPermissions
    constructor:
      BaseClass: SilverStripe\Assets\File
      CacheService: '%$Psr\SimpleCache\CacheInterface.InheritedPermissions'
    properties:
      DefaultPermissions: '%$SilverStripe\Assets\FileDefaultPermissions'
      GlobalEditPermissions:
        - CMS_ACCESS
  SilverStripe\Security\InheritedPermissionFlusher:
    properties:
      Services:
        - '%$SilverStripe\Security\PermissionChecker.file'
        - '%$SilverStripe\Security\PermissionChecker.sitetree'
        - '%$SilverStripe\CMS\Controllers\CMSMain'
        - '%$SilverStripe\CMS\Model\SiteTree'
  Psr\Log\LoggerInterface.quiet:
    type: singleton
    class: Monolog\Logger
    constructor:
      - file-migration
  Psr\SimpleCache\CacheInterface.CMSMain_SiteTreeHints:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: CMSMain_SiteTreeHints
  Psr\SimpleCache\CacheInterface.SiteTree_CreatableChildren:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: SiteTree_CreatableChildren
  Psr\SimpleCache\CacheInterface.SiteTree_PageIcons:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: SiteTree_PageIcons
  SilverStripe\Security\PermissionChecker.sitetree:
    class: SilverStripe\Security\InheritedPermissions
    constructor:
      BaseClass: SilverStripe\CMS\Model\SiteTree
      CacheService: '%$Psr\SimpleCache\CacheInterface.InheritedPermissions'
    properties:
      DefaultPermissions: '%$SilverStripe\SiteConfig\SiteConfigPagePermissions'
      GlobalEditPermissions:
        - CMS_ACCESS_LeftAndMain
        - CMS_ACCESS_CMSMain
  SilverStripe\GraphQL\Schema\Registry\PluginRegistry:
    constructor:
      - SilverStripe\CMS\GraphQL\LinkablePlugin
      - SilverStripe\GraphQL\Schema\Plugin\PaginationPlugin
      - SilverStripe\GraphQL\Schema\DataObject\Plugin\Paginator
      - SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\QueryFilter
      - SilverStripe\GraphQL\Schema\DataObject\Plugin\QuerySort
      - SilverStripe\GraphQL\Schema\DataObject\Plugin\Inheritance
      - SilverStripe\GraphQL\Schema\DataObject\Plugin\CanViewPermission
      - SilverStripe\GraphQL\Schema\DataObject\Plugin\FirstResult
      - SilverStripe\GraphQL\Schema\DataObject\Plugin\InheritedPlugins
      - SilverStripe\GraphQL\Schema\DataObject\Plugin\DBFieldArgs\DBFieldArgsPlugin
      - SilverStripe\GraphQL\Schema\DataObject\Plugin\DBFieldTypes
      - SilverStripe\GraphQL\Schema\Plugin\SortPlugin
      - SilverStripe\GraphQL\Schema\DataObject\Plugin\ScalarDBField
      - SilverStripe\Versioned\GraphQL\Plugins\VersionedDataObject
      - SilverStripe\Versioned\GraphQL\Plugins\UnpublishOnDelete
      - SilverStripe\Versioned\GraphQL\Plugins\VersionedRead
  Monolog\Formatter\FormatterInterface.detailed:
    class: SilverStripe\Logging\DetailedErrorFormatter
  Monolog\Formatter\FormatterInterface.friendly:
    class: SilverStripe\ErrorPage\ErrorPageErrorFormatter
    properties:
      Title: 'There has been an error'
      Body: 'The website server has not been able to respond to your request'
  SilverStripe\EventDispatcher\Event\EventContextInterface:
    class: SilverStripe\EventDispatcher\Symfony\Event
  SilverStripe\Security\PasswordValidator:
    properties:
      MinLength: 8
      HistoricCount: 6
  SilverStripe\Security\AuthenticationHandler:
    properties:
      Handlers:
        LoginSessionLogOut: '%$SilverStripe\SessionManager\Security\LogOutAuthenticationHandler'
        session: '%$SilverStripe\Security\MemberAuthenticator\SessionAuthenticationHandler'
        alc: '%$SilverStripe\Security\MemberAuthenticator\CookieAuthenticationHandler'
        LoginSessionLogIn: '%$SilverStripe\SessionManager\Security\LogInAuthenticationHandler'
    class: SilverStripe\Security\RequestAuthenticationHandler
  SilverStripe\Security\MemberAuthenticator\SessionAuthenticationHandler:
    properties:
      SessionVariable: loggedInAs
  SilverStripe\Security\MemberAuthenticator\CookieAuthenticationHandler:
    properties:
      TokenCookieName: alc_enc
      DeviceCookieName: alc_device
      CascadeInTo: '%$SilverStripe\Security\MemberAuthenticator\SessionAuthenticationHandler'
  SilverStripe\Control\Director:
    properties:
      Middlewares:
        TrustedProxyMiddleware: '%$SilverStripe\Control\Middleware\TrustedProxyMiddleware'
        AllowedHostsMiddleware: '%$SilverStripe\Control\Middleware\AllowedHostsMiddleware'
        SessionMiddleware: '%$SilverStripe\Control\Middleware\SessionMiddleware'
        FlushMiddleware: '%$SilverStripe\Control\Middleware\FlushMiddleware'
        ChangeDetectionMiddleware: '%$SilverStripe\Control\Middleware\ChangeDetectionMiddleware'
        HTTPCacheControleMiddleware: '%$SilverStripe\Control\Middleware\HTTPCacheControlMiddleware'
        CanonicalURLMiddleware: '%$SilverStripe\Control\Middleware\CanonicalURLMiddleware'
        AuthenticationMiddleware: '%$SilverStripe\Security\AuthenticationMiddleware'
        BasicAuthMiddleware: '%$SilverStripe\Security\BasicAuthMiddleware'
        PasswordExpirationMiddleware: '%$SilverStripe\Security\PasswordExpirationMiddleware'
        ExecMetricMiddleware: '%$SilverStripe\Control\Middleware\ExecMetricMiddleware'
        URLSpecialsMiddleware: '%$SilverStripe\Control\Middleware\URLSpecialsMiddleware'
        DevUrlsConfirmationMiddleware: '%$DevUrlsConfirmationMiddleware'
        LoginSessionMiddleware: '%$SilverStripe\SessionManager\Middleware\LoginSessionMiddleware'
        VersionedMiddleware: '%$SilverStripe\Versioned\VersionedHTTPMiddleware'
  SilverStripe\Control\Middleware\AllowedHostsMiddleware:
    properties:
      AllowedHosts: '`SS_ALLOWED_HOSTS`'
  SilverStripe\Control\Middleware\TrustedProxyMiddleware:
    properties:
      TrustedProxyIPs: '`SS_TRUSTED_PROXY_IPS`'
  SecurityRateLimitMiddleware:
    class: SilverStripe\Control\Middleware\RateLimitMiddleware
    properties:
      ExtraKey: Security
      MaxAttempts: 10
      Decay: 1
  RateLimitedSecurityController:
    class: SilverStripe\Control\Middleware\RequestHandlerMiddlewareAdapter
    properties:
      RequestHandler: '%$SilverStripe\Security\Security'
      Middlewares:
        - '%$SecurityRateLimitMiddleware'
  SilverStripe\Security\AuthenticationMiddleware:
    properties:
      AuthenticationHandler: '%$SilverStripe\Security\AuthenticationHandler'
  SilverStripe\Security\BasicAuthMiddleware:
    properties:
      URLPatterns: []
  SilverStripe\Security\Security:
    properties:
      Authenticators:
        default: '%$SilverStripe\Security\MemberAuthenticator\MemberAuthenticator'
  SilverStripe\Security\CMSSecurity:
    properties:
      Authenticators:
        cms: '%$SilverStripe\Security\MemberAuthenticator\CMSMemberAuthenticator'
  SilverStripe\Security\IdentityStore: '%$SilverStripe\Security\AuthenticationHandler'
  SilverStripe\Security\SudoMode\SudoModeServiceInterface:
    class: SilverStripe\Security\SudoMode\SudoModeService
  SilverStripe\Control\Middleware\ConfirmationMiddleware\AjaxBypass:
    class: SilverStripe\Control\Middleware\ConfirmationMiddleware\AjaxBypass
    type: prototype
  SilverStripe\Control\Middleware\ConfirmationMiddleware\GetParameter:
    class: SilverStripe\Control\Middleware\ConfirmationMiddleware\GetParameter
    type: prototype
  SilverStripe\Control\Middleware\ConfirmationMiddleware\UrlPathStartswith:
    class: SilverStripe\Control\Middleware\ConfirmationMiddleware\UrlPathStartswith
    type: prototype
  SilverStripe\Control\Middleware\ConfirmationMiddleware\UrlPathStartswithCaseInsensitive:
    class: SilverStripe\Control\Middleware\ConfirmationMiddleware\UrlPathStartswithCaseInsensitive
    type: prototype
  SilverStripe\Control\Middleware\ConfirmationMiddleware\EnvironmentBypass:
    class: SilverStripe\Control\Middleware\ConfirmationMiddleware\EnvironmentBypass
    type: prototype
  SilverStripe\Control\Middleware\ConfirmationMiddleware\CliBypass:
    class: SilverStripe\Control\Middleware\ConfirmationMiddleware\CliBypass
    type: prototype
  SilverStripe\Control\Middleware\ConfirmationMiddleware\HttpMethodBypass:
    class: SilverStripe\Control\Middleware\ConfirmationMiddleware\HttpMethodBypass
    type: prototype
  SilverStripe\Control\Middleware\ConfirmationMiddleware\Url:
    class: SilverStripe\Control\Middleware\ConfirmationMiddleware\Url
    type: prototype
  DataListFilter.default: '%$DataListFilter.ExactMatch'
  DataListFilter.EndsWith:
    class: SilverStripe\ORM\Filters\EndsWithFilter
  DataListFilter.ExactMatch:
    class: SilverStripe\ORM\Filters\ExactMatchFilter
  DataListFilter.Fulltext:
    class: SilverStripe\ORM\Filters\FulltextFilter
  DataListFilter.GreaterThan:
    class: SilverStripe\ORM\Filters\GreaterThanFilter
  DataListFilter.GreaterThanOrEqual:
    class: SilverStripe\ORM\Filters\GreaterThanOrEqualFilter
  DataListFilter.LessThan:
    class: SilverStripe\ORM\Filters\LessThanFilter
  DataListFilter.LessThanOrEqual:
    class: SilverStripe\ORM\Filters\LessThanOrEqualFilter
  DataListFilter.PartialMatch:
    class: SilverStripe\ORM\Filters\PartialMatchFilter
  DataListFilter.StartsWith:
    class: SilverStripe\ORM\Filters\StartsWithFilter
  DataListFilter.WithinRange:
    class: SilverStripe\ORM\Filters\WithinRangeFilter
  EndsWithFilter: '%$DataListFilter.EndsWith'
  ExactMatchFilter: '%$DataListFilter.ExactMatch'
  FulltextFilter: '%$DataListFilter.Fulltext'
  GreaterThanFilter: '%$$DataListFilter.GreaterThan'
  GreaterThanOrEqualFilter: '%$DataListFilter.GreaterThanOrEqual'
  LessThanFilter: '%$DataListFilter.LessThan'
  LessThanOrEqualFilter: '%$DataListFilter.LessThanOrEqual'
  PartialMatchFilter: '%$DataListFilter.PartialMatch'
  StartsWithFilter: '%$DataListFilter.StartsWith'
  WithinRangeFilter: '%$DataListFilter.WithinRange'
  SilverStripe\Control\Middleware\CanonicalURLMiddleware:
    properties:
      ForceSSL: false
      ForceWWW: false
  SilverStripe\Control\Middleware\URLSpecialsMiddleware:
    class: SilverStripe\Control\Middleware\URLSpecialsMiddleware
    properties:
      ConfirmationStorageId: url-specials
      ConfirmationFormUrl: /dev/confirm
      Bypasses:
        - '%$SilverStripe\Control\Middleware\ConfirmationMiddleware\CliBypass'
        - '%$SilverStripe\Control\Middleware\ConfirmationMiddleware\EnvironmentBypass("dev")'
        - '%$SilverStripe\Control\Middleware\ConfirmationMiddleware\UrlPathStartswith("dev/confirm")'
      EnforceAuthentication: true
      AffectedPermissions:
        - ADMIN
  DevUrlsConfirmationMiddleware:
    class: SilverStripe\Control\Middleware\PermissionAwareConfirmationMiddleware
    constructor:
      - '%$SilverStripe\Control\Middleware\ConfirmationMiddleware\UrlPathStartswith("dev")'
    properties:
      ConfirmationStorageId: dev-urls
      ConfirmationFormUrl: /dev/confirm
      Bypasses:
        - '%$SilverStripe\Control\Middleware\ConfirmationMiddleware\CliBypass'
        - '%$SilverStripe\Control\Middleware\ConfirmationMiddleware\EnvironmentBypass("dev")'
        - '%$SilverStripe\Control\Middleware\ConfirmationMiddleware\UrlPathStartswith("dev/build")'
        - '%$SilverStripe\Control\Middleware\ConfirmationMiddleware\UrlPathStartswith("dev/confirm")'
        - '%$SilverStripe\Control\Middleware\ConfirmationMiddleware\Url("dev", ["GET", "HEAD"])'
      EnforceAuthentication: false
      AffectedPermissions:
        - ADMIN
  SilverStripe\Forms\HTMLEditor\HTMLEditorConfig:
    class: SilverStripe\Forms\HTMLEditor\TinyMCEConfig
  SilverStripe\Forms\HTMLEditor\TinyMCEScriptGenerator: '%$SilverStripe\Forms\HTMLEditor\TinyMCECombinedGenerator'
  SilverStripe\Forms\HTMLEditor\TinyMCECombinedGenerator:
    class: SilverStripe\Forms\HTMLEditor\TinyMCECombinedGenerator
    properties:
      AssetHandler: '%$SilverStripe\Assets\Storage\GeneratedAssetHandler'
  SilverStripe\Logging\ErrorHandler:
    class: SilverStripe\Logging\MonologErrorHandler
    calls:
      pushDefaultLogger:
        - pushLogger
        -
          - '%$Psr\Log\LoggerInterface'
      pushErrorHandler:
        - pushLogger
        -
          - '%$Psr\Log\LoggerInterface.errorhandler'
  Psr\Log\LoggerInterface.errorhandler:
    type: singleton
    class: Monolog\Logger
    constructor:
      - error-handler
    calls:
      pushDisplayErrorHandler:
        - pushHandler
        -
          - '%$Monolog\Handler\HandlerInterface'
  Monolog\Handler\HandlerInterface:
    class: SilverStripe\Logging\HTTPOutputHandler
    constructor:
      - notice
    properties:
      DefaultFormatter: '%$Monolog\Formatter\FormatterInterface.detailed'
  SilverStripe\i18n\Messages\Reader:
    class: SilverStripe\i18n\Messages\YamlReader
  SilverStripe\i18n\Messages\Writer:
    class: SilverStripe\i18n\Messages\YamlWriter
  Symfony\Component\Translation\Loader\LoaderInterface:
    class: SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader
    properties:
      Reader: '%$SilverStripe\i18n\Messages\Reader'
  Symfony\Component\Config\ConfigCacheFactoryInterface:
    class: Symfony\Component\Config\ResourceCheckerConfigCacheFactory
    constructor:
      -
        - '%$Symfony\Component\Config\Resource\SelfCheckingResourceChecker'
  Symfony\Contracts\Translation\TranslatorInterface:
    class: Symfony\Component\Translation\Translator
    constructor:
      - en
      - null
      - '`TEMP_PATH`'
    properties:
      ConfigCacheFactory: '%$Symfony\Component\Config\ConfigCacheFactoryInterface'
    calls:
      FallbackLocales:
        - setFallbackLocales
        -
          -
            - en
      Loader:
        - addLoader
        -
          - ss
          - '%$Symfony\Component\Translation\Loader\LoaderInterface'
  SilverStripe\i18n\Messages\MessageProvider:
    class: SilverStripe\i18n\Messages\Symfony\SymfonyMessageProvider
    properties:
      Translator: '%$Symfony\Contracts\Translation\TranslatorInterface'
  SilverStripe\i18n\TextCollection\i18nTextCollector:
    properties:
      Reader: '%$SilverStripe\i18n\Messages\Reader'
      Writer: '%$SilverStripe\i18n\Messages\Writer'
  SilverStripe\i18n\Data\Locales:
    class: SilverStripe\i18n\Data\Intl\IntlLocales
  SilverStripe\Core\Manifest\ResourceURLGenerator:
    class: SilverStripe\Control\SimpleResourceURLGenerator
    properties:
      NonceStyle: mtime
  SilverStripe\ORM\UniqueKey\UniqueKeyInterface:
    class: SilverStripe\ORM\UniqueKey\UniqueKeyService
  SilverStripe\Core\Manifest\PrioritySorter.modulesorter:
    class: SilverStripe\Core\Manifest\PrioritySorter
    properties:
      RestKey: $other_modules
  SilverStripe\ORM\RelatedData\RelatedDataService:
    class: SilverStripe\ORM\RelatedData\StandardRelatedDataService
  SilverStripe\View\Embed\Embeddable:
    class: SilverStripe\View\Embed\EmbedContainer
  Psr\Http\Client\ClientInterface.oembed:
    class: GuzzleHttp\Client
  Embed\Http\Crawler:
    constructor:
      - '%$Psr\Http\Client\ClientInterface.oembed'
  Embed\Embed:
    constructor:
      - '%$Embed\Http\Crawler'
  SilverStripe\Forms\GridField\FormAction\StateStore:
    class: SilverStripe\Forms\GridField\FormAction\SessionStore
  SilverStripe\Forms\GridField\GridFieldStateManagerInterface:
    class: SilverStripe\Forms\GridField\GridFieldStateManager
  MySQLDatabase:
    class: SilverStripe\ORM\Connect\MySQLDatabase
    properties:
      connector: '%$MySQLiConnector'
      schemaManager: '%$MySQLSchemaManager'
      queryBuilder: '%$MySQLQueryBuilder'
  MySQLiConnector:
    class: SilverStripe\ORM\Connect\MySQLiConnector
    type: prototype
  MySQLSchemaManager:
    class: SilverStripe\ORM\Connect\MySQLSchemaManager
  MySQLQueryBuilder:
    class: SilverStripe\ORM\Connect\MySQLQueryBuilder
  SilverStripe\Control\Cookie_Backend: SilverStripe\Control\CookieJar
  Symfony\Component\Mailer\MailerInterface:
    class: Symfony\Component\Mailer\Mailer
    constructor:
      transport: '%$Symfony\Component\Mailer\Transport\TransportInterface'
  Symfony\Component\EventDispatcher\EventDispatcherInterface.mailer:
    class: Symfony\Component\EventDispatcher\EventDispatcher
    calls:
      -
        - addSubscriber
        -
          - '%$SilverStripe\Control\Email\MailerSubscriber'
  Symfony\Component\Mailer\Transport\TransportInterface:
    factory: Symfony\Component\Mailer\Transport
    factory_method: fromDsn
    constructor:
      dsn: 'sendmail://default'
      dispatcher: '%$Symfony\Component\EventDispatcher\EventDispatcherInterface.mailer'
  SilverStripe\GraphQL\QueryHandler\QueryHandlerInterface:
    class: SilverStripe\GraphQL\QueryHandler\QueryHandler
    properties:
      Middlewares:
        csrf: '%$SilverStripe\GraphQL\Middleware\CSRFMiddleware'
        httpMethod: '%$SilverStripe\GraphQL\Middleware\HTTPMethodMiddleware'
  SilverStripe\GraphQL\Middleware\QueryMiddleware.csrf:
    class: SilverStripe\GraphQL\Middleware\CSRFMiddleware
  SilverStripe\GraphQL\Middleware\QueryMiddleware.httpMethod:
    class: SilverStripe\GraphQL\Middleware\HTTPMethodMiddleware
  SilverStripe\GraphQL\PersistedQuery\PersistedQueryMappingProvider:
    class: SilverStripe\GraphQL\PersistedQuery\JSONStringProvider
  SilverStripe\GraphQL\PersistedQuery\RequestProcessor:
    class: SilverStripe\GraphQL\PersistedQuery\RequestIDProcessor
  SilverStripe\GraphQL\PersistedQuery\HTTPProvider:
    constructor:
      httpClient: '%$SilverStripe\GraphQL\PersistedQuery\GuzzleHTTPClient'
  SilverStripe\GraphQL\Schema\Interfaces\SchemaStorageCreator:
    class: SilverStripe\GraphQL\Schema\Storage\CodeGenerationStoreCreator
  SilverStripe\GraphQL\Schema\Storage\CodeGenerationStore:
    properties:
      rootDir: '`BASE_PATH`'
  SilverStripe\GraphQL\Schema\SchemaBuilder:
    constructor:
      storeCreator: '%$SilverStripe\GraphQL\Schema\Interfaces\SchemaStorageCreator'
  SilverStripe\GraphQL\Schema\Storage\NameObfuscator:
    class: SilverStripe\GraphQL\Schema\Storage\HashNameObfuscator
  SilverStripe\GraphQL\Controller.default:
    class: SilverStripe\GraphQL\Controller
    constructor:
      schema: default
      handler: '%$SilverStripe\GraphQL\QueryHandler\QueryHandlerInterface.default'
  SilverStripe\GraphQL\QueryHandler\QueryHandlerInterface.default:
    class: SilverStripe\GraphQL\QueryHandler\QueryHandler
    properties:
      errorHandler:
        - SilverStripe\GraphQL\QueryHandler\DevErrorHandler
        - handleError
      Middlewares:
        csrf: '%$SilverStripe\GraphQL\Middleware\CSRFMiddleware'
        httpMethod: '%$SilverStripe\GraphQL\Middleware\HTTPMethodMiddleware'
  Psr\Log\LoggerInterface.graphql-build: '%$Psr\Log\LoggerInterface.errorhandler'
  Psr\SimpleCache\CacheInterface.graphql:
    factory: SilverStripe\Core\Cache\CacheFactory
    constructor:
      namespace: graphql
      defaultLifetime: 600
  SilverStripe\GraphQL\Middleware\QueryCachingMiddleware:
    properties:
      Cache: '%$Psr\SimpleCache\CacheInterface.graphql'
  SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\FilterRegistryInterface:
    class: SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\FieldFilterRegistry
    constructor:
      contains: '%$SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\Filters\ContainsFilter'
      eq: '%$SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\Filters\EqualToFilter'
      ne: '%$SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\Filters\NotEqualFilter'
      gt: '%$SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\Filters\GreaterThanFilter'
      lt: '%$SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\Filters\LessThanFilter'
      gte: '%$SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\Filters\GreaterThanOrEqualFilter'
      lte: '%$SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\Filters\LessThanOrEqualFilter'
      in: '%$SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\Filters\InFilter'
      endswith: '%$SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\Filters\EndsWithFilter'
      startswith: '%$SilverStripe\GraphQL\Schema\DataObject\Plugin\QueryFilter\Filters\StartsWithFilter'
  SilverStripe\SessionManager\Security\LogInAuthenticationHandler:
    properties:
      SessionVariable: activeLoginSession
  SilverStripe\Versioned\Versioned.versioned:
    class: SilverStripe\Versioned\Versioned
    constructor:
      mode: Versioned
  SilverStripe\Versioned\Versioned.stagedversioned:
    class: SilverStripe\Versioned\Versioned
    constructor:
      mode: StagedVersioned
  SilverStripe\Versioned\Versioned: '%$SilverStripe\Versioned\Versioned.stagedversioned'
  SilverStripe\CMS\Controllers\CMSPageHistoryController:
    class: SilverStripe\VersionedAdmin\Controllers\CMSPageHistoryViewerController
silverstripe\core\injector\injectorloader: []
silverstripe\core\injector\injectornotfoundexception: []
silverstripe\core\injector\silverstripeserviceconfigurationlocator: []
silverstripe\core\manifest\classcontentremover: []
silverstripe\core\manifest\classloader: []
silverstripe\core\manifest\classmanifest: []
silverstripe\core\manifest\classmanifesterrorhandler: []
silverstripe\core\manifest\classmanifestvisitor: []
silverstripe\core\manifest\manifestfilefinder: []
silverstripe\core\manifest\module: []
silverstripe\core\manifest\moduleloader: []
silverstripe\core\manifest\modulemanifest:
  module_priority:
    - $project
    - $other_modules
    - silverstripe/cms
    - silverstripe/admin
    - silverstripe/assets
    - silverstripe\admin
    - silverstripe\framework
    - other_modules
    - silverstripe/framework
  project: app
silverstripe\core\manifest\moduleresource: []
silverstripe\core\manifest\moduleresourceloader: []
silverstripe\core\manifest\prioritysorter: []
silverstripe\core\manifest\versionprovider:
  modules:
    silverstripe/framework: Framework
    silverstripe/recipe-core: 'Core Recipe'
    silverstripe/cms: CMS
    silverstripe/recipe-cms: 'CMS Recipe'
silverstripe\core\startup\callbackflushdiscoverer: []
silverstripe\core\startup\compositeflushdiscoverer: []
silverstripe\core\startup\deployflushdiscoverer: []
silverstripe\core\startup\requestflushdiscoverer: []
silverstripe\core\startup\scheduledflushdiscoverer: []
silverstripe\dev\install\databaseadapterregistry:
  default_fields:
    server:
      title: 'Database server'
      envVar: SS_DATABASE_SERVER
      default: localhost
    username:
      title: 'Database username'
      envVar: SS_DATABASE_USERNAME
      default: root
    password:
      title: 'Database password'
      envVar: SS_DATABASE_PASSWORD
      default: password
    database:
      title: 'Database name'
      default: SS_mysite
      attributes:
        onchange: "this.value = this.value.replace(/[\\/\\:*?"<>|. \t]+/g,'');"
  adapters: []
silverstripe\dev\install\mysqldatabaseconfigurationhelper: []
silverstripe\dev\state\extensionteststate: []
silverstripe\dev\state\fixtureteststate: []
silverstripe\dev\state\flushableteststate: []
silverstripe\dev\state\globalsteststate: []
silverstripe\dev\state\kernelteststate: []
silverstripe\dev\state\loggerstate: []
silverstripe\dev\state\sapphireteststate: []
silverstripe\dev\tasks\cleanuptestdatabasestask:
  segment: CleanupTestDatabasesTask
silverstripe\dev\tasks\i18ntextcollectortask:
  segment: i18nTextCollectorTask
silverstripe\dev\validation\databaseadminextension: []
silverstripe\dev\validation\relationvalidationservice:
  output_enabled: false
  allow_rules:
    empty: ''
    app: App
  deny_rules: []
  deny_relations: []
silverstripe\forms\gridfield\abstractgridfieldcomponent: []
silverstripe\forms\gridfield\gridfield:
  allowed_actions:
    - index
    - gridFieldAlterAction
  default_readonly_components:
    - SilverStripe\Forms\GridField\GridField_ActionMenu
    - SilverStripe\Forms\GridField\GridFieldConfig_RecordViewer
    - SilverStripe\Forms\GridField\GridFieldButtonRow
    - SilverStripe\Forms\GridField\GridFieldDataColumns
    - SilverStripe\Forms\GridField\GridFieldDetailForm
    - SilverStripe\Forms\GridField\GridFieldLazyLoader
    - SilverStripe\Forms\GridField\GridFieldPageCount
    - SilverStripe\Forms\GridField\GridFieldPaginator
    - SilverStripe\Forms\GridField\GridFieldFilterHeader
    - SilverStripe\Forms\GridField\GridFieldSortableHeader
    - SilverStripe\Forms\GridField\GridFieldToolbarHeader
    - SilverStripe\Forms\GridField\GridFieldViewButton
    - SilverStripe\Forms\GridField\GridState_Component
silverstripe\forms\gridfield\gridfieldaddexistingautocompleter: []
silverstripe\forms\gridfield\gridfieldaddnewbutton: []
silverstripe\forms\gridfield\gridfieldbuttonrow: []
silverstripe\forms\gridfield\gridfieldconfig:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\forms\gridfield\gridfieldconfig_base:
  extensions:
    - SilverStripe\Versioned\VersionedGridFieldStateExtension
silverstripe\forms\gridfield\gridfieldconfig_recordeditor:
  extensions:
    - SilverStripe\Versioned\VersionedGridFieldStateExtension
    - SilverStripe\Versioned\VersionedGridFieldArchiveExtension
silverstripe\forms\gridfield\gridfieldconfig_recordviewer: []
silverstripe\forms\gridfield\gridfieldconfig_relationeditor:
  extensions:
    - SilverStripe\Versioned\VersionedGridFieldStateExtension
    - SilverStripe\Versioned\VersionedGridFieldArchiveExtension
silverstripe\forms\gridfield\gridfielddatacolumns: []
silverstripe\forms\gridfield\gridfielddeleteaction: []
silverstripe\forms\gridfield\gridfielddetailform:
  extensions:
    - SilverStripe\Versioned\VersionedGridFieldDetailForm
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\forms\gridfield\gridfielddetailform_itemrequest:
  allowed_actions:
    - edit
    - view
    - ItemEditForm
  formActions:
    showPagination: true
    showAdd: true
  url_handlers:
    $Action!: $Action
    '': edit
  extensions:
    - SilverStripe\Admin\Forms\GridFieldDetailFormPreviewExtension
    - Symbiote\GridFieldExtensions\Extensions\GridFieldDetailFormItemRequestExtension
    - WebbuildersGroup\AddToCampaigns\Extensions\CampaignableGridField
silverstripe\forms\gridfield\gridfieldeditbutton: []
silverstripe\forms\gridfield\gridfieldexportbutton:
  xls_export_disabled: false
silverstripe\forms\gridfield\gridfieldfilterheader: []
silverstripe\forms\gridfield\gridfieldfooter: []
silverstripe\forms\gridfield\gridfieldgroupdeleteaction: []
silverstripe\forms\gridfield\gridfieldimportbutton: []
silverstripe\forms\gridfield\gridfieldlazyloader: []
silverstripe\forms\gridfield\gridfieldlevelup: []
silverstripe\forms\gridfield\gridfieldpagecount:
  require_paginator: true
silverstripe\forms\gridfield\gridfieldpaginator:
  default_items_per_page: 15
silverstripe\forms\gridfield\gridfieldprintbutton:
  extensions:
    - SilverStripe\Admin\Forms\GridFieldPrintButtonExtension
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\forms\gridfield\gridfieldsortableheader: []
silverstripe\forms\gridfield\gridfieldstatemanager: []
silverstripe\forms\gridfield\gridfieldtoolbarheader: []
silverstripe\forms\gridfield\gridfieldviewbutton: []
silverstripe\forms\gridfield\gridfield_actionmenu: []
silverstripe\forms\gridfield\gridfield_formaction: []
silverstripe\forms\gridfield\gridstate: []
silverstripe\forms\gridfield\gridstate_component: []
silverstripe\forms\gridfield\gridstate_data: []
silverstripe\forms\htmleditor\htmleditorconfig:
  default_config: default
  user_themes: []
silverstripe\forms\htmleditor\htmleditorfield:
  casting:
    Value: HTMLText
  media_alignment: leftAlone
  sanitise_server_side: true
  default_rows: 20
  fixed_row_height: 20
silverstripe\forms\htmleditor\htmleditorfield_readonly:
  casting:
    Value: HTMLText
silverstripe\forms\htmleditor\htmleditorsanitiser:
  link_rel_value: 'noopener noreferrer'
silverstripe\forms\htmleditor\tinymcecombinedgenerator:
  filename_base: '_tinymce/tinymce-{name}-{hash}.js'
silverstripe\forms\htmleditor\tinymceconfig:
  tinymce_lang:
    ar_EG: ar
    az_AZ: az
    bg_BG: bg_BG
    ca_AD: ca
    ca_ES: ca
    cs_CZ: cs
    cy_GB: cy
    da_DK: da
    da_GL: da
    de_AT: de
    de_BE: de
    de_CH: de
    de_DE: de
    de_LI: de
    de_LU: de
    de_BR: de
    de_US: de
    el_CY: el
    el_GR: el
    es_AR: es
    es_BO: es
    es_CL: es
    es_CO: es
    es_CR: es
    es_CU: es
    es_DO: es
    es_EC: es
    es_ES: es
    es_GQ: es
    es_GT: es
    es_HN: es
    es_MX: es_MX
    es_NI: es
    es_PA: es
    es_PE: es
    es_PH: es
    es_PR: es
    es_PY: es
    es_SV: es
    es_UY: es
    es_VE: es
    es_AD: es
    es_BZ: es
    es_US: es
    et_EE: et
    eo_XX: eo
    fa_AF: fa
    fa_IR: fa
    fa_PK: fa
    ff_FI: fi
    fr_BE: fr_FR
    fr_BF: fr_FR
    fr_BI: fr_FR
    fr_BJ: fr_FR
    fr_CA: fr_FR
    fr_CF: fr_FR
    fr_CG: fr_FR
    fr_CH: fr_FR
    fr_CI: fr_FR
    fr_CM: fr_FR
    fr_DJ: fr_FR
    fr_DZ: fr_FR
    fr_FR: fr_FR
    fr_GA: fr_FR
    fr_GF: fr_FR
    fr_GN: fr_FR
    fr_GP: fr_FR
    fr_HT: fr_FR
    fr_KM: fr_FR
    fr_LU: fr_FR
    fr_MA: fr_FR
    fr_MC: fr_FR
    fr_MG: fr_FR
    fr_ML: fr_FR
    fr_MQ: fr_FR
    fr_MU: fr_FR
    fr_NC: fr_FR
    fr_NE: fr_FR
    fr_PF: fr_FR
    fr_PM: fr_FR
    fr_RE: fr_FR
    fr_RW: fr_FR
    fr_SC: fr_FR
    fr_SN: fr_FR
    fr_SY: fr_FR
    fr_TD: fr_FR
    fr_TG: fr_FR
    fr_TN: fr_FR
    fr_VU: fr_FR
    fr_WF: fr_FR
    fr_YT: fr_FR
    fr_GB: fr_FR
    fr_US: fr_FR
    he_IL: he_IL
    hi_IN: hi
    hr_HR: hr
    hu_HU: hu_HU
    hu_AT: hu_HU
    hu_RO: hu_HU
    hu_RS: hu_HU
    id_ID: id
    is_IS: is_IS
    it_CH: it
    it_IT: it
    it_SM: it
    it_FR: it
    it_HR: it
    it_US: it
    it_VA: it
    ja_JP: ja
    ko_KP: ko_KR
    ko_KR: ko_KR
    ko_CN: ko_KR
    lt_LT: lt
    lv_LV: lv
    nb_NO: nb_NO
    nb_SJ: nb_NO
    ne_NP: ne
    nl_AN: nl
    nl_AW: nl
    nl_BE: nl_BE
    nl_NL: nl
    nl_SR: nl
    pl_PL: pl
    pl_UA: pl
    pt_AO: pt_BR
    pt_BR: pt_BR
    pt_CV: pt_BR
    pt_GW: pt_BR
    pt_MZ: pt_BR
    pt_PT: pt_BR
    pt_ST: pt_BR
    pt_TL: pt_BR
    ro_MD: ro
    ro_RO: ro
    ro_RS: ro
    ru_BY: ru
    ru_KG: ru
    ru_KZ: ru
    ru_RU: ru
    ru_SJ: ru
    ru_UA: ru
    sk_SK: sk
    sk_RS: sk
    sl_SI: sl_SI
    sr_RS: sr
    sv_FI: sv_SE
    sv_SE: sv_SE
    th_TH: th_TH
    tr_CY: tr
    tr_TR: tr
    tr_DE: tr
    tr_MK: tr
    uk_UA: uk
    vi_VN: vi
    vi_US: vi
    zh_CN: zh_Hans
    zh_HK: zh_Hans
    zh_MO: zh_Hans
    zh_SG: zh_Hans
    zh_TW: zh_Hans
    zh_ID: zh_Hans
    zh_MY: zh_Hans
    zh_TH: zh_Hans
    zh_US: zh_Hans
  base_dir: 'silverstripe/admin:client/dist/tinymce'
  lang_dir: 'silverstripe/admin:thirdparty/tinymce_lang'
  editor_css:
    - 'silverstripe/admin:client/dist/styles/editor.css'
  image_size_presets:
    -
      name: fullcolumn
      i18n: SilverStripe\Forms\HTMLEditor\TinyMCEConfig.FULL_COLUMN
      text: 'Full Column'
      width: 1280
    -
      width: 600
      i18n: SilverStripe\Forms\HTMLEditor\TinyMCEConfig.BEST_FIT
      text: 'Best fit'
      name: bestfit
      default: true
    -
      i18n: SilverStripe\Forms\HTMLEditor\TinyMCEConfig.ORIGINAL
      text: Original
      name: originalsize
silverstripe\forms\schema\formschema: []
silverstripe\orm\connect\dbconnector:
  write_operations:
    - insert
    - update
    - delete
    - replace
  ddl_operations:
    - alter
    - drop
    - create
    - truncate
silverstripe\orm\connect\dbquerybuilder: []
silverstripe\orm\connect\dbschemamanager:
  check_and_repair_on_build: true
  fix_table_case_on_build: true
silverstripe\orm\connect\database:
  optimistic_connect: false
silverstripe\orm\connect\databaseexception: []
silverstripe\orm\connect\mysqldatabase:
  connection_charset: utf8
  connection_collation: utf8_general_ci
  charset: utf8
  sql_mode: ANSI
  collation: utf8_general_ci
silverstripe\orm\connect\mysqlquery: []
silverstripe\orm\connect\mysqlquerybuilder: []
silverstripe\orm\connect\mysqlschemamanager: []
silverstripe\orm\connect\mysqlstatement: []
silverstripe\orm\connect\mysqltransactionmanager: []
silverstripe\orm\connect\mysqliconnector:
  ssl_cipher_default: DHE-RSA-AES256-SHA
silverstripe\orm\connect\nestedtransactionmanager: []
silverstripe\orm\connect\nulldatabase: []
silverstripe\orm\connect\nulldatabaseexception: []
silverstripe\orm\connect\query: []
silverstripe\orm\connect\tablebuilder: []
silverstripe\orm\connect\tempdatabase:
  teardown_on_exit: true
silverstripe\orm\fieldtype\dbbigint: []
silverstripe\orm\fieldtype\dbboolean:
  graphql_type: Boolean
silverstripe\orm\fieldtype\dbclassname:
  index: true
silverstripe\orm\fieldtype\dbcomposite:
  composite_db: []
silverstripe\orm\fieldtype\dbcurrency:
  currency_symbol: $
silverstripe\orm\fieldtype\dbdate:
  graphql_args: SilverStripe\GraphQL\Schema\DataObject\Plugin\DBFieldArgs\DBDateArgs
silverstripe\orm\fieldtype\dbdatetime:
  graphql_args: SilverStripe\GraphQL\Schema\DataObject\Plugin\DBFieldArgs\DBDatetimeArgs
silverstripe\orm\fieldtype\dbdecimal:
  graphql_args: SilverStripe\GraphQL\Schema\DataObject\Plugin\DBFieldArgs\DBDecimalArgs
  graphql_type: Float
silverstripe\orm\fieldtype\dbdouble: []
silverstripe\orm\fieldtype\dbenum:
  default_search_filter_class: ExactMatchFilter
silverstripe\orm\fieldtype\dbfield:
  escape_type: raw
  default_search_filter_class: PartialMatchFilter
  index: false
  casting:
    ATT: HTMLFragment
    CDATA: HTMLFragment
    HTML: HTMLFragment
    HTMLATT: HTMLFragment
    JS: HTMLFragment
    RAW: HTMLFragment
    RAWURLATT: HTMLFragment
    URLATT: HTMLFragment
    XML: HTMLFragment
    ProcessedRAW: HTMLFragment
  graphql_type: String
silverstripe\orm\fieldtype\dbfloat:
  graphql_args: SilverStripe\GraphQL\Schema\DataObject\Plugin\DBFieldArgs\DBFloatArgs
  graphql_type: Float
silverstripe\orm\fieldtype\dbforeignkey:
  dropdown_field_threshold: 300
  index: true
  default_search_filter_class: ExactMatchFilter
  graphql_type: ID!
silverstripe\orm\fieldtype\dbhtmltext:
  escape_type: xml
  casting:
    AbsoluteLinks: HTMLFragment
    LowerCase: HTMLFragment
    UpperCase: HTMLFragment
  graphql_args: SilverStripe\GraphQL\Schema\DataObject\Plugin\DBFieldArgs\DBHTMLTextArgs
silverstripe\orm\fieldtype\dbhtmlvarchar:
  escape_type: xml
  casting:
    LowerCase: HTMLFragment
    UpperCase: HTMLFragment
silverstripe\orm\fieldtype\dbint:
  graphql_type: Int
silverstripe\orm\fieldtype\dblocale: []
silverstripe\orm\fieldtype\dbmoney:
  composite_db:
    Currency: Varchar(3)
    Amount: 'Decimal(19,4)'
silverstripe\orm\fieldtype\dbmultienum: []
silverstripe\orm\fieldtype\dbpercentage: []
silverstripe\orm\fieldtype\dbpolymorphicforeignkey:
  index: true
  composite_db:
    ID: Int
    Class: "DBClassName('SilverStripe\\ORM\\DataObject', ['index' => false])"
silverstripe\orm\fieldtype\dbprimarykey:
  default_search_filter_class: ExactMatchFilter
  graphql_type: ID!
silverstripe\orm\fieldtype\dbstring:
  casting:
    LimitCharacters: Text
    LimitCharactersToClosestWord: Text
    LimitWordCount: Text
    LowerCase: Text
    UpperCase: Text
    Plain: Text
  extensions:
    - gorriecoe\Link\Extensions\DBStringLink
silverstripe\orm\fieldtype\dbtext:
  casting:
    BigSummary: Text
    ContextSummary: HTMLFragment
    FirstParagraph: Text
    FirstSentence: Text
    LimitSentences: Text
    Summary: Text
  graphql_args: SilverStripe\GraphQL\Schema\DataObject\Plugin\DBFieldArgs\DBTextArgs
silverstripe\orm\fieldtype\dbtime:
  graphql_args: SilverStripe\GraphQL\Schema\DataObject\Plugin\DBFieldArgs\DBTimeArgs
silverstripe\orm\fieldtype\dbvarchar:
  casting:
    Initial: Text
    URL: Text
silverstripe\orm\fieldtype\dbyear: []
silverstripe\orm\filters\comparisonfilter: []
silverstripe\orm\filters\endswithfilter: []
silverstripe\orm\filters\exactmatchfilter: []
silverstripe\orm\filters\fulltextfilter: []
silverstripe\orm\filters\greaterthanfilter: []
silverstripe\orm\filters\greaterthanorequalfilter: []
silverstripe\orm\filters\lessthanfilter: []
silverstripe\orm\filters\lessthanorequalfilter: []
silverstripe\orm\filters\partialmatchfilter: []
silverstripe\orm\filters\searchfilter: []
silverstripe\orm\filters\startswithfilter: []
silverstripe\orm\filters\withinrangefilter: []
silverstripe\orm\hierarchy\hierarchy:
  node_threshold_total: 50
  node_threshold_leaf: 250
  hide_from_hierarchy: []
  hide_from_cms_tree: []
  prepopulate_numchildren_cache: true
  non_virtual_fields:
    - _cache_children
silverstripe\orm\hierarchy\markedset: []
silverstripe\orm\queries\sqlassignmentrow: []
silverstripe\orm\queries\sqlconditionalexpression: []
silverstripe\orm\queries\sqldelete: []
silverstripe\orm\queries\sqlexpression: []
silverstripe\orm\queries\sqlinsert: []
silverstripe\orm\queries\sqlselect: []
silverstripe\orm\queries\sqlupdate: []
silverstripe\orm\relateddata\standardrelateddataservice: []
silverstripe\orm\search\fulltextsearchable: []
silverstripe\orm\search\searchcontext: []
silverstripe\orm\uniquekey\uniquekeyservice: []
silverstripe\security\confirmation\form: []
silverstripe\security\confirmation\handler:
  url_handlers:
    $StorageID!/$Action//$ID/$OtherID: $Action
  allowed_actions:
    - index
    - Form
silverstripe\security\confirmation\item: []
silverstripe\security\confirmation\storage: []
silverstripe\security\memberauthenticator\cmsloginhandler:
  allowed_actions:
    - LoginForm
silverstripe\security\memberauthenticator\cmsmemberauthenticator: []
silverstripe\security\memberauthenticator\cmsmemberloginform: []
silverstripe\security\memberauthenticator\changepasswordform: []
silverstripe\security\memberauthenticator\changepasswordhandler:
  allowed_actions:
    - changepassword
    - changePasswordForm
  url_handlers:
    '': changepassword
silverstripe\security\memberauthenticator\cookieauthenticationhandler: []
silverstripe\security\memberauthenticator\loginhandler:
  url_handlers:
    '': login
  allowed_actions:
    - login
    - LoginForm
    - logout
silverstripe\security\memberauthenticator\logouthandler:
  url_handlers:
    '': logout
  allowed_actions:
    - logout
    - LogoutForm
silverstripe\security\memberauthenticator\lostpasswordform: []
silverstripe\security\memberauthenticator\lostpasswordhandler:
  url_handlers:
    passwordsent: passwordsent
    '': lostpassword
  allowed_actions:
    - lostpassword
    - LostPasswordForm
    - passwordsent
silverstripe\security\memberauthenticator\memberauthenticator:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\security\memberauthenticator\memberloginform:
  required_fields:
    - Email
    - Password
silverstripe\security\memberauthenticator\sessionauthenticationhandler: []
silverstripe\security\sudomode\sudomodeservice:
  lifetime_minutes: 45
silverstripe\view\dev\requirementsteststate: []
silverstripe\view\dev\ssviewerteststate: []
silverstripe\view\embed\embedcontainer:
  dependencies:
    embed: '%$Embed\Embed'
silverstripe\view\parsers\htmlcleaner: []
silverstripe\view\parsers\htmlvalue: []
silverstripe\view\parsers\htmldiff:
  differ: null
silverstripe\view\parsers\purifierhtmlcleaner: []
silverstripe\view\parsers\sqlformatter: []
silverstripe\view\parsers\shortcodeparser:
  extensions: []
  unextendable_classes:
    - SilverStripe\View\ViewableData
silverstripe\view\parsers\tidyhtmlcleaner: []
silverstripe\view\parsers\transliterator:
  use_iconv: false
silverstripe\view\parsers\urlsegmentfilter:
  default_use_transliterator: true
  default_replacements:
    '/&/u': '-and-'
    '/&/u': '-and-'
    /\s|\+/u: '-'
    '/[_.]+/u': '-'
    '/[^A-Za-z0-9\-]+/u': ''
    '/[\/\?=#:]+/u': '-'
    '/[\-]{2,}/u': '-'
    '/^[\-]+/u': ''
    '/[\-]+$/u': ''
  default_allow_multibyte: false
silverstripe\view\shortcodes\embedshortcodeprovider: []
silverstripe\i18n\data\sources: []
silverstripe\i18n\messages\yamlreader: []
silverstripe\i18n\messages\yamlwriter: []
silverstripe\i18n\textcollection\parser: []
silverstripe\i18n\textcollection\i18ntextcollector: []
silverstripe\graphql\dev\state\debugschemastate: []
silverstripe\graphql\dev\state\disabletypecachestate: []
silverstripe\graphql\schema\bulkloader\abstractbulkloader: []
silverstripe\graphql\schema\bulkloader\bulkloaderset: []
silverstripe\graphql\schema\bulkloader\collection: []
silverstripe\graphql\schema\bulkloader\extensionloader: []
silverstripe\graphql\schema\bulkloader\filepathloader: []
silverstripe\graphql\schema\bulkloader\inheritanceloader: []
silverstripe\graphql\schema\bulkloader\namespaceloader: []
silverstripe\graphql\schema\bulkloader\registry:
  inst: null
silverstripe\graphql\schema\bulkloader\registrybackend: []
silverstripe\graphql\schema\dataobject\abstracttyperesolver: []
silverstripe\graphql\schema\dataobject\createcreator:
  dependencies:
    FieldAccessor: '%$SilverStripe\GraphQL\Schema\DataObject\FieldAccessor'
silverstripe\graphql\schema\dataobject\dataobjectmodel:
  dependencies:
    FieldAccessor: '%$SilverStripe\GraphQL\Schema\DataObject\FieldAccessor'
silverstripe\graphql\schema\dataobject\deletecreator: []
silverstripe\graphql\schema\dataobject\fieldaccessor:
  allowed_aggregates:
    - min
    - max
    - avg
    - count
    - sum
  field_formatter:
    - SilverStripe\Core\Convert
    - upperCamelToLowerCamel
  __mappingCache: []
silverstripe\graphql\schema\dataobject\inheritancebuilder: []
silverstripe\graphql\schema\dataobject\inheritancechain: []
silverstripe\graphql\schema\dataobject\inheritanceunionbuilder: []
silverstripe\graphql\schema\dataobject\interfacebuilder: []
silverstripe\graphql\schema\dataobject\modelcreator: []
silverstripe\graphql\schema\dataobject\readcreator: []
silverstripe\graphql\schema\dataobject\readonecreator: []
silverstripe\graphql\schema\dataobject\resolver: []
silverstripe\graphql\schema\dataobject\updatecreator:
  dependencies:
    FieldAccessor: '%$SilverStripe\GraphQL\Schema\DataObject\FieldAccessor'
silverstripe\graphql\schema\exception\emptyschemaexception: []
silverstripe\graphql\schema\exception\mutationexception: []
silverstripe\graphql\schema\exception\permissionsexception: []
silverstripe\graphql\schema\exception\resolverfailure: []
silverstripe\graphql\schema\exception\schemabuilderexception: []
silverstripe\graphql\schema\exception\schemanotfoundexception: []
silverstripe\graphql\schema\field\argument: []
silverstripe\graphql\schema\field\field: []
silverstripe\graphql\schema\field\modelfield: []
silverstripe\graphql\schema\field\modelmutation: []
silverstripe\graphql\schema\field\modelquery: []
silverstripe\graphql\schema\field\mutation: []
silverstripe\graphql\schema\field\query: []
silverstripe\graphql\schema\plugin\abstractqueryfilterplugin:
  field_name: filter
silverstripe\graphql\schema\plugin\abstractquerysortplugin:
  field_name: sort
silverstripe\graphql\schema\plugin\paginationplugin:
  default_limit: 100
  max_limit: 100
  resolver: null
silverstripe\graphql\schema\plugin\sortplugin:
  field_name: sort
  resolver:
    - SilverStripe\GraphQL\Schema\Plugin\SortPlugin
    - sort
silverstripe\graphql\schema\registry\pluginregistry: []
silverstripe\graphql\schema\resolver\composedresolver: []
silverstripe\graphql\schema\resolver\defaultresolver: []
silverstripe\graphql\schema\resolver\defaultresolverstrategy: []
silverstripe\graphql\schema\resolver\encodedresolver: []
silverstripe\graphql\schema\resolver\jsonresolver: []
silverstripe\graphql\schema\resolver\resolverreference: []
silverstripe\graphql\schema\services\nestedinputbuilder:
  prefix: ''
silverstripe\graphql\schema\services\schematranscribehandler: []
silverstripe\graphql\schema\services\schematranscriber: []
silverstripe\graphql\schema\storage\abstracttyperegistry:
  rebuild_on_missing_schema_file: true
  rebuild_on_missing_schema_file_minimum_interval: 900
silverstripe\graphql\schema\storage\codegenerationstore:
  schemaFilename: __graphql-schema.php
  configFilename: __schema-config.php
  namespacePrefix: SSGraphQLSchema_
  dirName: .graphql-generated
  dependencies:
    Obfuscator: '%$SilverStripe\GraphQL\Schema\Storage\NameObfuscator'
silverstripe\graphql\schema\storage\codegenerationstorecreator: []
silverstripe\graphql\schema\storage\encoder: []
silverstripe\graphql\schema\storage\hashnameobfuscator: []
silverstripe\graphql\schema\storage\hybridobfuscator: []
silverstripe\graphql\schema\storage\naivenameobfuscator: []
silverstripe\graphql\schema\type\encodedtype:
  typeMap:
    ListType: listOf
    NonNullType: nonNull
silverstripe\graphql\schema\type\enum: []
silverstripe\graphql\schema\type\inputtype: []
silverstripe\graphql\schema\type\interfacetype: []
silverstripe\graphql\schema\type\modelinterfacetype: []
silverstripe\graphql\schema\type\modeltype: []
silverstripe\graphql\schema\type\modeluniontype: []
silverstripe\graphql\schema\type\scalar: []
silverstripe\graphql\schema\type\type: []
silverstripe\graphql\schema\type\typereference: []
silverstripe\graphql\schema\type\uniontype: []
silverstripe\versioned\graphql\operations\abstractpublishoperationcreator: []
silverstripe\versioned\graphql\operations\copytostagecreator:
  default_plugins: []
silverstripe\versioned\graphql\operations\publishcreator: []
silverstripe\versioned\graphql\operations\rollbackcreator:
  default_plugins: []
silverstripe\versioned\graphql\operations\unpublishcreator: []
silverstripe\versioned\graphql\plugins\unpublishondelete: []
silverstripe\versioned\graphql\plugins\versioneddataobject: []
silverstripe\versioned\graphql\plugins\versionedread: []
silverstripe\graphql\resolvers\versionfilters: []
silverstripe\versioned\graphql\resolvers\versionedresolver:
  priority: 1
silverstripe\versionedadmin\forms\gridfield\gridfieldfilerestoreaction: []
webbuildersgroup\addtocampaigns\extensions\campaignablegridfield: []
silverstripe\control\middleware\confirmationmiddleware\ajaxbypass: []
silverstripe\control\middleware\confirmationmiddleware\clibypass: []
silverstripe\control\middleware\confirmationmiddleware\environmentbypass: []
silverstripe\control\middleware\confirmationmiddleware\getparameter: []
silverstripe\control\middleware\confirmationmiddleware\httpmethodbypass: []
silverstripe\control\middleware\confirmationmiddleware\url: []
silverstripe\control\middleware\confirmationmiddleware\urlpathstartswith: []
silverstripe\control\middleware\confirmationmiddleware\urlpathstartswithcaseinsensitive: []
silverstripe\core\config\middleware\extensionmiddleware: []
silverstripe\core\config\middleware\inheritancemiddleware: []
silverstripe\forms\gridfield\formaction\abstractrequestawarestore: []
silverstripe\forms\gridfield\formaction\attributestore: []
silverstripe\forms\gridfield\formaction\sessionstore: []
silverstripe\i18n\data\intl\intllocales:
  locales:
    aa_DJ: 'Afar (Djibouti)'
    ab_GE: 'Abkhazian (Georgia)'
    abr_GH: 'Abron (Ghana)'
    ace_ID: 'Achinese (Indonesia)'
    ady_RU: 'Adyghe (Russia)'
    af_ZA: 'Afrikaans (South Africa)'
    ak_GH: 'Akan (Ghana)'
    am_ET: 'Amharic (Ethiopia)'
    ar_AE: 'Arabic (United Arab Emirates)'
    ar_BH: 'Arabic (Bahrain)'
    ar_DZ: 'Arabic (Algeria)'
    ar_EG: 'Arabic (Egypt)'
    ar_EH: 'Arabic (Western Sahara)'
    ar_IQ: 'Arabic (Iraq)'
    ar_JO: 'Arabic (Jordan)'
    ar_KW: 'Arabic (Kuwait)'
    ar_LB: 'Arabic (Lebanon)'
    ar_LY: 'Arabic (Libya)'
    ar_MA: 'Arabic (Morocco)'
    ar_MR: 'Arabic (Mauritania)'
    ar_OM: 'Arabic (Oman)'
    ar_PS: 'Arabic (Palestinian Territory)'
    ar_QA: 'Arabic (Qatar)'
    ar_SA: 'Arabic (Saudi Arabia)'
    ar_SD: 'Arabic (Sudan)'
    ar_SY: 'Arabic (Syria)'
    ar_TD: 'Arabic (Chad)'
    ar_TN: 'Arabic (Tunisia)'
    ar_YE: 'Arabic (Yemen)'
    as_IN: 'Assamese (India)'
    ast_ES: 'Asturian (Spain)'
    auv_FR: 'Auvergnat (France)'
    av_RU: 'Avaric (Russia)'
    awa_IN: 'Awadhi (India)'
    ay_BO: 'Aymara (Bolivia)'
    ay_PE: 'Aymara (Peru)'
    az_AZ: 'Azerbaijani (Azerbaijan)'
    az_IR: 'Azerbaijani (Iran)'
    ba_RU: 'Bashkir (Russia)'
    ban_ID: 'Balinese (Indonesia)'
    bcc_PK: 'Balochi, Southern (Pakistan)'
    bcl_PH: 'Bicolano, Central (Philippines)'
    be_BY: 'Belarusian (Belarus)'
    bew_ID: 'Betawi (Indonesia)'
    bg_BG: 'Bulgarian (Bulgaria)'
    bgc_IN: 'Haryanvi (India)'
    bgn_PK: 'Balochi, Western (Pakistan)'
    bgp_PK: 'Balochi, Easter (Pakistan)'
    bhb_IN: 'Bhili (India)'
    bhi_IN: 'Bhilali (India)'
    bhk_PH: 'Bicolano, Albay (Philippines)'
    bho_IN: 'Bhojpuri (India)'
    bho_MU: 'Bhojpuri (Mauritius)'
    bho_NP: 'Bhojpuri (Nepal)'
    bi_VU: 'Bislama (Vanuatu)'
    bjj_IN: 'Kanauji (India)'
    bjn_ID: 'Banjar (Indonesia)'
    bm_ML: 'Bambara (Mali)'
    bn_BD: 'Bengali (Bangladesh)'
    bn_IN: 'Bengali (India)'
    bo_CN: 'Tibetan (China)'
    bqi_IR: 'Bakhtiari (Iran)'
    brh_PK: 'Brahui (Pakistan)'
    bs_BA: 'Bosnian (Bosnia and Herzegovina)'
    btk_ID: 'Batak (Indonesia)'
    buc_YT: 'Bushi (Mayotte)'
    bug_ID: 'Buginese (Indonesia)'
    ca_AD: 'Catalan (Andorra)'
    ca_ES: 'Catalan (Spain)'
    ce_RU: 'Chechen (Russia)'
    ceb_PH: 'Cebuano (Philippines)'
    cgg_UG: 'Chiga (Uganda)'
    ch_GU: 'Chamorro (Guam)'
    chk_FM: 'Chuukese (Micronesia)'
    crk_CA: 'Cree, Plains (Canada)'
    cs_CZ: 'Czech (Czech Republic)'
    cwd_CA: 'Cree, Woods (Canada)'
    cy_GB: 'Welsh (United Kingdom)'
    da_DK: 'Danish (Denmark)'
    da_GL: 'Danish (Greenland)'
    dcc_IN: 'Deccan (India)'
    de_AT: 'German (Austria)'
    de_BE: 'German (Belgium)'
    de_CH: 'German (Switzerland)'
    de_DE: 'German (Germany)'
    de_LI: 'German (Liechtenstein)'
    de_LU: 'German (Luxembourg)'
    dgo_IN: 'Dogri (India)'
    dhd_IN: 'Dhundari (India)'
    diq_TR: 'Dimli (Turkey)'
    dje_NE: 'Zarma (Niger)'
    dv_MV: 'Divehi (Maldives)'
    dz_BT: 'Dzongkha (Bhutan)'
    ee_GH: 'Ewe (Ghana)'
    el_CY: 'Greek (Cyprus)'
    el_GR: 'Greek (Greece)'
    en_AS: 'English (American Samoa)'
    en_AU: 'English (Australia)'
    en_BM: 'English (Bermuda)'
    en_BS: 'English (Bahamas)'
    en_CA: 'English (Canada)'
    en_DE: 'English (Germany)'
    en_ES: 'English (Spain)'
    en_FR: 'English (France)'
    en_GB: 'English (United Kingdom)'
    en_HK: 'English (Hong Kong SAR China)'
    en_IE: 'English (Ireland)'
    en_IN: 'English (India)'
    en_IT: 'English (Italy)'
    en_JM: 'English (Jamaica)'
    en_KE: 'English (Kenya)'
    en_LR: 'English (Liberia)'
    en_MM: 'English (Myanmar)'
    en_MW: 'English (Malawi)'
    en_MY: 'English (Malaysia)'
    en_NL: 'English (Netherlands)'
    en_NZ: 'English (New Zealand)'
    en_PH: 'English (Philippines)'
    en_SG: 'English (Singapore)'
    en_TT: 'English (Trinidad and Tobago)'
    en_US: 'English (United States)'
    en_ZA: 'English (South Africa)'
    eo_XX: Esperanto
    es_419: 'Spanish (Latin America)'
    es_AR: 'Spanish (Argentina)'
    es_BO: 'Spanish (Bolivia)'
    es_CL: 'Spanish (Chile)'
    es_CO: 'Spanish (Colombia)'
    es_CR: 'Spanish (Costa Rica)'
    es_CU: 'Spanish (Cuba)'
    es_DO: 'Spanish (Dominican Republic)'
    es_EC: 'Spanish (Ecuador)'
    es_ES: 'Spanish (Spain)'
    es_GQ: 'Spanish (Equatorial Guinea)'
    es_GT: 'Spanish (Guatemala)'
    es_HN: 'Spanish (Honduras)'
    es_MX: 'Spanish (Mexico)'
    es_NI: 'Spanish (Nicaragua)'
    es_PA: 'Spanish (Panama)'
    es_PE: 'Spanish (Peru)'
    es_PH: 'Spanish (Philippines)'
    es_PR: 'Spanish (Puerto Rico)'
    es_PY: 'Spanish (Paraguay)'
    es_SV: 'Spanish (El Salvador)'
    es_US: 'Spanish (United States)'
    es_UY: 'Spanish (Uruguay)'
    es_VE: 'Spanish (Venezuela)'
    et_EE: 'Estonian (Estonia)'
    eu_ES: 'Basque (Spain)'
    fa_AF: 'Persian (Afghanistan)'
    fa_IR: 'Persian (Iran)'
    fa_PK: 'Persian (Pakistan)'
    fan_GQ: 'Fang (Equatorial Guinea)'
    fi_FI: 'Finnish (Finland)'
    fi_SE: 'Finnish (Sweden)'
    fil_PH: 'Filipino (Philippines)'
    fj_FJ: 'Fijian (Fiji)'
    fo_FO: 'Faroese (Faroe Islands)'
    fon_BJ: 'Fon (Benin)'
    fr_002: 'French (Africa)'
    fr_BE: 'French (Belgium)'
    fr_CA: 'French (Canada)'
    fr_CH: 'French (Switzerland)'
    fr_DZ: 'French (Algeria)'
    fr_FR: 'French (France)'
    fr_GF: 'French (French Guiana)'
    fr_GP: 'French (Guadeloupe)'
    fr_HT: 'French (Haiti)'
    fr_KM: 'French (Comoros)'
    fr_MA: 'French (Morocco)'
    fr_MQ: 'French (Martinique)'
    fr_MU: 'French (Mauritius)'
    fr_NC: 'French (New Caledonia)'
    fr_PF: 'French (French Polynesia)'
    fr_PM: 'French (Saint Pierre and Miquelon)'
    fr_RE: 'French (Reunion)'
    fr_SC: 'French (Seychelles)'
    fr_SN: 'French (Senegal)'
    fr_US: 'French (United States)'
    fuv_NG: 'Fulfulde (Nigeria)'
    ga_GB: 'Irish (United Kingdom)'
    ga_IE: 'Irish (Ireland)'
    gaa_GH: 'Ga (Ghana)'
    gbm_IN: 'Garhwali (India)'
    gcr_GF: 'Guianese Creole French (French Guiana)'
    gd_GB: 'Scottish Gaelic (United Kingdom)'
    gil_KI: 'Gilbertese (Kiribati)'
    gl_ES: 'Galician (Spain)'
    glk_IR: 'Gilaki (Iran)'
    gn_PY: 'Guarani (Paraguay)'
    gno_IN: 'Gondi, Northern (India)'
    gsw_CH: 'Swiss German (Switzerland)'
    gsw_LI: 'Swiss German (Liechtenstein)'
    gu_IN: 'Gujarati (India)'
    guz_KE: 'Gusii (Kenya)'
    ha_NE: 'Hausa (Niger)'
    ha_NG: 'Hausa (Nigeria)'
    haw_US: 'Hawaiian (United States)'
    haz_AF: 'Hazaragi (Afghanistan)'
    he_IL: 'Hebrew (Israel)'
    hi_IN: 'Hindi (India)'
    hil_PH: 'Hiligaynon (Philippines)'
    hne_IN: 'Chhattisgarhi (India)'
    hno_PK: 'Hindko, Northern (Pakistan)'
    hoc_IN: 'Ho (India)'
    hr_AT: 'Croatian (Austria)'
    hr_BA: 'Croatian (Bosnia and Herzegovina)'
    hr_HR: 'Croatian (Croatia)'
    ht_HT: 'Haitian (Haiti)'
    hu_AT: 'Hungarian (Austria)'
    hu_HU: 'Hungarian (Hungary)'
    hu_RO: 'Hungarian (Romania)'
    hu_RS: 'Hungarian (Serbia)'
    hy_AM: 'Armenian (Armenia)'
    id_ID: 'Indonesian (Indonesia)'
    ig_NG: 'Igbo (Nigeria)'
    ilo_PH: 'Iloko (Philippines)'
    inh_RU: 'Ingush (Russia)'
    is_IS: 'Icelandic (Iceland)'
    it_CH: 'Italian (Switzerland)'
    it_FR: 'Italian (France)'
    it_HR: 'Italian (Croatia)'
    it_IT: 'Italian (Italy)'
    it_SM: 'Italian (San Marino)'
    it_US: 'Italian (United States)'
    iu_CA: 'Inuktitut (Canada)'
    ja_JP: 'Japanese (Japan)'
    jv_ID: 'Javanese (Indonesia)'
    ka_GE: 'Georgian (Georgia)'
    kam_KE: 'Kamba (Kenya)'
    kbd_RU: 'Kabardian (Russia)'
    kfy_IN: 'Kumauni (India)'
    kha_IN: 'Khasi (India)'
    khn_IN: 'Khandesi (India)'
    ki_KE: 'Kikuyu (Kenya)'
    kj_NA: 'Kuanyama (Namibia)'
    kk_CN: 'Kazakh (China)'
    kk_KZ: 'Kazakh (Kazakhstan)'
    kl_DK: 'Kalaallisut (Denmark)'
    kl_GL: 'Kalaallisut (Greenland)'
    kln_KE: 'Kalenjin (Kenya)'
    km_KH: 'Khmer (Cambodia)'
    kn_IN: 'Kannada (India)'
    ko_KR: 'Korean (Korea)'
    koi_RU: 'Komi-Permyak (Russia)'
    kok_IN: 'Konkani (India)'
    kos_FM: 'Kosraean (Micronesia)'
    kpv_RU: 'Komi-Zyrian (Russia)'
    krc_RU: 'Karachay-Balkar (Russia)'
    kru_IN: 'Kurukh (India)'
    ks_IN: 'Kashmiri (India)'
    ku_IQ: 'Kurdish (Iraq)'
    ku_IR: 'Kurdish (Iran)'
    ku_SY: 'Kurdish (Syria)'
    ku_TR: 'Kurdish (Turkey)'
    kum_RU: 'Kumyk (Russia)'
    kxm_TH: 'Khmer, Northern (Thailand)'
    ky_KG: 'Kirghiz (Kyrgyzstan)'
    la_VA: 'Latin (Vatican)'
    lah_PK: 'Lahnda (Pakistan)'
    lb_LU: 'Luxembourgish (Luxembourg)'
    lbe_RU: 'Lak (Russia)'
    lc_XX: LOLCAT
    lez_RU: 'Lezghian (Russia)'
    lg_UG: 'Ganda (Uganda)'
    lij_IT: 'Ligurian (Italy)'
    lij_MC: 'Ligurian (Monaco)'
    ljp_ID: 'Lampung (Indonesia)'
    lmn_IN: 'Lambadi (India)'
    ln_CD: 'Lingala (Congo - Kinshasa)'
    ln_CG: 'Lingala (Congo - Brazzaville)'
    lo_LA: 'Lao (Laos)'
    lrc_IR: 'Luri, Northern (Iran)'
    lt_LT: 'Lithuanian (Lithuania)'
    luo_KE: 'Luo (Kenya)'
    luy_KE: 'Luyia (Kenya)'
    lv_LV: 'Latvian (Latvia)'
    mad_ID: 'Madurese (Indonesia)'
    mai_IN: 'Maithili (India)'
    mai_NP: 'Maithili (Nepal)'
    mak_ID: 'Makasar (Indonesia)'
    mdf_RU: 'Moksha (Russia)'
    mdh_PH: 'Maguindanao (Philippines)'
    mer_KE: 'Meru (Kenya)'
    mfa_TH: 'Malay, Pattani (Thailand)'
    mfe_MU: 'Morisyen (Mauritius)'
    mg_MG: 'Malagasy (Madagascar)'
    mh_MH: 'Marshallese (Marshall Islands)'
    mi_NZ: 'te reo Māori (New Zealand)'
    min_ID: 'Minangkabau (Indonesia)'
    mk_MK: 'Macedonian (Macedonia)'
    ml_IN: 'Malayalam (India)'
    mn_CN: 'Mongolian (China)'
    mn_MN: 'Mongolian (Mongolia)'
    mni_IN: 'Manipuri (India)'
    mr_IN: 'Marathi (India)'
    ms_BN: 'Malay (Brunei)'
    ms_CC: 'Malay (Cocos Islands)'
    ms_ID: 'Malay (Indonesia)'
    ms_MY: 'Malay (Malaysia)'
    ms_SG: 'Malay (Singapore)'
    mt_MT: 'Maltese (Malta)'
    mtr_IN: 'Mewari (India)'
    mup_IN: 'Malvi (India)'
    muw_IN: 'Mundari (India)'
    my_MM: 'Burmese (Myanmar)'
    myv_RU: 'Erzya (Russia)'
    na_NR: 'Nauru (Nauru)'
    nb_NO: 'Norwegian Bokmal (Norway)'
    nb_SJ: 'Norwegian Bokmal (Svalbard and Jan Mayen)'
    nd_ZW: 'North Ndebele (Zimbabwe)'
    ndc_MZ: 'Ndau (Mozambique)'
    ne_IN: 'Nepali (India)'
    ne_NP: 'Nepali (Nepal)'
    ng_NA: 'Ndonga (Namibia)'
    ngl_MZ: 'Lomwe (Mozambique)'
    niu_NU: 'Niuean (Niue)'
    nl_AN: 'Dutch (Netherlands Antilles)'
    nl_AW: 'Dutch (Aruba)'
    nl_BE: 'Dutch (Belgium)'
    nl_NL: 'Dutch (Netherlands)'
    nl_SR: 'Dutch (Suriname)'
    nn_NO: 'Norwegian Nynorsk (Norway)'
    nod_TH: 'Thai, Northern (Thailand)'
    noe_IN: 'Nimadi (India)'
    nso_ZA: 'Northern Sotho (South Africa)'
    ny_MW: 'Nyanja (Malawi)'
    ny_ZM: 'Nyanja (Zambia)'
    nyn_UG: 'Nyankole (Uganda)'
    om_ET: 'Oromo (Ethiopia)'
    or_IN: 'Oriya (India)'
    pa_IN: 'Punjabi (India)'
    pag_PH: 'Pangasinan (Philippines)'
    pap_AN: 'Papiamento (Netherlands Antilles)'
    pap_AW: 'Papiamento (Aruba)'
    pau_PW: 'Palauan (Palau)'
    pl_PL: 'Polish (Poland)'
    pl_UA: 'Polish (Ukraine)'
    pon_FM: 'Pohnpeian (Micronesia)'
    ps_AF: 'Pashto (Afghanistan)'
    ps_PK: 'Pashto (Pakistan)'
    pt_AO: 'Portuguese (Angola)'
    pt_BR: 'Portuguese (Brazil)'
    pt_CV: 'Portuguese (Cape Verde)'
    pt_GW: 'Portuguese (Guinea-Bissau)'
    pt_MZ: 'Portuguese (Mozambique)'
    pt_PT: 'Portuguese (Portugal)'
    pt_ST: 'Portuguese (Sao Tome and Principe)'
    pt_TL: 'Portuguese (East Timor)'
    qu_BO: 'Quechua (Bolivia)'
    qu_PE: 'Quechua (Peru)'
    rcf_RE: 'R�union Creole French (Reunion)'
    rej_ID: 'Rejang (Indonesia)'
    rif_MA: 'Tarifit (Morocco)'
    rjb_IN: 'Rajbanshi (India)'
    rm_CH: 'Rhaeto-Romance (Switzerland)'
    rmt_IR: 'Domari (Iran)'
    rn_BI: 'Rundi (Burundi)'
    ro_MD: 'Romanian (Moldova)'
    ro_RO: 'Romanian (Romania)'
    ro_RS: 'Romanian (Serbia)'
    ru_BY: 'Russian (Belarus)'
    ru_KG: 'Russian (Kyrgyzstan)'
    ru_KZ: 'Russian (Kazakhstan)'
    ru_RU: 'Russian (Russia)'
    ru_SJ: 'Russian (Svalbard and Jan Mayen)'
    ru_UA: 'Russian (Ukraine)'
    rw_RW: 'Kinyarwanda (Rwanda)'
    sa_IN: 'Sanskrit (India)'
    sah_RU: 'Yakut (Russia)'
    sas_ID: 'Sasak (Indonesia)'
    sat_IN: 'Santali (India)'
    sck_IN: 'Sadri (India)'
    sco_GB: 'Scots (United Kingdom)'
    sco_SCO: Scots
    sd_IN: 'Sindhi (India)'
    sd_PK: 'Sindhi (Pakistan)'
    se_NO: 'Northern Sami (Norway)'
    sg_CF: 'Sango (Central African Republic)'
    si_LK: 'Sinhalese (Sri Lanka)'
    sid_ET: 'Sidamo (Ethiopia)'
    sk_RS: 'Slovak (Serbia)'
    sk_SK: 'Slovak (Slovakia)'
    sl_AT: 'Slovenian (Austria)'
    sl_SI: 'Slovenian (Slovenia)'
    sm_AS: 'Samoan (American Samoa)'
    sm_WS: 'Samoan (Samoa)'
    sn_ZW: 'Shona (Zimbabwe)'
    so_DJ: 'Somali (Djibouti)'
    so_ET: 'Somali (Ethiopia)'
    so_SO: 'Somali (Somalia)'
    sou_TH: 'Thai, Southern (Thailand)'
    sq_AL: 'Albanian (Albania)'
    sr_BA: 'Serbian (Bosnia and Herzegovina)'
    sr_ME: 'Serbian (Montenegro)'
    sr_RS: 'Serbian (Serbia)'
    ss_SZ: 'Swati (Swaziland)'
    ss_ZA: 'Swati (South Africa)'
    st_LS: 'Southern Sotho (Lesotho)'
    st_ZA: 'Southern Sotho (South Africa)'
    su_ID: 'Sundanese (Indonesia)'
    sv_AX: 'Swedish (Aland Islands)'
    sv_FI: 'Swedish (Finland)'
    sv_SE: 'Swedish (Sweden)'
    sw_KE: 'Swahili (Kenya)'
    sw_SO: 'Swahili (Somalia)'
    sw_TZ: 'Swahili (Tanzania)'
    sw_UG: 'Swahili (Uganda)'
    swb_KM: 'Comorian (Comoros)'
    swb_YT: 'Comorian (Mayotte)'
    swv_IN: 'Shekhawati (India)'
    ta_IN: 'Tamil (India)'
    ta_LK: 'Tamil (Sri Lanka)'
    ta_MY: 'Tamil (Malaysia)'
    ta_SG: 'Tamil (Singapore)'
    tcy_IN: 'Tulu (India)'
    te_IN: 'Telugu (India)'
    tet_TL: 'Tetum (East Timor)'
    tg_TJ: 'Tajik (Tajikistan)'
    th_TH: 'Thai (Thailand)'
    ti_ER: 'Tigrinya (Eritrea)'
    ti_ET: 'Tigrinya (Ethiopia)'
    tk_IR: 'Turkmen (Iran)'
    tk_TM: 'Turkmen (Turkmenistan)'
    tkl_TK: 'Tokelau (Tokelau)'
    tl_PH: 'Tagalog (Philippines)'
    tl_US: 'Tagalog (United States)'
    tn_BW: 'Tswana (Botswana)'
    tn_ZA: 'Tswana (South Africa)'
    to_TO: 'Tonga (Tonga)'
    tr_CY: 'Turkish (Cyprus)'
    tr_DE: 'Turkish (Germany)'
    tr_MK: 'Turkish (Macedonia)'
    tr_TR: 'Turkish (Turkey)'
    ts_MZ: 'Tsonga (Mozambique)'
    ts_ZA: 'Tsonga (South Africa)'
    tsg_PH: 'Tausug (Philippines)'
    tt_RU: 'Tatar (Russia)'
    tts_TH: 'Thai, Northeastern (Thailand)'
    tvl_TV: 'Tuvalu (Tuvalu)'
    tw_GH: 'Twi (Ghana)'
    ty_PF: 'Tahitian (French Polynesia)'
    tyv_RU: 'Tuvinian (Russia)'
    tzm_MA: 'Tamazight, Central Atlas (Morocco)'
    udm_RU: 'Udmurt (Russia)'
    ug_CN: 'Uighur (China)'
    uk_UA: 'Ukrainian (Ukraine)'
    uli_FM: 'Ulithian (Micronesia)'
    ur_IN: 'Urdu (India)'
    ur_PK: 'Urdu (Pakistan)'
    uz_AF: 'Uzbek (Afghanistan)'
    uz_UZ: 'Uzbek (Uzbekistan)'
    ve_ZA: 'Venda (South Africa)'
    vi_US: 'Vietnamese (United States)'
    vi_VN: 'Vietnamese (Vietnam)'
    vmw_MZ: 'Waddar (Mozambique)'
    wal_ET: 'Walamo (Ethiopia)'
    war_PH: 'Waray (Philippines)'
    wbq_IN: 'Waddar (India)'
    wbr_IN: 'Wagdi (India)'
    wo_MR: 'Wolof (Mauritania)'
    wo_SN: 'Wolof (Senegal)'
    wtm_IN: 'Mewati (India)'
    xh_ZA: 'Xhosa (South Africa)'
    xnr_IN: 'Kangri (India)'
    xog_UG: 'Soga (Uganda)'
    yap_FM: 'Yapese (Micronesia)'
    yo_NG: 'Yoruba (Nigeria)'
    za_CN: 'Zhuang (China)'
    zh_CN: 'Chinese (China)'
    zh_HK: 'Chinese (Hong Kong SAR China)'
    zh_MO: 'Chinese (Macao SAR China)'
    zh_SG: 'Chinese (Singapore)'
    zh_TW: 'Chinese (Taiwan)'
    zh_US: 'Chinese (United States)'
    zh_cmn: 'Chinese (Mandarin)'
    zh_yue: 'Chinese (Cantonese)'
    zu_ZA: 'Zulu (South Africa)'
  languages:
    af: Afrikaans
    sq: Albanian
    ar: Arabic
    eu: Basque
    be: Belarusian
    bn: Bengali
    bg: Bulgarian
    ca: Catalan
    zh: Chinese
    hr: Croatian
    cs: Czech
    cy: Welsh
    da: Danish
    nl: Dutch
    en: English
    eo: Esperanto
    et: Estonian
    fo: Faroese
    fi: Finnish
    fr: French
    gd: Gaelic
    gl: Galician
    de: German
    el: Greek
    gu: Gujarati
    ha: Hausa
    he: Hebrew
    hi: Hindi
    hu: Hungarian
    is: Icelandic
    io: Ido
    id: Indonesian
    ga: Irish
    it: Italian
    ja: Japanese
    jv: Javanese
    ko: Korean
    ku: Kurdish
    lv: Latvian
    lt: Lithuanian
    lmo: Lombard
    mk: Macedonian
    mi: 'te reo Māori'
    ms: Malay
    mt: Maltese
    mr: Marathi
    ne: Nepali
    nb: Norwegian
    om: Oromo
    fa: Persian
    pl: Polish
    pt: Portuguese
    pa: Punjabi
    qu: Quechua
    rm: Romansh
    ro: Romanian
    ru: Russian
    sco: Scots
    sr: Serbian
    sk: Slovak
    sl: Slovenian
    es: Spanish
    sv: Swedish
    tl: Tagalog
    ta: Tamil
    te: Telugu
    to: Tonga
    ts: Tsonga
    tn: Tswana
    tr: Turkish
    tk: Turkmen
    tw: Twi
    uk: Ukrainian
    ur: Urdu
    uz: Uzbek
    ve: Venda
    vi: Vietnamese
    wa: Walloon
    wo: Wolof
    xh: Xhosa
    yi: Yiddish
    zu: Zulu
  text_direction:
    ar: rtl
    dv: rtl
    fa: rtl
    ha_Arab: rtl
    he: rtl
    ku: rtl
    pa_Arab: rtl
    ps: rtl
    syr: rtl
    ug: rtl
    ur: rtl
    uz_Arab: rtl
  likely_subtags:
    aa: aa_ET
    ab: ab_GE
    ady: ady_RU
    af: af_ZA
    ak: ak_GH
    am: am_ET
    ar: ar_EG
    as: as_IN
    ast: ast_ES
    av: av_RU
    ay: ay_BO
    az: az_AZ
    az_Cyrl: az_AZ
    az_Arab: az_IR
    az_IR: az_IR
    ba: ba_RU
    be: be_BY
    bg: bg_BG
    bi: bi_VU
    bn: bn_BD
    bo: bo_CN
    bs: bs_BA
    ca: ca_ES
    ce: ce_RU
    ceb: ceb_PH
    ch: ch_GU
    chk: chk_FM
    crk: crk_CA
    cs: cs_CZ
    cwd: cwd_CA
    cy: cy_GB
    da: da_DK
    de: de_DE
    dv: dv_MV
    dz: dz_BT
    ee: ee_GH
    efi: efi_NG
    el: el_GR
    en: en_US
    es: es_ES
    et: et_EE
    eu: eu_ES
    eo: eo_XX
    fa: fa_IR
    fi: fi_FI
    fil: fil_PH
    fj: fj_FJ
    fo: fo_FO
    fr: fr_FR
    fur: fur_IT
    fy: fy_NL
    ga: ga_IE
    gaa: gaa_GH
    gd: gd_GB
    gil: gil_KI
    gl: gl_ES
    gn: gn_PY
    gu: gu_IN
    ha: ha_NG
    ha_Arab: ha_SD
    ha_SD: ha_SD
    haw: haw_US
    he: he_IL
    hi: hi_IN
    hil: hil_PH
    ho: ho_PG
    hr: hr_HR
    ht: ht_HT
    hu: hu_HU
    hy: hy_AM
    id: id_ID
    ig: ig_NG
    ii: ii_CN
    ilo: ilo_PH
    inh: inh_RU
    is: is_IS
    it: it_IT
    iu: iu_CA
    ja: ja_JP
    jv: jv_ID
    ka: ka_GE
    kaj: kaj_NG
    kam: kam_KE
    kbd: kbd_RU
    kha: kha_IN
    kk: kk_KZ
    kl: kl_GL
    km: km_KH
    kn: kn_IN
    ko: ko_KR
    koi: koi_RU
    kok: kok_IN
    kos: kos_FM
    kpe: kpe_LR
    kpv: kpv_RU
    krc: krc_RU
    ks: ks_IN
    ku: ku_IQ
    ku_Latn: ku_TR
    ku_TR: ku_TR
    kum: kum_RU
    kxm: kxm_TH
    ky: ky_KG
    la: la_VA
    lah: lah_PK
    lb: lb_LU
    lbe: lbe_RU
    lez: lez_RU
    ln: ln_CD
    lo: lo_LA
    lt: lt_LT
    lv: lv_LV
    mai: mai_IN
    mdf: mdf_RU
    mdh: mdh_PH
    mg: mg_MG
    mh: mh_MH
    mi: mi_NZ
    mk: mk_MK
    ml: ml_IN
    mn: mn_MN
    mn_CN: mn_CN
    mn_Mong: mn_CN
    mr: mr_IN
    ms: ms_MY
    mt: mt_MT
    my: my_MM
    myv: myv_RU
    na: na_NR
    nb: nb_NO
    ne: ne_NP
    niu: niu_NU
    nl: nl_NL
    nn: nn_NO
    nr: nr_ZA
    nso: nso_ZA
    ny: ny_MW
    om: om_ET
    or: or_IN
    os: os_GE
    pa: pa_IN
    pa_Arab: pa_PK
    pa_PK: pa_PK
    pag: pag_PH
    pap: pap_AN
    pau: pau_PW
    pl: pl_PL
    pon: pon_FM
    ps: ps_AF
    pt: pt_PT
    qu: qu_PE
    rm: rm_CH
    rn: rn_BI
    ro: ro_RO
    ru: ru_RU
    rw: rw_RW
    sa: sa_IN
    sah: sah_RU
    sat: sat_IN
    sd: sd_IN
    se: se_NO
    sg: sg_CF
    si: si_LK
    sid: sid_ET
    sk: sk_SK
    sl: sl_SI
    sm: sm_WS
    sn: sn_ZW
    so: so_SO
    sq: sq_AL
    sr: sr_RS
    ss: ss_ZA
    st: st_ZA
    su: su_ID
    sv: sv_SE
    sw: sw_TZ
    swb: swb_KM
    ta: ta_IN
    te: te_IN
    tet: tet_TL
    tg: tg_TJ
    th: th_TH
    ti: ti_ET
    tig: tig_ER
    tk: tk_TM
    tkl: tkl_TK
    tl: tl_PH
    tn: tn_ZA
    to: to_TO
    tpi: tpi_PG
    tr: tr_TR
    trv: trv_TW
    ts: ts_ZA
    tsg: tsg_PH
    tt: tt_RU
    tts: tts_TH
    tvl: tvl_TV
    tw: tw_GH
    ty: ty_PF
    tyv: tyv_RU
    udm: udm_RU
    ug: ug_CN
    uk: uk_UA
    uli: uli_FM
    und: en_US
    und_AD: ca_AD
    und_AE: ar_AE
    und_AF: fa_AF
    und_AL: sq_AL
    und_AM: hy_AM
    und_AN: pap_AN
    und_AO: pt_AO
    und_AR: es_AR
    und_AS: sm_AS
    und_AT: de_AT
    und_AW: nl_AW
    und_AX: sv_AX
    und_AZ: az_AZ
    und_Arab: ar_EG
    und_Arab_CN: ug_CN
    und_Arab_DJ: ar_DJ
    und_Arab_ER: ar_ER
    und_Arab_IL: ar_IL
    und_Arab_IN: ur_IN
    und_Arab_PK: ur_PK
    und_Armn: hy_AM
    und_BA: bs_BA
    und_BD: bn_BD
    und_BE: nl_BE
    und_BF: fr_BF
    und_BG: bg_BG
    und_BH: ar_BH
    und_BI: rn_BI
    und_BJ: fr_BJ
    und_BL: fr_BL
    und_BN: ms_BN
    und_BO: es_BO
    und_BR: pt_BR
    und_BT: dz_BT
    und_BY: be_BY
    und_Beng: bn_BD
    und_CD: fr_CD
    und_CF: sg_CF
    und_CG: ln_CG
    und_CH: de_CH
    und_CI: fr_CI
    und_CL: es_CL
    und_CM: fr_CM
    und_CN: zh_CN
    und_CO: es_CO
    und_CR: es_CR
    und_CU: es_CU
    und_CV: pt_CV
    und_CY: el_CY
    und_CZ: cs_CZ
    und_Cans: cwd_CA
    und_Cyrl: ru_RU
    und_Cyrl_BA: sr_BA
    und_Cyrl_GE: ab_GE
    und_DE: de_DE
    und_DJ: aa_DJ
    und_DK: da_DK
    und_DO: es_DO
    und_DZ: ar_DZ
    und_Deva: hi_IN
    und_EC: es_EC
    und_EE: et_EE
    und_EG: ar_EG
    und_EH: ar_EH
    und_ER: ti_ER
    und_ES: es_ES
    und_ET: am_ET
    und_Ethi: am_ET
    und_FI: fi_FI
    und_FJ: fj_FJ
    und_FM: chk_FM
    und_FO: fo_FO
    und_FR: fr_FR
    und_GA: fr_GA
    und_GE: ka_GE
    und_GF: fr_GF
    und_GH: ak_GH
    und_GL: kl_GL
    und_GN: fr_GN
    und_GP: fr_GP
    und_GQ: fr_GQ
    und_GR: el_GR
    und_GT: es_GT
    und_GU: ch_GU
    und_GW: pt_GW
    und_Geor: ka_GE
    und_Grek: el_GR
    und_Gujr: gu_IN
    und_Guru: pa_IN
    und_HK: zh_HK
    und_HN: es_HN
    und_HR: hr_HR
    und_HT: ht_HT
    und_HU: hu_HU
    und_Hani: zh_CN
    und_Hans: zh_CN
    und_Hant: zh_TW
    und_Hebr: he_IL
    und_ID: id_ID
    und_IL: he_IL
    und_IN: hi_IN
    und_IQ: ar_IQ
    und_IR: fa_IR
    und_IS: is_IS
    und_IT: it_IT
    und_JO: ar_JO
    und_JP: ja_JP
    und_Jpan: ja_JP
    und_KG: ky_KG
    und_KH: km_KH
    und_KM: ar_KM
    und_KP: ko_KP
    und_KR: ko_KR
    und_KW: ar_KW
    und_KZ: ru_KZ
    und_Khmr: km_KH
    und_Knda: kn_IN
    und_Kore: ko_KR
    und_LA: lo_LA
    und_LB: ar_LB
    und_LI: de_LI
    und_LK: si_LK
    und_LS: st_LS
    und_LT: lt_LT
    und_LU: fr_LU
    und_LV: lv_LV
    und_LY: ar_LY
    und_Laoo: lo_LA
    und_Latn_CN: ii_CN
    und_Latn_CY: tr_CY
    und_Latn_DZ: fr_DZ
    und_Latn_ET: om_ET
    und_Latn_KM: fr_KM
    und_Latn_MA: fr_MA
    und_Latn_MK: sq_MK
    und_Latn_SY: fr_SY
    und_Latn_TD: fr_TD
    und_Latn_TN: fr_TN
    und_MA: ar_MA
    und_MC: fr_MC
    und_MD: ro_MD
    und_ME: sr_ME
    und_MF: fr_MF
    und_MG: mg_MG
    und_MH: mh_MH
    und_MK: mk_MK
    und_ML: fr_ML
    und_MM: my_MM
    und_MN: mn_MN
    und_MO: zh_MO
    und_MQ: fr_MQ
    und_MR: ar_MR
    und_MT: mt_MT
    und_MV: dv_MV
    und_MW: ny_MW
    und_MX: es_MX
    und_MY: ms_MY
    und_MZ: pt_MZ
    und_Mlym: ml_IN
    und_Mong: mn_CN
    und_Mymr: my_MM
    und_NC: fr_NC
    und_NE: ha_NE
    und_NG: ha_NG
    und_NI: es_NI
    und_NL: nl_NL
    und_NO: nb_NO
    und_NP: ne_NP
    und_NR: na_NR
    und_NU: niu_NU
    und_OM: ar_OM
    und_Orya: or_IN
    und_PA: es_PA
    und_PE: es_PE
    und_PF: ty_PF
    und_PG: tpi_PG
    und_PH: fil_PH
    und_PK: ur_PK
    und_PL: pl_PL
    und_PM: fr_PM
    und_PR: es_PR
    und_PS: ar_PS
    und_PT: pt_PT
    und_PW: pau_PW
    und_PY: gn_PY
    und_QA: ar_QA
    und_RE: fr_RE
    und_RO: ro_RO
    und_RS: sr_RS
    und_RU: ru_RU
    und_RW: rw_RW
    und_SA: ar_SA
    und_SD: ar_SD
    und_SE: sv_SE
    und_SI: sl_SI
    und_SJ: nb_SJ
    und_SK: sk_SK
    und_SM: it_SM
    und_SN: fr_SN
    und_SO: so_SO
    und_SR: nl_SR
    und_ST: pt_ST
    und_SV: es_SV
    und_SY: ar_SY
    und_Sinh: si_LK
    und_TD: ar_TD
    und_TG: ee_TG
    und_TH: th_TH
    und_TJ: tg_TJ
    und_TK: tkl_TK
    und_TL: tet_TL
    und_TM: tk_TM
    und_TN: ar_TN
    und_TO: to_TO
    und_TR: tr_TR
    und_TV: tvl_TV
    und_TW: zh_TW
    und_Taml: ta_IN
    und_Telu: te_IN
    und_Thaa: dv_MV
    und_Thai: th_TH
    und_Tibt: bo_CN
    und_UA: uk_UA
    und_UY: es_UY
    und_UZ: uz_UZ
    und_VA: la_VA
    und_VE: es_VE
    und_VN: vi_VN
    und_VU: fr_VU
    und_WF: fr_WF
    und_WS: sm_WS
    und_YE: ar_YE
    und_YT: fr_YT
    und_ZW: sn_ZW
    ur: ur_PK
    uz: uz_UZ
    uz_AF: uz_AF
    uz_Arab: uz_AF
    ve: ve_ZA
    vi: vi_VN
    wal: wal_ET
    war: war_PH
    wo: wo_SN
    xh: xh_ZA
    yap: yap_FM
    yo: yo_NG
    za: za_CN
    zh: zh_CN
    zh_HK: zh_HK
    zh_Hani: zh_CN
    zh_Hant: zh_TW
    zh_MO: zh_MO
    zh_TW: zh_TW
    zu: zu_ZA
  countries:
    ad: Andorra
    ae: 'United Arab Emirates'
    af: Afghanistan
    ag: 'Antigua and Barbuda'
    ai: Anguilla
    al: Albania
    am: Armenia
    an: 'Netherlands Antilles'
    ao: Angola
    aq: Antarctica
    ar: Argentina
    as: 'American Samoa'
    at: Austria
    au: Australia
    aw: Aruba
    ax: 'Åland Islands'
    az: Azerbaijan
    ba: 'Bosnia and Herzegovina'
    bb: Barbados
    bd: Bangladesh
    be: Belgium
    bf: 'Burkina Faso'
    bg: Bulgaria
    bh: Bahrain
    bi: Burundi
    bj: Benin
    bl: 'Saint Barthélemy'
    bm: Bermuda
    bn: Brunei
    bo: Bolivia
    bq: 'Bonaire, Sint Eustatius and Saba'
    br: Brazil
    bs: Bahamas
    bt: Bhutan
    bv: 'Bouvet Island'
    bw: Botswana
    by: Belarus
    bz: Belize
    ca: Canada
    cc: 'Cocos [Keeling] Islands'
    cd: 'Congo - Kinshasa'
    cf: 'Central African Republic'
    cg: 'Congo - Brazzaville'
    ch: Switzerland
    ci: 'Côte d’Ivoire'
    ck: 'Cook Islands'
    cl: Chile
    cm: Cameroon
    cn: China
    co: Colombia
    cr: 'Costa Rica'
    cu: Cuba
    cv: 'Cape Verde'
    cx: 'Christmas Island'
    cy: Cyprus
    cz: 'Czech Republic'
    de: Germany
    dj: Djibouti
    dk: Denmark
    dm: Dominica
    do: 'Dominican Republic'
    dz: Algeria
    ec: Ecuador
    ee: Estonia
    eg: Egypt
    eh: 'Western Sahara'
    er: Eritrea
    es: Spain
    et: Ethiopia
    fi: Finland
    fj: Fiji
    fk: 'Falkland Islands'
    fm: Micronesia
    fo: 'Faroe Islands'
    fr: France
    ga: Gabon
    gb: 'United Kingdom'
    gd: Grenada
    ge: Georgia
    gf: 'French Guiana'
    gg: Guernsey
    gh: Ghana
    gi: Gibraltar
    gl: Greenland
    gm: Gambia
    gn: Guinea
    gp: Guadeloupe
    gq: 'Equatorial Guinea'
    gr: Greece
    gs: 'South Georgia and the South Sandwich Islands'
    gt: Guatemala
    gu: Guam
    gw: Guinea-Bissau
    gy: Guyana
    hk: 'Hong Kong SAR China'
    hm: 'Heard Island and McDonald Islands'
    hn: Honduras
    hr: Croatia
    ht: Haiti
    hu: Hungary
    id: Indonesia
    ie: Ireland
    il: Israel
    im: 'Isle of Man'
    in: India
    io: 'British Indian Ocean Territory'
    iq: Iraq
    ir: Iran
    is: Iceland
    it: Italy
    je: Jersey
    jm: Jamaica
    jo: Jordan
    jp: Japan
    ke: Kenya
    kg: Kyrgyzstan
    kh: Cambodia
    ki: Kiribati
    km: Comoros
    kn: 'Saint Kitts and Nevis'
    kp: 'North Korea'
    kr: 'South Korea'
    kw: Kuwait
    ky: 'Cayman Islands'
    kz: Kazakhstan
    la: Laos
    lb: Lebanon
    lc: 'Saint Lucia'
    li: Liechtenstein
    lk: 'Sri Lanka'
    lr: Liberia
    ls: Lesotho
    lt: Lithuania
    lu: Luxembourg
    lv: Latvia
    ly: Libya
    ma: Morocco
    mc: Monaco
    md: Moldova
    me: Montenegro
    mf: 'Saint Martin'
    mg: Madagascar
    mh: 'Marshall Islands'
    mk: Macedonia
    ml: Mali
    mm: 'Myanmar [Burma]'
    mn: Mongolia
    mo: 'Macau SAR China'
    mp: 'Northern Mariana Islands'
    mq: Martinique
    mr: Mauritania
    ms: Montserrat
    mt: Malta
    mu: Mauritius
    mv: Maldives
    mw: Malawi
    mx: Mexico
    my: Malaysia
    mz: Mozambique
    na: Namibia
    nc: 'New Caledonia'
    ne: Niger
    nf: 'Norfolk Island'
    ng: Nigeria
    ni: Nicaragua
    nl: Netherlands
    'no': Norway
    np: Nepal
    nr: Nauru
    nu: Niue
    nz: 'New Zealand'
    om: Oman
    pa: Panama
    pe: Peru
    pf: 'French Polynesia'
    pg: 'Papua New Guinea'
    ph: Philippines
    pk: Pakistan
    pl: Poland
    pm: 'Saint Pierre and Miquelon'
    pn: 'Pitcairn Islands'
    pr: 'Puerto Rico'
    ps: 'Palestinian Territories'
    pt: Portugal
    pw: Palau
    py: Paraguay
    qa: Qatar
    qo: 'Outlying Oceania'
    re: Réunion
    ro: Romania
    rs: Serbia
    ru: Russia
    rw: Rwanda
    sa: 'Saudi Arabia'
    sb: 'Solomon Islands'
    sc: Seychelles
    sd: Sudan
    se: Sweden
    sg: Singapore
    sh: 'Saint Helena'
    si: Slovenia
    sj: 'Svalbard and Jan Mayen'
    sk: Slovakia
    sl: 'Sierra Leone'
    sm: 'San Marino'
    sn: Senegal
    so: Somalia
    sr: Suriname
    st: 'São Tomé and Príncipe'
    sv: 'El Salvador'
    sy: Syria
    sz: Swaziland
    tc: 'Turks and Caicos Islands'
    td: Chad
    tf: 'French Southern Territories'
    tg: Togo
    th: Thailand
    tj: Tajikistan
    tk: Tokelau
    tl: Timor-Leste
    tm: Turkmenistan
    tn: Tunisia
    to: Tonga
    tr: Turkey
    tt: 'Trinidad and Tobago'
    tv: Tuvalu
    tw: Taiwan
    tz: Tanzania
    ua: Ukraine
    ug: Uganda
    um: 'U.S. Minor Outlying Islands'
    us: 'United States'
    uy: Uruguay
    uz: Uzbekistan
    va: 'Vatican City'
    vc: 'Saint Vincent and the Grenadines'
    ve: Venezuela
    vg: 'British Virgin Islands'
    vi: 'U.S. Virgin Islands'
    vn: Vietnam
    vu: Vanuatu
    wf: 'Wallis and Futuna'
    ws: Samoa
    ye: Yemen
    yt: Mayotte
    za: 'South Africa'
    zm: Zambia
    zw: Zimbabwe
  cache_locales: []
  cache_languages: []
  cache_countries: []
silverstripe\i18n\messages\symfony\flushinvalidatedresource: []
silverstripe\i18n\messages\symfony\moduleyamlloader: []
silverstripe\i18n\messages\symfony\symfonymessageprovider: []
silverstripe\graphql\schema\dataobject\plugin\abstractcanviewpermission: []
silverstripe\graphql\schema\dataobject\plugin\canviewpermission: []
silverstripe\graphql\schema\dataobject\plugin\dbfieldtypes: []
silverstripe\graphql\schema\dataobject\plugin\firstresult: []
silverstripe\graphql\schema\dataobject\plugin\inheritance: []
silverstripe\graphql\schema\dataobject\plugin\inheritedplugins: []
silverstripe\graphql\schema\dataobject\plugin\paginator:
  resolver:
    - SilverStripe\GraphQL\Schema\DataObject\Plugin\Paginator
    - paginate
silverstripe\graphql\schema\dataobject\plugin\querycollector: []
silverstripe\graphql\schema\dataobject\plugin\querysort: []
silverstripe\graphql\schema\dataobject\plugin\scalardbfield: []
webbuildersgroup\addtocampaigns\control\admin\addtocampaigncontroller:
  url_segment: add-to-campaign
  url_handlers:
    'GET schema/$FormName/$ModelClass/$ItemID/$OtherItemID': schema
    'GET methodSchema/$Method/$FormName/$ItemID': methodSchema
  allowed_actions:
    - AddToCampaignForm
  campaignable_classes: []
silverstripe\graphql\schema\dataobject\plugin\dbfieldargs\dbdateargs: []
silverstripe\graphql\schema\dataobject\plugin\dbfieldargs\dbdatetimeargs: []
silverstripe\graphql\schema\dataobject\plugin\dbfieldargs\dbdecimalargs: []
silverstripe\graphql\schema\dataobject\plugin\dbfieldargs\dbfieldargs: []
silverstripe\graphql\schema\dataobject\plugin\dbfieldargs\dbfieldargsplugin: []
silverstripe\graphql\schema\dataobject\plugin\dbfieldargs\dbfloatargs: []
silverstripe\graphql\schema\dataobject\plugin\dbfieldargs\dbhtmltextargs: []
silverstripe\graphql\schema\dataobject\plugin\dbfieldargs\dbtextargs: []
silverstripe\graphql\schema\dataobject\plugin\dbfieldargs\dbtimeargs: []
silverstripe\graphql\schema\dataobject\plugin\queryfilter\fieldfilterregistry: []
silverstripe\graphql\schema\dataobject\plugin\queryfilter\queryfilter: []
silverstripe\graphql\schema\dataobject\plugin\queryfilter\filters\containsfilter: []
silverstripe\graphql\schema\dataobject\plugin\queryfilter\filters\endswithfilter: []
silverstripe\graphql\schema\dataobject\plugin\queryfilter\filters\equaltofilter: []
silverstripe\graphql\schema\dataobject\plugin\queryfilter\filters\greaterthanfilter: []
silverstripe\graphql\schema\dataobject\plugin\queryfilter\filters\greaterthanorequalfilter: []
silverstripe\graphql\schema\dataobject\plugin\queryfilter\filters\infilter: []
silverstripe\graphql\schema\dataobject\plugin\queryfilter\filters\lessthanfilter: []
silverstripe\graphql\schema\dataobject\plugin\queryfilter\filters\lessthanorequalfilter: []
silverstripe\graphql\schema\dataobject\plugin\queryfilter\filters\notequalfilter: []
silverstripe\graphql\schema\dataobject\plugin\queryfilter\filters\startswithfilter: []
twa\forms\googlemapsfield:
  default_options:
    api_key: null
    show_search_box: true
    field_names:
      Latitude: Latitude
      Longitude: Longitude
      Location: Location
      Geometry: Geometry
      Zoom: Zoom
      Bounds: Bounds
    map:
      zoom: 5
    default_field_values:
      Latitude: 30
      Longitude: 0
      Geometry: null
silverstripe\dataobjectpreview\extensions\previewgridfielddetailformextension:
  inject_legacy_code: false
silverstripe\cms\controllers\controller:
  cors:
    Enabled: true
    Allow-Origin: '*'
    Allow-Headers: 'Authorization, Content-Type'
    Allow-Methods: 'GET, POST, OPTIONS'
    Allow-Credentials: 'true'
    Max-Age: 600
betternavigator:
  developers:
    - [email protected]
    - [email protected]
    - [email protected]
    - [email protected]
    - [email protected]
  translucent: false
  position: right-bottom
toast\sssendgrid\sendgridmailer:
  api_key: ''
rs\elemental\model\uielementalgallery:
  image_size:
    width: 1280
    height: 1280
rs\themeconfig\themeconfig:
  theme_settings:
    colors:
      primary_color: '#33314e'
      secondary_color: '#239d98'
      accent_color: '#ffa039'
      primary_text: '#000000'
      primary_error_text: '##f44336'
      secondary_text: '#CECECE'
      secondary_error_text: '##f44336'
  google_webfonts_api_key: AIzaSyDMWvPSja5dni8vpIpS--Vq223TXliriQ0
rs\model\leadsourcefield:
  db:
    Type: "Enum('Text,Textarea,Date,DateTime,Email,Phone,Select,Number,Hidden,Checkbox,File','Text')"
leadcapturepage:
  classes:
    - RS\Forms\LeadFormContact
    - RS\Forms\LeadFormContest
    - RS\Forms\LeadFormCustomQuote
    - RS\Forms\LeadFormSubscrptions
gridfieldaddnewmulticlass:
  showEmptyString: true