Skip to main content

June 11 - August 16, 2025

Welcome

The Grant Park Music Festival is a ten-week classical music concert series held annually in Chicago, Illinois’ Millennium Park.

It features the Grant Park Orchestra and Chorus, along with guest performers and conductors, and is one of the only free outdoor classical-music concert series in the US.

Jennifer Koh

Jennifer Koh

Violin

Recognized for intense, commanding performances, delivered with dazzling virtuosity and technical assurance, violinist Jennifer Koh is a forward-thinking artist dedicated to exploring a broad and eclectic repertoire, while promoting equity and inclusivity in classical music. She has expanded the contemporary violin repertoire through a wide range of commissioning projects and has premiered more than 100 works written especially for her. Her quest for the new and unusual, sense of endless curiosity, and ability to lead and inspire a host of multidisciplinary collaborators, truly set her apart.

Koh’s critically acclaimed series include Alone TogetherBach and Beyond Bridge to Beethoven, LimitlessShared Madness, and The New American Concerto. This season, Koh continues The New American Concerto series,an ongoing, multi-season commissioning project that explores the form of the violin concerto and its potential for artistic engagement with contemporary societal concerns and issues through commissions from a diverse collective of composers. This season, Koh continues to perform Missy Mazzoli’s Violin Concerto Procession with the Philadelphia Orchestra led by Marin Alsop, Philharmonia Orchestra led by Santtu-Matias Rouvali, the Lahti Symphony conducted by Dalia Stasevska, and the Kansas City Symphony conducted by Teddy Abrams. Additional New American Concerto commissions include Tyshawn Sorey’s For Marcos Balter, premiered with the Detroit Symphony Orchestra in 2020; Courtney Bryan’s Syzygy, premiered with the Chicago Sinfonietta in 2020; Lisa Bielawa’s Sanctuary, premiered with the Orlando Philharmonic in 2019 and given its New York premiere with the American Composers Orchestra at Carnegie Hall in 2021; Christopher Cerrone’s Breaks and Breaks, premiered with the Detroit Symphony Orchestra in 2018; and Vijay Iyer’s Trouble premiered at the 2017 Ojai Music Festival.

This season, as part of BAM’s Next Wave Festival, Koh performs the New York premiere of Everything Rises, an original, evening length staged musical work co-created with bass-baritone Davone Tines. The work is a collective exploration of family history—telling the stories of Koh’s mother, Gertrude Soonja Lee Koh, a refugee from North Korea during the Korean War, and Tines’s grandmother, Alma Lee Gibbs Tines, who holds vivid memories of anti-Black discrimination and violence dating back many years. These experiences—of the artists and their families—are both the inspiration for and subject matter of this project. Developed over multiple years by an all-BIPOC creative team including composer Ken Ueno and director Alexander Gedeon, the project powerfully reclaims Koh and Tines’ narratives about who they are and how they got to where they are now.

Koh’s Grammy Award-winning Alone Together—launched in 2020 as a commissioning project and virtual performance series—was developed in response to the coronavirus pandemic and the financial hardship it placed on many in the arts community. The project brought composers together in support of the many freelancers among them—with the more established composers each donating a new micro-work for solo violin, while also recommending a fellow freelance composer to write their own solo violin micro-work on paid commission from Koh’s artist-driven nonprofit ARCO Collaborative. In 2021, Cedille Records released an album of Koh’s Alone Together, featuring 39 world-premiere recordings, including works by Du Yun, George Lewis, Tania Léon, Andrew Norman, Missy Mazzoli, Ellen Reid, Vijay Iyer, Nina C. Young, and Angélica Negrón, and the recording won the Grammy Award in the Best Classical Instrumental Solo category. Koh performs works from Alone Together this season in New York as part of the Death of Classical series in collaboration with Concert Artists Guild, at Crystal Bridges Museum in Arkansas, and in a recital in New Orleans.

Koh regularly performs a broad range of concertos that reflect the breadth of her musical interests from traditional to contemporary. This season she makes her Boston Symphony Orchestra debut performing Bernstein’s Serenade, conducted by Andris Nelsons. She also performs Tchaikovsky’s Violin Concerto with the Richmond and Wichita Falls symphony orchestras, and Vijay Iyer’s Violin Concerto Trouble, part of her The New American Concerto series, at the Big Ears Festival in Knoxville, TN. Past orchestral appearances have included performances of such traditional repertoire as Bach’s Violin Concerti with Orpheus Chamber Orchestra; Dvořák’s Violin Concerto with the Pittsburgh Symphony led by Manfred Honeck and RAI National Symphony with James Conlon; Mozart’s Violin Concerto No. 1 with the Los Angeles Philharmonic led by Bramwell Tovey and St. Louis Symphony led by Nicolas McGegan; Tchaikovsky’s Violin Concerto with the Munich Philharmonic led by Lorin Maazel; and Vivaldi’s The Four Seasons with the Detroit Symphony led by Nicolas McGegan.

She has performed 20th-century works including Bartók and Berg concerti with the Milwaukee Symphony led by Edo de Waart; Bernstein’s Serenade with the Minnesota Orchestra led by Juanjo Mena and the Philadelphia Orchestra led by Yannick Nézet-Séguin; Lutosławski’s Chain 2 with the New York Philharmonic led by Lorin Maazel and the Philharmonia Orchestra with Esa-Pekka Salonen; Scelsi’s Anahit with the Los Angeles Philharmonic led by Gustavo Dudamel; and Sibelius’s Violin Concerto with the New Jersey Symphony led by Xian Zhang, the São Paulo Symphonies with Marin Alsop, and the Columbus Symphony led by Rossen Milanov. This season, she performs the Sibelius concerto with the Suwon Philharmonic in South Korea. An advocate for music from our current millennium, she has performed Anna Clyne’s The Seamstress with the BBC Symphony led by Sakari Oramo, the Chicago Symphony led by Ludovic Morlot, and Cincinnati Symphony conducted by Louis Langrée; Esa-Pekka Salonen’s Violin Concerto with the Houston Symphony led by Christoph Eschenbach, Nashville Symphony conducted by Giancarlo Guerrero, and Cincinnati and Gothenburg Symphonies conducted by Santtu-Matias Rouvali; and Steven Mackey’s Beautiful Passing with the Baltimore Symphony under Marin Alsop.

Koh played the role of Einstein in the revival of Philip Glass and Robert Wilson’s Einstein on the Beach from 2012 to 2014, and a particular highlight of her career was performing with St. Vincent (Annie Clark) and S. Epatha Merkerson at the 2018 Kennedy Center Honors in a tribute to Glass. In 2021, nearly a decade after collaborating in the revival performances of Philip Glass's Einstein on the Beach, Koh reunited with director Robert Wilson and choreographer Lucinda Childs for a new work, Bach 6 Solo, that brings to life Bach's sonatas and partitas with theatrical elements and dance. Conceived by Koh and Wilson, the new work has Koh performing all six of Bach’s Partitas and Sonatas—widely considered the pinnacle of solo violin writing and typically performed alone on stage—with four dancers performing choreography by Childs. Bach 6 Solo premiered at the Chapelle Saint-Louis de la Salpêtrière as part of the Festival d'Automne à Paris.

Koh brings the same sense of adventure and brilliant musicianship to her recordings as she does to her live performances. She has recorded more than a dozen albums with Chicago-based Cedille Records, including her Grammy Award-winning Alone Together album. Her Bach & Beyond recording series, originally released by Cedille Records in three installments (2012, 2015, and 2020), was released as a three-disc box set in September 2021. These recordings explore the history of the solo violin repertoire from Bach’s Six Sonatas and Partitas to the music of 20th- and 21st-century composers, including new commissions from Missy Mazzoli (Dissolve, O My Heart) and John Harbison (For Violin Alone). The collection also includes the world-premiere recording of Kaija Saariaho’s Frises, as well as works by Berio, Bartók, and Ysaÿe. Koh first launched Bach & Beyond as a three-part recital series in 2009 and she continues to perform these programs regularly. The Bach & Beyond recordings have received widespread critical acclaim, with the Chicago Tribune describing them as an “epic traversal of solo violin repertoire” and “a monumental achievement.”

Other recordings for the label in recent years include 2019’s Limitless, on which leading composer-performers—including Lisa Bielawa, Vijay Iyer, Missy Mazzoli, Qasim Naqvi, Tyshawn Sorey, Wang Lu, Nina C. Young, and Du Yun—perform duo compositions with Koh that explore the artistic relationship between composer and performer, and a 2018 collection of works by Kaija Saariaho, whose music she has long championed and with whom she has closely collaborated. Titled Saariaho X Koh, the album includes the chamber version of the violin concerto Graal Théâtre with the Curtis Chamber Orchestra; Cloud Trio with violist Hsin-Yun Huang and cellist Wilhelmina Smith; Tocar with pianist Nicolas Hodges; Aure with cellist Anssi Karttunen, with whom she premiered the violin and cello version in 2015; and Light and Matter with both Hodges and Karttunen, with whom she performed the French premiere in 2017.

Her discography on Cedille Records also includes Tchaikovsky: Complete Works for Violin and Orchestra with the Odense Symphony Orchestra conducted by Alexander Vedernikov; Two x Four in collaboration with her former teacher, violinist Jaime Laredo, and featuring double violin concerti by Bach, Philip Glass, and new commissions from Anna Clyne and David Ludwig; Signs, Games + Messages, a recording of violin and piano works by Janáček, Bartók, and Kurtág with Shai Wosner; Rhapsodic Musings: 21st Century Works for Solo Violin; the Grammy-nominated String Poetic, featuring the world premiere of Jennifer Higdon’s eponymous work, performed with pianist Reiko Uchida; Schumann’s complete violin sonatas, also with Ms. Uchida; Portraits with the Grant Park Orchestra under conductor Carlos Kalmar with concerti by Szymanowski, Martinů, and Bartók; Violin Fantasies, fantasies for violin and piano by Schubert, Schumann, Schoenberg, and saxophonist Ornette Coleman, again with Uchida; and Koh’s first Cedille album, from 2002, Solo Chaconnes, an earlier reading of Bach’s Second Partita coupled with chaconnes by Richard Barth and Max Reger. She is also the featured soloist on a recording of Higdon’s The Singing Rooms with the Atlanta Symphony led by Robert Spano for Telarc.

Koh is active not only in the concert hall and recording studio, but also as a lecturer and teacher. She has been on faculty at the Mannes School of Music since 2018 and has held residencies at Brown, Cornell, Duke, and Tulane Universities, as well as at the Curtis Institute of Music, Oberlin Conservatory and College, and University of California, Santa Barbara. She was the keynote speaker for the Royal College of Music’s 2020 “Orchestrating Isolation” conference and the League of American Orchestras’ 2018 annual conference.

She is the Founder and Artistic Director of ARCO Collaborative, an artist-driven nonprofit that advocates for inclusivity in classical music. Established in 2014, ARCO Collaborative commissions, develops, and produces new musical works that highlight artists of color and women composers in collaborations that bring forth stories previously unheard in Western art forms. She is also a member of Composers Now’sDistinguished Mentors Council and the board of the League of American Orchestras.

Born in Chicago of Korean parents, Koh began playing the violin by chance, choosing the instrument in a Suzuki-method program only because spaces for cello and piano had been filled. She made her debut with the Chicago Symphony Orchestra at age 11. She was Musical America’s 2016 Instrumentalist of the Year and has also been recently recognized as a Virtuoso Award honoree by Concert Artists Guild in 2020 and “A Force of Nature” by the American Composers Orchestra in 2019. She performed for former First Lady of the United States Michelle Obama and former First Lady of South Korea Kim Yoon-ok in 2011. She was a top prize winner at Moscow’s International Tchaikovsky Competition, winner of the Concert Artists Guild Competition, and a recipient of an Avery Fisher Career Grant. She has a Bachelor of Arts degree in English literature from Oberlin College and studied at the Curtis Institute, where she worked extensively with Jaime Laredo and Felix Galimir.

DJDT

Versions

Package Name Version
Django 5.2
Python 3.13.6
algoliasearch Algoliasearch 4.16.4
anymail Anymail 13.0
debug_toolbar Debug Toolbar 5.1.0
django_tasks Django_Tasks 0.6.1
taggit Taggit 6.1.0
wagtail Wagtail core 6.4.1.final.1
wagtail_2fa Wagtail 2FA 1.6.6
wagtailseo Wagtail SEO 3.0.0

Time

Resource usage

Resource Value
User CPU time 153.660 msec
System CPU time 28.020 msec
Total CPU time 181.680 msec
Elapsed time 215.011 msec
Context switches 58 voluntary, 4 involuntary

Browser timing

Timing attribute Timeline Milliseconds since navigation start (+length)

Settings from aviary.settings.development

