1) Dates labelled "rest and travel" refer to when teams are held up by long Pit Stops, Hours of Operation, or transport.
2) Dates labelled "race" refer to when teams complete the majority of their tasks and check-in at the Pit Stop.
Hence this means:
LEG 1: TAIPEI
20 Jun: Race (12h Pit Stop)
Teams race from 5.00am to 3.57pm, then check into Martyrs' Shrine.
LEG 2: YOGYAKARTA I
21 Jun: Rest/travel
Teams held up by train schedule at Gambir and HoO at Bukit Indah.
22 Jun: Race (21h50 Pit Stop)
Teams race from ~7.30am to ~12.52pm, then check into the Kraton.
LEG 3: YOGYAKARTA II
23 Jun: Race (18h Pit Stop)
Teams race from 9.38am to ~4.15pm, then check into Borobudur.
LEG 4: PHUKET
24 Jun: Rest/travel
Teams spend the day travelling and being held up by the HoO at the pier.
25 Jun: Race
Teams race from 8.00am to ~1.00pm, then check into Koh Panyi.
LEG 5: BANGKOK
26 Jun: Rest/travel
27 Jun: Race
28 Jun: Race
This is an anomalous leg that hasn't happened since TAR 14. Teams complete the majority of their tasks on the day allocated for "rest and travel", then take an overnight bus to do close to nothing the next day but to feed fish and to check in. Possibly due to the last-minute planning of the leg?