About Mike Vulanich

I'm an amateur triathlete and professional daylight maximizer, fueled by peanut butter and espresso. Here at mvtri.com I write about my training & racing as a competitive athlete, and the cool places around the world it's taken me.

Race Saga: Ironman 70.3 World Championship (Chattanooga, TN)


Climbing Mt. Lookout with Vinny hot on my heels

On Sunday, September 11, 2017, I raced the Ironman 70.3 World Championship in Chattanooga, Tennessee.
It’s almost weird to see those words on a screen. A full fourteen months earlier I had qualified at Vineman in Windsor, CA, an eternity by qualifying standards. After all of the build up for over a year, it’s hard to believe the race has come and gone and that a month later, I’m finally sitting down to write about it. I haven’t let that much time go between a race and writing in years, but it’s fair to say it took a bit of time to settle, assess, reflect and move forward.

With that said, you should know that this is a much meatier race report than I usually write So much went into the prep and I can recall almost every second of the race in detail, the words just flowed. And as I’m going against my content ethos of “less is more,” I’ve rebranded this from a Race Report to a RACE SAGA. Cue the epic rock opera guitars, you’ve been warned and I guarantee it’s worth it.


Fourteen Months Is a Long Time…  

I tend not to place too high an importance on any one race, even Championship races, and I’ve been fortunate enough to do a few: Vegas, Canada twice, Austria and Chicago. But even with that experience, it’s fair to say the longer lead up and higher expectations as an athlete added to the anticipation for Chattanooga. Whereas before I was happy to have qualified for and participated in Worlds, I now wanted to test my mettle against the best in the world. I wanted success. Specifically, I wanted to be on the podium.

How was I going to achieve the success, a podium result, that had eluded me at prior Worlds races?

– Well for one a big swim focus. I stayed in LA for two months, working remotely and training with Gerry Rodrigues of Tower 26.

– I overhauled my bike fit to stop giving away free time with my TT position that was borderline “touring.”

– I traveled to Chattanooga in May to race the standard Ironman 70.3 as a “tune up” and course familiarization.

– I worked directly with Matt Dixon on a detailed training plan that would help me build without breaking down as I have in the past.

– I embraced a new style of run training that purplepatch has been using with its athletes – less sustained race pace and more broken pyramids building above race pace with form running between.

– I did sauna training and heat training in the Bay Area’s record setting heat wave to get ready for a hot, Tennessee summer day (which never came).

– And finally, “I did what got me there,” instead of overthinking things. Ok, maybe three weeks out I slipped and needed to be reminded by Dixon not to”mess* it up.” But hey, at that point I was ready to rock and itching to race! (*did not say mess)

So I arrived to Chattanooga at peace with my preparation and with an optimistic confidence that, if I managed the day and raced to my fitness level, I could do well. Spending time with my teammates, cementing strategy with Dixon and getting the best pre-race haircut from Dani only helped with this feeling of peace and readiness. Come Sunday morning, there was nothing to do but put on the noise cancelling headphones and go to “that place” in the midst of the race morning craziness. Dawn at a race start is always nuts, but it was a little more intense that day. It was the World Championship, after all, and folks from all over the globe were there to send it.



Ears cannot be contained

Ironman 70.3 World Championship Swim

Eventual podium finisher, first place Every Man Jack athlete and housemate, Jack McAfee lived in Tennessee and knew a boat ramp up the river we could hop in from to get a practice swim since they weren’t letting athletes warm up in the water at the race start. To my delight, they allowed amateurs to wear wetsuits. It’s no secret that, like most, when I put on that Roka Maverick, I’m a different swimmer. After 10-15 minutes of trying not to get carried down river as a warm up, we hopped out and ran over to our start wave.

The start was an interesting format. In order to really address drafting concerns on the bike, they split age group waves up by ten minutes, which was available given the women’s race was split to Saturday. Then within each wave, a rolling start was facilitated as it is race-wide in other races, with athletes self selecting starting position based on projected finish time. Finally, once a time group was given the green light to move forward, athletes lined up into a horizontal corral gate like a horse race, eight athletes wide. The athlete at the front of each line dove into the water at the sound of the horn, and their spot at the front of the corral was back filled immediately with the next athlete, who would dive at a horn about five seconds later. It was really impressive.