Setting Value
ABSOLUTE_URL_OVERRIDES {}
ADMINS []
ALGOLIA_API_KEY '********************'
ALGOLIA_APPLICATION_ID 'DWH5ASALPG'
ALGOLIA_INDEX_PREFIX 'dev_wagtail'
ALGOLIA_RECORD_SIZE_LIMIT 9500
ALLOWED_HOSTS ['.substrakt.net', '.herokuapp.com']
ANYMAIL {'RESEND_API_KEY': '********************'}
APPEND_SLASH True
ATBL_EVENT_ARCHIVE_INDEX_MODEL 'pages.EventArchiveIndexPage'
ATBL_EVENT_INDEX_MODEL 'pages.EventIndexPage'
ATBL_EVENT_MODEL 'pages.EventPage'
ATBL_INSTANCE_MODEL 'pages.InstancePage'
AUTHENTICATION_BACKENDS '********************'
AUTH_PASSWORD_VALIDATORS '********************'
AUTH_USER_MODEL '********************'
BASE_DIR '/app'
BLOG_INDEX_PAGE_MODEL 'pages.BlogIndexPage'
BLOG_PAGE_MODEL 'pages.BlogPage'
CACHES {'default': {'BACKEND': 'django.core.cache.backends.redis.RedisCache', 'LOCATION': 'rediss://:pceacb32ade5c326134376e38011d75815870c00454a9e4c67faa95098d7d409e@ec2-52-200-79-251.compute-1.amazonaws.com:14840', 'OPTIONS': {'ssl_cert_reqs': None}}}
CACHE_MIDDLEWARE_ALIAS 'default'
CACHE_MIDDLEWARE_KEY_PREFIX '********************'
CACHE_MIDDLEWARE_SECONDS 600
CORS_ALLOWED_ORIGINS ['https://dev.grant-park.substrakt.net', 'https://grant-park-development-35c21abf83e3.herokuapp.com']
CRM_PROVIDER 'tessitura'
CSRF_COOKIE_AGE 31449600
CSRF_COOKIE_DOMAIN None
CSRF_COOKIE_HTTPONLY False
CSRF_COOKIE_NAME 'csrftoken'
CSRF_COOKIE_PATH '/'
CSRF_COOKIE_SAMESITE 'Lax'
CSRF_COOKIE_SECURE False
CSRF_FAILURE_VIEW 'django.views.csrf.csrf_failure'
CSRF_HEADER_NAME 'HTTP_X_CSRFTOKEN'
CSRF_TRUSTED_ORIGINS ['https://dev.aviary.substrakt.net']
CSRF_USE_SESSIONS False
DATABASES {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_HEALTH_CHECKS': False, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.postgresql', 'HOST': 'c1i13pt05ja4ag.cluster-czrs8kj4isg7.us-east-1.rds.amazonaws.com', 'NAME': 'd8ond8su9luvid', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': 5432, 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIGRATE': True, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'u3ulo7dcjcrebi'}}
DATABASE_ROUTERS []
DATA_UPLOAD_MAX_MEMORY_SIZE 2621440
DATA_UPLOAD_MAX_NUMBER_FIELDS 5000
DATA_UPLOAD_MAX_NUMBER_FILES 100
DATETIME_FORMAT 'N j, Y, P'
DATETIME_INPUT_FORMATS ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M']
DATE_FORMAT 'N j, Y'
DATE_INPUT_FORMATS ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y']
DEBUG True
DEBUG_PROPAGATE_EXCEPTIONS True
DEBUG_TOOLBAR_CONFIG {'SHOW_TOOLBAR_CALLBACK': 'aviary.settings.development.show_toolbar'}
DECIMAL_SEPARATOR '.'
DEFAULT_AUTO_FIELD 'django.db.models.AutoField'
DEFAULT_CHARSET 'utf-8'
DEFAULT_EXCEPTION_REPORTER 'django.views.debug.ExceptionReporter'
DEFAULT_EXCEPTION_REPORTER_FILTER 'django.views.debug.SafeExceptionReporterFilter'
DEFAULT_FROM_EMAIL 'no-reply@substrakt.net'
DEFAULT_INDEX_TABLESPACE ''
DEFAULT_TABLESPACE ''
DISALLOWED_USER_AGENTS []
DJANGO_VITE {'default': {'dev_mode': False, 'manifest_path': '/app/src_compiled/.vite/manifest.json'}}
EMAIL_BACKEND 'anymail.backends.resend.EmailBackend'
EMAIL_HOST 'localhost'
EMAIL_HOST_PASSWORD '********************'
EMAIL_HOST_USER ''
EMAIL_PORT 25
EMAIL_SSL_CERTFILE None
EMAIL_SSL_KEYFILE '********************'
EMAIL_SUBJECT_PREFIX '[Django] '
EMAIL_TIMEOUT None
EMAIL_USE_LOCALTIME False
EMAIL_USE_SSL False
EMAIL_USE_TLS False
FILE_UPLOAD_DIRECTORY_PERMISSIONS None
FILE_UPLOAD_HANDLERS ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler']
FILE_UPLOAD_MAX_MEMORY_SIZE 2621440
FILE_UPLOAD_PERMISSIONS 420
FILE_UPLOAD_TEMP_DIR None
FIRST_DAY_OF_WEEK 0
FIXTURE_DIRS []
FORCE_SCRIPT_NAME None
FORMAT_MODULE_PATH None
FORMS_URLFIELD_ASSUME_HTTPS False
FORM_RENDERER 'django.forms.renderers.DjangoTemplates'
IGNORABLE_404_URLS []
INSTALLED_APPS ['pages', 'search', 'attendable', 'construkt', 'forms', 'navigation', 'blog', 'mastheads', 'profiles', 'seo', 'tnew_shared_sessions', 'alerts', 'utils', 'wagtail.contrib.forms', 'wagtail.contrib.redirects', 'wagtail.contrib.frontend_cache', 'wagtail.contrib.table_block', 'wagtail.contrib.settings', 'wagtail.contrib.routable_page', 'wagtail.embeds', 'wagtail.sites', 'wagtail.users', 'wagtail.snippets', 'wagtail.documents', 'wagtail.images', 'wagtail.search', 'wagtail.contrib.search_promotions', 'wagtail.admin', 'wagtail.api.v2', 'wagtailseo', 'wagtail', 'modelcluster', 'taggit', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sitemaps', 'django_vite', 'anymail', 'algoliasearch', 'wagtail_2fa', 'django_otp', 'django_otp.plugins.otp_totp', 'wagtail_tabbed_structblock', 'django_tasks', 'django_tasks.backends.database', 'debug_toolbar']
INTERNAL_IPS ['127.0.0.1']
LANGUAGES [('en-gb', 'English (UK)')]
LANGUAGES_BIDI ['he', 'ar', 'ar-dz', 'ckb', 'fa', 'ug', 'ur']
LANGUAGE_CODE 'en-gb'
LANGUAGE_COOKIE_AGE None
LANGUAGE_COOKIE_DOMAIN None
LANGUAGE_COOKIE_HTTPONLY False
LANGUAGE_COOKIE_NAME 'django_language'
LANGUAGE_COOKIE_PATH '/'
LANGUAGE_COOKIE_SAMESITE None
LANGUAGE_COOKIE_SECURE False
LOCALE_PATHS ['/app/locale']
LOGGING {'disable_existing_loggers': False, 'formatters': {'default': {'datefmt': '%Y-%m-%d %H:%M:%S', 'format': '[%(asctime)s] [%(levelname)s] ' '%(message)s'}}, 'handlers': {'console': {'class': 'logging.StreamHandler', 'formatter': 'default'}}, 'loggers': {'attendable': {'handlers': ['console'], 'level': 'INFO', 'propagate': False}}, 'version': 1}
LOGGING_CONFIG 'logging.config.dictConfig'
LOGIN_REDIRECT_URL '/accounts/profile/'
LOGIN_URL '/accounts/login/'
LOGOUT_REDIRECT_URL None
MANAGERS []
MEDIA_ROOT '/app/media'
MEDIA_URL '/media/'
MESSAGE_STORAGE 'django.contrib.messages.storage.fallback.FallbackStorage'
MIDDLEWARE ['debug_toolbar.middleware.DebugToolbarMiddleware', 'corsheaders.middleware.CorsMiddleware', 'django.middleware.security.SecurityMiddleware', 'whitenoise.middleware.WhiteNoiseMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'aviary.middleware.redirects.CanonicalDomainMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'wagtail_2fa.middleware.VerifyUserMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'wagtail.contrib.redirects.middleware.RedirectMiddleware', 'corsheaders.middleware.CorsMiddleware']
MIGRATION_MODULES {}
MONTH_DAY_FORMAT 'F j'
NUMBER_GROUPING 0
OTP_TOTP_ISSUER 'Aviary'
PASSWORD_HASHERS '********************'
PASSWORD_RESET_TIMEOUT '********************'
PREPEND_WWW False
PROFILE_PAGE_MODEL 'pages.ProfilePage'
PROJECT_DIR '/app/aviary'
ROOT_URLCONF 'aviary.urls'
SECRET_KEY '********************'
SECRET_KEY_FALLBACKS '********************'
SECURE_CONTENT_TYPE_NOSNIFF True
SECURE_CROSS_ORIGIN_OPENER_POLICY 'same-origin'
SECURE_HSTS_INCLUDE_SUBDOMAINS False
SECURE_HSTS_PRELOAD False
SECURE_HSTS_SECONDS 0
SECURE_PROXY_SSL_HEADER None
SECURE_REDIRECT_EXEMPT []
SECURE_REFERRER_POLICY 'same-origin'
SECURE_SSL_HOST None
SECURE_SSL_REDIRECT False
SERVER_EMAIL 'root@localhost'
SESSION_CACHE_ALIAS 'default'
SESSION_COOKIE_AGE 1209600
SESSION_COOKIE_DOMAIN None
SESSION_COOKIE_HTTPONLY True
SESSION_COOKIE_NAME 'sessionid'
SESSION_COOKIE_PATH '/'
SESSION_COOKIE_SAMESITE 'Lax'
SESSION_COOKIE_SECURE False
SESSION_ENGINE 'django.contrib.sessions.backends.cache'
SESSION_EXPIRE_AT_BROWSER_CLOSE False
SESSION_FILE_PATH None
SESSION_SAVE_EVERY_REQUEST False
SESSION_SERIALIZER 'django.contrib.sessions.serializers.JSONSerializer'
SETTINGS_MODULE 'aviary.settings.development'
SHORT_DATETIME_FORMAT 'm/d/Y P'
SHORT_DATE_FORMAT 'm/d/Y'
SIGNING_BACKEND 'django.core.signing.TimestampSigner'
SILENCED_SYSTEM_CHECKS []
SITE_NO_INDEX False
STATICFILES_DIRS ['/app/src_compiled']
STATICFILES_FINDERS ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder']
STATICFILES_STORAGE 'whitenoise.storage.StaticFilesStorage'
STATIC_ROOT '/app/assets'
STATIC_URL '/assets/'
STORAGES {'default': {'BACKEND': 'storages.backends.s3.S3Storage', 'OPTIONS': {'access_key': '********************', 'bucket_name': 'grant-park-assets', 'custom_domain': '', 'endpoint_url': 'https://64cefbf6c6915b0c6e864571a5e87240.r2.cloudflarestorage.com/', 'file_overwrite': False, 'region_name': 'auto', 'secret_key': '********************'}}, 'staticfiles': {'BACKEND': 'whitenoise.storage.CompressedStaticFilesStorage'}}
TASKS {'default': {'BACKEND': 'django_tasks.backends.database.DatabaseBackend'}}
TEMPLATES [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/app/templates', '/app/aviary/templates'], 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', 'wagtail.contrib.settings.context_processors.settings', 'tnew_shared_sessions.context_processors.tnew_session_data']}}]
TESSITURA_BASE_URL 'https://HARRISUSIL0webprod.tnhs.cloud/Tessitura/api/'
TESSITURA_DEFAULT_MOS_ID 0
TESSITURA_LOCATION 'SUBSTRAKT'
TESSITURA_MODES_OF_SALE '0'
TESSITURA_PASSWORD '********************'
TESSITURA_USERGROUP 'Sbskt'
TESSITURA_USERNAME 'SbsktAPI'
TESTING False
TEST_NON_SERIALIZED_APPS []
TEST_RUNNER 'django.test.runner.DiscoverRunner'
THOUSAND_SEPARATOR ','
TIME_FORMAT 'P'
TIME_INPUT_FORMATS ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']
TIME_ZONE 'America/Chicago'
TNEW_ANONYMOUS_USER_EMAIL 'tnew@tnew.com'
TNEW_ANON_USER ''
TNEW_COOKIE_NAME 'TNEW'
TNEW_DOMAIN 'my.grantparkmusicfestival.com'
TNEW_HMAC_KEY '********************'
TNEW_PASSPHRASE '********************'
TNEW_SALT ''
USE_I18N True
USE_L10N True
USE_THOUSAND_SEPARATOR False
USE_TZ True
USE_X_FORWARDED_HOST False
USE_X_FORWARDED_PORT False
WAGTAILADMIN_BASE_URL 'https://dev.grant-park.substrakt.net'
WAGTAILADMIN_NOTIFICATION_INCLUDE_SUPERUSERS False
WAGTAILADMIN_RECENT_EDITS_LIMIT 5
WAGTAILDOCS_EXTENSIONS ['csv', 'docx', 'key', 'odt', 'pdf', 'pptx', 'rtf', 'txt', 'xlsx', 'zip', 'svg']
WAGTAILFORMS_HELP_TEXT_ALLOW_HTML False
WAGTAILSEARCH_BACKENDS {'algolia': {'ALGOLIA_API_KEY': '********************', 'APPLICATION_ID': 'DWH5ASALPG', 'BACKEND': 'search.backends.algolia.AlgoliaSearchBackend', 'INDEX_PREFIX': 'dev_wagtail'}, 'default': {'BACKEND': 'wagtail.search.backends.database'}}
WAGTAIL_2FA_OTP_TOTP_NAME False
WAGTAIL_2FA_REQUIRED True
WAGTAIL_ENABLE_UPDATE_CHECK False
WAGTAIL_SITE_NAME 'Aviary'
WSGI_APPLICATION 'aviary.wsgi.application'
X_FRAME_OPTIONS 'DENY'
YEAR_MONTH_FORMAT 'F Y'

Headers

Request headers

