<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Automating layout extent fail on one map in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/automating-layout-extent-fail-on-one-map/m-p/1633017#M74497</link>
    <description>&lt;P&gt;Thanks&amp;nbsp;&lt;a href="https://community.esri.com/t5/user/viewprofilepage/user-id/3265"&gt;@TonyAlmeida&lt;/a&gt;&amp;nbsp;but that didn't solved my issue. I also tried to create a function just for the query definition that didn't help either.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So I ended up splitting the code into 2 scripts: Step 1 create the query definition, Step2 update the layouts and PDF. Using a Mode Builder I can run both scripts at the same time and no issue.&lt;/P&gt;&lt;P&gt;I would love to get the code to run into 1 script but whatever works for now.&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DominicRobergeIADOT_0-1752549553112.png" style="width: 584px;"&gt;&lt;img src="https://community.esri.com/t5/image/serverpage/image-id/136506i7405551F84FDAE96/image-dimensions/584x368?v=v2" width="584" height="368" role="button" title="DominicRobergeIADOT_0-1752549553112.png" alt="DominicRobergeIADOT_0-1752549553112.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;below was my revised code with the definition query function:&lt;/P&gt;&lt;LI-CODE lang="python"&gt;import arcpy
import os
import sys
from arcgis import GIS
from datetime import datetime

# Get today's date
today = datetime.today()

formatted_date = today.strftime("%m%d%Y")

#********************************************************************************************

def GRDefinitionQuery(MapName,LayerName,FieldNumber,LayoutName):
    newDefinitionQueryString = "SAG_FieldNumber = "+FieldNumber      
    arcpy.AddMessage(newDefinitionQueryString)
    
    m= aprx.listMaps(MapName)[0]   
    arcpy.AddMessage(MapName)
    
    for lyr in m.listLayers():
        arcpy.AddMessage(lyr.name)
        if lyr.name ==LayerName:                                  
            arcpy.AddMessage("We found our layer to update")
            if lyr.supports('DefinitionQuery'):
                arcpy.AddMessage("here we go")

                # Updade Definition query
                dql = lyr.listDefinitionQueries()
                arcpy.AddMessage("original dql" + str(dql))
                for dq in dql:
                    arcpy.AddMessage("in dq")
                    dq['sql'] = newDefinitionQueryString
                lyr.updateDefinitionQueries(dql)
                arcpy.AddMessage("revised dql" + str(dql))
            count_result = arcpy.management.GetCount(lyr)
            record_count = int(count_result[0])
            arcpy.AddMessage("number of records: " + str(record_count))
            break
    aprx.save()
    time.sleep(5)  # Small delay

def GRMapExtent(MapName,LayerName,FieldNumber,FieldName, LayoutName):
    map_name = MapName  
    arcpy.AddMessage("         " +map_name)
    layer_name = LayerName  
    map_frame_name = 'Map Frame'  

    # Access the map
    map_obj = aprx.listMaps(map_name)[0]

    # Clear any existing selection
    for lyr in map_obj.listLayers():
        if lyr.isFeatureLayer:
            lyr.setSelectionSet(None)

    # Get the layer
    layer = map_obj.listLayers(layer_name)[0]

    # Use arcpy.Describe to get extent
    desc = arcpy.Describe(layer)
    layer_extent = desc.extent

    count_result = arcpy.management.GetCount(layer)
    record_count = int(count_result[0])
    arcpy.AddMessage("         number of records: " + str(record_count))

        # Access the layout and map frame
    layout = aprx.listLayouts(LayoutName)[0]  # or specify layout by name: aprx.listLayouts("LayoutName")[0]
    map_frame = layout.listElements("mapframe_element", map_frame_name)[0]
    
    cursor = arcpy.da.SearchCursor(layer, ['SHAPE@',FieldNumber,FieldName]) 
    arcpy.AddMessage("*****************")
    for c in cursor:
        arcpy.AddMessage(u'         {0},{1}'.format(c[1],c[2]))
        strName = c[2]
        arcpy.AddMessage("         Final Name: " + str(strName))
        extent = c[0].extent
        paddingFirst = extent.XMax-extent.XMin
        padding = (float(paddingFirst)/float(20))
        new_extent=arcpy.Extent(extent.XMin-padding,extent.YMin-padding,extent.XMax+padding,extent.YMax+padding,None,None,None,None,extent.spatialReference)

        # Set the map frame extent to the layer extent
        map_frame.camera.setExtent(new_extent)    
        arcpy.AddMessage("         " +"Mainframe extent done")

        GRLayoutTitle(SAGFieldNunber + " : "+strName+ " "+ l)
        arcpy.AddMessage("         " +"Title update")
        GRExportLayouttoPDF(template_name,strName,formatted_date)
        arcpy.AddMessage("         " +"Export to PDF done")
    #sys.exit(0)

def GRLayoutTitle(TitleName):
    elm_name = "SAG Title" # the name you assign to the title (TEXT) element
    p = arcpy.mp.ArcGISProject("CURRENT")
    for lyt in p.listLayouts(): # get the element
        for elm in lyt.listElements("TEXT_ELEMENT"):
            if elm.name == elm_name:
                elm.text = TitleName

def GRExportLayouttoPDF(layoutName,FieldName, strDate):
    layout_name = layoutName  # Name of the layout in your project
    output_folder= r"C:\temp"  
    output_name = layoutName+"_"+FieldName+"_"+strDate+".pdf"
    layout = aprx.listLayouts(layout_name)[0]
    layout.exportToPDF(output_folder+"\\"+output_name, resolution=150)  #,jpeg_compression_quality=80, output_as_image=True,compress_vector_graphics=True

#********************************************************************************************

arcpy.AddMessage("Let's update the Definition queries")
aprx = arcpy.mp.ArcGISProject("CURRENT")
LyrName = arcpy.GetParameterAsText(0)  
FieldName = arcpy.GetParameterAsText(1)
name_field = 'SAG_FieldNumber'  #'SAG_SiteName'
SAGFieldNunber = arcpy.GetParameterAsText(2)
SAGFieldName = 'SAG_FieldName'
listMaps = ['2021 Ortho','2023 Ortho','LIDAR']

for l in listMaps:

    arcpy.AddMessage(l + "-------------------------------------------")
    NewMapName = "SAG_Manure_Map_"+l
    template_name = "SAG_Manure_Layout_"+l

    arcpy.AddMessage("Now let's change the Query Definituon")
    GRDefinitionQuery(NewMapName,LyrName, SAGFieldNunber,template_name)

    arcpy.AddMessage("Now let's change the extent of the map")
    GRMapExtent(NewMapName, LyrName,name_field,SAGFieldName,template_name)




arcpy.AddMessage("------------------------") 
arcpy.AddMessage("Definition query updated")   &lt;/LI-CODE&gt;</description>
    <pubDate>Tue, 15 Jul 2025 12:43:58 GMT</pubDate>
    <dc:creator>DominicRobergeIADOT</dc:creator>
    <dc:date>2025-07-15T12:43:58Z</dc:date>
    <item>
      <title>Automating layout extent fail on one map</title>
      <link>https://community.esri.com/t5/python-questions/automating-layout-extent-fail-on-one-map/m-p/1632729#M74490</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I created a script that loop through 3 maps, update a definition query based on a parameter then change the extent of the layout and export the layout to PDF. It's "kind of working" however, every time I run the process ONE map (never the same) get stuck on the extent of the previous selection. Below is the code and the details info the process.&lt;/P&gt;&lt;P&gt;Weird thing is if I look in all 3 maps, the query definition has been updated...&lt;/P&gt;&lt;LI-CODE lang="python"&gt;import arcpy
import os
import sys
from arcgis import GIS
from datetime import datetime