So Jack and I found Vince D’Onofrio in the wave start by back end the 25-27min swim sign, which seemed like a good place to start. I knew I wasn’t going to swim 25min but on the right set of feet in my wetsuit, I was hoping to swim at least a 28min (by effort, times would be slower in current). Before we knew it we were being ushered into the corrals like race horses and the timing between Vince and I got thrown off so the horn sounded and off I went.

My World Championship race had officially started.

I was thrilled to have a really solid dive. I credit this to the many, many deck ups and dive sets I did at Tower 26. My goggles stayed on my face without any water getting in and I with a few “dolphin kicks” (controlled thrashes) I actually came up in a great spot ahead of the others, allowing me to cut over to the buoy line so I could sight on the shortest path.

The course was designed roughly as 400 meters cross current, 1,000 meters upstream, 200 meters cross/down, 300 meters downstream (these are guesses, translated as fine, slow, fine, fast). So the biggest stretch of the course was fairly challenging swimming upstream.

I made good time and was with a solid group in the first 400m cross current. Once we made the turn, it didn’t take long for the group dynamic to become suspect at best. Not only were we swimming upstream, the sun was just in the right spot to make buoys pretty tough to see. Thankfully I’d gotten a new pair of mirrored Rokas so these along with my regular sighting kept me right on track, all but tagging each buoy with my shoulder.

Probably three-fourths of the way through this upstream segment, my arms started to yell at me, “much effort, not speed!” (my arms don’t have great grammar) I keyed into some of the big sets I did with Gerry and Dixon and focused on high turn over and gobbling up as much water as I could with each stroke. This “bounce back” to form and strength was something I never could have done in races prior, and I knew was a direct result of all the work we had done, giving me confidence the rest of the swim.

I was relieved to make the turn out of upstream and free up the stroke a little bit in the cross stream. Before I knew it I was making the “kinked” turn for the final downstream stretch, implementing Dixon’s guidance to lengthen the stroke with a bit more glide with the current. The current was like a valet delivering me to the swim exit, which was appreciated after muscling upstream.

I came out in a competitive position within the race. I’d swam well, for me. While I didn’t know this at the time, exiting with a mass of bodies, I felt good and that’s what matter as I charged to my bike through the long transition up the river bank.

Time: 30:33

Thoughts: I’m really happy about this, as it was roughly the same time I swam at Ohio, which was obviously not upstream. Improvements!


Ironman 70.3 World Championship Bike


Caught mid snack. Noms.

After methodically scurrying through transition, I got to my bike with a bunch of guys all charging to get the next part of the race started. “The climb,” a fifteen minute trek up Lookout Mountain followed by miles of up-trending rollers, loomed before we’d even reach mile four, so I took the opportunity to build into an effort while hydrating. Swimming in warmer water with a wetsuit can be sneakily dehydrating so I didn’t want any surprises from the cramp fairy later in the race.

The base of the climb is really freaking steep and on cue, guys started to flex their climbing muscles and take off up the pitch. I stuck to the game plan laid out by Dixon, stay controlled on the first half climbs, open it up on the back half flats.

In order to stay controlled on the climbs, I put the watts data field on my computer for the first race in three years, with the goal to keep watts at a solid zone 3+ effort and no more. As guys rode past me, this wattage number was there to prevent me from flexing back. And half way up the first part of the climb, I heard a familiar voice, Vince had ridden to catch up with me.

Vince was riding really well up the climbs and we made our way through groups of guys while managing the pile ups on the rollers. It was tough to get into rhythm riding with the undulating terrain broken up by clusters of riders. Finally, we broke through the finally roller and a big, fast, sweeping descent welcomed us.

I knew this would be an opportunity to make a gap on the guys that may not have been comfortable descending, especially if they came from places without mountains. So I did my best Sebastian Kienle impression and laid on my top tube with arms folded beneath me, hands on breaks, using them only for the occasional feathering at tight turns. When I got to the bottom and returned to my seat I looked behind me to see that Vince and one other guy had made the break with me. The three of us worked legally through the second third of the race.

To my dismay, there were cars on the course, driving with the race. On multiple occasions I slowed significantly as they crawled along debating the safest way to pass a bike race (hint: there really isn’t one). It cost valuable time and at one point I was almost run off the road.