Key Value
Accept */*
Accept-Encoding gzip, br, zstd, deflate
Host grant-park-development-35c21abf83e3.herokuapp.com
Referer https://grant-park-development-35c21abf83e3.herokuapp.com/biographies/jennifer-koh
Server Heroku
User-Agent Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Via 1.1 heroku-router
X-Forwarded-For 216.73.216.242
X-Forwarded-Port 443
X-Forwarded-Proto https
X-Request-Id 9293ec1d-c1eb-6aad-f93e-a143e0f1f14e
X-Request-Start 1754575163605

Response headers

Key Value
Content-Length 42547
Content-Type text/html; charset=utf-8
Cross-Origin-Opener-Policy same-origin
Referrer-Policy same-origin
Vary origin, Cookie
X-Content-Type-Options nosniff
X-Frame-Options DENY

WSGI environ

Since the WSGI environ inherits the environment of the server, only a significant subset is shown below.

Key Value
PATH_INFO /biographies/jennifer-koh/
QUERY_STRING
REMOTE_ADDR 10.1.34.243
REQUEST_METHOD GET
SCRIPT_NAME
SERVER_NAME 0.0.0.0
SERVER_PORT 53278
SERVER_PROTOCOL HTTP/1.1
SERVER_SOFTWARE gunicorn/23.0.0

Request

View information

View function Arguments Keyword arguments URL name
wagtail.views.serve ('biographies/jennifer-koh/',) {} wagtail_serve

No cookies

No session data

No GET data

No POST data

SQL queries from 1 connection

  • default 22.41 ms (28 queries including 14 similar and 12 duplicates )
Query Timeline Time (ms) Action
SELECT "wagtailcore_site"."id",
       "wagtailcore_site"."hostname",
       "wagtailcore_site"."port",
       "wagtailcore_site"."site_name",
       "wagtailcore_site"."root_page_id",
       "wagtailcore_site"."is_default_site",
       CASE WHEN ("wagtailcore_site"."hostname" = 'grant-park-development-35c21abf83e3.herokuapp.com' AND "wagtailcore_site"."port" = 53278)    THEN 0
            WHEN ("wagtailcore_site"."hostname" = 'grant-park-development-35c21abf83e3.herokuapp.com' AND "wagtailcore_site"."is_default_site") THEN 1
            WHEN "wagtailcore_site"."is_default_site"                                                                                           THEN 2
            ELSE 3
             END AS "match",
       "wagtailcore_page"."id",
       "wagtailcore_page"."path",
       "wagtailcore_page"."depth",
       "wagtailcore_page"."numchild",
       "wagtailcore_page"."translation_key",
       "wagtailcore_page"."locale_id",
       "wagtailcore_page"."latest_revision_id",
       "wagtailcore_page"."live",
       "wagtailcore_page"."has_unpublished_changes",
       "wagtailcore_page"."first_published_at",
       "wagtailcore_page"."last_published_at",
       "wagtailcore_page"."live_revision_id",
       "wagtailcore_page"."go_live_at",
       "wagtailcore_page"."expire_at",
       "wagtailcore_page"."expired",
       "wagtailcore_page"."locked",
       "wagtailcore_page"."locked_at",
       "wagtailcore_page"."locked_by_id",
       "wagtailcore_page"."title",
       "wagtailcore_page"."draft_title",
       "wagtailcore_page"."slug",
       "wagtailcore_page"."content_type_id",
       "wagtailcore_page"."url_path",
       "wagtailcore_page"."owner_id",
       "wagtailcore_page"."seo_title",
       "wagtailcore_page"."show_in_menus",
       "wagtailcore_page"."search_description",
       "wagtailcore_page"."latest_revision_created_at",
       "wagtailcore_page"."alias_of_id"
  FROM "wagtailcore_site"
 INNER JOIN "wagtailcore_page"
    ON ("wagtailcore_site"."root_page_id" = "wagtailcore_page"."id")
 WHERE ("wagtailcore_site"."hostname" = 'grant-park-development-35c21abf83e3.herokuapp.com' OR "wagtailcore_site"."is_default_site")
 ORDER BY 7 ASC
SELECT ••• FROM "wagtailcore_site" INNER JOIN "wagtailcore_page" ON ("wagtailcore_site"."root_page_id" = "wagtailcore_page"."id") WHERE ("wagtailcore_site"."hostname" = 'grant-park-development-35c21abf83e3.herokuapp.com' OR "wagtailcore_site"."is_default_site") ORDER BY 7 ASC
4.20

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/views.py in serve(17)
  route_result = Page.route_for_request(request, path)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in route_for_request(1466)
  if site := Site.find_for_request(request):

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in find_for_request(157)
  site = Site._find_for_request(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in _find_for_request(168)
  site = get_site_for_hostname(hostname, port)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_for_hostname(23)
  sites = list(

SELECT T3."id",
       T3."path",
       T3."depth",
       T3."numchild",
       T3."translation_key",
       T3."locale_id",
       T3."latest_revision_id",
       T3."live",
       T3."has_unpublished_changes",
       T3."first_published_at",
       T3."last_published_at",
       T3."live_revision_id",
       T3."go_live_at",
       T3."expire_at",
       T3."expired",
       T3."locked",
       T3."locked_at",
       T3."locked_by_id",
       T3."title",
       T3."draft_title",
       T3."slug",
       T3."content_type_id",
       T3."url_path",
       T3."owner_id",
       T3."seo_title",
       T3."show_in_menus",
       T3."search_description",
       T3."latest_revision_created_at",
       T3."alias_of_id",
       "pages_homepage"."page_ptr_id",
       "pages_homepage"."canonical_url",
       "pages_homepage"."og_image_id",
       "pages_homepage"."featured_image_id",
       "pages_homepage"."excerpt",
       "pages_homepage"."exclude_from_site_search",
       "pages_homepage"."search_engine_no_index",
       "pages_homepage"."content",
       "pages_homepage"."masthead_media",
       "pages_homepage"."_masthead_colour",
       "pages_homepage"."_masthead_title",
       "pages_homepage"."masthead_content"
  FROM "pages_homepage"
 INNER JOIN "wagtailcore_page" T3
    ON ("pages_homepage"."page_ptr_id" = T3."id")
 WHERE "pages_homepage"."page_ptr_id" = 3
 LIMIT 21
SELECT ••• FROM "pages_homepage" INNER JOIN "wagtailcore_page" T3 ON ("pages_homepage"."page_ptr_id" = T3."id") WHERE "pages_homepage"."page_ptr_id" = 3 LIMIT 21
1.15

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/views.py in serve(17)
  route_result = Page.route_for_request(request, path)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in route_for_request(1471)
  site.root_page.localized.specific.route(

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/specific.py in specific(93)
  return self.get_specific()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/specific.py in get_specific(73)
  specific_obj = model_class._default_manager.get(id=self.id)

SELECT "wagtailcore_page"."id",
       "wagtailcore_page"."path",
       "wagtailcore_page"."depth",
       "wagtailcore_page"."numchild",
       "wagtailcore_page"."translation_key",
       "wagtailcore_page"."locale_id",
       "wagtailcore_page"."latest_revision_id",
       "wagtailcore_page"."live",
       "wagtailcore_page"."has_unpublished_changes",
       "wagtailcore_page"."first_published_at",
       "wagtailcore_page"."last_published_at",
       "wagtailcore_page"."live_revision_id",
       "wagtailcore_page"."go_live_at",
       "wagtailcore_page"."expire_at",
       "wagtailcore_page"."expired",
       "wagtailcore_page"."locked",
       "wagtailcore_page"."locked_at",
       "wagtailcore_page"."locked_by_id",
       "wagtailcore_page"."title",
       "wagtailcore_page"."draft_title",
       "wagtailcore_page"."slug",
       "wagtailcore_page"."content_type_id",
       "wagtailcore_page"."url_path",
       "wagtailcore_page"."owner_id",
       "wagtailcore_page"."seo_title",
       "wagtailcore_page"."show_in_menus",
       "wagtailcore_page"."search_description",
       "wagtailcore_page"."latest_revision_created_at",
       "wagtailcore_page"."alias_of_id"
  FROM "wagtailcore_page"
 WHERE ("wagtailcore_page"."depth" = 3 AND "wagtailcore_page"."path" BETWEEN '000100010000' AND '00010001ZZZZ' AND "wagtailcore_page"."slug" = 'biographies')
 LIMIT 21
SELECT ••• FROM "wagtailcore_page" WHERE ("wagtailcore_page"."depth" = 3 AND "wagtailcore_page"."path" BETWEEN '000100010000' AND '00010001ZZZZ' AND "wagtailcore_page"."slug" = 'biographies') LIMIT 21
2 similar queries.
0.89

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/views.py in serve(17)
  route_result = Page.route_for_request(request, path)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in route_for_request(1471)
  site.root_page.localized.specific.route(

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in route(1842)
  subpage = self.get_children().get(slug=child_slug)

SELECT T3."id",
       T3."path",
       T3."depth",
       T3."numchild",
       T3."translation_key",
       T3."locale_id",
       T3."latest_revision_id",
       T3."live",
       T3."has_unpublished_changes",
       T3."first_published_at",
       T3."last_published_at",
       T3."live_revision_id",
       T3."go_live_at",
       T3."expire_at",
       T3."expired",
       T3."locked",
       T3."locked_at",
       T3."locked_by_id",
       T3."title",
       T3."draft_title",
       T3."slug",
       T3."content_type_id",
       T3."url_path",
       T3."owner_id",
       T3."seo_title",
       T3."show_in_menus",
       T3."search_description",
       T3."latest_revision_created_at",
       T3."alias_of_id",
       "pages_standardpage"."page_ptr_id",
       "pages_standardpage"."canonical_url",
       "pages_standardpage"."og_image_id",
       "pages_standardpage"."featured_image_id",
       "pages_standardpage"."excerpt",
       "pages_standardpage"."exclude_from_site_search",
       "pages_standardpage"."search_engine_no_index",
       "pages_standardpage"."content",
       "pages_standardpage"."masthead_media",
       "pages_standardpage"."_masthead_colour",
       "pages_standardpage"."_masthead_title",
       "pages_standardpage"."masthead_content"
  FROM "pages_standardpage"
 INNER JOIN "wagtailcore_page" T3
    ON ("pages_standardpage"."page_ptr_id" = T3."id")
 WHERE "pages_standardpage"."page_ptr_id" = 859
 LIMIT 21
SELECT ••• FROM "pages_standardpage" INNER JOIN "wagtailcore_page" T3 ON ("pages_standardpage"."page_ptr_id" = T3."id") WHERE "pages_standardpage"."page_ptr_id" = 859 LIMIT 21
1.08

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/views.py in serve(17)
  route_result = Page.route_for_request(request, path)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in route_for_request(1471)
  site.root_page.localized.specific.route(

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in route(1851)
  return subpage.specific.route(request, remaining_components)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/specific.py in specific(93)
  return self.get_specific()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/specific.py in get_specific(73)
  specific_obj = model_class._default_manager.get(id=self.id)

SELECT "wagtailcore_page"."id",
       "wagtailcore_page"."path",
       "wagtailcore_page"."depth",
       "wagtailcore_page"."numchild",
       "wagtailcore_page"."translation_key",
       "wagtailcore_page"."locale_id",
       "wagtailcore_page"."latest_revision_id",
       "wagtailcore_page"."live",
       "wagtailcore_page"."has_unpublished_changes",
       "wagtailcore_page"."first_published_at",
       "wagtailcore_page"."last_published_at",
       "wagtailcore_page"."live_revision_id",
       "wagtailcore_page"."go_live_at",
       "wagtailcore_page"."expire_at",
       "wagtailcore_page"."expired",
       "wagtailcore_page"."locked",
       "wagtailcore_page"."locked_at",
       "wagtailcore_page"."locked_by_id",
       "wagtailcore_page"."title",
       "wagtailcore_page"."draft_title",
       "wagtailcore_page"."slug",
       "wagtailcore_page"."content_type_id",
       "wagtailcore_page"."url_path",
       "wagtailcore_page"."owner_id",
       "wagtailcore_page"."seo_title",
       "wagtailcore_page"."show_in_menus",
       "wagtailcore_page"."search_description",
       "wagtailcore_page"."latest_revision_created_at",
       "wagtailcore_page"."alias_of_id"
  FROM "wagtailcore_page"
 WHERE ("wagtailcore_page"."depth" = 4 AND "wagtailcore_page"."path" BETWEEN '00010001000H0000' AND '00010001000HZZZZ' AND "wagtailcore_page"."slug" = 'jennifer-koh')
 LIMIT 21
SELECT ••• FROM "wagtailcore_page" WHERE ("wagtailcore_page"."depth" = 4 AND "wagtailcore_page"."path" BETWEEN '00010001000H0000' AND '00010001000HZZZZ' AND "wagtailcore_page"."slug" = 'jennifer-koh') LIMIT 21
2 similar queries.
0.59

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/views.py in serve(17)
  route_result = Page.route_for_request(request, path)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in route_for_request(1471)
  site.root_page.localized.specific.route(

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in route(1851)
  return subpage.specific.route(request, remaining_components)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in route(1842)
  subpage = self.get_children().get(slug=child_slug)

SELECT T3."id",
       T3."path",
       T3."depth",
       T3."numchild",
       T3."translation_key",
       T3."locale_id",
       T3."latest_revision_id",
       T3."live",
       T3."has_unpublished_changes",
       T3."first_published_at",
       T3."last_published_at",
       T3."live_revision_id",
       T3."go_live_at",
       T3."expire_at",
       T3."expired",
       T3."locked",
       T3."locked_at",
       T3."locked_by_id",
       T3."title",
       T3."draft_title",
       T3."slug",
       T3."content_type_id",
       T3."url_path",
       T3."owner_id",
       T3."seo_title",
       T3."show_in_menus",
       T3."search_description",
       T3."latest_revision_created_at",
       T3."alias_of_id",
       "pages_profilepage"."page_ptr_id",
       "pages_profilepage"."canonical_url",
       "pages_profilepage"."og_image_id",
       "pages_profilepage"."featured_image_id",
       "pages_profilepage"."excerpt",
       "pages_profilepage"."exclude_from_site_search",
       "pages_profilepage"."search_engine_no_index",
       "pages_profilepage"."short_bio",
       "pages_profilepage"."long_bio",
       "pages_profilepage"."image_id"
  FROM "pages_profilepage"
 INNER JOIN "wagtailcore_page" T3
    ON ("pages_profilepage"."page_ptr_id" = T3."id")
 WHERE "pages_profilepage"."page_ptr_id" = 1535
 LIMIT 21
SELECT ••• FROM "pages_profilepage" INNER JOIN "wagtailcore_page" T3 ON ("pages_profilepage"."page_ptr_id" = T3."id") WHERE "pages_profilepage"."page_ptr_id" = 1535 LIMIT 21
1.04

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/views.py in serve(17)
  route_result = Page.route_for_request(request, path)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in route_for_request(1471)
  site.root_page.localized.specific.route(

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in route(1851)
  return subpage.specific.route(request, remaining_components)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in route(1851)
  return subpage.specific.route(request, remaining_components)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/specific.py in specific(93)
  return self.get_specific()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/specific.py in get_specific(73)
  specific_obj = model_class._default_manager.get(id=self.id)

SELECT "wagtailcore_page"."id",
       "wagtailcore_page"."alias_of_id"
  FROM "wagtailcore_page"
 WHERE ("wagtailcore_page"."path" IN ('0001', '00010001', '00010001000H', '00010001000H001E') AND NOT ("wagtailcore_page"."id" = 1535))
 ORDER BY "wagtailcore_page"."path" ASC
SELECT ••• FROM "wagtailcore_page" WHERE ("wagtailcore_page"."path" IN ('0001', '00010001', '00010001000H', '00010001000H001E') AND NOT ("wagtailcore_page"."id" = 1535)) ORDER BY "wagtailcore_page"."path" ASC
0.77

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/views.py in serve(32)
  return on_serve_chain(page, request, args, kwargs)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/wagtail_hooks.py in inner(42)
  restrictions = page.get_view_restrictions()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_view_restrictions(2809)
  for page in self.get_ancestors().only("alias_of"):

SELECT "wagtailcore_pageviewrestriction"."id",
       "wagtailcore_pageviewrestriction"."restriction_type",
       "wagtailcore_pageviewrestriction"."password",
       "wagtailcore_pageviewrestriction"."page_id"
  FROM "wagtailcore_pageviewrestriction"
 WHERE "wagtailcore_pageviewrestriction"."page_id" IN (1, 859, 3, 1535)
SELECT ••• FROM "wagtailcore_pageviewrestriction" WHERE "wagtailcore_pageviewrestriction"."page_id" IN (1, 859, 3, 1535)
0.59

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/views.py in serve(32)
  return on_serve_chain(page, request, args, kwargs)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/wagtail_hooks.py in inner(44)
  for restriction in restrictions:

SELECT "wagtailcore_site"."id",
       "wagtailcore_site"."hostname",
       "wagtailcore_site"."port",
       "wagtailcore_site"."site_name",
       "wagtailcore_site"."root_page_id",
       "wagtailcore_site"."is_default_site"
  FROM "wagtailcore_site"
 WHERE "wagtailcore_site"."id" = 2
 LIMIT 21
SELECT ••• FROM "wagtailcore_site" WHERE "wagtailcore_site"."id" = 2 LIMIT 21
7 similar queries. Duplicated 7 times.
0.48

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(320)
  match = condition.eval(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/smartif.py in eval(61)
  return func(context, self.first, self.second)

/app/.heroku/python/lib/python3.13/site-packages/django/template/smartif.py in <lambda>(99)
  "and": infix(7, lambda context, x, y: x.eval(context) and y.eval(context)),

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in eval(886)
  return self.value.resolve(context, ignore_failures=True)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(901)
  current = getattr(current, bit)

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_pagetitle(548)
  self.title, settings.get("WAGTAILSEO_SEP"), self.seo_sitename

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_sitename(529)
  s = self.get_site()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_site(2390)
  return Site.objects.get(id=site_id)

1 {# Only render this template if we have what appears to be a wagtail-seo page #}
2 {% if self and self.seo_pagetitle %}
3
4 {# Standard metadata #}
5 {% block html_seo_base %}
6 <title>{% block title %}{{ self.seo_pagetitle }}{% endblock %}</title>

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/templates/wagtailseo/meta.html

SELECT "wagtailcore_site"."id",
       "wagtailcore_site"."hostname",
       "wagtailcore_site"."port",
       "wagtailcore_site"."site_name",
       "wagtailcore_site"."root_page_id",
       "wagtailcore_site"."is_default_site"
  FROM "wagtailcore_site"
 WHERE "wagtailcore_site"."id" = 2
 LIMIT 21
SELECT ••• FROM "wagtailcore_site" WHERE "wagtailcore_site"."id" = 2 LIMIT 21
7 similar queries. Duplicated 7 times.
0.43

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(901)
  current = getattr(current, bit)

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_pagetitle(548)
  self.title, settings.get("WAGTAILSEO_SEP"), self.seo_sitename

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_sitename(529)
  s = self.get_site()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_site(2390)
  return Site.objects.get(id=site_id)

3
4 {# Standard metadata #}
5 {% block html_seo_base %}
6 <title>{% block title %}{{ self.seo_pagetitle }}{% endblock %}</title>
7 <link rel="canonical" href="{% block canonical %}{{ self.seo_canonical_url }}{% endblock %}">
8 <meta name="description" content="{% block description %}{{ self.seo_description }}{% endblock %}" />
9 {% if self.seo_og_type == "article" and self.seo_author %}
10 <meta name="author" content="{% block author %}{{ self.seo_author }}{% endblock %}" />

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/templates/wagtailseo/meta.html

SELECT "wagtailseo_seosettings"."id",
       "wagtailseo_seosettings"."site_id",
       "wagtailseo_seosettings"."struct_org_type",
       "wagtailseo_seosettings"."struct_org_name",
       "wagtailseo_seosettings"."struct_org_logo_id",
       "wagtailseo_seosettings"."struct_org_image_id",
       "wagtailseo_seosettings"."struct_org_phone",
       "wagtailseo_seosettings"."struct_org_address_street",
       "wagtailseo_seosettings"."struct_org_address_locality",
       "wagtailseo_seosettings"."struct_org_address_region",
       "wagtailseo_seosettings"."struct_org_address_postal",
       "wagtailseo_seosettings"."struct_org_address_country",
       "wagtailseo_seosettings"."struct_org_geo_lat",
       "wagtailseo_seosettings"."struct_org_geo_lng",
       "wagtailseo_seosettings"."struct_org_hours",
       "wagtailseo_seosettings"."struct_org_actions",
       "wagtailseo_seosettings"."struct_org_extra_json",
       "wagtailseo_seosettings"."og_meta",
       "wagtailseo_seosettings"."twitter_meta",
       "wagtailseo_seosettings"."twitter_site",
       "wagtailseo_seosettings"."struct_meta",
       "wagtailseo_seosettings"."og_image_default_id"
  FROM "wagtailseo_seosettings"
 WHERE "wagtailseo_seosettings"."site_id" = 2
 LIMIT 21
SELECT ••• FROM "wagtailseo_seosettings" WHERE "wagtailseo_seosettings"."site_id" = 2 LIMIT 21
3 similar queries. Duplicated 3 times.
0.82

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(320)
  match = condition.eval(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in eval(886)
  return self.value.resolve(context, ignore_failures=True)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(891)
  current = current[bit]

/app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/settings/context_processors.py in __getitem__(32)
  return super().__getitem__(model_name.lower())

/app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/settings/context_processors.py in __missing__(36)
  self[model_name] = value = self.get_setting(model_name)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/settings/context_processors.py in get_setting(60)
  return Model.for_request(self.request_or_site)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/settings/models.py in for_request(128)
  site_settings = cls.for_site(site)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/settings/models.py in for_site(148)
  instance, created = queryset.get_or_create(site=site)

14
15 {# Open Graph #}
16 {% block og_seo_base %}
17 {% if settings.wagtailseo.SeoSettings.og_meta %}
18 <meta property="og:title" content="{% block og_title %}{{ self.seo_pagetitle }}{% endblock %}" />
19 <meta property="og:description" content="{% block og_description %}{{ self.seo_description }}{% endblock %}" />
20 <meta property="og:image" content="{% block og_image %}{{ self.seo_image_url }}{% endblock %}" />
21 <meta property="og:site_name" content="{% block og_site_name %}{{ self.seo_sitename }}{% endblock %}" />

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/templates/wagtailseo/meta.html

SELECT "wagtailcore_site"."id",
       "wagtailcore_site"."hostname",
       "wagtailcore_site"."port",
       "wagtailcore_site"."site_name",
       "wagtailcore_site"."root_page_id",
       "wagtailcore_site"."is_default_site"
  FROM "wagtailcore_site"
 WHERE "wagtailcore_site"."id" = 2
 LIMIT 21
SELECT ••• FROM "wagtailcore_site" WHERE "wagtailcore_site"."id" = 2 LIMIT 21
7 similar queries. Duplicated 7 times.
0.42

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(901)
  current = getattr(current, bit)

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_pagetitle(548)
  self.title, settings.get("WAGTAILSEO_SEP"), self.seo_sitename

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_sitename(529)
  s = self.get_site()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_site(2390)
  return Site.objects.get(id=site_id)

15 {# Open Graph #}
16 {% block og_seo_base %}
17 {% if settings.wagtailseo.SeoSettings.og_meta %}
18 <meta property="og:title" content="{% block og_title %}{{ self.seo_pagetitle }}{% endblock %}" />
19 <meta property="og:description" content="{% block og_description %}{{ self.seo_description }}{% endblock %}" />
20 <meta property="og:image" content="{% block og_image %}{{ self.seo_image_url }}{% endblock %}" />
21 <meta property="og:site_name" content="{% block og_site_name %}{{ self.seo_sitename }}{% endblock %}" />
22 <meta property="og:url" content="{% block og_url %}{{ self.seo_canonical_url }}{% endblock %}" />

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/templates/wagtailseo/meta.html

SELECT "wagtailcore_site"."id",
       "wagtailcore_site"."hostname",
       "wagtailcore_site"."port",
       "wagtailcore_site"."site_name",
       "wagtailcore_site"."root_page_id",
       "wagtailcore_site"."is_default_site"
  FROM "wagtailcore_site"
 WHERE "wagtailcore_site"."id" = 2
 LIMIT 21
SELECT ••• FROM "wagtailcore_site" WHERE "wagtailcore_site"."id" = 2 LIMIT 21
7 similar queries. Duplicated 7 times.
0.47

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(901)
  current = getattr(current, bit)

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_image_url(479)
  if self.seo_image:

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_image(469)
  default = SeoSettings.for_site(site=self.get_site()).og_image_default

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_site(2390)
  return Site.objects.get(id=site_id)

4 {# Standard metadata #}
5 {% block html_seo_base %}
6 <title>{% block title %}{{ self.seo_pagetitle }}{% endblock %}</title>
7 <link rel="canonical" href="{% block canonical %}{{ self.seo_canonical_url }}{% endblock %}">
8 <meta name="description" content="{% block description %}{{ self.seo_description }}{% endblock %}" />
9 {% if self.seo_og_type == "article" and self.seo_author %}
10 <meta name="author" content="{% block author %}{{ self.seo_author }}{% endblock %}" />
11 {% endif %}

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/templates/wagtailseo/meta.html

SELECT "wagtailseo_seosettings"."id",
       "wagtailseo_seosettings"."site_id",
       "wagtailseo_seosettings"."struct_org_type",
       "wagtailseo_seosettings"."struct_org_name",
       "wagtailseo_seosettings"."struct_org_logo_id",
       "wagtailseo_seosettings"."struct_org_image_id",
       "wagtailseo_seosettings"."struct_org_phone",
       "wagtailseo_seosettings"."struct_org_address_street",
       "wagtailseo_seosettings"."struct_org_address_locality",
       "wagtailseo_seosettings"."struct_org_address_region",
       "wagtailseo_seosettings"."struct_org_address_postal",
       "wagtailseo_seosettings"."struct_org_address_country",
       "wagtailseo_seosettings"."struct_org_geo_lat",
       "wagtailseo_seosettings"."struct_org_geo_lng",
       "wagtailseo_seosettings"."struct_org_hours",
       "wagtailseo_seosettings"."struct_org_actions",
       "wagtailseo_seosettings"."struct_org_extra_json",
       "wagtailseo_seosettings"."og_meta",
       "wagtailseo_seosettings"."twitter_meta",
       "wagtailseo_seosettings"."twitter_site",
       "wagtailseo_seosettings"."struct_meta",
       "wagtailseo_seosettings"."og_image_default_id"
  FROM "wagtailseo_seosettings"
 WHERE "wagtailseo_seosettings"."site_id" = 2
 LIMIT 21
SELECT ••• FROM "wagtailseo_seosettings" WHERE "wagtailseo_seosettings"."site_id" = 2 LIMIT 21
3 similar queries. Duplicated 3 times.
0.56

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(901)
  current = getattr(current, bit)

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_image_url(479)
  if self.seo_image:

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_image(469)
  default = SeoSettings.for_site(site=self.get_site()).og_image_default

/app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/settings/models.py in for_site(148)
  instance, created = queryset.get_or_create(site=site)

4 {# Standard metadata #}
5 {% block html_seo_base %}
6 <title>{% block title %}{{ self.seo_pagetitle }}{% endblock %}</title>
7 <link rel="canonical" href="{% block canonical %}{{ self.seo_canonical_url }}{% endblock %}">
8 <meta name="description" content="{% block description %}{{ self.seo_description }}{% endblock %}" />
9 {% if self.seo_og_type == "article" and self.seo_author %}
10 <meta name="author" content="{% block author %}{{ self.seo_author }}{% endblock %}" />
11 {% endif %}

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/templates/wagtailseo/meta.html

SELECT "wagtailcore_site"."id",
       "wagtailcore_site"."hostname",
       "wagtailcore_site"."port",
       "wagtailcore_site"."site_name",
       "wagtailcore_site"."root_page_id",
       "wagtailcore_site"."is_default_site"
  FROM "wagtailcore_site"
 WHERE "wagtailcore_site"."id" = 2
 LIMIT 21
SELECT ••• FROM "wagtailcore_site" WHERE "wagtailcore_site"."id" = 2 LIMIT 21
7 similar queries. Duplicated 7 times.
0.44

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(901)
  current = getattr(current, bit)

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_sitename(529)
  s = self.get_site()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_site(2390)
  return Site.objects.get(id=site_id)

18 <meta property="og:title" content="{% block og_title %}{{ self.seo_pagetitle }}{% endblock %}" />
19 <meta property="og:description" content="{% block og_description %}{{ self.seo_description }}{% endblock %}" />
20 <meta property="og:image" content="{% block og_image %}{{ self.seo_image_url }}{% endblock %}" />
21 <meta property="og:site_name" content="{% block og_site_name %}{{ self.seo_sitename }}{% endblock %}" />
22 <meta property="og:url" content="{% block og_url %}{{ self.seo_canonical_url }}{% endblock %}" />
23 <meta property="og:type" content="{% block og_type %}{{ self.seo_og_type }}{% endblock %}" />
24 {% if self.seo_og_type == "article" and self.seo_author %}
25 <meta property="article:author" content="{% block og_author %}{{ self.seo_author }}{% endblock %}" />

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/templates/wagtailseo/meta.html

SELECT "wagtailcore_site"."id",
       "wagtailcore_site"."hostname",
       "wagtailcore_site"."port",
       "wagtailcore_site"."site_name",
       "wagtailcore_site"."root_page_id",
       "wagtailcore_site"."is_default_site"
  FROM "wagtailcore_site"
 WHERE "wagtailcore_site"."id" = 2
 LIMIT 21
SELECT ••• FROM "wagtailcore_site" WHERE "wagtailcore_site"."id" = 2 LIMIT 21
7 similar queries. Duplicated 7 times.
0.45

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(901)
  current = getattr(current, bit)

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_pagetitle(548)
  self.title, settings.get("WAGTAILSEO_SEP"), self.seo_sitename

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_sitename(529)
  s = self.get_site()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_site(2390)
  return Site.objects.get(id=site_id)

36 {% block twitter_seo_base %}
37 {% if settings.wagtailseo.SeoSettings.twitter_meta %}
38 <meta name="twitter:card" content="{% block twitter_card %}{{ self.seo_twitter_card_content }}{% endblock %}" />
39 <meta name="twitter:title" content="{% block twitter_title %}{{ self.seo_pagetitle }}{% endblock %}">
40 <meta name="twitter:image" content="{% block twitter_image %}{{ self.seo_image_url }}{% endblock %}">
41 <meta name="twitter:description" content="{% block twitter_description %}{{ self.seo_description }}{% endblock %}">
42 <meta name="twitter:site" content="{% block twitter_site %}{{ settings.wagtailseo.SeoSettings.at_twitter_site }}{% endblock %}" />
43 {% endif %}

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/templates/wagtailseo/meta.html

SELECT "wagtailcore_site"."id",
       "wagtailcore_site"."hostname",
       "wagtailcore_site"."port",
       "wagtailcore_site"."site_name",
       "wagtailcore_site"."root_page_id",
       "wagtailcore_site"."is_default_site"
  FROM "wagtailcore_site"
 WHERE "wagtailcore_site"."id" = 2
 LIMIT 21
SELECT ••• FROM "wagtailcore_site" WHERE "wagtailcore_site"."id" = 2 LIMIT 21
7 similar queries. Duplicated 7 times.
0.50

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(901)
  current = getattr(current, bit)

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_image_url(479)
  if self.seo_image:

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_image(469)
  default = SeoSettings.for_site(site=self.get_site()).og_image_default

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_site(2390)
  return Site.objects.get(id=site_id)

1 {# Only render this template if we have what appears to be a wagtail-seo page #}
2 {% if self and self.seo_pagetitle %}
3
4 {# Standard metadata #}

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/templates/wagtailseo/meta.html

SELECT "wagtailseo_seosettings"."id",
       "wagtailseo_seosettings"."site_id",
       "wagtailseo_seosettings"."struct_org_type",
       "wagtailseo_seosettings"."struct_org_name",
       "wagtailseo_seosettings"."struct_org_logo_id",
       "wagtailseo_seosettings"."struct_org_image_id",
       "wagtailseo_seosettings"."struct_org_phone",
       "wagtailseo_seosettings"."struct_org_address_street",
       "wagtailseo_seosettings"."struct_org_address_locality",
       "wagtailseo_seosettings"."struct_org_address_region",
       "wagtailseo_seosettings"."struct_org_address_postal",
       "wagtailseo_seosettings"."struct_org_address_country",
       "wagtailseo_seosettings"."struct_org_geo_lat",
       "wagtailseo_seosettings"."struct_org_geo_lng",
       "wagtailseo_seosettings"."struct_org_hours",
       "wagtailseo_seosettings"."struct_org_actions",
       "wagtailseo_seosettings"."struct_org_extra_json",
       "wagtailseo_seosettings"."og_meta",
       "wagtailseo_seosettings"."twitter_meta",
       "wagtailseo_seosettings"."twitter_site",
       "wagtailseo_seosettings"."struct_meta",
       "wagtailseo_seosettings"."og_image_default_id"
  FROM "wagtailseo_seosettings"
 WHERE "wagtailseo_seosettings"."site_id" = 2
 LIMIT 21
SELECT ••• FROM "wagtailseo_seosettings" WHERE "wagtailseo_seosettings"."site_id" = 2 LIMIT 21
3 similar queries. Duplicated 3 times.
0.63

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(901)
  current = getattr(current, bit)

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_image_url(479)
  if self.seo_image:

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_image(469)
  default = SeoSettings.for_site(site=self.get_site()).og_image_default

/app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/settings/models.py in for_site(148)
  instance, created = queryset.get_or_create(site=site)

1 {# Only render this template if we have what appears to be a wagtail-seo page #}
2 {% if self and self.seo_pagetitle %}
3
4 {# Standard metadata #}

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/templates/wagtailseo/meta.html

SELECT "alerts_bannersettings"."id",
       "alerts_bannersettings"."banner_id"
  FROM "alerts_bannersettings"
 ORDER BY "alerts_bannersettings"."id" ASC
 LIMIT 1
SELECT ••• FROM "alerts_bannersettings" ORDER BY "alerts_bannersettings"."id" ASC LIMIT 1
0.74

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(359)
  _dict = self.func(*resolved_args, **resolved_kwargs)

/app/alerts/templatetags/alert_tags.py in alert_banner(10)
  settings = BannerSettings.load(request_or_site=context['request'])

/app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/settings/models.py in load(202)
  obj = cls._get_or_create()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/settings/models.py in _get_or_create(176)
  first_obj = cls.base_queryset().first()

37 <body class="{% block body_class %}{% endblock %}">
38 {% include "components/analytics-no-script.html" %}
39 {% wagtailuserbar %}
40 {% alert_banner %}
41 {% include "header.html" %}
42 <main id="main-content">
43 <div class="c-page">
44 {% block content %}{% endblock %}

/app/templates/base.html

SELECT "construkt_element"."id",
       "construkt_element"."name",
       "construkt_element"."content"
  FROM "construkt_element"
 WHERE "construkt_element"."name" = 'Main Menu Card'
 ORDER BY "construkt_element"."id" ASC
 LIMIT 1
SELECT ••• FROM "construkt_element" WHERE "construkt_element"."name" = 'Main Menu Card' ORDER BY "construkt_element"."id" ASC LIMIT 1
0.59

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(359)
  _dict = self.func(*resolved_args, **resolved_kwargs)

/app/construkt/templatetags/construkt_tags.py in element(65)
  "element": Element.objects.filter(name=element_name).first(),

123 </div>
124 <div class="c-navigation__element">
125 {% load construkt_tags %}
126 {% element "Main Menu Card" %}
127 </div>
128 </div>
129 <div class="o-grid__cell u-2/5@desktop">
130 <nav class="c-navigation__nav js-trap-focus">

/app/templates/header.html

SELECT "wagtailcore_page"."id",
       "wagtailcore_page"."path",
       "wagtailcore_page"."depth",
       "wagtailcore_page"."numchild",
       "wagtailcore_page"."translation_key",
       "wagtailcore_page"."locale_id",
       "wagtailcore_page"."latest_revision_id",
       "wagtailcore_page"."live",
       "wagtailcore_page"."has_unpublished_changes",
       "wagtailcore_page"."first_published_at",
       "wagtailcore_page"."last_published_at",
       "wagtailcore_page"."live_revision_id",
       "wagtailcore_page"."go_live_at",
       "wagtailcore_page"."expire_at",
       "wagtailcore_page"."expired",
       "wagtailcore_page"."locked",
       "wagtailcore_page"."locked_at",
       "wagtailcore_page"."locked_by_id",
       "wagtailcore_page"."title",
       "wagtailcore_page"."draft_title",
       "wagtailcore_page"."slug",
       "wagtailcore_page"."content_type_id",
       "wagtailcore_page"."url_path",
       "wagtailcore_page"."owner_id",
       "wagtailcore_page"."seo_title",
       "wagtailcore_page"."show_in_menus",
       "wagtailcore_page"."search_description",
       "wagtailcore_page"."latest_revision_created_at",
       "wagtailcore_page"."alias_of_id"
  FROM "wagtailcore_page"
 WHERE "wagtailcore_page"."id" IN (767)
 ORDER BY "wagtailcore_page"."path" ASC
SELECT ••• FROM "wagtailcore_page" WHERE "wagtailcore_page"."id" IN (767) ORDER BY "wagtailcore_page"."path" ASC
0.56

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(381)
  return t.render(new_context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(550)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(210)
  for i, item in enumerate(values):

<frozen _collections_abc> in __iter__(1031)
  

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in __getitem__(684)
  self._prefetch_blocks(raw_value["type"])

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in _prefetch_blocks(720)
  converted_values = child_block.bulk_to_python(raw_values.values())

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/struct_block.py in bulk_to_python(212)
  converted_values = child_block.bulk_to_python(raw_values)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/list_block.py in bulk_to_python(305)
  converted_values = self.child_block.bulk_to_python(raw_values)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/struct_block.py in bulk_to_python(212)
  converted_values = child_block.bulk_to_python(raw_values)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/struct_block.py in bulk_to_python(212)
  converted_values = child_block.bulk_to_python(raw_values)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in bulk_to_python(318)
  block_type: self.child_blocks[block_type].bulk_to_python(child_input_list)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/struct_block.py in bulk_to_python(212)
  converted_values = child_block.bulk_to_python(raw_values)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/field_block.py in bulk_to_python(829)
  objects = self.model_class.objects.in_bulk(values)

2
3 <div class="c-element {{ block.value.settings }}">
4 {% with block.value.element as element %}
5 {% for block in element.content %}
6 {% include_block block %}
7 {% endfor %}
8 {% endwith %}
9 </div>

/app/construkt/templates/construkt/sections/elements.html

SELECT "wagtailimages_image"."id",
       "wagtailimages_image"."collection_id",
       "wagtailimages_image"."title",
       "wagtailimages_image"."file",
       "wagtailimages_image"."description",
       "wagtailimages_image"."width",
       "wagtailimages_image"."height",
       "wagtailimages_image"."created_at",
       "wagtailimages_image"."uploaded_by_user_id",
       "wagtailimages_image"."focal_point_x",
       "wagtailimages_image"."focal_point_y",
       "wagtailimages_image"."focal_point_width",
       "wagtailimages_image"."focal_point_height",
       "wagtailimages_image"."file_size",
       "wagtailimages_image"."file_hash"
  FROM "wagtailimages_image"
 WHERE "wagtailimages_image"."id" IN (34)
SELECT ••• FROM "wagtailimages_image" WHERE "wagtailimages_image"."id" IN (34)
1.13

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(381)
  return t.render(new_context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(550)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(210)
  for i, item in enumerate(values):

<frozen _collections_abc> in __iter__(1031)
  

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in __getitem__(684)
  self._prefetch_blocks(raw_value["type"])

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in _prefetch_blocks(720)
  converted_values = child_block.bulk_to_python(raw_values.values())

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/struct_block.py in bulk_to_python(212)
  converted_values = child_block.bulk_to_python(raw_values)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/list_block.py in bulk_to_python(305)
  converted_values = self.child_block.bulk_to_python(raw_values)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/struct_block.py in bulk_to_python(212)
  converted_values = child_block.bulk_to_python(raw_values)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/field_block.py in bulk_to_python(829)
  objects = self.model_class.objects.in_bulk(values)

2
3 <div class="c-element {{ block.value.settings }}">
4 {% with block.value.element as element %}
5 {% for block in element.content %}
6 {% include_block block %}
7 {% endfor %}
8 {% endwith %}
9 </div>

/app/construkt/templates/construkt/sections/elements.html

SELECT "navigation_menu"."id",
       "navigation_menu"."header_menu",
       "navigation_menu"."footer_menu"
  FROM "navigation_menu"
 ORDER BY "navigation_menu"."id" ASC
 LIMIT 1
SELECT ••• FROM "navigation_menu" ORDER BY "navigation_menu"."id" ASC LIMIT 1
2 similar queries. Duplicated 2 times.
0.65

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(22)
  menu = Menu.objects.first()

130 <nav class="c-navigation__nav js-trap-focus">
131 <h2 class="u-hidden-visually">Main Navigation</h2>
132 <ul class="c-main-menu__items">
133 {% nav_menu 'header_menu' %}
134 </ul>
135 </nav>
136 </div>
137 </div>

/app/templates/header.html

SELECT "wagtailcore_page"."id",
       "wagtailcore_page"."path",
       "wagtailcore_page"."depth",
       "wagtailcore_page"."numchild",
       "wagtailcore_page"."translation_key",
       "wagtailcore_page"."locale_id",
       "wagtailcore_page"."latest_revision_id",
       "wagtailcore_page"."live",
       "wagtailcore_page"."has_unpublished_changes",
       "wagtailcore_page"."first_published_at",
       "wagtailcore_page"."last_published_at",
       "wagtailcore_page"."live_revision_id",
       "wagtailcore_page"."go_live_at",
       "wagtailcore_page"."expire_at",
       "wagtailcore_page"."expired",
       "wagtailcore_page"."locked",
       "wagtailcore_page"."locked_at",
       "wagtailcore_page"."locked_by_id",
       "wagtailcore_page"."title",
       "wagtailcore_page"."draft_title",
       "wagtailcore_page"."slug",
       "wagtailcore_page"."content_type_id",
       "wagtailcore_page"."url_path",
       "wagtailcore_page"."owner_id",
       "wagtailcore_page"."seo_title",
       "wagtailcore_page"."show_in_menus",
       "wagtailcore_page"."search_description",
       "wagtailcore_page"."latest_revision_created_at",
       "wagtailcore_page"."alias_of_id"
  FROM "wagtailcore_page"
 WHERE "wagtailcore_page"."id" IN (4, 70, 661, 34, 265, 630, 166)
 ORDER BY "wagtailcore_page"."path" ASC
SELECT ••• FROM "wagtailcore_page" WHERE "wagtailcore_page"."id" IN (4, 70, 661, 34, 265, 630, 166) ORDER BY "wagtailcore_page"."path" ASC
0.66

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(30)
  menu_items = menu_content.blocks_by_name("menu")

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in blocks_by_name(754)
  return lookup[block_name]

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in __getitem__(606)
  block = self.stream_value[i]

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in __getitem__(684)
  self._prefetch_blocks(raw_value["type"])

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in _prefetch_blocks(720)
  converted_values = child_block.bulk_to_python(raw_values.values())

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/struct_block.py in bulk_to_python(212)
  converted_values = child_block.bulk_to_python(raw_values)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in bulk_to_python(318)
  block_type: self.child_blocks[block_type].bulk_to_python(child_input_list)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/struct_block.py in bulk_to_python(212)
  converted_values = child_block.bulk_to_python(raw_values)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/field_block.py in bulk_to_python(829)
  objects = self.model_class.objects.in_bulk(values)

130 <nav class="c-navigation__nav js-trap-focus">
131 <h2 class="u-hidden-visually">Main Navigation</h2>
132 <ul class="c-main-menu__items">
133 {% nav_menu 'header_menu' %}
134 </ul>
135 </nav>
136 </div>
137 </div>

/app/templates/header.html

SELECT "wagtailimages_image"."id",
       "wagtailimages_image"."collection_id",
       "wagtailimages_image"."title",
       "wagtailimages_image"."file",
       "wagtailimages_image"."description",
       "wagtailimages_image"."width",
       "wagtailimages_image"."height",
       "wagtailimages_image"."created_at",
       "wagtailimages_image"."uploaded_by_user_id",
       "wagtailimages_image"."focal_point_x",
       "wagtailimages_image"."focal_point_y",
       "wagtailimages_image"."focal_point_width",
       "wagtailimages_image"."focal_point_height",
       "wagtailimages_image"."file_size",
       "wagtailimages_image"."file_hash"
  FROM "wagtailimages_image"
 WHERE "wagtailimages_image"."id" = 836
 LIMIT 21
SELECT ••• FROM "wagtailimages_image" WHERE "wagtailimages_image"."id" = 836 LIMIT 21
0.54

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(320)
  match = condition.eval(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in eval(886)
  return self.value.resolve(context, ignore_failures=True)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(901)
  current = getattr(current, bit)

7 class="c-masthead c-masthead--page c-masthead--has-bg-colour u-brand-purple-bg c-masthead--has-image c-masthead--style-inline c-masthead--profile-single">
8 <div class="c-masthead__media">
9 <div class="c-masthead__img c-masthead__img--inline">
10 {% if page.image %}
11 {% image page.image fill-640x640 alt=page.title %}
12 {% endif %}
13 </div>
14 </div>

/app/profiles/templates/profiles/single.html

SELECT "wagtailimages_rendition"."id",
       "wagtailimages_rendition"."filter_spec",
       "wagtailimages_rendition"."file",
       "wagtailimages_rendition"."width",
       "wagtailimages_rendition"."height",
       "wagtailimages_rendition"."focal_point_key",
       "wagtailimages_rendition"."image_id"
  FROM "wagtailimages_rendition"
 WHERE ("wagtailimages_rendition"."image_id" = 836 AND "wagtailimages_rendition"."filter_spec" = 'fill-640x640' AND "wagtailimages_rendition"."focal_point_key" = '2e16d0ba')
SELECT ••• FROM "wagtailimages_rendition" WHERE ("wagtailimages_rendition"."image_id" = 836 AND "wagtailimages_rendition"."filter_spec" = 'fill-640x640' AND "wagtailimages_rendition"."focal_point_key" = '2e16d0ba')
0.82

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/templatetags/wagtailimages_tags.py in render(150)
  rendition = get_rendition_or_not_found(

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/shortcuts.py in get_rendition_or_not_found(13)
  return image.get_rendition(specs)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/models.py in get_rendition(518)
  rendition = self.find_existing_rendition(filter)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/models.py in find_existing_rendition(546)
  return self.find_existing_renditions(filter)[filter]

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/models.py in find_existing_renditions(678)
  for rendition in self.renditions.filter(lookup_q):

8 <div class="c-masthead__media">
9 <div class="c-masthead__img c-masthead__img--inline">
10 {% if page.image %}
11 {% image page.image fill-640x640 alt=page.title %}
12 {% endif %}
13 </div>
14 </div>
15 <div class="c-masthead__content">

/app/profiles/templates/profiles/single.html

SELECT "navigation_menu"."id",
       "navigation_menu"."header_menu",
       "navigation_menu"."footer_menu"
  FROM "navigation_menu"
 ORDER BY "navigation_menu"."id" ASC
 LIMIT 1
SELECT ••• FROM "navigation_menu" ORDER BY "navigation_menu"."id" ASC LIMIT 1
2 similar queries. Duplicated 2 times.
0.50

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(22)
  menu = Menu.objects.first()

43 {% load nav_tags %}
44 <nav class="c-footer__nav">
45 <ul>
46 {% nav_menu 'footer_menu' %}
47 </ul>
48 </nav>
49 <ul class="c-footer__social">
50 <li class="c-footer__social-item c-footer__social-item--instagram">

/app/templates/footer.html

SELECT "wagtailcore_page"."id",
       "wagtailcore_page"."path",
       "wagtailcore_page"."depth",
       "wagtailcore_page"."numchild",
       "wagtailcore_page"."translation_key",
       "wagtailcore_page"."locale_id",
       "wagtailcore_page"."latest_revision_id",
       "wagtailcore_page"."live",
       "wagtailcore_page"."has_unpublished_changes",
       "wagtailcore_page"."first_published_at",
       "wagtailcore_page"."last_published_at",
       "wagtailcore_page"."live_revision_id",
       "wagtailcore_page"."go_live_at",
       "wagtailcore_page"."expire_at",
       "wagtailcore_page"."expired",
       "wagtailcore_page"."locked",
       "wagtailcore_page"."locked_at",
       "wagtailcore_page"."locked_by_id",
       "wagtailcore_page"."title",
       "wagtailcore_page"."draft_title",
       "wagtailcore_page"."slug",
       "wagtailcore_page"."content_type_id",
       "wagtailcore_page"."url_path",
       "wagtailcore_page"."owner_id",
       "wagtailcore_page"."seo_title",
       "wagtailcore_page"."show_in_menus",
       "wagtailcore_page"."search_description",
       "wagtailcore_page"."latest_revision_created_at",
       "wagtailcore_page"."alias_of_id"
  FROM "wagtailcore_page"
 WHERE "wagtailcore_page"."id" IN (68, 265, 70, 661, 1024, 1026, 1025, 562)
 ORDER BY "wagtailcore_page"."path" ASC
SELECT ••• FROM "wagtailcore_page" WHERE "wagtailcore_page"."id" IN (68, 265, 70, 661, 1024, 1026, 1025, 562) ORDER BY "wagtailcore_page"."path" ASC
0.71

Connection: default

Transaction status: Idle

/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(30)
  menu_items = menu_content.blocks_by_name("menu")

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in blocks_by_name(754)
  return lookup[block_name]

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in __getitem__(606)
  block = self.stream_value[i]

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in __getitem__(684)
  self._prefetch_blocks(raw_value["type"])

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in _prefetch_blocks(720)
  converted_values = child_block.bulk_to_python(raw_values.values())

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/struct_block.py in bulk_to_python(212)
  converted_values = child_block.bulk_to_python(raw_values)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/stream_block.py in bulk_to_python(318)
  block_type: self.child_blocks[block_type].bulk_to_python(child_input_list)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/struct_block.py in bulk_to_python(212)
  converted_values = child_block.bulk_to_python(raw_values)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/field_block.py in bulk_to_python(829)
  objects = self.model_class.objects.in_bulk(values)

43 {% load nav_tags %}
44 <nav class="c-footer__nav">
45 <ul>
46 {% nav_menu 'footer_menu' %}
47 </ul>
48 </nav>
49 <ul class="c-footer__social">
50 <li class="c-footer__social-item c-footer__social-item--instagram">

/app/templates/footer.html

Static files (277 found, 8 used)

Static file path

  1. /app/src_compiled

Static file apps

  1. wagtail.contrib.table_block
  2. wagtail.embeds
  3. wagtail.snippets
  4. wagtail.documents
  5. wagtail.images
  6. wagtail.contrib.search_promotions
  7. wagtail.admin
  8. django.contrib.admin
  9. wagtail_tabbed_structblock
  10. debug_toolbar

Static files

css/main.css
/app/src_compiled/css/main.css
main-D1Z_OsvF.js
/app/src_compiled/main-D1Z_OsvF.js
instancelist-Dej7tddG.js
/app/src_compiled/instancelist-Dej7tddG.js
images/favicon/favicon-96x96.png
/app/src_compiled/images/favicon/favicon-96x96.png
images/favicon/favicon.svg
/app/src_compiled/images/favicon/favicon.svg
images/favicon/favicon.ico
/app/src_compiled/images/favicon/favicon.ico
images/favicon/apple-touch-icon.png
/app/src_compiled/images/favicon/apple-touch-icon.png
site.webmanifest
/app/src_compiled/site.webmanifest

django.contrib.staticfiles.finders.FileSystemFinder (51 files)

Path Location
error-page.html /app/src_compiled/error-page.html
instancelist-Dej7tddG.js /app/src_compiled/instancelist-Dej7tddG.js
admin-YgD4KT-0.js /app/src_compiled/admin-YgD4KT-0.js
site.webmanifest /app/src_compiled/site.webmanifest
main-D1Z_OsvF.js.map /app/src_compiled/main-D1Z_OsvF.js.map
admin-YgD4KT-0.js.map /app/src_compiled/admin-YgD4KT-0.js.map
instancelist-Dej7tddG.js.map /app/src_compiled/instancelist-Dej7tddG.js.map
main-D1Z_OsvF.js /app/src_compiled/main-D1Z_OsvF.js
fonts/gotham-bold-webfont.woff2 /app/src_compiled/fonts/gotham-bold-webfont.woff2
fonts/lg.ttf /app/src_compiled/fonts/lg.ttf
fonts/dmserifdisplay-regular-webfont.woff2 /app/src_compiled/fonts/dmserifdisplay-regular-webfont.woff2
fonts/gothambook-webfont.woff2 /app/src_compiled/fonts/gothambook-webfont.woff2
fonts/dmserifdisplay-regular-webfont.woff /app/src_compiled/fonts/dmserifdisplay-regular-webfont.woff
fonts/gotham-bookitalic-webfont.woff2 /app/src_compiled/fonts/gotham-bookitalic-webfont.woff2
fonts/gotham-bookitalic-webfont.woff /app/src_compiled/fonts/gotham-bookitalic-webfont.woff
fonts/gothambook-webfont.woff /app/src_compiled/fonts/gothambook-webfont.woff
fonts/dmserifdisplay-italic-webfont.woff /app/src_compiled/fonts/dmserifdisplay-italic-webfont.woff
fonts/gotham-bold-webfont.woff /app/src_compiled/fonts/gotham-bold-webfont.woff
fonts/gotham-mediumitalic-webfont.woff2 /app/src_compiled/fonts/gotham-mediumitalic-webfont.woff2
fonts/dmserifdisplay-italic-webfont.woff2 /app/src_compiled/fonts/dmserifdisplay-italic-webfont.woff2
fonts/gotham-bolditalic-webfont.woff2 /app/src_compiled/fonts/gotham-bolditalic-webfont.woff2
fonts/lg.woff2 /app/src_compiled/fonts/lg.woff2
fonts/gotham-bolditalic-webfont.woff /app/src_compiled/fonts/gotham-bolditalic-webfont.woff
fonts/lg.woff /app/src_compiled/fonts/lg.woff
fonts/gotham-medium-webfont.woff2 /app/src_compiled/fonts/gotham-medium-webfont.woff2
fonts/gotham-mediumitalic-webfont.woff /app/src_compiled/fonts/gotham-mediumitalic-webfont.woff
fonts/gotham-medium-webfont.woff /app/src_compiled/fonts/gotham-medium-webfont.woff
.vite/manifest.json /app/src_compiled/.vite/manifest.json
css/main.css /app/src_compiled/css/main.css
css/admin.css /app/src_compiled/css/admin.css
css/scss.css /app/src_compiled/css/scss.css
chunks/p-f67a545a.entry-VVK3cLfg.js.map /app/src_compiled/chunks/p-f67a545a.entry-VVK3cLfg.js.map
chunks/p-f67a545a.entry-VVK3cLfg.js /app/src_compiled/chunks/p-f67a545a.entry-VVK3cLfg.js
images/billboard_mask.svg /app/src_compiled/images/billboard_mask.svg
images/loading.gif /app/src_compiled/images/loading.gif
images/donation-block-bg.jpg /app/src_compiled/images/donation-block-bg.jpg
images/lg.svg /app/src_compiled/images/lg.svg
images/billboard_mask--small.svg /app/src_compiled/images/billboard_mask--small.svg
images/donation-block-bg2.jpg /app/src_compiled/images/donation-block-bg2.jpg
images/gpmf-backup-event-image.jpg /app/src_compiled/images/gpmf-backup-event-image.jpg
images/favicon/web-app-manifest-512x512.png /app/src_compiled/images/favicon/web-app-manifest-512x512.png
images/favicon/favicon.svg /app/src_compiled/images/favicon/favicon.svg
images/favicon/favicon.ico /app/src_compiled/images/favicon/favicon.ico
images/favicon/site.webmanifest /app/src_compiled/images/favicon/site.webmanifest
images/favicon/apple-touch-icon.png /app/src_compiled/images/favicon/apple-touch-icon.png
images/favicon/favicon-96x96.png /app/src_compiled/images/favicon/favicon-96x96.png
images/favicon/web-app-manifest-192x192.png /app/src_compiled/images/favicon/web-app-manifest-192x192.png
images/images/billboard_mask.svg /app/src_compiled/images/images/billboard_mask.svg
images/images/loading.gif /app/src_compiled/images/images/loading.gif
images/images/GPMF_logo.svg /app/src_compiled/images/images/GPMF_logo.svg
images/images/billboard_mask--small.svg /app/src_compiled/images/images/billboard_mask--small.svg

django.contrib.staticfiles.finders.AppDirectoriesFinder (226 files)

Path Location
table_block/css/vendor/handsontable-6.2.2.full.min.css /app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/table_block/static/table_block/css/vendor/handsontable-6.2.2.full.min.css
table_block/js/table.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/table_block/static/table_block/js/table.js
table_block/js/vendor/handsontable-6.2.2.full.min.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/table_block/static/table_block/js/vendor/handsontable-6.2.2.full.min.js
wagtailembeds/js/embed-chooser-modal.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/embeds/static/wagtailembeds/js/embed-chooser-modal.js
wagtailsnippets/js/snippet-chooser-telepath.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/snippets/static/wagtailsnippets/js/snippet-chooser-telepath.js
wagtailsnippets/js/snippet-chooser.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/snippets/static/wagtailsnippets/js/snippet-chooser.js
wagtaildocs/js/document-chooser.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/documents/static/wagtaildocs/js/document-chooser.js
wagtaildocs/js/add-multiple.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/documents/static/wagtaildocs/js/add-multiple.js
wagtaildocs/js/document-chooser-modal.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/documents/static/wagtaildocs/js/document-chooser-modal.js
wagtaildocs/js/document-chooser-telepath.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/documents/static/wagtaildocs/js/document-chooser-telepath.js
wagtailimages/js/image-url-generator.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/images/static/wagtailimages/js/image-url-generator.js
wagtailimages/js/image-chooser.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/images/static/wagtailimages/js/image-chooser.js
wagtailimages/js/image-chooser-telepath.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/images/static/wagtailimages/js/image-chooser-telepath.js
wagtailimages/js/image-block.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/images/static/wagtailimages/js/image-block.js
wagtailimages/js/add-multiple.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/images/static/wagtailimages/js/add-multiple.js
wagtailimages/js/focal-point-chooser.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/images/static/wagtailimages/js/focal-point-chooser.js
wagtailimages/js/image-chooser-modal.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/images/static/wagtailimages/js/image-chooser-modal.js
wagtailimages/js/vendor/jquery.fileupload-image.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/images/static/wagtailimages/js/vendor/jquery.fileupload-image.js
wagtailimages/js/vendor/jquery.Jcrop.min.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/images/static/wagtailimages/js/vendor/jquery.Jcrop.min.js
wagtailimages/js/vendor/jquery.fileupload-validate.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/images/static/wagtailimages/js/vendor/jquery.fileupload-validate.js
wagtailimages/js/vendor/load-image.min.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/images/static/wagtailimages/js/vendor/load-image.min.js
wagtailimages/images/Jcrop.gif /app/.heroku/python/lib/python3.13/site-packages/wagtail/images/static/wagtailimages/images/Jcrop.gif
wagtailsearchpromotions/js/query-chooser-modal.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/contrib/search_promotions/static/wagtailsearchpromotions/js/query-chooser-modal.js
wagtailadmin/css/core.css /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/css/core.css
wagtailadmin/css/core.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/css/core.js
wagtailadmin/css/panels/streamfield.css /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/css/panels/streamfield.css
wagtailadmin/css/panels/streamfield.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/css/panels/streamfield.js
wagtailadmin/css/panels/draftail.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/css/panels/draftail.js
wagtailadmin/css/panels/draftail.css /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/css/panels/draftail.css
wagtailadmin/js/privacy-switch.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/privacy-switch.js
wagtailadmin/js/bulk-actions.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/bulk-actions.js
wagtailadmin/js/page-chooser-modal.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/page-chooser-modal.js
wagtailadmin/js/icons.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/icons.js
wagtailadmin/js/chooser-widget.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/chooser-widget.js
wagtailadmin/js/filtered-select.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/filtered-select.js
wagtailadmin/js/comments.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/comments.js
wagtailadmin/js/workflow-action.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/workflow-action.js
wagtailadmin/js/vendor.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor.js
wagtailadmin/js/task-chooser-modal.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/task-chooser-modal.js
wagtailadmin/js/chooser-widget-telepath.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/chooser-widget-telepath.js
wagtailadmin/js/core.js.LICENSE.txt /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/core.js.LICENSE.txt
wagtailadmin/js/page-chooser-telepath.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/page-chooser-telepath.js
wagtailadmin/js/draftail.js.LICENSE.txt /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/draftail.js.LICENSE.txt
wagtailadmin/js/userbar.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/userbar.js
wagtailadmin/js/vendor.js.LICENSE.txt /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor.js.LICENSE.txt
wagtailadmin/js/modal-workflow.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/modal-workflow.js
wagtailadmin/js/page-chooser.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/page-chooser.js
wagtailadmin/js/sidebar.js.LICENSE.txt /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/sidebar.js.LICENSE.txt
wagtailadmin/js/chooser-modal.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/chooser-modal.js
wagtailadmin/js/task-chooser.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/task-chooser.js
wagtailadmin/js/sidebar.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/sidebar.js
wagtailadmin/js/userbar.js.LICENSE.txt /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/userbar.js.LICENSE.txt
wagtailadmin/js/draftail.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/draftail.js
wagtailadmin/js/core.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/core.js
wagtailadmin/js/date-time-chooser.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/date-time-chooser.js
wagtailadmin/js/wagtailadmin.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/wagtailadmin.js
wagtailadmin/js/telepath/widgets.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/telepath/widgets.js
wagtailadmin/js/telepath/blocks.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/telepath/blocks.js
wagtailadmin/js/telepath/telepath.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/telepath/telepath.js
wagtailadmin/js/vendor/jquery.iframe-transport.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/jquery.iframe-transport.js
wagtailadmin/js/vendor/bootstrap-modal.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/bootstrap-modal.js
wagtailadmin/js/vendor/jquery.ba-throttle-debounce.min.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/jquery.ba-throttle-debounce.min.js
wagtailadmin/js/vendor/tag-it.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/tag-it.js
wagtailadmin/js/vendor/jquery-ui-1.13.2.min.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/jquery-ui-1.13.2.min.js
wagtailadmin/js/vendor/jquery-3.6.0.min.js.LICENSE.txt /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/jquery-3.6.0.min.js.LICENSE.txt
wagtailadmin/js/vendor/jquery.datetimepicker.js.LICENSE.txt /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/jquery.datetimepicker.js.LICENSE.txt
wagtailadmin/js/vendor/jquery.fileupload-process.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/jquery.fileupload-process.js
wagtailadmin/js/vendor/jquery.fileupload.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/jquery.fileupload.js
wagtailadmin/js/vendor/jquery-3.6.0.min.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/jquery-3.6.0.min.js
wagtailadmin/js/vendor/jquery-ui-1.13.2.min.js.LICENSE.txt /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/jquery-ui-1.13.2.min.js.LICENSE.txt
wagtailadmin/js/vendor/bootstrap-transition.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/bootstrap-transition.js
wagtailadmin/js/vendor/jquery.datetimepicker.js /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/js/vendor/jquery.datetimepicker.js
wagtailadmin/images/bg-body.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/bg-body.svg
wagtailadmin/images/default-user-avatar.png /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/default-user-avatar.png
wagtailadmin/images/bg-dark-diag.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/bg-dark-diag.svg
wagtailadmin/images/favicon.ico /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/favicon.ico
wagtailadmin/images/email-header.jpg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/email-header.jpg
wagtailadmin/images/bg-light-diag.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/bg-light-diag.svg
wagtailadmin/images/transparency.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/transparency.svg
wagtailadmin/images/icons/arrow-right.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/icons/arrow-right.svg
wagtailadmin/images/icons/spinner.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/icons/spinner.svg
wagtailadmin/images/icons/home.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/icons/home.svg
wagtailadmin/images/icons/check.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/icons/check.svg
wagtailadmin/images/icons/arrow-down.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/icons/arrow-down.svg
wagtailadmin/images/icons/tag.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/icons/tag.svg
wagtailadmin/images/icons/arrow-up.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/icons/arrow-up.svg
wagtailadmin/images/icons/arrow-left.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/icons/arrow-left.svg
wagtailadmin/images/icons/cross.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/icons/cross.svg
wagtailadmin/images/icons/radio-full.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/icons/radio-full.svg
wagtailadmin/images/icons/warning.svg /app/.heroku/python/lib/python3.13/site-packages/wagtail/admin/static/wagtailadmin/images/icons/warning.svg
admin/img/icon-unknown-alt.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/icon-unknown-alt.svg
admin/img/icon-changelink.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/icon-changelink.svg
admin/img/tooltag-arrowright.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/tooltag-arrowright.svg
admin/img/tooltag-add.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/tooltag-add.svg
admin/img/icon-hidelink.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/icon-hidelink.svg
admin/img/icon-no.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/icon-no.svg
admin/img/icon-addlink.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/icon-addlink.svg
admin/img/icon-deletelink.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/icon-deletelink.svg
admin/img/icon-alert.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/icon-alert.svg
admin/img/search.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/search.svg
admin/img/icon-yes.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/icon-yes.svg
admin/img/README.txt /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/README.txt
admin/img/sorting-icons.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/sorting-icons.svg
admin/img/icon-viewlink.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/icon-viewlink.svg
admin/img/icon-clock.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/icon-clock.svg
admin/img/LICENSE /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/LICENSE
admin/img/icon-unknown.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/icon-unknown.svg
admin/img/selector-icons.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/selector-icons.svg
admin/img/calendar-icons.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/calendar-icons.svg
admin/img/icon-calendar.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/icon-calendar.svg
admin/img/inline-delete.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/inline-delete.svg
admin/img/gis/move_vertex_on.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_on.svg
admin/img/gis/move_vertex_off.svg /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_off.svg
admin/css/dashboard.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/dashboard.css
admin/css/rtl.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/rtl.css
admin/css/responsive_rtl.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/responsive_rtl.css
admin/css/login.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/login.css
admin/css/autocomplete.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/autocomplete.css
admin/css/changelists.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/changelists.css
admin/css/base.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/base.css
admin/css/widgets.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/widgets.css
admin/css/unusable_password_field.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/unusable_password_field.css
admin/css/dark_mode.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/dark_mode.css
admin/css/nav_sidebar.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/nav_sidebar.css
admin/css/responsive.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/responsive.css
admin/css/forms.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/forms.css
admin/css/vendor/select2/select2.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/vendor/select2/select2.css
admin/css/vendor/select2/LICENSE-SELECT2.md /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/vendor/select2/LICENSE-SELECT2.md
admin/css/vendor/select2/select2.min.css /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/css/vendor/select2/select2.min.css
admin/js/prepopulate.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/prepopulate.js
admin/js/SelectBox.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/SelectBox.js
admin/js/theme.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/theme.js
admin/js/inlines.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/inlines.js
admin/js/actions.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/actions.js
admin/js/jquery.init.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/jquery.init.js
admin/js/calendar.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/calendar.js
admin/js/filters.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/filters.js
admin/js/nav_sidebar.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/nav_sidebar.js
admin/js/urlify.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/urlify.js
admin/js/prepopulate_init.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/prepopulate_init.js
admin/js/change_form.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/change_form.js
admin/js/SelectFilter2.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/SelectFilter2.js
admin/js/cancel.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/cancel.js
admin/js/unusable_password_field.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/unusable_password_field.js
admin/js/autocomplete.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/autocomplete.js
admin/js/core.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/core.js
admin/js/popup_response.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/popup_response.js
admin/js/vendor/jquery/jquery.min.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.min.js
admin/js/vendor/jquery/jquery.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.js
admin/js/vendor/jquery/LICENSE.txt /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/LICENSE.txt
admin/js/vendor/xregexp/LICENSE.txt /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/LICENSE.txt
admin/js/vendor/xregexp/xregexp.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.js
admin/js/vendor/xregexp/xregexp.min.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.min.js
admin/js/vendor/select2/select2.full.min.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/select2.full.min.js
admin/js/vendor/select2/select2.full.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/select2.full.js
admin/js/vendor/select2/LICENSE.md /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/LICENSE.md
admin/js/vendor/select2/i18n/sr.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sr.js
admin/js/vendor/select2/i18n/ar.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ar.js
admin/js/vendor/select2/i18n/de.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/de.js
admin/js/vendor/select2/i18n/el.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/el.js
admin/js/vendor/select2/i18n/ja.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ja.js
admin/js/vendor/select2/i18n/hy.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hy.js
admin/js/vendor/select2/i18n/hu.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hu.js
admin/js/vendor/select2/i18n/km.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/km.js
admin/js/vendor/select2/i18n/ka.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ka.js
admin/js/vendor/select2/i18n/ro.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ro.js
admin/js/vendor/select2/i18n/hi.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hi.js
admin/js/vendor/select2/i18n/mk.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/mk.js
admin/js/vendor/select2/i18n/ms.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ms.js
admin/js/vendor/select2/i18n/tr.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/tr.js
admin/js/vendor/select2/i18n/id.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/id.js
admin/js/vendor/select2/i18n/is.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/is.js
admin/js/vendor/select2/i18n/da.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/da.js
admin/js/vendor/select2/i18n/ca.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ca.js
admin/js/vendor/select2/i18n/es.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/es.js
admin/js/vendor/select2/i18n/hsb.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hsb.js
admin/js/vendor/select2/i18n/zh-TW.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-TW.js
admin/js/vendor/select2/i18n/cs.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/cs.js
admin/js/vendor/select2/i18n/tk.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/tk.js
admin/js/vendor/select2/i18n/en.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/en.js
admin/js/vendor/select2/i18n/dsb.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/dsb.js
admin/js/vendor/select2/i18n/sv.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sv.js
admin/js/vendor/select2/i18n/et.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/et.js
admin/js/vendor/select2/i18n/bs.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bs.js
admin/js/vendor/select2/i18n/ne.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ne.js
admin/js/vendor/select2/i18n/sk.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sk.js
admin/js/vendor/select2/i18n/fr.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fr.js
admin/js/vendor/select2/i18n/th.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/th.js
admin/js/vendor/select2/i18n/sq.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sq.js
admin/js/vendor/select2/i18n/fa.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fa.js
admin/js/vendor/select2/i18n/pt.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pt.js
admin/js/vendor/select2/i18n/gl.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/gl.js
admin/js/vendor/select2/i18n/af.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/af.js
admin/js/vendor/select2/i18n/bn.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bn.js
admin/js/vendor/select2/i18n/pl.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pl.js
admin/js/vendor/select2/i18n/az.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/az.js
admin/js/vendor/select2/i18n/vi.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/vi.js
admin/js/vendor/select2/i18n/sl.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sl.js
admin/js/vendor/select2/i18n/nb.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/nb.js
admin/js/vendor/select2/i18n/hr.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hr.js
admin/js/vendor/select2/i18n/pt-BR.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pt-BR.js
admin/js/vendor/select2/i18n/ko.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ko.js
admin/js/vendor/select2/i18n/lv.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/lv.js
admin/js/vendor/select2/i18n/uk.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/uk.js
admin/js/vendor/select2/i18n/bg.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bg.js
admin/js/vendor/select2/i18n/nl.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/nl.js
admin/js/vendor/select2/i18n/sr-Cyrl.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sr-Cyrl.js
admin/js/vendor/select2/i18n/zh-CN.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-CN.js
admin/js/vendor/select2/i18n/eu.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/eu.js
admin/js/vendor/select2/i18n/it.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/it.js
admin/js/vendor/select2/i18n/ps.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ps.js
admin/js/vendor/select2/i18n/lt.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/lt.js
admin/js/vendor/select2/i18n/ru.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ru.js
admin/js/vendor/select2/i18n/he.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/he.js
admin/js/vendor/select2/i18n/fi.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fi.js
admin/js/admin/RelatedObjectLookups.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/admin/RelatedObjectLookups.js
admin/js/admin/DateTimeShortcuts.js /app/.heroku/python/lib/python3.13/site-packages/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js
wagtail_tabbed_structblock/css/tabbed_structblock.css /app/.heroku/python/lib/python3.13/site-packages/wagtail_tabbed_structblock/static/wagtail_tabbed_structblock/css/tabbed_structblock.css
wagtail_tabbed_structblock/js/tabbed_structblock.js /app/.heroku/python/lib/python3.13/site-packages/wagtail_tabbed_structblock/static/wagtail_tabbed_structblock/js/tabbed_structblock.js
debug_toolbar/css/print.css /app/.heroku/python/lib/python3.13/site-packages/debug_toolbar/static/debug_toolbar/css/print.css
debug_toolbar/css/toolbar.css /app/.heroku/python/lib/python3.13/site-packages/debug_toolbar/static/debug_toolbar/css/toolbar.css
debug_toolbar/js/redirect.js /app/.heroku/python/lib/python3.13/site-packages/debug_toolbar/static/debug_toolbar/js/redirect.js
debug_toolbar/js/utils.js /app/.heroku/python/lib/python3.13/site-packages/debug_toolbar/static/debug_toolbar/js/utils.js
debug_toolbar/js/timer.js /app/.heroku/python/lib/python3.13/site-packages/debug_toolbar/static/debug_toolbar/js/timer.js
debug_toolbar/js/history.js /app/.heroku/python/lib/python3.13/site-packages/debug_toolbar/static/debug_toolbar/js/history.js
debug_toolbar/js/toolbar.js /app/.heroku/python/lib/python3.13/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.js

Templates (29 rendered)

Template paths

  1. /app/templates
  2. /app/aviary/templates

Templates

profiles/single.html
/app/profiles/templates/profiles/single.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7fa8e118c860>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/biographies/jennifer-koh/'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fa8e11a76b0>>>), 'request': '<<request>>', 'settings': {'wagtailseo': {'seosettings': <SeoSettings: SEO for Grant Park Music Festival [default]>}}, 'tnew_session_data': False, 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x7fa8e11a76b0>>>'} {'page': <ProfilePage: Jennifer Koh>, 'request': '<<request>>', 'self': <ProfilePage: Jennifer Koh>}
base.html
/app/templates/base.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7fa8e118c860>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/biographies/jennifer-koh/'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fa8e11a76b0>>>), 'request': '<<request>>', 'settings': {'wagtailseo': {'seosettings': <SeoSettings: SEO for Grant Park Music Festival [default]>}}, 'tnew_session_data': False, 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x7fa8e11a76b0>>>'} {'page': <ProfilePage: Jennifer Koh>, 'request': '<<request>>', 'self': <ProfilePage: Jennifer Koh>}
seo/meta.html
/app/seo/templates/seo/meta.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7fa8e118c860>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/biographies/jennifer-koh/'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fa8e11a76b0>>>), 'request': '<<request>>', 'settings': {'wagtailseo': {'seosettings': <SeoSettings: SEO for Grant Park Music Festival [default]>}}, 'tnew_session_data': False, 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x7fa8e11a76b0>>>'} {'page': <ProfilePage: Jennifer Koh>, 'request': '<<request>>', 'self': <ProfilePage: Jennifer Koh>}
wagtailseo/meta.html
/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/templates/wagtailseo/meta.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7fa8e118c860>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/biographies/jennifer-koh/'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fa8e11a76b0>>>), 'request': '<<request>>', 'settings': {'wagtailseo': {'seosettings': <SeoSettings: SEO for Grant Park Music Festival [default]>}}, 'tnew_session_data': False, 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x7fa8e11a76b0>>>'} {'page': <ProfilePage: Jennifer Koh>, 'request': '<<request>>', 'self': <ProfilePage: Jennifer Koh>}
components/favicon.html
/app/templates/components/favicon.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7fa8e118c860>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/biographies/jennifer-koh/'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fa8e11a76b0>>>), 'request': '<<request>>', 'settings': {'wagtailseo': {'seosettings': <SeoSettings: SEO for Grant Park Music Festival [default]>}}, 'tnew_session_data': False, 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x7fa8e11a76b0>>>'} {'page': <ProfilePage: Jennifer Koh>, 'request': '<<request>>', 'self': <ProfilePage: Jennifer Koh>}
components/analytics.html
/app/templates/components/analytics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7fa8e118c860>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/biographies/jennifer-koh/'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fa8e11a76b0>>>), 'request': '<<request>>', 'settings': {'wagtailseo': {'seosettings': <SeoSettings: SEO for Grant Park Music Festival [default]>}}, 'tnew_session_data': False, 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x7fa8e11a76b0>>>'} {'page': <ProfilePage: Jennifer Koh>, 'request': '<<request>>', 'self': <ProfilePage: Jennifer Koh>}
components/analytics-no-script.html
/app/templates/components/analytics-no-script.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7fa8e118c860>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/biographies/jennifer-koh/'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fa8e11a76b0>>>), 'request': '<<request>>', 'settings': {'wagtailseo': {'seosettings': <SeoSettings: SEO for Grant Park Music Festival [default]>}}, 'tnew_session_data': False, 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x7fa8e11a76b0>>>'} {'page': <ProfilePage: Jennifer Koh>, 'request': '<<request>>', 'self': <ProfilePage: Jennifer Koh>}
alerts/banner.html
/app/templates/alerts/banner.html
Toggle context {'False': False, 'None': None, 'True': True} {'banner': None, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7fa8e118c860>>'}
header.html
/app/templates/header.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7fa8e118c860>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/biographies/jennifer-koh/'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fa8e11a76b0>>>), 'request': '<<request>>', 'settings': {'wagtailseo': {'seosettings': <SeoSettings: SEO for Grant Park Music Festival [default]>}}, 'tnew_session_data': False, 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x7fa8e11a76b0>>>'} {'page': <ProfilePage: Jennifer Koh>, 'request': '<<request>>', 'self': <ProfilePage: Jennifer Koh>}
construkt/sections/elements.html
/app/construkt/templates/construkt/sections/elements.html
Toggle context {'False': False, 'None': None, 'True': True} {'block': {'value': {'element': <Element: Main Menu Card>}}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7fa8e118c860>>'}
construkt/sections/link_card.html
/app/construkt/templates/construkt/sections/link_card.html
Toggle context {'False': False, 'None': None, 'True': True} {'False': False, 'None': None, 'True': True, 'block': <block link_cards: StructValue({'heading': <StreamValue []>, 'columns': <ListValue: [StructValue({'link': LinkBlockValue({'link': <StreamValue [<block internal: StructValue({'page': <Page: Digital Programs 2025 Concerts>, 'text': '2025 Digital Programs'})>]>}), 'image': <Image: GPMF Symphony 16 August 2019>, 'colour': 'u-transparent-bg'})]>, 'link': LinkBlockValue({'link': <StreamValue []>}), 'settings': SettingsBlockValue({'width_and_alignment': WidthAlignmentSettingsValue({'horizontal_alignment': 'center', 'vertical_alignment': 'middle', 'section_width': 'default'}), 'layout': LayoutSettingsValue({'desktop': 'uniform', 'mobile': 'one_column', 'wrapping': 'grid'}), 'background': BackgroundSettingsValue({'background_colour': ''}), 'block_content': BlockContentSettingsValue({'hide_images': False, 'heading_tag': 'h3'})}), 'template': ''})>, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7fa8e118c860>>', 'element': <Element: Main Menu Card>, 'forloop': {'counter': 1, 'counter0': 0, 'first': True, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'self': StructValue([('heading', <StreamValue []>), ('columns', <ListValue: [StructValue({'link': LinkBlockValue({'link': <StreamValue [<block internal: StructValue({'page': <Page: Digital Programs 2025 Concerts>, 'text': '2025 Digital Programs'})>]>}), 'image': <Image: GPMF Symphony 16 August 2019>, 'colour': 'u-transparent-bg'})]>), ('link', LinkBlockValue({'link': <StreamValue []>})), ('settings', SettingsBlockValue([('width_and_alignment', WidthAlignmentSettingsValue([('horizontal_alignment', 'center'), ('vertical_alignment', 'middle'), ('section_width', 'default')])), ('layout', LayoutSettingsValue([('desktop', 'uniform'), ('mobile', 'one_column'), ('wrapping', 'grid')])), ('background', BackgroundSettingsValue([('background_colour', '')])), ('block_content', BlockContentSettingsValue([('hide_images', False), ('heading_tag', 'h3')]))])), ('template', '')]), 'value': StructValue([('heading', <StreamValue []>), ('columns', <ListValue: [StructValue({'link': LinkBlockValue({'link': <StreamValue [<block internal: StructValue({'page': <Page: Digital Programs 2025 Concerts>, 'text': '2025 Digital Programs'})>]>}), 'image': <Image: GPMF Symphony 16 August 2019>, 'colour': 'u-transparent-bg'})]>), ('link', LinkBlockValue({'link': <StreamValue []>})), ('settings', SettingsBlockValue([('width_and_alignment', WidthAlignmentSettingsValue([('horizontal_alignment', 'center'), ('vertical_alignment', 'middle'), ('section_width', 'default')])), ('layout', LayoutSettingsValue([('desktop', 'uniform'), ('mobile', 'one_column'), ('wrapping', 'grid')])), ('background', BackgroundSettingsValue([('background_colour', '')])), ('block_content', BlockContentSettingsValue([('hide_images', False), ('heading_tag', 'h3')]))])), ('template', '')])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'Events'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Events>})>]>), ('sub_menu', <StreamValue []>)]), 'value': StructValue([('title', 'Events'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Events>})>]>), ('sub_menu', <StreamValue []>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'Membership'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Membership>})>]>), ('sub_menu', <StreamValue []>)]), 'value': StructValue([('title', 'Membership'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Membership>})>]>), ('sub_menu', <StreamValue []>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'Support'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Support the Festival>})>]>), ('sub_menu', <StreamValue []>)]), 'value': StructValue([('title', 'Support'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Support the Festival>})>]>), ('sub_menu', <StreamValue []>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'Plan Your Visit'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Plan Your Visit>})>]>), ('sub_menu', <StreamValue []>)]), 'value': StructValue([('title', 'Plan Your Visit'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Plan Your Visit>})>]>), ('sub_menu', <StreamValue []>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'About Us'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: About Us>})>]>), ('sub_menu', <StreamValue []>)]), 'value': StructValue([('title', 'About Us'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: About Us>})>]>), ('sub_menu', <StreamValue []>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'Join Our Team'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Join Our Team>})>]>), ('sub_menu', <StreamValue []>)]), 'value': StructValue([('title', 'Join Our Team'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Join Our Team>})>]>), ('sub_menu', <StreamValue []>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'News & Stories'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: News & Stories>})>]>), ('sub_menu', <StreamValue []>)]), 'value': StructValue([('title', 'News & Stories'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: News & Stories>})>]>), ('sub_menu', <StreamValue []>)])}
wagtailcore/shared/richtext.html
/app/.heroku/python/lib/python3.13/site-packages/wagtail/templates/wagtailcore/shared/richtext.html
Toggle context {'False': False, 'None': None, 'True': True} {'html': 'Violin'}
wagtailcore/shared/richtext.html
/app/.heroku/python/lib/python3.13/site-packages/wagtail/templates/wagtailcore/shared/richtext.html
Toggle context {'False': False, 'None': None, 'True': True} {'html': '<p data-block-key="gjo5p">Recognized for intense, commanding ' 'performances, delivered with dazzling virtuosity and technical ' 'assurance, violinist Jennifer Koh is a forward-thinking artist ' 'dedicated to exploring a broad and eclectic repertoire, while ' 'promoting equity and inclusivity in classical music. She has ' 'expanded the contemporary violin repertoire through a wide range of ' 'commissioning projects and has premiered more than 100 works written ' 'especially for her. Her quest for the new and unusual, sense of ' 'endless curiosity, and ability to lead and inspire a host of ' 'multidisciplinary collaborators, truly set her apart.</p><p ' 'data-block-key="bmptl">Koh’s critically acclaimed series include\xa0' '<i>Alone Together</i>,\xa0<i>Bach and Beyond</i>,\xa0<i>\xa0Bridge ' 'to Beethoven, Limitless</i>,\xa0<i>Shared Madness</i>, and\xa0<i>The ' 'New American Concerto</i>. This season, Koh continues\xa0<i>The New ' 'American Concerto</i>\xa0series,an ongoing, multi-season ' 'commissioning project that explores the form of the violin concerto ' 'and its potential for artistic engagement with contemporary societal ' 'concerns and issues through commissions from a diverse collective of ' 'composers. This season, Koh continues to perform Missy Mazzoli’s ' 'Violin Concerto\xa0<i>Procession</i>\xa0with the Philadelphia ' 'Orchestra led by Marin Alsop, Philharmonia Orchestra led by ' 'Santtu-Matias Rouvali, the Lahti Symphony conducted by Dalia ' 'Stasevska, and the Kansas City Symphony conducted by Teddy Abrams. ' 'Additional\xa0<i>New American Concerto</i>\xa0commissions include ' 'Tyshawn Sorey’s\xa0<i>For Marcos Balter</i>, premiered with the ' 'Detroit Symphony Orchestra in 2020; Courtney Bryan’s\xa0' '<i>Syzygy,\xa0</i>premiered with the Chicago Sinfonietta in 2020; ' 'Lisa Bielawa’s\xa0<i>Sanctuary</i>, premiered with the Orlando ' 'Philharmonic in 2019 and given its New York premiere with the ' 'American Composers Orchestra at Carnegie Hall in 2021; Christopher ' 'Cerrone’s\xa0<i>Breaks and Breaks,</i>\xa0premiered with the Detroit ' 'Symphony Orchestra in 2018; and Vijay Iyer’s\xa0<i>Trouble\xa0' '</i>premiered at the 2017 Ojai Music Festival.</p><p ' 'data-block-key="bmu7u">This season, as part of BAM’s Next Wave ' 'Festival, Koh performs the New York premiere of\xa0<i>Everything ' 'Rises</i>, an original, evening length staged musical work ' 'co-created with bass-baritone Davone Tines. The work is a collective ' 'exploration of family history—telling the stories of Koh’s mother, ' 'Gertrude Soonja Lee Koh, a refugee from North Korea during the ' 'Korean War, and Tines’s grandmother, Alma Lee Gibbs Tines, who holds ' 'vivid memories of anti-Black discrimination and violence dating back ' 'many years.\xa0These experiences—of the artists and their ' 'families—are both the inspiration for and subject matter of this ' 'project. Developed over multiple years by an all-BIPOC creative team ' 'including composer Ken Ueno and director Alexander Gedeon, the ' 'project powerfully reclaims Koh and Tines’ narratives about who they ' 'are and how they got to where they are now.</p><p ' 'data-block-key="e4mcd">Koh’s Grammy Award-winning\xa0<i>Alone ' 'Together</i>—launched in 2020 as a commissioning project and virtual ' 'performance series—was developed in response to the coronavirus ' 'pandemic and the financial hardship it placed on many in the arts ' 'community. The project brought composers together in support of the ' 'many\xa0freelancers among them—with the more established composers ' 'each donating a new micro-work for solo violin, while also ' 'recommending a fellow freelance composer to write their own solo ' 'violin micro-work on paid commission from Koh’s artist-driven ' 'nonprofit ARCO Collaborative. In 2021, Cedille Records released an ' 'album of Koh’s\xa0<i>Alone Together</i>, featuring 39 world-premiere ' 'recordings, including works by Du Yun, George Lewis, Tania Léon, ' 'Andrew Norman, Missy Mazzoli, Ellen Reid, Vijay Iyer, Nina C. Young, ' 'and Angélica Negrón, and the recording won the Grammy Award in the ' 'Best Classical Instrumental Solo category. Koh performs works ' 'from\xa0<i>Alone Togeth</i>er this season in New York as part of the ' 'Death of Classical series in collaboration with Concert Artists ' 'Guild, at Crystal Bridges Museum in Arkansas, and in a recital in ' 'New Orleans.</p><p data-block-key="ai905">Koh regularly performs a ' 'broad range of concertos that reflect the breadth of her musical ' 'interests from traditional to contemporary. This season she makes ' 'her Boston Symphony Orchestra debut performing Bernstein’s Serenade, ' 'conducted by Andris Nelsons. She also performs Tchaikovsky’s Violin ' 'Concerto with the Richmond and Wichita Falls symphony orchestras, ' 'and Vijay Iyer’s Violin Concerto\xa0<i>Trouble,\xa0</i>part of her ' 'The New American Concerto series, at the Big Ears Festival in ' 'Knoxville, TN. Past orchestral appearances have included ' 'performances of such traditional repertoire as Bach’s Violin ' 'Concerti with Orpheus Chamber Orchestra; Dvořák’s Violin Concerto ' 'with the Pittsburgh Symphony led by Manfred Honeck and RAI National ' 'Symphony with James Conlon; Mozart’s Violin Concerto No. 1 with the ' 'Los Angeles Philharmonic led by Bramwell Tovey and St. Louis ' 'Symphony led by Nicolas McGegan; Tchaikovsky’s Violin Concerto with ' 'the Munich Philharmonic led by Lorin Maazel; and Vivaldi’s\xa0<i>The ' 'Four Seasons\xa0</i>with the Detroit Symphony led by Nicolas ' 'McGegan.</p><p data-block-key="fprmt">She has performed 20th-century ' 'works including Bartók and Berg concerti with the Milwaukee Symphony ' 'led by Edo de Waart; Bernstein’s\xa0<i>Serenade</i>\xa0with the ' 'Minnesota Orchestra led by Juanjo Mena and the Philadelphia ' 'Orchestra led by Yannick Nézet-Séguin; Lutosławski’s\xa0<i>Chain ' '2\xa0</i>with the New York Philharmonic led by Lorin Maazel and the ' 'Philharmonia Orchestra with Esa-Pekka Salonen; Scelsi’s\xa0' '<i>Anahit\xa0</i>with the Los Angeles Philharmonic led by Gustavo ' 'Dudamel; and Sibelius’s Violin Concerto with the New Jersey Symphony ' 'led by Xian Zhang, the São Paulo Symphonies with Marin Alsop, and ' 'the Columbus Symphony led by Rossen Milanov. This season, she ' 'performs the Sibelius concerto with the Suwon Philharmonic in South ' 'Korea. An advocate for music from our current millennium, she has ' 'performed Anna Clyne’s\xa0<i>The Seamstress\xa0</i>with the BBC ' 'Symphony led by Sakari Oramo, the Chicago Symphony led by Ludovic ' 'Morlot, and Cincinnati Symphony conducted by Louis Langrée; ' 'Esa-Pekka Salonen’s Violin Concerto with the Houston Symphony led by ' 'Christoph Eschenbach, Nashville Symphony conducted by Giancarlo ' 'Guerrero, and Cincinnati and Gothenburg Symphonies conducted by ' 'Santtu-Matias Rouvali; and Steven Mackey’s\xa0<i>Beautiful ' 'Passing</i>\xa0with the Baltimore Symphony under Marin Alsop.</p><p ' 'data-block-key="5ebem">Koh played the role of Einstein in the ' 'revival of Philip Glass and Robert Wilson’s\xa0<i>Einstein on the ' 'Beach\xa0</i>from 2012 to 2014, and a particular highlight of her ' 'career was performing with St. Vincent (Annie Clark) and S. Epatha ' 'Merkerson at the 2018 Kennedy Center Honors in a tribute to Glass. ' 'In 2021, nearly a decade after collaborating in the revival ' "performances of Philip Glass's\xa0<i>Einstein on the Beach</i>, Koh " 'reunited with director Robert Wilson and choreographer Lucinda ' 'Childs for a new work,\xa0<i>Bach 6 Solo</i>, that brings to life ' "Bach's sonatas and partitas with theatrical elements and dance. " 'Conceived by Koh and Wilson, the new work has Koh performing all six ' 'of Bach’s Partitas and Sonatas—widely considered the pinnacle of ' 'solo violin writing and typically performed alone on stage—with four ' 'dancers performing choreography by Childs.\xa0<i>Bach 6 Solo\xa0' '</i>premiered at the Chapelle Saint-Louis de la Salpêtrière as part ' 'of the Festival d\'Automne à Paris.</p><p data-block-key="1516n">Koh ' 'brings the same sense of adventure and brilliant musicianship to her ' 'recordings as she does to her live performances. She has recorded ' 'more than a dozen albums with Chicago-based Cedille Records, ' 'including her Grammy Award-winning<i>\xa0Alone Together</i>\xa0' 'album. Her\xa0<i>Bach &amp; Beyond</i>\xa0recording series, ' 'originally released by Cedille Records in three installments (2012, ' '2015, and 2020), was released as a three-disc box set in September ' '2021. These recordings explore the history of the solo violin ' 'repertoire from Bach’s Six Sonatas and Partitas to the music of ' '20th- and 21st-century composers, including new commissions from ' 'Missy Mazzoli (<i>Dissolve, O My Heart</i>) and John Harbison ' '(<i>For Violin Alone</i>). The collection also includes the ' 'world-premiere recording of Kaija Saariaho’s\xa0<i>Frises</i>, as ' 'well as works by Berio, Bartók, and Ysaÿe. Koh first launched\xa0' '<i>Bach &amp; Beyond\xa0</i>as a three-part recital series in 2009 ' 'and she continues to perform these programs regularly. The\xa0' '<i>Bach &amp; Beyond</i>\xa0recordings have received widespread ' 'critical acclaim, with the\xa0<i>Chicago Tribune\xa0</i>describing ' 'them as an “epic traversal of solo violin repertoire” and “a ' 'monumental achievement.”</p><p data-block-key="d2npt">Other ' 'recordings for the label in recent years include 2019’s\xa0' '<i>Limitless,\xa0</i>on which leading composer-performers—including ' 'Lisa Bielawa, Vijay Iyer, Missy Mazzoli, Qasim Naqvi, Tyshawn Sorey, ' 'Wang Lu, Nina C. Young, and Du Yun—perform duo compositions with Koh ' 'that explore the artistic relationship between composer and ' 'performer, and a 2018 collection of works by Kaija Saariaho, whose ' 'music she has long championed and with whom she has closely ' 'collaborated. Titled\xa0<i>Saariaho X Koh</i>, the album includes ' 'the chamber version of the violin concerto\xa0<i>Graal ' 'Théâtre</i>\xa0with the Curtis Chamber Orchestra;\xa0<i>Cloud ' 'Trio</i>\xa0with violist Hsin-Yun Huang and cellist Wilhelmina ' 'Smith;<i>\xa0Tocar\xa0</i>with pianist Nicolas Hodges;\xa0' '<i>Aure</i>\xa0with cellist Anssi Karttunen, with whom she premiered ' 'the violin and cello version in 2015; and\xa0<i>Light and Matter\xa0' '</i>with both Hodges and Karttunen, with whom she performed the ' 'French premiere in 2017.</p><p data-block-key="3ulmr">Her ' 'discography on Cedille Records also includes\xa0<i>Tchaikovsky: ' 'Complete Works for Violin and Orchestra\xa0</i>with the Odense ' 'Symphony Orchestra conducted by Alexander Vedernikov;\xa0<i>Two x ' 'Four</i>\xa0in collaboration with her former teacher, violinist ' 'Jaime Laredo, and featuring double violin concerti by Bach, Philip ' 'Glass, and new commissions from Anna Clyne and David Ludwig;\xa0' '<i>Signs, Games + Messages</i>, a recording of violin and piano ' 'works by Janáček, Bartók, and Kurtág with Shai Wosner;\xa0' '<i>Rhapsodic Musings: 21st Century Works for Solo Violin</i>; the ' 'Grammy-nominated\xa0<i>String Poetic</i>, featuring the world ' 'premiere of Jennifer Higdon’s eponymous work, performed with pianist ' 'Reiko Uchida; Schumann’s complete violin sonatas, also with Ms. ' 'Uchida;\xa0<i>Portraits\xa0</i>with the Grant Park Orchestra under ' 'conductor Carlos Kalmar with concerti by Szymanowski, Martinů, and ' 'Bartók;\xa0<i>Violin Fantasies</i>, fantasies for violin and piano ' 'by Schubert, Schumann, Schoenberg, and saxophonist Ornette Coleman, ' 'again with Uchida; and Koh’s first Cedille album, from 2002,\xa0' '<i>Solo Chaconnes</i>, an earlier reading of Bach’s Second Partita ' 'coupled with chaconnes by Richard Barth and Max Reger. She is also ' 'the featured soloist on a recording of Higdon’s\xa0<i>The Singing ' 'Rooms</i>\xa0with the Atlanta Symphony led by Robert Spano for ' 'Telarc.</p><p data-block-key="bnbhi">Koh is active not only in the ' 'concert hall and recording studio, but also as a lecturer and ' 'teacher. She has been on faculty at the Mannes School of Music since ' '2018 and has held residencies at Brown, Cornell, Duke, and Tulane ' 'Universities, as well as at the Curtis Institute of Music, Oberlin ' 'Conservatory and College, and University of California, Santa ' 'Barbara. She was the keynote speaker for the Royal College of ' 'Music’s 2020 “Orchestrating Isolation” conference and the League of ' 'American Orchestras’ 2018 annual conference.</p><p ' 'data-block-key="bdoqu">She is the Founder and Artistic Director of ' 'ARCO Collaborative, an artist-driven nonprofit that advocates for ' 'inclusivity in classical music. Established in 2014, ARCO ' 'Collaborative commissions, develops, and produces new musical works ' 'that highlight artists of color and women composers in ' 'collaborations that bring forth stories previously unheard in ' 'Western art forms. She is also a member of Composers ' 'Now’sDistinguished Mentors Council and the board of the League of ' 'American Orchestras.</p><p data-block-key="4r8u6">Born in Chicago of ' 'Korean parents, Koh began playing the violin by chance, choosing the ' 'instrument in a Suzuki-method program only because spaces for cello ' 'and piano had been filled. She made her debut with the Chicago ' 'Symphony Orchestra at age 11. She was\xa0<i>Musical America’s</i>\xa0' '2016 Instrumentalist of the Year and has also been recently ' 'recognized as a Virtuoso Award honoree by Concert Artists Guild in ' '2020 and “A Force of Nature” by the American Composers Orchestra in ' '2019. She performed for former First Lady of the United States ' 'Michelle Obama and former First Lady of South Korea Kim Yoon-ok in ' '2011. She was a top prize winner at Moscow’s International ' 'Tchaikovsky Competition, winner of the Concert Artists Guild ' 'Competition, and a recipient of an Avery Fisher Career Grant. She ' 'has a Bachelor of Arts degree in English literature from Oberlin ' 'College and studied at the Curtis Institute, where she worked ' 'extensively with Jaime Laredo and Felix Galimir.</p>'}
footer.html
/app/templates/footer.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7fa8e118c860>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/biographies/jennifer-koh/'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fa8e11a76b0>>>), 'request': '<<request>>', 'settings': {'wagtailseo': {'seosettings': <SeoSettings: SEO for Grant Park Music Festival [default]>}}, 'tnew_session_data': False, 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x7fa8e11a76b0>>>'} {'page': <ProfilePage: Jennifer Koh>, 'request': '<<request>>', 'self': <ProfilePage: Jennifer Koh>}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'Accessibility'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Accessibility>})>]>)]), 'value': StructValue([('title', 'Accessibility'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Accessibility>})>]>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'About'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: About Us>})>]>)]), 'value': StructValue([('title', 'About'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: About Us>})>]>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'Membership'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Membership>})>]>)]), 'value': StructValue([('title', 'Membership'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Membership>})>]>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'Support'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Support the Festival>})>]>)]), 'value': StructValue([('title', 'Support'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Support the Festival>})>]>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'Privacy'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Privacy Policy>})>]>)]), 'value': StructValue([('title', 'Privacy'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Privacy Policy>})>]>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'Terms'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Terms of Service>})>]>)]), 'value': StructValue([('title', 'Terms'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Terms of Service>})>]>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'Contact'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Contact Us>})>]>)]), 'value': StructValue([('title', 'Contact'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: Contact Us>})>]>)])}
menu_base.html
/app/navigation/templates/menu_base.html
Toggle context {'False': False, 'None': None, 'True': True} {'self': StructValue([('title', 'FAQs'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: FAQs>})>]>)]), 'value': StructValue([('title', 'FAQs'), ('link', <StreamValue [<block internal: StructValue({'page': <Page: FAQs>})>]>)])}

Context processors

django.template.context_processors.csrf
Toggle context {'csrf_token': <SimpleLazyObject: <function csrf.<locals>._get_val at 0x7fa8e118c860>>}
django.template.context_processors.debug
Toggle context {}
django.template.context_processors.request
Toggle context {'request': <WSGIRequest: GET '/biographies/jennifer-koh/'>}
django.contrib.auth.context_processors.auth
Toggle context {'user': <SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fa8e11a76b0>>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fa8e11a76b0>>>)}
django.contrib.messages.context_processors.messages
Toggle context {'messages': <FallbackStorage: request=<WSGIRequest: GET '/biographies/jennifer-koh/'>>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}}
wagtail.contrib.settings.context_processors.settings
Toggle context {'settings': {'wagtailseo': {'seosettings': <SeoSettings: SEO for Grant Park Music Festival [default]>}}}
tnew_shared_sessions.context_processors.tnew_session_data
Toggle context {'tnew_session_data': False}

Alerts

No alerts found

Cache calls from 1 backend

Summary

Total calls Total time Cache hits Cache misses
21 12.295207008719444 ms 18 1

Commands

add get set get_or_set touch delete clear get_many set_many delete_many has_key incr decr incr_version decr_version
0 17 2 0 0 0 0 2 0 0 0 0 0 0 0

Calls

Time (ms) Type Arguments Keyword arguments Backend
0.5948 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(320)
  match = condition.eval(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/smartif.py in eval(61)
  return func(context, self.first, self.second)

/app/.heroku/python/lib/python3.13/site-packages/django/template/smartif.py in <lambda>(99)
  "and": infix(7, lambda context, x, y: x.eval(context) and y.eval(context)),

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in eval(886)
  return self.value.resolve(context, ignore_failures=True)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(901)
  current = getattr(current, bit)

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_pagetitle(548)
  self.title, settings.get("WAGTAILSEO_SEP"), self.seo_sitename

/app/.heroku/python/lib/python3.13/site-packages/wagtailseo/models.py in seo_sitename(529)
  s = self.get_site()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_site(2382)
  url_parts = self.get_url_parts()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.6844 get_many (['wagtail-rendition-34-5211291c87e60841dc43394a4443c15f65c3df1c-2e16d0ba-fill-1080x720'],) {} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(381)
  return t.render(new_context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(550)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(243)
  nodelist.append(node.render_annotated(context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/templatetags/wagtailcore_tags.py in render(159)
  output = value.render_as_block(context=new_context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(243)
  nodelist.append(node.render_annotated(context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/templatetags/wagtailimages_tags.py in render(150)
  rendition = get_rendition_or_not_found(

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/shortcuts.py in get_rendition_or_not_found(13)
  return image.get_rendition(specs)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/models.py in get_rendition(518)
  rendition = self.find_existing_rendition(filter)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/models.py in find_existing_rendition(546)
  return self.find_existing_renditions(filter)[filter]

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/models.py in find_existing_renditions(662)
  for rendition in Rendition.cache_backend.get_many(cache_keys).values():

0.6741 set ('wagtail-rendition-34-5211291c87e60841dc43394a4443c15f65c3df1c-2e16d0ba-fill-1080x720', <Rendition: Rendition object (266)>) {} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(381)
  return t.render(new_context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(550)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(243)
  nodelist.append(node.render_annotated(context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/templatetags/wagtailcore_tags.py in render(159)
  output = value.render_as_block(context=new_context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(243)
  nodelist.append(node.render_annotated(context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/templatetags/wagtailimages_tags.py in render(150)
  rendition = get_rendition_or_not_found(

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/shortcuts.py in get_rendition_or_not_found(13)
  return image.get_rendition(specs)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/models.py in get_rendition(527)
  Rendition.cache_backend.set(cache_key, rendition)

0.7356 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(381)
  return t.render(new_context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(550)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(243)
  nodelist.append(node.render_annotated(context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/templatetags/wagtailcore_tags.py in render(159)
  output = value.render_as_block(context=new_context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(243)
  nodelist.append(node.render_annotated(context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(550)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(320)
  match = condition.eval(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in eval(886)
  return self.value.resolve(context, ignore_failures=True)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(722)
  obj = self.var.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(854)
  value = self._resolve_lookup(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in _resolve_lookup(925)
  current = current()

/app/construkt/blocks/blocks.py in url(48)
  return self._get("page").get_full_url()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_full_url(2311)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.6289 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.6044 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.4609 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.4726 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.4834 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.4596 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.7077 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.4894 get_many (['wagtail-rendition-836-9a93b55f2f40fe75aba7cf85e9a6db481c9efe0f-2e16d0ba-fill-640x640'],) {} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/templatetags/wagtailimages_tags.py in render(150)
  rendition = get_rendition_or_not_found(

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/shortcuts.py in get_rendition_or_not_found(13)
  return image.get_rendition(specs)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/models.py in get_rendition(518)
  rendition = self.find_existing_rendition(filter)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/models.py in find_existing_rendition(546)
  return self.find_existing_renditions(filter)[filter]

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/models.py in find_existing_renditions(662)
  for rendition in Rendition.cache_backend.get_many(cache_keys).values():

0.6052 set ('wagtail-rendition-836-9a93b55f2f40fe75aba7cf85e9a6db481c9efe0f-2e16d0ba-fill-640x640', <Rendition: Rendition object (1825)>) {} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(65)
  result = block.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/defaulttags.py in render(327)
  return nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/templatetags/wagtailimages_tags.py in render(150)
  rendition = get_rendition_or_not_found(

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/shortcuts.py in get_rendition_or_not_found(13)
  return image.get_rendition(specs)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/images/models.py in get_rendition(527)
  Rendition.cache_backend.set(cache_key, rendition)

0.5588 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.5108 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.5095 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.5783 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.5133 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.4450 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

0.4760 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

1.1025 get ('wagtail_site_root_paths',) {'version': 2} <django.core.cache.backends.redis.RedisCache object at 0x7fa8e2fbf8c0>
/app/.heroku/python/bin/gunicorn in <module>(8)
  sys.exit(run())

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/wsgiapp.py in run(66)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]", prog=prog).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(235)
  super().run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/app/base.py in run(71)
  Arbiter(self).run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in run(201)
  self.manage_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in manage_workers(570)
  self.spawn_workers()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_workers(641)
  self.spawn_worker()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/arbiter.py in spawn_worker(608)
  worker.init_process()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/base.py in init_process(143)
  self.run()

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run(125)
  self.run_for_one(timeout)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in run_for_one(69)
  self.accept(listener)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in accept(31)
  self.handle(listener, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)

/app/.heroku/python/lib/python3.13/site-packages/gunicorn/workers/sync.py in handle_request(177)
  respiter = self.wsgi(environ, resp.start_response)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/whitenoise/middleware.py in __call__(123)
  return self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail_2fa/middleware.py in __call__(31)
  response = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/corsheaders/middleware.py in __call__(56)
  result = self.get_response(request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in render(114)
  self.content = self.rendered_content

/app/.heroku/python/lib/python3.13/site-packages/django/template/response.py in rendered_content(92)
  return template.render(context, self._request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(159)
  return compiled_parent._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader_tags.py in render(210)
  return template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(173)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/library.py in render(321)
  output = self.func(*resolved_args, **resolved_kwargs)

/app/navigation/templatetags/nav_tags.py in nav_menu(32)
  return mark_safe("".join([item.render_as_block() for item in menu_items]))

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render_as_block(604)
  return self.block.render(self.value, context=context)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/blocks/base.py in render(273)
  return mark_safe(render_to_string(template, new_context))

/app/.heroku/python/lib/python3.13/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)

/app/.heroku/python/lib/python3.13/site-packages/django/template/backends/django.py in render(107)
  return self.template.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(171)
  return self._render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/test/utils.py in instrumented_test_render(114)
  return self.nodelist.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1016)
  return SafeString("".join([node.render_annotated(context) for node in self]))

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render_annotated(977)
  return self.render(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in render(1075)
  output = self.filter_expression.resolve(context)

/app/.heroku/python/lib/python3.13/site-packages/django/template/base.py in resolve(749)
  new_obj = func(obj, *arg_vals)

/app/navigation/templatetags/nav_filters.py in url(19)
  return values["page"].get_url() if values["page"] else "/"

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url(2343)
  url_parts = self.get_url_parts(request=request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in get_url_parts(2246)
  possible_sites = self._get_relevant_site_root_paths(request)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_relevant_site_root_paths(2224)
  for srp in self._get_site_root_paths(cache_object)

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/__init__.py in _get_site_root_paths(2215)
  cache_object._wagtail_cached_site_root_paths = Site.get_site_root_paths()

/app/.heroku/python/lib/python3.13/site-packages/wagtail/models/sites.py in get_site_root_paths(220)
  result = cache.get(

Signals

Signal Receivers
class_prepared
connection_created
got_request_exception
m2m_changed
post_delete remove_reference_index_on_delete, remove_algolia_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, post_delete_file_cleanup, remove_reference_index_on_delete, post_delete_file_cleanup, post_delete_file_cleanup, post_delete_purge_rendition_cache, remove_reference_index_on_delete, post_delete_signal_handler, post_delete_signal_handler, post_delete_signal_handler, post_delete_signal_handler, post_delete_signal_handler, post_delete_signal_handler, post_delete_signal_handler, post_delete_signal_handler, post_delete_signal_handler, post_delete_signal_handler, remove_reference_index_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, remove_reference_index_on_delete, post_delete_site_signal_handler, post_delete_page_log_deletion, reset_locales_display_names_cache
post_init WagtailImageField.update_dimension_fields, WagtailImageField.update_dimension_fields
post_migrate create_extra_permissions, connect_reference_index_signal_handlers, create_permissions, create_contenttypes
post_save update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, post_save_image_feature_detection, update_reference_index_on_save, post_save_signal_handler, post_save_signal_handler, post_save_signal_handler, post_save_signal_handler, post_save_signal_handler, post_save_signal_handler, post_save_signal_handler, post_save_signal_handler, post_save_signal_handler, post_save_signal_handler, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, update_reference_index_on_save, post_save_site_signal_handler, reset_locales_display_names_cache
pre_delete pre_delete_page_unpublish
pre_init
pre_migrate disconnect_reference_index_signal_handlers, inject_rename_contenttypes_operations
pre_save set_locale_on_new_instance
request_finished close_caches, close_old_connections, reset_urlconf
request_started reset_queries, close_old_connections
setting_changed reset_cache, clear_cache_handlers, update_installed_apps, update_connections_time_zone, clear_routers_cache, reset_template_engines, storages_changed, clear_serializers_cache, language_changed, localize_settings_changed, complex_setting_changed, root_urlconf_changed, static_storage_changed, static_finders_changed, form_renderer_changed, auth_password_validators_changed, user_model_swapped, update_toolbar_config, reset_cache, reset_hashers, Options.setting_changed, reset_edit_handler_cache, Settings.change_setting, clear_embed_caches, reload_api_settings, update_permission_policy, update_level_tags, clear_tasks_handlers, clear_caches, CompressedStaticFilesStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties