a:6:{i:0;s:18145:"				<section id="middle"><br />
				<div class="wrap packages" id="bodyFormatNT">
				<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->				
									<div class="h1"><h1>Gochela Trek Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.ohoadventure.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.ohoadventure.in/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Gochela Trek Tour</p> 
									
						<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">
					
											<p class="mb5px"><b>Duration :</b> 
						8 Nights / 9 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Kathmandu, Yuksom</p>
												<p class="mb5px"><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.ohoadventure.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Gochela Trek Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px b large dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="120254"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/507704/194790.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507704/194790.jpg"  width="150" height="150"    alt="Gochela Trek Tour" title="Gochela Trek Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								Gochela Trek<br />
A Trek Where You Can See The Real Beauty Of This Himalayan Region From Dense Forests Of Pine, Oak, Magnolia And Rhododendron Trees To Plains Of Only Bushes And Shrubs, Where There Is No Sign Of Any Civilization, Crossing A River And Climbing Steep Terrain To Reach The Top To See Some Spectacular And Breathtaking Views Of Mt Pandim And Its Adjoining Peaks, The Pristine Lakes Are A Breath Of Fresh Air As They Make You Wonder About Gods Creations. In All, A Tough But A Fulfilling And A Very Rewarding Trek To Be Cherished.  <br />
<br />
Trip Length: 9 Days Trek<br />
Starting Point: Yuksom(Altd 1760M)<br />
Ending Point: Yuksom.<br />
Maximum Altitude: 4940M<br />
Trek Grade: Streanous<br />
Highlights: - Himalayan Mountaineering Institute Base Camp<br />
- Lampokhari<br />
- Laxmipokhari<br />
- Green Lake<br />
-Dzongri La <br />
-Mt Kabru Dome<br />
-Mt Pandim<br />
-Mt Kanchendzong Range								</div>
								<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> YUKSUM - TSHOKA ( Alt. 3050 M )
										</p>
										<p class="aj">Trek from Yuksum to Tshoka 18 Kms time taken approx. 6 hrs .Walk through dense forest of pine and oak, after crossing river Prek Chu it is straight 70 degree uphill climb this is the toughest stage in the entireTrek then we reach Bakhim the trail from Bakhim passes through magnolia and rhododendron trees.Tshoka is a small village . Overnight in Tent or lodge.</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 2:</b> TSHOKA - DZONGRI ( Alt. 4020 M )
										</p>
										<p class="aj">Trek from tshoka to Dzongri is still a steep climbing time taken approx 5hrs we go through dense forest of rhododendrons there are over 400 flowering species , a place called Deorali Dara provides a magnificent view of mountains then we reach Phethang for a break .After Phethang still further climbing we reach Dzongri here the Vegetation is thin and we tend to find only small bushes and shrubs for the night stay here is a tourist hut Its usually overcrowded and noisy. In Dzongri early morning we take a walk to Dabla Khang( DzongriTop) the view from this place is magnificent one can view all the peaks . Acclimatization here is must for further ascending trekkers. Overnight in tent.</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 3:</b> DZONGRI HALT
										</p>
										<p class="aj">Full day excursion .This day you will visit  Manay , Laxmipokhari .</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 4:</b> DZONGRI - THANSING ( Alt. 3930 M )
										</p>
										<p class="aj">Trek from Dzongri to Thansing takes about approx 4hrs after walking through the bushes and hedges At first its walking in the plain table land after few hours we rapidly descend down the river Prek on the way one can view almost all the ranges above all Mt Pandin looks beautiful. In Thansing besides The govt. hut its all barren and no civilization. Overnight in Tent.</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 5:</b> THANSING - LAMBI ( Alt. 4200 M )
										</p>
										<p class="aj">Trek from Lambi to ThansingLake takes about approx 3hrs its just a easy trek through thin vegetation.Overnight in tent. Lambi is basically in the base of mount pandin because of its close attachment With Mt Pandim, a small beautiful lake has emerged. When it snows the lake with the mountain provides a spectacular unforgettable view. Over night in Tent.</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 6:</b> LAMBI - GOECHALA (Alt 4940 M) - THANSING
										</p>
										<p class="aj">Trek from Lambi to Goechala back to Thansing takes about approx 7 hrs, the trek starts with easy grading We come across Zemathang (4752Mts ) which means ( sand- plainland) the trail goes through moraines before reaching goechala one can view green lake formed right below the path deep down the hill, finally one reaches the second viewpoint from here one can view southern phase of Kanchenzonga.to the north is Goecha peak, but during winter it is not possible to trek due to thick snow which covers the path. Overnight in camp.</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> THANSING - COKCHORUNG ( Alt 3000 M )
										</p>
										<p class="aj">Trek from Thansing to cokchurung takes about 3hrs but we will trek to Lampokhari a lake and and arrive at Kokchorung late afternoon spent overnight in hut.</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 8:</b> COKCHORUNG - TSHOKA
										</p>
										<p class="aj">Trek from Cokchoruing to tshoka takes about 5hrs is gradual descend through thick forest it’s a long and Tiring walk this route joins the route of phethang to Dzongri trail.Overnight at tent.</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 9:</b> TSHOKA - YUKSUM (Trek ends)
										</p>
										<p class="aj">The trek from Tshoka to Yuksum takes about 6hrs overnight at hotel. Trek Ends.</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.</li></ul>					
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>* 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.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.ohoadventure.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Gochela Trek 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="120254"/>
						</form>
						</div>
						
										</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by City</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ohoadventure.in/gangtok-tour-packages.htm" title="Gangtok Tour Packages">Gangtok</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ohoadventure.in/darjeeling-tour-packages.htm" title="Darjeeling Tour Packages">Darjeeling</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ohoadventure.in/yuksom-tour-packages.htm" title="Yuksom Tour Packages">Yuksom</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ohoadventure.in/lachung-tour-packages.htm" title="Lachung Tour Packages">Lachung</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ohoadventure.in/lachen-tour-packages.htm" title="Lachen Tour Packages">Lachen</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ohoadventure.in/kathmandu-tour-packages.htm" title="Kathmandu Tour Packages">Kathmandu</a> <b class="alpha50 bn small">(1)</b></span>
										
				</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by Category</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ohoadventure.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ohoadventure.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ohoadventure.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ohoadventure.in/paragliding-holidays-catid.htm" title="Paragliding Packages">Paragliding</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ohoadventure.in/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ohoadventure.in/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(3)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Kathmandu, Yuksom</p>
						</div>
						<br/>
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight cols_similar">
											
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.ohoadventure.in/holiday-packages/dzongri-trek-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/507704/194789.jpg"  alt="Dzongri Trek Tour" title="Dzongri Trek Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.ohoadventure.in/holiday-packages/dzongri-trek-tour.htm" title="Dzongri Trek Tour"><h3>Dzongri Trek Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Yuksom</p>
															<div class="mt10px small">
							<form name="pkg_120253" id="pkg_120253" method="post" action="http://www.ohoadventure.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.ohoadventure.in/holiday-packages/dzongri-trek-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Dzongri Trek Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="120253"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</div>
				</section>
				
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
				";i:1;s:56:"Book Gochela Trek Tour - 8 Nights / 9 Days Tour Packages";i:2;s:113:"book gochela trek tour - 8 nights / 9 days tour packages, trekking tour packages, kathmandu, yuksom tour packages";i:3;s:159:"Book Gochela Trek Tour - 8 Nights / 9 Days tour packages from Oho! Adventure - Get attractive 8 Nights / 9 Days Trekking  tour packages for  Kathmandu, Yuksom.";i:4;s:1251:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Kathmandu, Yuksom"        
		                 },
		      "description": "Gochela Trek
A Trek Where You Can See The Real Beauty Of This Himalayan Region From Dense Forests Of Pine, Oak, Magnolia And Rhododendron Trees To Plains Of Only Bushes And Shrubs, Where There Is No Sign Of Any Civilization, Crossing A River And Climbing Steep Terrain To Reach The Top To See Some Spectacular And Breathtaking Views Of Mt Pandim And Its Adjoining Peaks, The Pristine Lakes Are A Breath Of Fresh Air As They Make You Wonder About Gods Creations. In All, A Tough But A Fulfilling And A Very Rewarding Trek To Be Cherished.  

Trip Length: 9 Days Trek
Starting Point: Yuksom(Altd 1760M)
Ending Point: Yuksom.
Maximum Altitude: 4940M
Trek Grade: Streanous
Highlights: - Himalayan Mountaineering Institute Base Camp
- Lampokhari
- Laxmipokhari
- Green Lake
-Dzongri La 
-Mt Kabru Dome
-Mt Pandim
-Mt Kanchendzong Range",
		      "name": "Gochela Trek Tour",
		      "telephone": "+91-9564074123"
		    }
		    </script>
			";i:5;N;}