Otherwise this part of the course was flat to rolling and where there weren’t cars, the rhythm was fluid. And about fifteen miles from the finish, the road opens up to a highway with smooth, wide roads and a steady but small incline. This is wear I made a move to get some time back from the cars and after a bit I realized the guys I was riding with were gone.

Just as I started to get excited about making it back to town, a few miles from the run transition, I felt myself getting passed by a pretty strong rider. I looked over and was bummed to see someone directly on his wheel. Looking back even further I saw this was an unapologetic draft train, ten guys deep. I was too close to finishing the bike without getting caught up in this crap so I hopped out of the saddle and passed back and rode hard to hold them off.

After five minutes, they caught me again, all ten guys in the same order, 6 inches off each other’s wheels. I threw up my hands at the matter, sat up, rode 200 watts and told each guy that rode by they were cheating. And in a case of great timing, a course marshal was sitting in a parking lot. He pulled out and started taking numbers. Score one for the honest racers! But I wasn’t going to get that time back from needing to sit up and let the train go by to a safe distance.

Knowing this, I hit transition with a great sense of purpose, handing my bike off and grabbing my shoe bag. Sadly, it took me an extra second or two to put my left shoe on, enough to make a mental note of.

If you’re wondering why I keep referring to instances of lost seconds, continue reading. There’s only one more leg of the race to get to before it all comes together.

Time: 2:24:25

Thoughts: Certainly not my best ride in time, placement or watts. I attribute this to being perhaps overly conservative, not as strong as I could have been in some spots and the cars/draft packs preventing rhythm riding.


Ironman 70.3 World Championship Run


The part that wasn’t up or down hill.

One thing that stuck out when I raced Chattanooga in May was a tough first mile of the run: a quick U-turn after a couple hundred meters, a cement path along the river and a steady hill. Having that mental and muscle memory was a huge benefit as I focused on good form and flow.

This course was different than the one in May, however, as it featured more hills – almost 1,000 feet of climbing. And like the bike, the focus was to manage the uphills, bomb the downhills and run “well” on the flats (i.e. running fast without focusing on running fast, rather on form).

I thought that I’d set up a good run with a steady diet of GU chews, Picky Bar and GU hydration tabs on the bike. However when I got to mile two of the run, I was labor intensive a bit more than I would have liked and my mind was going to some not so happy places. Way too early for this. These can be signs that, in fact, fueling was behind and I didn’t quite top off as expected on the bike. The next aid station I took a gel and washed it down.

This, in addition to a snappy riverside flat section, brought me back and I was running like myself. I was cruising at about 5:45 and felt really good. I hit the spot that I projectile vommited before losing the lead in May and smiled to myself, I felt much better right now. I hit the bridge and was floored by the crowd support, as the DJ pumped “Firestarter” by Prodigy. Are you kidding me?! Game on!

The first big climb came and went and I was really pleased with how I managed the pace. It felt like a crawl but I continued to make headway before cresting and letting it rip on the downhill. In a great example of sadistic but lovely course design, almost immediately after slamming the quads on the down does one turn around and go back up. It was Wildflower-esque. Knowing that I’d do this sequence again, I managed the up all the while taking mental cues for the next time. And of course, what goes up must come down so bombs away, I descended again, this time bottoming out along the river.

Returning over the river via the pedestrian bridge I felt in control and ready to push the pace on the second loop. Hearing cheers from Dani, Steve and Kaelyn as I made the turn to loop two was a nice jolt.

Throughout the race any one of the almost forty Every Man Jack kits acted as a rabbit. In a way, we knew we were racing the world’s best, but I think to an equal extent, we were all chasing each other around out there. There’s such a deep level of respect that comes with knowing how hard your teammates work and just how talented they are. My goal on the second loop was to catch as many guys as I could because if I was doing that, I was racing well.

And in that second loop, confidence and comfort grew as I continued to run better with each passing mile. It was the first time in awhile I felt like I could really run like myself off the bike. I returned to the bumping bridge running at a good clip but knowing the last hill sequence stood between me and a strong finish. As I hit that final hill, I steadily managed the pace up and made it through without any issues. Success! Bombing down the hill was less graceful than before, but again, no issues from the quad pounding. Double success! There was one last hill in my way before relatively smooth sailing home. I felt really good on the way up and even picked up the pace before one last all out bomb.

