a:6:{i:0;s:24068:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Glimpses Of Kashmir</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.princetoursindia.co.in/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.princetoursindia.co.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Glimpses Of Kashmir</p>
						</div>
						</div>
						</section>
										<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-->				
								
						<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> 
						3 Nights / 4 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Srinagar Gulmarg Pahalgam,</p>
												<p class="mb5px"><b>Price (Starting From) :</b> 
						INR 4500 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.princetoursindia.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Glimpses of Kashmir - 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="195747"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px 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 w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_16/452009/310504.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_16/452009/310504.jpg"  width="150" height="84"    alt="Glimpses of Kashmir" title="Glimpses of Kashmir" /></a></p></div></li>
																		<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_16/452009/310505.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_16/452009/310505.jpg"  width="150" height="84"    alt="Glimpses of Kashmir" title="Glimpses of Kashmir" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div><br />
														<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								3 Nights stay at Luxury Houseboat at Dal Lake.<br />
Day excursion to Gulmarg.<br />
Day excursion to Pahalgam.<br />
Local sightseeing of srinagar visiting Mughal gardens etc.<br />
1hr Shikara Ride on Famous Dal Lake.<br />
All transfer's & sightseeing by AC Private vehicle.<br />
Toll taxes , parking , driver allowance.<br />
GST Included.								</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> Srinagar - Houseboat :
										</p>
										<p class="aj">Srinagar International Airport – Houseboat (14 KM).<br />
<br />
Arrive Srinagar international airport meet and greet by our representative and transfer to hotel / houseboats in srinagar.<br />
Welcome drink (Kashmiri kawa).<br />
<br />
Afternoon visiting 3 Mughal Gardens.  <br />
<br />
Nishat :- (Garden Of Pleasure) Laid out by  Asif Khan father – in – law of Shah Jahan in 1628 A.D.For general public.It has 12 terraces and is the largest garden amoung all the gardens in Kashmir. Every terrace has about 11 fountains in it.<br />
Shalimar :- (Abode of Love) laid out by Emperor Jehangir in 1619 A.D,it has 3 terraces with a marble pavilion, which is an addition of shah Jehan.The paintings in it are original and are called as Pazli Design.<br />
Cheshmashahi :- (Royal Spring) laid out by emperor Shah Jehan in 1634 A.D it has a spring in the second terrace with minerals,and is cold in summer and luke warm in winter.<br />
<br />
Overnight Stay at Srinagar.</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_16/452009/310505.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_16/452009/310505.jpg"  width="150" height="84"    alt="Glimpses of Kashmir" title="Glimpses of Kashmir" /></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> Srinagar - Pahalgam - Srinagar :
										</p>
										<p class="aj">Srinagar – Pahalgam  – Srinagar (88km).<br />
<br />
Pahalgam,To the east, 99 Kms from Srinagar is a small valley romantically fascinating and one of the loveliest spots in Kashmir- Lidder Valley with its crown spot Pahalgam, deservingly one of the most popular tourist resort. Ringed by fir clad mountains and youthful roaring Lidder of clear icy water running through offers a very personal and bridges span the valley. Enroute the visitor comes across saffron field and bubing brooks abounding with trout uphill.Uphill, Zigzag road running parallel to the rock-bedded murmuring Lidder makes the 96 Kms.drive by cab.Pahalgam GAM the excellent base for longer treks and is the right place for the anglers.Lidder offers one of the finest trout fishing in Kashmir.<br />
Local Sightseeing in Pahalgam – Aru - Chandanwari - Betaab Valley (on your Own): -<br />
Chandanwari: Chandanwari, situated at a distance of 16 km from Pahalgam, lies at an elevation of 2,923 m. Famous for its snow bridge, this location serves as the starting point of the Amarnath Yatra 3952mtrs.The holy cave is believed to be the abode of Lord Shiva.The ice lingam formed by water droplets,symbolises Lord Shiva.People visit the Holy Cave during the scheduled yatra period.Yatries can hire a pony or Dandy from (Nunwan) pahalgam.<br />
Distance of Stopers from pahalgam are chandanwari - 16km, Pissu top - 19.6km, Sheeshnag - 25.6km, Panjtarni - 40.2km, Holy Cave - 46.7km.<br />
All stopers have facilities from tents to medical camps and langars.the trek is covered in 2 to 3 days.This Hindus pilgrimage is believed to be the discovery of a Muslim shepherd named BUTTA MALIK who's descendants still receive  a percentage of the donation made by pilgrims.The state government organizes yatra generally during June to August depending upon the Hindus calender (Sawan Purnima).<br />
Aru : Aru is a resort village 11km from Pahalgam,a famous trek via Lidderwat leads to the Kolohoi Glaciers (36km) at an altitude of 3,400 mtrs.Here,you can have a glimpse of Kolohoi peak,5370 mtrs.Another trek from Lidderwat leads to the most desired twin lakes,Tarsar 3704mtrs & Marsar 3788mtrs (2-3 days trek).Tulian Lake (14km) at an altitude of 3353 mtrs is a full day trek via Baisaran.The steep terrians leads to a magically crystal clear lake where one would love to stay for a long.<br />
Betaab Valley: Betaab valley is situated at a distance of 15 kilometers from Pahalgam in Anantnag district in India's northernmost state of Jammu and Kashmir. The valley got its name from the Sunny Deol-Amrita Singh hit debut film Betaab.The Valley is towards northeast of Pahalgam and falls between Pahalgam and Chandanwadi and is en route Amarnath Temple Yatra. The valley surrounded by lush green meadows, snow clad mountains and covered with dense vegetation.<br />
Chandanwari / Aru / Betaab Valley on your own ( as srinagar cars are not allowed beyond pahalgam).<br />
Overnight stay at srinagar.</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> Srinagar - Gulmarg - Srinagar ;
										</p>
										<p class="aj">Srinagar – Gulmarg – Srinagar ( 56 km ).<br />
Gulmarg.To the west of Srinagar about 52 Kms. Is yet another fascinating spot GULMARG (Meadow of Flowers) a charming hill resort at an altitude of 8,700 ft. above sea level. A lush green valley fringed by gigantic fir and pine forests.Gulmarg is renowed for its luxuriant golf courses, the highest in the world, and for its lovely walks and bridle- paths through some of the most picture mosque forest scenery, its well laid-out golf course is among the finest in the world and golfing competition are held there throughout the season. In winter, Gulmarg is covered with a blanket of snow and become a winter play ground. Sporting some of the finest ski slopesa in the world, it is equally popular with beginners, tobogganers and Ski experts. A Ski school a modern Ski- lift and a rope tow are its added attractions. A club, luxury hotels, and comfortable Tourist Huts offer the visitor a variety of accommodation and amusement. An outer circular road girdles Gulmarg. It runs through thick Pine scented forests and gives a panoramic view of the Kashmir valley. One can see Nanga Parbat to the north. Harmukha and the uploads to the south and the Aphawat Ridge, while in Gulmarg. There are other delightful picnic spots like Khilanmarg, Apharwat Lakes, Lienmarg, Baba Rishi, Kantarnag and Tosh Maiden which are linked with a pony track.<br />
Afternoon Enjoy Gondola Ride up to 1st / 2nd Phase return ( on your own).<br />
<br />
Overnight stay at Srinagar.</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> Srinagar - International Airport :
										</p>
										<p class="aj">Srinagar International Airport (56 KM).<br />
<br />
Early morning Transfer you to the airport to connect your flight to your onward journey.</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>MAP (Room + Breakfast + Lunch/Dinner)</li>
																						<li>4 Star Hotel</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Pony Ride at Pahalgam Rs.1,000/- Per Person</li><li>
Pony Ride at Sonamarg Rs.1,000/- Per Person</li><li>
Pony Ride at Gulmarg Rs.1,000/- Per Person</li><li>
Balloon Ride min 10 Minutes Rs.600/- Per Person Min 02 Person</li><li>
Mughal Garden's entry fees Rs.50/- Per Person per garden (3 garden)</li><li>
Gondola Ride Rs.900/- 1st Phase per Person.</li><li>
GondolaRide Rs.1,000/- 2nd  Phase per Person.</li><li>
Aru Betab Valley / Chandanwaris Sightseeing by Private Jeep Rs.2500/- Per Jeep (1-6).</li><li>
Tangmarg– gulmarg - gulmarg Rs.2,500/- snow chain vehicle (1-6).</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>7 days before cancel</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>7 days before full refund</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.princetoursindia.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Glimpses of Kashmir - 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="195747"/>
						</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.princetoursindia.co.in/srinagar-tour-packages.htm" title="Srinagar Tour Packages">Srinagar</a> <b class="alpha50 bn small">(16)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.princetoursindia.co.in/gulmarg-tour-packages.htm" title="Gulmarg Tour Packages">Gulmarg</a> <b class="alpha50 bn small">(14)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.princetoursindia.co.in/pahalgam-tour-packages.htm" title="Pahalgam Tour Packages">Pahalgam</a> <b class="alpha50 bn small">(14)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.princetoursindia.co.in/sonamarg-tour-packages.htm" title="Sonamarg Tour Packages">Sonamarg</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.princetoursindia.co.in/gangotri-tour-packages.htm" title="Gangotri Tour Packages">Gangotri</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.princetoursindia.co.in/badrinath-tour-packages.htm" title="Badrinath Tour Packages">Badrinath</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.princetoursindia.co.in/yamunotri-tour-packages.htm" title="Yamunotri Tour Packages">Yamunotri</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.princetoursindia.co.in/kedarnath-tour-packages.htm" title="Kedarnath Tour Packages">Kedarnath</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.princetoursindia.co.in/rishikesh-tour-packages.htm" title="Rishikesh Tour Packages">Rishikesh</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.princetoursindia.co.in/katra-tour-packages.htm" title="Katra Tour Packages">Katra</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/uttarkashi-tour-packages.htm" title="Uttarkashi Tour Packages">Uttarkashi</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/haridwar-tour-packages.htm" title="Haridwar Tour Packages">Haridwar</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/barkot-tour-packages.htm" title="Barkot Tour Packages">Barkot</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/jammu-tour-packages.htm" title="Jammu Tour Packages">Jammu</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/nepalgunj-tour-packages.htm" title="Nepalgunj Tour Packages">Nepalgunj</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/hamhung-tour-packages.htm" title="Hamhung Tour Packages">Hamhung</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/guptakashi-tour-packages.htm" title="Guptakashi Tour Packages">Guptakashi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/chongju-tour-packages.htm" title="Chongju Tour Packages">Chongju</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/anju-tour-packages.htm" title="Anju Tour Packages">Anju</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/mayurbhanj-tour-packages.htm" title="Mayurbhanj Tour Packages">Mayurbhanj</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/haeju-tour-packages.htm" title="Haeju Tour Packages">Haeju</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/chongjin-tour-packages.htm" title="Chongjin Tour Packages">Chongjin</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/pipariya-tour-packages.htm" title="Pipariya Tour Packages">Pipariya</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/new-delhi-tour-packages.htm" title="New Delhi Tour Packages">New Delhi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/kathmandu-tour-packages.htm" title="Kathmandu Tour Packages">Kathmandu</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/harsil-tour-packages.htm" title="Harsil Tour Packages">Harsil</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/joshimath-tour-packages.htm" title="Joshimath Tour Packages">Joshimath</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/shajapur-tour-packages.htm" title="Shajapur Tour Packages">Shajapur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/rudraprayag-tour-packages.htm" title="Rudraprayag Tour Packages">Rudraprayag</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.princetoursindia.co.in/munnar-tour-packages.htm" title="Munnar Tour Packages">Munnar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></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.princetoursindia.co.in/house-boat-holidays-catid.htm" title="House Boat Packages">House Boat</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.princetoursindia.co.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(15)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.princetoursindia.co.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.princetoursindia.co.in/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(1)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
								
				</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:58:"Book Glimpses of Kashmir - 3 Nights / 4 Days Tour Packages";i:2;s:126:"book glimpses of kashmir - 3 nights / 4 days tour packages, house boat tour packages, srinagar gulmarg pahalgam, tour packages";i:3;s:170:"Book Glimpses of Kashmir - 3 Nights / 4 Days tour packages from Prince Tours - Get attractive 3 Nights / 4 Days House Boat  tour packages for  Srinagar Gulmarg Pahalgam,.";i:4;s:726:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Srinagar Gulmarg Pahalgam,"        
		                 },
		      "description": "3 Nights stay at Luxury Houseboat at Dal Lake.
Day excursion to Gulmarg.
Day excursion to Pahalgam.
Local sightseeing of srinagar visiting Mughal gardens etc.
1hr Shikara Ride on Famous Dal Lake.
All transfer's & sightseeing by AC Private vehicle.
Toll taxes , parking , driver allowance.
GST Included.",
		      "name": "Glimpses of Kashmir",
		      "telephone": "+91-8803481085"
		    }
		    </script>
			";i:5;N;}