# Get today's date
today = datetime.today()

formatted_date = today.strftime("%m%d%Y")

#********************************************************************************************

def GRMapExtent(MapName,LayerName,FieldNumber,FieldName, LayoutName):
    map_name = MapName  
    arcpy.AddMessage("         " +map_name)
    layer_name = LayerName  
    map_frame_name = 'Map Frame'  

    # Access the map
    map_obj = aprx.listMaps(map_name)[0]

    # Get the layer
    layer = map_obj.listLayers(layer_name)[0]

    # Use arcpy.Describe to get extent
    desc = arcpy.Describe(layer)
    layer_extent = desc.extent

    count_result = arcpy.management.GetCount(layer)
    record_count = int(count_result[0])
    arcpy.AddMessage("         number of records: " + str(record_count))

        # Access the layout and map frame
    layout = aprx.listLayouts(LayoutName)[0]  # or specify layout by name: aprx.listLayouts("LayoutName")[0]
    map_frame = layout.listElements("mapframe_element", map_frame_name)[0]
    
    cursor = arcpy.da.SearchCursor(layer, ['SHAPE@',FieldNumber,FieldName]) 
    arcpy.AddMessage("*****************")
    for c in cursor:
        arcpy.AddMessage(u'         {0},{1}'.format(c[1],c[2]))
        strName = c[2]
        arcpy.AddMessage("         Final Name: " + str(strName))
        extent = c[0].extent
        paddingFirst = extent.XMax-extent.XMin
        padding = (float(paddingFirst)/float(20))
        new_extent=arcpy.Extent(extent.XMin-padding,extent.YMin-padding,extent.XMax+padding,extent.YMax+padding,None,None,None,None,extent.spatialReference)

        # Set the map frame extent to the layer extent
        map_frame.camera.setExtent(new_extent)    
        arcpy.AddMessage("         " +"Mainframe extent done")

        GRLayoutTitle(SAGFieldNunber + " : "+strName+ " "+ l)
        arcpy.AddMessage("         " +"Title update")
        GRExportLayouttoPDF(template_name,strName,formatted_date)
        arcpy.AddMessage("         " +"Export to PDF done")
    #sys.exit(0)

def GRLayoutTitle(TitleName):
    elm_name = "SAG Title" # the name you assign to the title (TEXT) element
    p = arcpy.mp.ArcGISProject("CURRENT")
    for lyt in p.listLayouts(): # get the element
        for elm in lyt.listElements("TEXT_ELEMENT"):
            if elm.name == elm_name:
                elm.text = TitleName

def GRExportLayouttoPDF(layoutName,FieldName, strDate):
    layout_name = layoutName  # Name of the layout in your project
    output_folder= r"C:\GIS\OUTPUT_PDF"  
    output_name = layoutName+"_"+FieldName+"_"+strDate+".pdf"
    layout = aprx.listLayouts(layout_name)[0]
    layout.exportToPDF(output_folder+"\\"+output_name, resolution=200)

#********************************************************************************************