The last mile from there is a blur. It involved a lot of fast running and just as much spit and sweat flying in different directions. I hit the pedestrian bridge emptying the chambers, bobbing and weaving through racers, knowing it was my last bit of running before an all out free fall to the finish down the river bank.

Running as fast as I could down the final hill and onto the stretch of road leading to the finishers chute, I got emotional. The first emotion was sheer pain from pushing an all out sprint at the end of an over-four hour effort. The second was the inspiration of my grandmother, who was heavy on my mind that day as she fought through challenges of her own back in Ohio. There were definitely some ugly tears happening behind those shades.

I crumbled and collapsed at the finish line after passing as many guys as I could down the chute. I had nothing left to give, which is how it should be at the end of a World Championship race.

Time: 1:19:06

Thoughts: Like the swim, I’m happy that this was as fast as my Ohio split on a much more challenging course. It means that I was fit and running well.

The Result

As I laid in a heap just after the finish line, little did I know above me read the time of the finisher three seconds before me, a Brit who grabbed the last podium spot. For all my efforts, it was a left running shoe in transition, a car on course, a draft pack passing – any portion of any one of those – that kept me off the podium. Heck, if I took three sips of water that were each a second too long, that would be the difference.

And while it’s easy to look at that drop your jaw at the sheer silliness of a three second differential in a four plus hour race, I feel great about my effort and the result. I may not have made it onto the podium, but it was a podium effort on the day. It’s something I can hold my head high about and be proud of the preparation and the journey to get there.

A fun side note, my friend and training partner Derk de Korver raced literally the same time as me, to the second, and also missed the podium by three seconds. You spend enough time with someone…! We found out over drinks after the race, as he got in the water before I did, so I never saw him, the sad and often silly side effect of age group wave racing.

What’s Next?

September feels so early to end a season. So I signed up for my first Cabo 70.3 in November, where I’ll look to end the season with a solid result and after, some tequila and tacos with my brother.


Thanks to anyone who made it all the way through this race saga. It was a fun event to prepare for and do, and to write about. A massive thanks to my support system: Dani, my family, Team EMJ, purplepatch and the incredible sponsors that showed us love all week. It was a success because of you all.

Race Report: Defending title at Ironman 70.3 Ohio


You know that feeling when you’re FAF (fit as…) heading into a race, you’re healthy and you just know you’re going to crush it? That’s just not how I felt leading into my bid to defend my title at Ironman Ohio 70.3. I wasn’t UNfit for UNhealthy and if you asked me before the race, I would have told you I was “fine.” But a couple bouts with illness and one or two niggles leading up to the race definitely axed some key sessions that would have helped not only fitness, but confidence.

And what better way to get over a case of the “maybes” than a little home cookin’?


The race venue is twenty minutes from the house I grew up in. What makes this race so special is not only the course familiarity, but the unwavering support of my family while I’m home. There was not a single thing that wasn’t covered from the second I landed at Columbus Port International, all the way to the start line, where my dad zipped up my Roka wetsuit. And it was that extra energy I would have spent on logistics, food or other details, that I was able to use in getting my mind and body right.

By the time I was wading in the water with the rest of the guys waiting for the gun, I was…how do they say, “finna to get after it.”

Unfortunately, Ohio 70.3 decided to go with a “wave” start again this year. Of the four 70.3’s I’ve started this year, this was the first that hadn’t converted over to a self-seeded “rolling” start. My wave was the second to last wave, starting an hour and twenty minutes after the first folks. I’m hoping all races eventually convert over to the rolling or seeded start – it’s safer for everyone and allows more pure competition.

As such, we had a lot of traffic by the time we started our swim. Coupled with the blinding sun which had risen well above the treeline by then, there were people stopped everywhere. So while I started swimming with a guy who had a good pace and line, I lost him in the madness about 600m into the 2km swim and ended up swimming alone.

While I swam 30min for the first time in many races, I’m really encouraged to know on a day with clean water it would have been 29min and with a good group, 28min was within reach! This speaks volumes to the work I did with Gerry Rodrigues of  Tower 26 in LA, something I’m going to write more about soon.

Fun fact about the bike: I rode exact same time as last year. Like, to the second: 2:12:33. This year’s ride had far less turns than last year’s course, which had something like 35 turns in 56 miles (!), with a headwind on the way out and a tailwind on the way back. This means I was more easily able to smooth out effort, focus on gearing, nutrition and hydration, to set up a strong run.

