a:6:{i:0;s:22833:"				<div class="h1"><h1>Bumdra Trek (7 Nights / 8 Days) Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.exoticvacationsbhutan.biz/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.exoticvacationsbhutan.biz/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Bumdra Trek (7 Nights / 8 Days) Tour</p>
				<br />
				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Tour Code </td>
						<td class="p5px pl0px vat">01</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						7 Nights / 8 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Thimphu, Paro</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						USD 3130 Per Person						</td>
						</tr>
												<tr>
						<td class="b p5px dif w125px vat">Special Offer </td>
						<td class="p5px pl0px dif vat">Special offer for direct client (Those who apply directly) will be given with the special discount from above rate.</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.exoticvacationsbhutan.biz/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Bumdra Trek (7 Nights / 8 Days) Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="button p7px pl12px pr12px c5px b large dib mt10px">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="114290"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" id="detailslider1">
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186723.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186723.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186726.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186726.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186729.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186729.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186731.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186731.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186733.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186733.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186735.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186735.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186736.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186736.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Day 01: Arrive Paro – sightseeing.<br />
Day 02: Paro Excursion to Taktsang Monastery (Acclimatization).<br />
Day 03: Trek to Bumdra Monastery<br />
Day 04: Return hike from Bumdra Monastery camp via Zangto Pelri Monastery (7hrs)<br />
Day 05: Thimphu Sightseeing<br />
Day 06: Thimphu – Punakha<br />
Day 07: Punakha – Thimphu<br />
Day 08: DepartureSpecial offer for direct client (Those who apply directly) will be given with the special discount from above rate.Air ticket, Guide and driver tips and personal expenses01-1231-12<br />						<div class="headHr">
			            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
			            </div>
			            
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 1:</b> Manage Package - BUMDRA TREK (7 NIGHTS / 8 DAYS)
								</p>
								<p class="aj">Arrive Paro (Altitude 2280 m) (By Druk Air flight): Your Guide from exocitic vacations will receive you at the airport and drive you the short distance to the hotel.<br />
<br />
After lunch, visit Ta Dzong (built in1656 and renovated in 1968), an ancient watchtower, which now houses the National Museum. Below the museum is the Paro Rimpung Dzong (literally meaning “Heap of Jewels”, built in 1646 by Shabdrung Ngawang Namgyal, the centre of civil and religious authority in this valley. A short walk takes you to the base of the dzong and across a traditional cantilevered, covered bridge. Dinner and over night in Hotel Tashi Namgay Resort or similar.</p>					
									<p><b>Meals : </b> AP(Breakfast, lunch, dinner)</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186723.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186723.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 2:</b> BUMDRA TREK (7 NIGHTS / 8 DAYS)
								</p>
								<p class="aj">Paro Excursion to Taktsang Monastery(Acclimatization): A very special day, with an excursion to view the spectacular Taktsang (Tiger’s Nest) monastery – After breakfast a short drive takes us to Satsam Chorten, from there a 2 hours walk till the viewpoint of the monastery. The trail climbs through beautiful pine forest, many of the trees festooned with Spanish moss, and an occasional grove of fluttering prayer flags. We stop for a rest and light refreshments at the Taktsang Jakhang (cafeteria) and then walk a short distance until we see, clearly and seemingly within reach, Taktsang monastery. The primary Lhakhang was built around Guru Rimpoche’s meditation cave in the 1684by the Penlop of Paro Gyaltse Tenzin Rabgay, this incredible monastery clings to the edge of a sheer rock cliff that plunges 900 meters into the valley below. Legend has it that Guru Padmasambhava, the tantric mystic who brought Buddhism to Bhutan, flew here on the back of a flying tiger, Dorji Drolo, said to be his favourite consort.<br />
<br />
After Lunch, drive to the ruins of the Drukgyal Dzong which is under construction/ renovation, up the valley built in 1647 by the great Shabdrung Ngawang Namgyal, father and unifier of medieval Bhutan, the dzong was destroyed by accidental fire and left in ruins as an evocative reminder of the great victories it was built to commemorate. Explore the ramparts and on a clear day experience an unforgettable view of Mt. Jhomolhari (7,314 m). On the way back, visit Kichu Lhakhang, built in 659 A.D by the Tibetan king Srongsen Gampo.  Dinner and over night in Hotel Tashi Namgay Resort or similar.</p>					
									<p><b>Meals : </b> AP(Breakfast, lunch, dinner)</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186726.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186726.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 3:</b> BUMDRA TREK (7 NIGHTS / 8 DAYS)
								</p>
								<p class="aj">Trek to Bumdra Monastery:<br />
<br />
Hike from Sang Choekor Buddhist College in the Paro valley (2,800 m) to Yak pasture where we camp below Bumdra Monastery (3,800 m): After breakfast, drive to Sangchoekor Buddhist College. We walk up hill for 2 hours. We walk past Chhoe Tse Lhakhang and we came near the Bumdra Monastery (Cave of Thousand Prayers).<br />
<br />
After lunch, we can visit the monastery or climb a peak nearby at around 4000 meter. We return to the camp. Dinner and overnight in camp.<br />
<br />
Duration: 3–4 hours to camp, optional 2–3 hours return trek to peak,<br />
<br />
Difficulty: Moderate</p>					
									<p><b>Meals : </b> AP(Breakfast, lunch, dinner)</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186729.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186729.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 4:</b> BUMDRA TREK (7 NIGHTS / 8 DAYS)
								</p>
								<p class="aj">Return hike from Bumdra Monastery camp via Zangto Pelri Monastery – Thimphu (2320 m) (Distance: 54 km, 1 hr drive): After breakfast, we return from Bumdra via the gate of Taktsang Monastery. We descend down and reach the base of the hill where our vehicles will pick us up and drive to Thimphu. On the way, visit Tamchog Monastery built by Thangthong Gyalpo (Popularly known as Lama Chazampa, which literally means, the Iron Bridge builder) in the 15th century.<br />
<br />
Thang Thong Gyalpo (1385 – 1464) was a wonder working saint from Tibet who came to Bhutan in 1433 looking for Iron Ore. He built 108 bridges across Tibet and Bhutan, out of which 8 were built in Bhutan. His only surviving bridge is in Duksum (Tashi Yangtse in Eastern Bhutan).<br />
Dinner and overnight in Hotel Migmar or similar.<br />
<br />
Duration: 5 – 7 hours.<br />
<br />
Difficulty: Moderate.</p>					
									<p><b>Meals : </b> AP(Breakfast, lunch, dinner)</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186731.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186731.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 5:</b> BUMDRA TREK (7 NIGHTS / 8 DAYS)
								</p>
								<p class="aj">Thimphu Sightseeing: (Altitude 2320 m) The day begins with a visit to the National Memorial Chorten (1974) built in honour of our late King Jigme Dorji Wangchuk and the Dupthop Lhakhang one of the few surviving nunneries in Bhutan. We then visit the National Library, stocked with ancient Buddhist manuscripts, and the Painting School where traditional art is still kept alive through instructions in the art of painting Thangkas (sacred Buddhist religious scrolls).<br />
<br />
After lunch, Hike to Cheri Monastery. Other highlights include a visit to the Tashichho Dzong, seat of the national government and the Central Monastic Body, including the summer residence of the Je Khenpo (Chief Abbot of Bhutan) and finally visit the Handicrafts Emporium followed by shopping for souvenirs in the shops of Thimphu. Overnight in Hotel Migmar or similar.</p>					
									<p><b>Meals : </b> AP(Breakfast, lunch, dinner)</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186733.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186733.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 6:</b> BUMDRA TREK (7 NIGHTS / 8 DAYS)
								</p>
								<p class="aj">Thimphu – Punakha: (Altitude 1310 m) (72 Km, 3 hours drive). After breakfast, drive to Punakha via Dochula pass. If the weather is clear, we stop for a while at Dochula pass to view Higher Himalayas. On the way, visit Chime Lhakhang, which was built by Lama Drukpa Kuenley. He subdued the demons with his “ Magical Thunder bolt”. The Temple is also known as “the Temple of Fertility”. Lunch at Punakha.<br />
<br />
After lunch, visit Punakha Dzong built in 1637 by Shabdrung Ngawang Namgyal and is situated between Pho Chu (Male river) and Mo Chu (Female river). For many years until the time of the second king, it served as the seat of the Government. The construction of the Dzong was foretold by Guru Rimpoche, who predicted, “…a person named Namgyal will arrive at a hill that looks like an elephant”. There was a smaller building here called Dzong Chu (Small Dzong) that housed a statue of Buddha. It is said that Shabdrung ordered the architect, Zowe Palep, to sleep in front of the statue, while Palep was sleeping; the Shabdrung took him in his dreams to Zangtopelri and showed him the palace of Guru Rimpoche. From his vision, the architect conceived the design for the new Dzong, which in keeping with the tradition, was never committed to paper. The Dzong was named Druk Pungthang Dechen Phodrang (Palace of Great Happiness). The war materials captured during the battle with Tibetans are preserved here. Punakha is still the winter residence of Je-Khenpo and King Jigme Dorji Wangchuk convened the new national Assembly here in 1952. Dinner and overnight in Hotel Meri Puensum or similar.</p>					
									<p><b>Meals : </b> AP(Breakfast, lunch, dinner)</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 7:</b> BUMDRA TREK (7 NIGHTS / 8 DAYS)
								</p>
								<p class="aj">Punakha – Thimphu: After breakfast, drive to Thimphu. After lunch, visit to the tallest Statue of Buddha, Sangaygang view point, Takin preserve center, Changangkha Monastery and nunnery. Dinner and overnight in Hotel Migmar or similar.</p>					
									<p><b>Meals : </b> AP(Breakfast, lunch, dinner)</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507122/186735.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507122/186735.jpg"  width="150" height="150"    alt="Bumdra Trek (7 Nights / 8 Days) Tour" title="Bumdra Trek (7 Nights / 8 Days) Tour" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 8:</b> BUMDRA TREK (7 NIGHTS / 8 DAYS)
								</p>
								<p class="aj">Thimphu – Paro (Departure): After breakfast, drive to the airport and farewell.</p>					
									<p><b>Meals : </b> AP(Breakfast, lunch, dinner)</p>
								</td>
								</tr>
								</table>					
								</div>						<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>3 Star Hotel</li>
																		<li>Meals</li>
																		<li>Sightseeing</li>
																		<li>Transport</li>
																		<li>Airport Pickup-Drop</li>
																		<li>Private Cab</li>
																		<li>Private Guides</li>
																		<li>Sim Card</li>
																		<li>Non Veg Meals</li>
																		<li>Veg Meals</li>
																		<li>Veg & Non Veg Meals</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Air ticket, Guide and driver tips and personal expenses</li></ul><br />
												<p class="large b mb5px dif">Specific Departure Dates :</p>All season awaits<br />
												<p class="large b mb5px dif">Departure Cities with rates :</p>Best Months to do this Trek: January – May, September – December
Off season: February, March, April, June, July, August, October, November<br /><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.~^#^~* Upon cancellation, refund will be made after deducting the Retention Amount. 
* Retention Amount varies as per the number of days left before your package start date. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.exoticvacationsbhutan.biz/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Bumdra Trek (7 Nights / 8 Days) Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="button p7px pl12px pr12px c5px b large dib mt10px">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="114290"/>
						</form>
						</div>
						
						";i:1;s:75:"Book Bumdra Trek (7 Nights / 8 Days) Tour - 7 Nights / 8 Days Tour Packages";i:2;s:126:"book bumdra trek (7 nights / 8 days) tour - 7 nights / 8 days tour packages, valley tour packages, thimphu, paro tour packages";i:3;s:181:"Book Bumdra Trek (7 Nights / 8 Days) Tour - 7 Nights / 8 Days tour packages from Exotic Vacations Bhutan - Get attractive 7 Nights / 8 Days Valley  tour packages for  Thimphu, Paro.";i:4;s:923:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Thimphu, Paro"        
		                 },
		      "description": "Day 01: Arrive Paro – sightseeing.
Day 02: Paro Excursion to Taktsang Monastery (Acclimatization).
Day 03: Trek to Bumdra Monastery
Day 04: Return hike from Bumdra Monastery camp via Zangto Pelri Monastery (7hrs)
Day 05: Thimphu Sightseeing
Day 06: Thimphu – Punakha
Day 07: Punakha – Thimphu
Day 08: DepartureSpecial offer for direct client (Those who apply directly) will be given with the special discount from above rate.Air ticket, Guide and driver tips and personal expenses01-1231-12",
		      "name": "Bumdra Trek (7 Nights / 8 Days) Tour",
		      "telephone": "+975-77685791"
		    }
		    </script>
			";i:5;N;}