arcpy.AddMessage("Let's update the Definition queries")
aprx = arcpy.mp.ArcGISProject("CURRENT")
LyrName = arcpy.GetParameterAsText(0)  
FieldName = arcpy.GetParameterAsText(1)
name_field = 'SAG_FieldNumber'  #'SAG_SiteName'
SAGFieldNunber = arcpy.GetParameterAsText(2)
SAGFieldName = 'SAG_FieldName'
listMaps = ['2021 Ortho','2023 Ortho','LIDAR']  
for l in listMaps:
    arcpy.AddMessage(l + "-------------------------------------------")
    NewMapName = "SAG_Manure_Map_"+l
    template_name = "SAG_Manure_Layout_"+l
    newDefinitionQueryString = "SAG_FieldNumber = "+SAGFieldNunber      

    arcpy.AddMessage(newDefinitionQueryString)
    m= aprx.listMaps(NewMapName)[0]   
    arcpy.AddMessage(NewMapName)
    for lyr in m.listLayers():
        arcpy.AddMessage(lyr.name)
        if lyr.name ==LyrName:                                  
            arcpy.AddMessage("We found our layer to update")
            if lyr.supports('DefinitionQuery'):
                arcpy.AddMessage("here we go")

                # Updade Definition query
                
                dql = lyr.listDefinitionQueries()
                arcpy.AddMessage("original dql" + str(dql))
                for dq in dql:
                    arcpy.AddMessage("in dq")
                    dq['sql'] = newDefinitionQueryString
                lyr.updateDefinitionQueries(dql)
                arcpy.AddMessage("revised dql" + str(dql))

                
            count_result = arcpy.management.GetCount(lyr)
            record_count = int(count_result[0])
            arcpy.AddMessage("number of records: " + str(record_count))

    arcpy.AddMessage("Now let's change the extent of the map")
    GRMapExtent(NewMapName, LyrName,name_field,SAGFieldName,template_name)


arcpy.AddMessage("------------------------") 
arcpy.AddMessage("Definition query updated")   &lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is the details from the proces&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DominicRobergeIADOT_0-1752450689098.png" style="width: 651px;"&gt;&lt;img src="https://community.esri.com/t5/image/serverpage/image-id/136457iDDFF27919A237D8C/image-dimensions/651x1296?v=v2" width="651" height="1296" role="button" title="DominicRobergeIADOT_0-1752450689098.png" alt="DominicRobergeIADOT_0-1752450689098.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;I looked at this for too long:(&lt;/P&gt;&lt;P&gt;Any help would be much appreciated&lt;/P&gt;</description>
      <pubDate>Sun, 13 Jul 2025 23:58:44 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/automating-layout-extent-fail-on-one-map/m-p/1632729#M74490</guid>
      <dc:creator>DominicRobergeIADOT</dc:creator>
      <dc:date>2025-07-13T23:58:44Z</dc:date>
    </item>
    <item>
      <title>Re: Automating layout extent fail on one map</title>
      <link>https://community.esri.com/t5/python-questions/automating-layout-extent-fail-on-one-map/m-p/1632859#M74493</link>
      <description>&lt;P&gt;Try adding a delay between operations. Also try adding a clear election before export.&lt;/P&gt;&lt;LI-CODE lang="c"&gt;def GRMapExtent(MapName, LayerName, FieldNumber, FieldName, LayoutName):
    map_name = MapName  
    arcpy.AddMessage("         " + map_name)
    layer_name = LayerName  
    map_frame_name = 'Map Frame'  

    # Access the map
    map_obj = aprx.listMaps(map_name)[0]
    
    # Clear any existing selection
    for lyr in map_obj.listLayers():
        if lyr.isFeatureLayer:
            lyr.setSelectionSet(None)

    # Get the layer
    layer = map_obj.listLayers(layer_name)[0]
    
    # Refresh the map and layout
    aprx.save()
    time.sleep(1)  # Small delay&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 14 Jul 2025 15:05:50 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/automating-layout-extent-fail-on-one-map/m-p/1632859#M74493</guid>
      <dc:creator>TonyAlmeida</dc:creator>
      <dc:date>2025-07-14T15:05:50Z</dc:date>
    </item>
    <item>
      <title>Re: Automating layout extent fail on one map</title>
      <link>https://community.esri.com/t5/python-questions/automating-layout-extent-fail-on-one-map/m-p/1633017#M74497</link>
      <description>&lt;P&gt;Thanks&amp;nbsp;&lt;a href="https://community.esri.com/t5/user/viewprofilepage/user-id/3265"&gt;@TonyAlmeida&lt;/a&gt;&amp;nbsp;but that didn't solved my issue. I also tried to create a function just for the query definition that didn't help either.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So I ended up splitting the code into 2 scripts: Step 1 create the query definition, Step2 update the layouts and PDF. Using a Mode Builder I can run both scripts at the same time and no issue.&lt;/P&gt;&lt;P&gt;I would love to get the code to run into 1 script but whatever works for now.&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DominicRobergeIADOT_0-1752549553112.png" style="width: 584px;"&gt;&lt;img src="https://community.esri.com/t5/image/serverpage/image-id/136506i7405551F84FDAE96/image-dimensions/584x368?v=v2" width="584" height="368" role="button" title="DominicRobergeIADOT_0-1752549553112.png" alt="DominicRobergeIADOT_0-1752549553112.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;below was my revised code with the definition query function:&lt;/P&gt;&lt;LI-CODE lang="python"&gt;import arcpy