I was caught around mile 45 or 50 by a strong rider who came out of the swim a couple minutes back. We hit transition together and I was expecting the race to start there. However, I must have made it out of T2 before he did because I didn’t see him again.

Last year, I remember feeling like crap within the first two miles of the run. It was little less humid this year, but I also think that up to that point in the race, the energy burn had been pretty even allowing me to feel the rhythm. I clicked away at 6:00ish pace give or take knowing I was going to have that pace all day, but I wasn’t sure if I would have that extra gear to run faster.

In my own assessment and after finally hearing a position shout out from the crowd I knew I wasn’t going to have to dig deep to run much faster, which was really a relief. My strategy was to “not do anything stupid,” i.e. hold the pace.

And unlike last year, when I was pretty dehydrated hitting the finish line, I was able to really enjoy finishing on the OWU track and even fired up the crowd a little bit, finishing with nothing other than the “O-H…” arms.

After the race, I rode my bike 45min home to flush out the legs and got ready to host my Watterson buddies for a classic Ohio summer cookout. Frankly I was looking forward to that just as much as the race.

I’m really excited about this race. Dropping almost 7 minutes off my time last year and getting a PR at the distance in 4:06:08 is the type of positive feedback on your training that you hope to get out of a race. But what’s the most exciting is that I know I can go faster. And this isn’t a “woulda, shoulda, coulda…just be happy with your time” kind of faster. No, cleaner water on the swim (i.e. rolling start), a couple mechanical changes on the bike, more run training now that my swim block and illnesses are behind me. I really believe I can break four hours on that course. And that pumps me up.

Thanks, as always for reading along and a massive thank you to anyone who expressed kind words before, during or after the race. Thank you to my parents for being the best race support, my brother and friends for completing my trip and hanging out after the race, and Dani who was texting everyone like mad with updates from time tracking central command (i.e. her MacBook). A big shoutout to my teammates who had blitzed Ironman Santa Rosa just the day prior and pumped me up, and to all of the sponsors who make it possible for our team to let our talent shine on the course.

Up next: Ironman 70.3 World Championship in Chattanooga, TN. Time to get to work!

Travel Tuesday: Cycling at Sun Moon Lake, Taiwan

A series of stories & tips about training & traveling. 

File_000Taiwan’s beauty and variety blew us away. Our ten days were filled with fun outdoor adventures, but cycling in the country with the most mountains over 9,000 ft. was something I was really looking forward to in Sun Moon Lake, the cycling leg of our trip.

Little did I know, I’d end up inadvertently climbing 9,000 ft. in 3hr 40min of riding, while fending off farm dogs and bonking after running out of Pineapple cake.

Much more on that adventure below. But first, some tips for anyone looking to ride bikes in Taiwan, specifically Sun Moon Lake.


Most people who think of riding in Taiwan likely think of the Taiwan KOM Challenge, and rightfully so. We stayed along the route in Taroko Gorge and while we were focused on hiking the breathtaking trails and relaxing in hot springs, I can confirm a little piece of me died each time a cyclist rocked their bike back and forth up the steep road. The route is nothing short of epic.

Unless you want to drive 10 hours around the top of the island, the only road to Sun Moon Lake from Taroko, is 90 miles of mountain roads, often big enough for one car, but with two way traffic. It’s pretty white knuckle driving and takes over 4 hours. In fact, we were turned around at a  road closure due to rock slides and had to try the next day, which was also slowed by rock slide.

Sun Moon Lake is accessible via the West Coast, either by car or bullet train + car/bus, so if you’re coming from Taipei, that’s definitely the recommended route.


There are a handful of bike rental spots where we stayed, but a proper day of cycling was made possible by the Giant retail/rental shop in the Shuishe Pier Plaza.

Spa Home Hotel – Yuchi Township, Northwest corner of Sun Moon Lake, Shuieshe Pier. Clean, lake view rooms at a reasonable price.

Giant Bikes – Rent ascending levels (read: entry level through Dura Ace Di2) of cruisers, hybrids, road or even TT bikes, right next to the hotel. A bit more expensive than neighboring shops, totally worth it for quality and support.File_004 (2)


After each choosing our steed for the day, it was now time to figure out where exactly to ride: a loop around the lake and out to the mountains.

