<?xml version="1.0" encoding="utf-8"?>
<ArrayOfObjTrainPositions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://api.irishrail.ie/realtime/">
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>51.8491</TrainLatitude>
    <TrainLongitude>-8.29956</TrainLongitude>
    <TrainCode>P512</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P512\nCobh to Cork\nExpected Departure 10:00</PublicMessage>
    <Direction>To Cork</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>51.9018</TrainLatitude>
    <TrainLongitude>-8.4582</TrainLongitude>
    <TrainCode>D514</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>D514\nCork to Cobh\nExpected Departure 10:00</PublicMessage>
    <Direction>To Cobh</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>51.9018</TrainLatitude>
    <TrainLongitude>-8.4582</TrainLongitude>
    <TrainCode>D558</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>D558\nCork to Midleton\nExpected Departure 09:45</PublicMessage>
    <Direction>To Midleton</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>51.9212</TrainLatitude>
    <TrainLongitude>-8.17579</TrainLongitude>
    <TrainCode>P557</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P557\nMidleton to Cork\nExpected Departure 09:45</PublicMessage>
    <Direction>To Cork</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>52.5009</TrainLatitude>
    <TrainLongitude>-8.20003</TrainLongitude>
    <TrainCode>A572</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A572\nLimerick Junction to Waterford\nExpected Departure 09:45</PublicMessage>
    <Direction>To Waterford</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>52.6587</TrainLatitude>
    <TrainLongitude>-8.62397</TrainLongitude>
    <TrainCode>A429</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A429\nLimerick to Limerick Junction\nExpected Departure 09:55</PublicMessage>
    <Direction>To Limerick Junction</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>52.8386</TrainLatitude>
    <TrainLongitude>-8.97491</TrainLongitude>
    <TrainCode>A431</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A431\nEnnis to Limerick Junction\nExpected Departure 10:00</PublicMessage>
    <Direction>To Limerick Junction</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>53.2043</TrainLatitude>
    <TrainLongitude>-6.10046</TrainLongitude>
    <TrainCode>E915</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E915\nBray to Howth\nExpected Departure 09:55</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>53.3433</TrainLatitude>
    <TrainLongitude>-6.24829</TrainLongitude>
    <TrainCode>D809</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>D809\nDublin Pearse to Drogheda\nExpected Departure 09:54</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>53.3464</TrainLatitude>
    <TrainLongitude>-6.29461</TrainLongitude>
    <TrainCode>A208</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A208\nDublin Heuston to Cork\nExpected Departure 10:00</PublicMessage>
    <Direction>To Cork</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>53.3531</TrainLatitude>
    <TrainLongitude>-6.24591</TrainLongitude>
    <TrainCode>A108</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A108\nDublin Connolly to Belfast\nExpected Departure 09:50</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>53.3531</TrainLatitude>
    <TrainLongitude>-6.24591</TrainLongitude>
    <TrainCode>D909</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>D909\nDublin Connolly to Maynooth\nExpected Departure 09:50</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>53.3891</TrainLatitude>
    <TrainLongitude>-6.07401</TrainLongitude>
    <TrainCode>E109</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E109\nHowth to Greystones\nExpected Departure 10:00</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>53.3891</TrainLatitude>
    <TrainLongitude>-6.07401</TrainLongitude>
    <TrainCode>E217</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E217\nHowth to Bray\nExpected Departure 09:52</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>53.7955</TrainLatitude>
    <TrainLongitude>-9.50885</TrainLongitude>
    <TrainCode>A805</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A805\nWestport to Dublin Heuston\nExpected Departure 09:45</PublicMessage>
    <Direction>To Dublin Heuston</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>N</TrainStatus>
    <TrainLatitude>54.6123</TrainLatitude>
    <TrainLongitude>-5.91744</TrainLongitude>
    <TrainCode>A109</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A109\nBelfast to Dublin Connolly\nExpected Departure 10:00</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>0</TrainLatitude>
    <TrainLongitude>0</TrainLongitude>
    <TrainCode>A204</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A204\n08:00 - Dublin Heuston to Cork (3 mins late)\nArrived LJ896 next stop Mallow</PublicMessage>
    <Direction>To Cork</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>0</TrainLatitude>
    <TrainLongitude>0</TrainLongitude>
    <TrainCode>A206</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A206\n09:00 - Dublin Heuston to Cork (-2 mins late)\nDeparted PL104 next stop Ballybrophy</PublicMessage>
    <Direction>To Cork</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>0</TrainLatitude>
    <TrainLongitude>0</TrainLongitude>
    <TrainCode>A303</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A303\n07:05 - Tralee to Dublin Heuston (-5 mins late)\nDeparted PL101 next stop Portlaoise</PublicMessage>
    <Direction>To Dublin Heuston</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>0</TrainLatitude>
    <TrainLongitude>0</TrainLongitude>
    <TrainCode>A700</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A700\n05:45 - Dublin Heuston to Galway (71 mins late)\nDeparted GL368 next stop Oranmore</PublicMessage>
    <Direction>To Galway</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>0</TrainLatitude>
    <TrainLongitude>0</TrainLongitude>
    <TrainCode>A740</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A740\n07:28 - Tullamore to Galway (48 mins late)\nDeparted GL368 next stop Oranmore</PublicMessage>
    <Direction>To Galway</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>0</TrainLatitude>
    <TrainLongitude>0</TrainLongitude>
    <TrainCode>A812</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A812\n07:35 - Dublin Heuston to Westport (4 mins late)\nDeparted Athlone Midland Yard next stop Roscommon</PublicMessage>
    <Direction>To Westport</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>0</TrainLatitude>
    <TrainLongitude>0</TrainLongitude>
    <TrainCode>D205</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>D205\n09:50 - Dublin Heuston to Newbridge (-9 mins late)\nArrived Inchicore Advance Starter next stop Hazelhatch</PublicMessage>
    <Direction>To Newbridge</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>0</TrainLatitude>
    <TrainLongitude>0</TrainLongitude>
    <TrainCode>D405</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>D405\n09:11 - Grand Canal Dock to Hazelhatch (6 mins late)\nArrived Inchicore Advance Starter next stop Park West and Cherry Orchard</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>52.1396</TrainLatitude>
    <TrainLongitude>-8.65521</TrainLongitude>
    <TrainCode>A209</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A209\n09:25 - Cork to Dublin Heuston (0 mins late)\nDeparted Mallow next stop Limerick Junction</PublicMessage>
    <Direction>To Dublin Heuston</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>52.1396</TrainLatitude>
    <TrainLongitude>-8.65521</TrainLongitude>
    <TrainCode>A302</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A302\n09:00 - Cork to Tralee (1 mins late)\nDeparted Mallow next stop Banteer</PublicMessage>
    <Direction>To Tralee</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>52.5009</TrainLatitude>
    <TrainLongitude>-8.20003</TrainLongitude>
    <TrainCode>A426</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A426\n09:41 - Limerick Junction to Limerick (8 mins late)\nDeparted Limerick Junction next stop Limerick</PublicMessage>
    <Direction>To Limerick</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>52.6766</TrainLatitude>
    <TrainLongitude>-7.82189</TrainLongitude>
    <TrainCode>A407</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A407\n08:55 - Limerick to Dublin Heuston (-1 mins late)\nDeparted Thurles next stop Portlaoise</PublicMessage>
    <Direction>To Dublin Heuston</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>52.8999</TrainLatitude>
    <TrainLongitude>-7.60259</TrainLongitude>
    <TrainCode>A462</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A462\n09:00 - Ballybrophy to Limerick (0 mins late)\nDeparted Ballybrophy next stop Roscrea</PublicMessage>
    <Direction>To Limerick</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>52.992</TrainLatitude>
    <TrainLongitude>-6.9762</TrainLongitude>
    <TrainCode>A502</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A502\n07:20 - Dublin Heuston to Waterford (1 mins late)\nDeparted Athy next stop Carlow</PublicMessage>
    <Direction>To Waterford</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.163</TrainLatitude>
    <TrainLongitude>-6.90802</TrainLongitude>
    <TrainCode>P209</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P209\n09:20 - Portlaoise to Dublin Heuston (1 mins late)\nDeparted Kildare next stop Newbridge</PublicMessage>
    <Direction>To Dublin Heuston</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.1855</TrainLatitude>
    <TrainLongitude>-6.80807</TrainLongitude>
    <TrainCode>A706</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A706\n09:25 - Dublin Heuston to Galway (0 mins late)\nDeparted Newbridge next stop Portarlington</PublicMessage>
    <Direction>To Galway</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.2043</TrainLatitude>
    <TrainLongitude>-6.10046</TrainLongitude>
    <TrainCode>E812</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E812\n09:45 - Bray to Malahide (4 mins late)\nDeparted Bray next stop Woodbrook</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.22</TrainLatitude>
    <TrainLongitude>-6.1101</TrainLongitude>
    <TrainCode>E106</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E106\n08:30 - Malahide to Greystones (0 mins late)\nDeparted Woodbrook next stop Bray</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.2364</TrainLatitude>
    <TrainLongitude>-6.11691</TrainLongitude>
    <TrainCode>E914</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E914\n09:24 - Greystones to Howth (8 mins late)\nDeparted Shankill next stop Killiney</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.2469</TrainLatitude>
    <TrainLongitude>-6.66386</TrainLongitude>
    <TrainCode>A507</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A507\n07:50 - Waterford to Dublin Heuston (0 mins late)\nDeparted Sallins next stop Dublin Heuston</PublicMessage>
    <Direction>To Dublin Heuston</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.2469</TrainLatitude>
    <TrainLongitude>-6.66386</TrainLongitude>
    <TrainCode>A707</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A707\n07:30 - Galway to Dublin Heuston (5 mins late)\nDeparted Sallins next stop Dublin Heuston</PublicMessage>
    <Direction>To Dublin Heuston</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.2557</TrainLatitude>
    <TrainLongitude>-6.11317</TrainLongitude>
    <TrainCode>E212</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E212\n08:41 - Howth to Bray (2 mins late)\nArrived Killiney next stop Shankill</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.2704</TrainLatitude>
    <TrainLongitude>-7.49985</TrainLongitude>
    <TrainCode>A803</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A803\n07:15 - Westport to Dublin Heuston (6 mins late)\nDeparted Tullamore next stop Portarlington</PublicMessage>
    <Direction>To Dublin Heuston</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.2812</TrainLatitude>
    <TrainLongitude>-6.12289</TrainLongitude>
    <TrainCode>E213</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E213\n08:50 - Malahide to Bray (2 mins late)\nArrived Glenageary next stop Dalkey</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.2878</TrainLatitude>
    <TrainLongitude>-6.12712</TrainLongitude>
    <TrainCode>A607</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A607\n07:10 - Rosslare Europort to Dublin Connolly (3 mins late)\nArrived Sandycove next stop Dun Laoghaire</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.2954</TrainLatitude>
    <TrainLongitude>-6.15206</TrainLongitude>
    <TrainCode>E107</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E107\n09:00 - Howth to Greystones (0 mins late)\nArrived Salthill and Monkstown next stop Dun Laoghaire</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.2991</TrainLatitude>
    <TrainLongitude>-6.16512</TrainLongitude>
    <TrainCode>E811</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E811\n09:25 - Bray to Malahide (0 mins late)\nDeparted Seapoint next stop Blackrock</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3206</TrainLatitude>
    <TrainLongitude>-6.21112</TrainLongitude>
    <TrainCode>E913</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E913\n09:15 - Bray to Howth (3 mins late)\nDeparted Sydney Parade next stop Sandymount</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3212</TrainLatitude>
    <TrainLongitude>-8.60608</TrainLongitude>
    <TrainCode>A742</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A742\n09:12 - Athlone to Galway (-2 mins late)\nArrived Attymon next stop Athenry</PublicMessage>
    <Direction>To Galway</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3223</TrainLatitude>
    <TrainLongitude>-6.52356</TrainLongitude>
    <TrainCode>D204</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>D204\n09:20 - Dublin Heuston to Portlaoise (1 mins late)\nDeparted Hazelhatch next stop Sallins</PublicMessage>
    <Direction>To Portlaoise</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.334</TrainLatitude>
    <TrainLongitude>-6.37868</TrainLongitude>
    <TrainCode>A405</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A405\n07:45 - Limerick to Dublin Heuston (4 mins late)\nDeparted Park West and Cherry Orchard next stop Dublin Heuston</PublicMessage>
    <Direction>To Dublin Heuston</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.334</TrainLatitude>
    <TrainLongitude>-6.37868</TrainLongitude>
    <TrainCode>P406</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P406\n09:09 - Newbridge to Grand Canal Dock (9 mins late)\nArrived Park West and Cherry Orchard next stop Drumcondra</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3353</TrainLatitude>
    <TrainLongitude>-6.45233</TrainLongitude>
    <TrainCode>P208</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P208\n09:44 - Hazelhatch to Dublin Heuston (0 mins late)\nDeparted Adamstown next stop Kishoge</PublicMessage>
    <Direction>To Dublin Heuston</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3363</TrainLatitude>
    <TrainLongitude>-8.24081</TrainLongitude>
    <TrainCode>A709</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A709\n09:05 - Galway to Dublin Heuston (-1 mins late)\nArrived Ballinasloe next stop Athlone</PublicMessage>
    <Direction>To Dublin Heuston</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3397</TrainLatitude>
    <TrainLongitude>-6.23773</TrainLongitude>
    <TrainCode>A602</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A602\n09:35 - Dublin Connolly to Rosslare Europort (6 mins late)\nDeparted Grand Canal Dock next stop Dun Laoghaire</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3397</TrainLatitude>
    <TrainLongitude>-6.23773</TrainLongitude>
    <TrainCode>E952</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E952\n08:53 - Greystones to Howth (5 mins late)\nDeparted Grand Canal Dock next stop Dublin Pearse</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.347</TrainLatitude>
    <TrainLongitude>-6.25425</TrainLongitude>
    <TrainCode>D406</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>D406\n09:31 - Grand Canal Dock to Hazelhatch (13 mins late)\nArrived Tara Street next stop Dublin Connolly</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3531</TrainLatitude>
    <TrainLongitude>-6.24591</TrainLongitude>
    <TrainCode>E214</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E214\n09:13 - Howth to Bray (9 mins late)\nDeparted Dublin Connolly next stop Tara Street</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3629</TrainLatitude>
    <TrainLongitude>-6.22753</TrainLongitude>
    <TrainCode>E215</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E215\n09:20 - Howth to Bray (2 mins late)\nDeparted Clontarf Road next stop Dublin Connolly</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3629</TrainLatitude>
    <TrainLongitude>-6.22753</TrainLongitude>
    <TrainCode>E912</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E912\n08:55 - Bray to Howth (2 mins late)\nArrived Clontarf Road next stop Killester</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3704</TrainLatitude>
    <TrainLongitude>-6.50598</TrainLongitude>
    <TrainCode>P656</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P656\n09:41 - Maynooth to Grand Canal Dock (1 mins late)\nDeparted Leixlip (Louisa Bridge) next stop Leixlip (Confey)</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3725</TrainLatitude>
    <TrainLongitude>-6.29869</TrainLongitude>
    <TrainCode>P769</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P769\n09:10 - Maynooth to Dublin Connolly (4 mins late)\nDeparted Broombridge next stop Drumcondra</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.373</TrainLatitude>
    <TrainLongitude>-6.20442</TrainLongitude>
    <TrainCode>E108</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E108\n09:30 - Malahide to Greystones (1 mins late)\nDeparted Killester next stop Clontarf Road</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3752</TrainLatitude>
    <TrainLongitude>-6.31388</TrainLongitude>
    <TrainCode>D305</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>D305\n09:35 - Docklands to M3 Parkway (2 mins late)\nArrived Pelletstown next stop Ashtown</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.378</TrainLatitude>
    <TrainLongitude>-6.58993</TrainLongitude>
    <TrainCode>A902</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A902\n09:05 - Dublin Connolly to Sligo (1 mins late)\nDeparted Maynooth next stop Kilcock</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3831</TrainLatitude>
    <TrainLongitude>-6.4242</TrainLongitude>
    <TrainCode>D908</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>D908\n09:10 - Dublin Pearse to Maynooth (5 mins late)\nDeparted Clonsilla next stop Leixlip (Confey)</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3831</TrainLatitude>
    <TrainLongitude>-6.4242</TrainLongitude>
    <TrainCode>P780</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P780\n09:40 - M3 Parkway to Dublin Connolly (-1 mins late)\nArrived Clonsilla next stop Drumcondra</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3909</TrainLatitude>
    <TrainLongitude>-6.15672</TrainLongitude>
    <TrainCode>E809</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E809\n08:45 - Bray to Malahide (0 mins late)\nArrived Howth Junction next stop Clongriffin</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.3917</TrainLatitude>
    <TrainLongitude>-6.13678</TrainLongitude>
    <TrainCode>E216</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E216\n09:40 - Howth to Bray (2 mins late)\nArrived Bayside next stop Howth Junction</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.4032</TrainLatitude>
    <TrainLongitude>-6.14839</TrainLongitude>
    <TrainCode>P701</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P701\n09:00 - Drogheda to Dublin Connolly (4 mins late)\nDeparted Clongriffin next stop Howth Junction</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.4169</TrainLatitude>
    <TrainLongitude>-6.1512</TrainLongitude>
    <TrainCode>D808</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>D808\n09:27 - Dublin Connolly to Drogheda (5 mins late)\nDeparted Portmarnock next stop Malahide</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.638</TrainLatitude>
    <TrainLongitude>-6.21705</TrainLongitude>
    <TrainCode>A105</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A105\n08:00 - Belfast to Dublin Connolly (3 mins late)\nDeparted Gormanston next stop Dublin Connolly</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.712</TrainLatitude>
    <TrainLongitude>-6.33538</TrainLongitude>
    <TrainCode>P705</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P705\n09:43 - Drogheda to Dublin Connolly (3 mins late)\nDeparted Drogheda next stop Laytown</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.9676</TrainLatitude>
    <TrainLongitude>-8.30438</TrainLongitude>
    <TrainCode>A900</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A900\n06:55 - Dublin Connolly to Sligo (2 mins late)\nDeparted Boyle next stop Ballymote</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>53.9676</TrainLatitude>
    <TrainLongitude>-8.30438</TrainLongitude>
    <TrainCode>A905</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A905\n09:05 - Sligo to Dublin Connolly (3 mins late)\nDeparted Boyle next stop Carrick on Shannon</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>54.0007</TrainLatitude>
    <TrainLongitude>-6.41291</TrainLongitude>
    <TrainCode>A104</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A104\n07:40 - Dublin Connolly to Belfast (0 mins late)\nDeparted Dundalk next stop Newry</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>R</TrainStatus>
    <TrainLatitude>54.0007</TrainLatitude>
    <TrainLongitude>-6.41291</TrainLongitude>
    <TrainCode>A106</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A106\n08:50 - Dublin Connolly to Belfast (-1 mins late)\nArrived Dundalk next stop Newry</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>T</TrainStatus>
    <TrainLatitude>53.3397</TrainLatitude>
    <TrainLongitude>-6.23773</TrainLongitude>
    <TrainCode>P405</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P405\n08:34 - Hazelhatch to Grand Canal Dock(18 mins late)\nTERMINATED Grand Canal Dock at 09:40</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>T</TrainStatus>
    <TrainLatitude>53.3433</TrainLatitude>
    <TrainLongitude>-6.24829</TrainLongitude>
    <TrainCode>P607</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P607\n08:20 - Drogheda to Dublin Pearse(6 mins late)\nTERMINATED Dublin Pearse at 09:42</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>T</TrainStatus>
    <TrainLatitude>53.3509</TrainLatitude>
    <TrainLongitude>-6.23929</TrainLongitude>
    <TrainCode>P306</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P306\n09:08 - M3 Parkway to Docklands(3 mins late)\nTERMINATED Docklands at 09:49</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>T</TrainStatus>
    <TrainLatitude>53.3531</TrainLatitude>
    <TrainLongitude>-6.24591</TrainLongitude>
    <TrainCode>A903</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>A903\n06:40 - Sligo to Dublin Connolly(5 mins late)\nTERMINATED Dublin Connolly at 09:45</PublicMessage>
    <Direction>Southbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>T</TrainStatus>
    <TrainLatitude>53.3531</TrainLatitude>
    <TrainLongitude>-6.24591</TrainLongitude>
    <TrainCode>P775</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>P775\n09:00 - Bray to Dublin Connolly(1 mins late)\nTERMINATED Dublin Connolly at 09:49</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>T</TrainStatus>
    <TrainLatitude>53.3891</TrainLatitude>
    <TrainLongitude>-6.07401</TrainLongitude>
    <TrainCode>E910</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E910\n08:25 - Bray to Howth(3 mins late)\nTERMINATED Howth at 09:43</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>T</TrainStatus>
    <TrainLatitude>53.3891</TrainLatitude>
    <TrainLongitude>-6.07401</TrainLongitude>
    <TrainCode>E911</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>E911\n08:24 - Greystones to Howth(0 mins late)\nTERMINATED Howth at 09:49</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
  <objTrainPositions>
    <TrainStatus>T</TrainStatus>
    <TrainLatitude>53.712</TrainLatitude>
    <TrainLongitude>-6.33538</TrainLongitude>
    <TrainCode>D806</TrainCode>
    <TrainDate>28 Aug 2026</TrainDate>
    <PublicMessage>D806\n08:52 - Dublin Connolly to Drogheda(-1 mins late)\nTERMINATED Drogheda at 09:48</PublicMessage>
    <Direction>Northbound</Direction>
  </objTrainPositions>
</ArrayOfObjTrainPositions>