import os
import sys
from arcgis import GIS
from datetime import datetime

# Get today's date
today = datetime.today()

formatted_date = today.strftime("%m%d%Y")

#********************************************************************************************

def GRDefinitionQuery(MapName,LayerName,FieldNumber,LayoutName):
    newDefinitionQueryString = "SAG_FieldNumber = "+FieldNumber      
    arcpy.AddMessage(newDefinitionQueryString)
    
    m= aprx.listMaps(MapName)[0]   
    arcpy.AddMessage(MapName)
    
    for lyr in m.listLayers():
        arcpy.AddMessage(lyr.name)
        if lyr.name ==LayerName:                                  
            arcpy.AddMessage("We found our layer to update")
            if lyr.supports('DefinitionQuery'):
                arcpy.AddMessage("here we go")

                # Updade Definition query
                dql = lyr.listDefinitionQueries()
                arcpy.AddMessage("original dql" + str(dql))
                for dq in dql:
                    arcpy.AddMessage("in dq")
                    dq['sql'] = newDefinitionQueryString
                lyr.updateDefinitionQueries(dql)
                arcpy.AddMessage("revised dql" + str(dql))
            count_result = arcpy.management.GetCount(lyr)
            record_count = int(count_result[0])
            arcpy.AddMessage("number of records: " + str(record_count))
            break
    aprx.save()
    time.sleep(5)  # Small delay

def GRMapExtent(MapName,LayerName,FieldNumber,FieldName, LayoutName):
    map_name = MapName  
    arcpy.AddMessage("         " +map_name)
    layer_name = LayerName  
    map_frame_name = 'Map Frame'  

    # Access the map
    map_obj = aprx.listMaps(map_name)[0]

    # Clear any existing selection
    for lyr in map_obj.listLayers():
        if lyr.isFeatureLayer:
            lyr.setSelectionSet(None)

    # Get the layer
    layer = map_obj.listLayers(layer_name)[0]

    # Use arcpy.Describe to get extent
    desc = arcpy.Describe(layer)
    layer_extent = desc.extent

    count_result = arcpy.management.GetCount(layer)
    record_count = int(count_result[0])
    arcpy.AddMessage("         number of records: " + str(record_count))

        # Access the layout and map frame
    layout = aprx.listLayouts(LayoutName)[0]  # or specify layout by name: aprx.listLayouts("LayoutName")[0]
    map_frame = layout.listElements("mapframe_element", map_frame_name)[0]
    
    cursor = arcpy.da.SearchCursor(layer, ['SHAPE@',FieldNumber,FieldName]) 
    arcpy.AddMessage("*****************")
    for c in cursor:
        arcpy.AddMessage(u'         {0},{1}'.format(c[1],c[2]))
        strName = c[2]
        arcpy.AddMessage("         Final Name: " + str(strName))
        extent = c[0].extent
        paddingFirst = extent.XMax-extent.XMin
        padding = (float(paddingFirst)/float(20))
        new_extent=arcpy.Extent(extent.XMin-padding,extent.YMin-padding,extent.XMax+padding,extent.YMax+padding,None,None,None,None,extent.spatialReference)

        # Set the map frame extent to the layer extent
        map_frame.camera.setExtent(new_extent)    
        arcpy.AddMessage("         " +"Mainframe extent done")

        GRLayoutTitle(SAGFieldNunber + " : "+strName+ " "+ l)
        arcpy.AddMessage("         " +"Title update")
        GRExportLayouttoPDF(template_name,strName,formatted_date)
        arcpy.AddMessage("         " +"Export to PDF done")
    #sys.exit(0)