Riding Around Sun Moon Lake – This ~18mi loop of mainly lakeside paths is given to you on a map when you rent from Giant and has great spots to peel off and get your tourist on. Some spots even involve stairs and walking. It’s a totally rad cruisy option to see the beautiful sights. Dani and I rode part of this on our first evening in town and she crushed the whole loop the next day fueled by ice cream at an outdoor market along the way.

Heading for the mountains – Taking a flyer on Strava segments/heat maps, like I do in most places I visit and want to ride, I opened up Strava to find a general route out of Sun Moon Lake and into the mountains for some climbs. I intended to ride for 3 hours with some climbing.

It’s fair to say I vastly under estimated my route.



  • 56.7mi
  • 8,767 ft
  • 3hrs 40min
  • See the route and stats on my Strava
  • Gear:
    • Brought my own: Louis Garneau kit & shoes, pedals, pedal wrench. A lot of space on a one-backpack trip, but totally worth it to make any bike work.
    • Rented: Giant TCR Advanced Ultegra, helmet
    • Nutrition: Brought some GU gels & tabs, bought pineapple cakes & Coke

I settled on taking 21 North, where I linked up with a Taiwanese cyclist who I traded pulls with to 14 West, a beautiful, sweeping, well paved road along the river. At a stoplight, I pointed at some mountains and signaled “Up?” with an eager smile. He laughed and shook his head no. I was going to have to climb solo.

I peeled off the first steep rode I could find, a small farm road and started climbing. I rode past chicken farms and into a forested area super punchy climbs. Very soon however I topped out and began descending going the other direction. As I scanned the area for longer, sustained mountain roads, I looked up and came to a screeching halt.

Not your granddad’s sheep dogs

In the middle road was a man on a motor scooter and two farm dogs, which did not appreciate my unannounced presence. I’m sure the spandex and helmet + glasses combo didn’t help either.

In an instant, they charged to within a foot of either side of my now-dismounted legs, barking ferociously and showing their teeth. These were not your granddad’s sheep dogs. They were grizzly with a deadened look of “I don’t give an EF” in their eyes. I thought I was toast.

I wanted to keep my eye on them to be ready to fight back if they pounced, but looking at them only made them more aggressive. So, I took a deep breath, exuded the most calm energy I could and looked up at the trees that domed over the road.

As I threw fate to the wind, the man on the motor scooter called to them repeatedly and after what seemed like five minutes, but was probably one or two, they slowly backed away, returning their attention any time I moved.

The second they were next to their owner, I clipped in, turned around and stomped over 600 watts to get the HELL out of the farm roads ASAP.

Onward and upward…and upward

A bit shaken, I collected myself and continued on 14 West until 136 at Guoxing, which crossed the river and looked like a road that could lead to a climb in the nearby mountain. Boy was it ever:

  • 7.1mi
  • 1,480ft gain
  • Strava Ctg 2 climb
  • Segment


After stopping to consume some pineapple cake at the bottom, I began to climb like a giddy kid who was just let out to recess. This climb has it all: varying grades, lush vegetation, great views, local architecture and of course, more dogs, which I skiddishly rode by.

I topped out, took some pictures and began my return home, vastly low on calories. I was definitely going to bonk if I didn’t stop, so I hit the 7-11 in Guoxing for Coke and chocolate wafers from a gas station. Cycling food – truly a global cuisine!

Not long into my return on eastbound on 14, I realized something: the way out either slightly or vastly downhill. Which meant I was going to climb 2K feet over an hour to get home and also totally be late. I sent a text to Dani that I hoped would reach her (we didn’t have great international plans).

On the back half of the trip and over a week removed from real training, it’s fair to say that this crushed me. Out of water, out of food, every time I made a turn thinking surely it was time to coast back home, I’d go up hill again. I began to laugh. What more could I do?

When I finally reached the hotel lobby to find Dani waiting, I was a shell of a human. I walked like a zombie to a couch and plopped down, drinking out of a water jug while staring at happy tourists depart on their Sun Moon Lake ferries. It was time to find all the dumplings in the Shuishe Pier Plaza and eat every last one of them.



Taiwan is a great destination for anyone looking to experience the outdoors in East Asia. The people were incredible, the food delightful and the adventures plentiful. Which, of course, means this isn’t the last Travel Tuesday in Taiwan.

(hover for captions)