def GRLayoutTitle(TitleName):
    elm_name = "SAG Title" # the name you assign to the title (TEXT) element
    p = arcpy.mp.ArcGISProject("CURRENT")
    for lyt in p.listLayouts(): # get the element
        for elm in lyt.listElements("TEXT_ELEMENT"):
            if elm.name == elm_name:
                elm.text = TitleName

def GRExportLayouttoPDF(layoutName,FieldName, strDate):
    layout_name = layoutName  # Name of the layout in your project
    output_folder= r"C:\temp"  
    output_name = layoutName+"_"+FieldName+"_"+strDate+".pdf"
    layout = aprx.listLayouts(layout_name)[0]
    layout.exportToPDF(output_folder+"\\"+output_name, resolution=150)  #,jpeg_compression_quality=80, output_as_image=True,compress_vector_graphics=True

#********************************************************************************************

arcpy.AddMessage("Let's update the Definition queries")
aprx = arcpy.mp.ArcGISProject("CURRENT")
LyrName = arcpy.GetParameterAsText(0)  
FieldName = arcpy.GetParameterAsText(1)
name_field = 'SAG_FieldNumber'  #'SAG_SiteName'
SAGFieldNunber = arcpy.GetParameterAsText(2)
SAGFieldName = 'SAG_FieldName'
listMaps = ['2021 Ortho','2023 Ortho','LIDAR']

for l in listMaps:

    arcpy.AddMessage(l + "-------------------------------------------")
    NewMapName = "SAG_Manure_Map_"+l
    template_name = "SAG_Manure_Layout_"+l

    arcpy.AddMessage("Now let's change the Query Definituon")
    GRDefinitionQuery(NewMapName,LyrName, SAGFieldNunber,template_name)

    arcpy.AddMessage("Now let's change the extent of the map")
    GRMapExtent(NewMapName, LyrName,name_field,SAGFieldName,template_name)




arcpy.AddMessage("------------------------") 
arcpy.AddMessage("Definition query updated")   &lt;/LI-CODE&gt;</description>
      <pubDate>Tue, 15 Jul 2025 12:43:58 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/automating-layout-extent-fail-on-one-map/m-p/1633017#M74497</guid>
      <dc:creator>DominicRobergeIADOT</dc:creator>
      <dc:date>2025-07-15T12:43:58Z</dc:date>
    </item>
    <item>
      <title>Re: Automating layout extent fail on one map</title>
      <link>https://community.esri.com/t5/python-questions/automating-layout-extent-fail-on-one-map/m-p/1634913#M74507</link>
      <description>&lt;P&gt;I like the programmatic solution you're coming up with here, I do think this might be more easily solved with a map series and page query though:&lt;/P&gt;&lt;P&gt;&lt;A href="https://pro.arcgis.com/en/pro-app/latest/help/layouts/page-queries.htm" target="_blank"&gt;https://pro.arcgis.com/en/pro-app/latest/help/layouts/page-queries.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If you can't use those, I can help clean up your flow a bit! I think you're iterating backwards, you probably want to iterate each feature in your main loop then update the maps and layouts&lt;/P&gt;</description>
      <pubDate>Tue, 22 Jul 2025 12:33:54 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/automating-layout-extent-fail-on-one-map/m-p/1634913#M74507</guid>
      <dc:creator>HaydenWelch</dc:creator>
      <dc:date>2025-07-22T12:33:54Z</dc:date>
    </item>
  </channel>
</rss>

