a:6:{i:0;s:29765:"				<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>Andaman Holiday With Neil Island Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.tripandamanholidays.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.tripandamanholidays.com/packages.htm" title="Packages">Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Andaman Holiday With Neil Island 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> 
						7 Nights / 8 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Port Blair, Havelock</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.tripandamanholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman Holiday With Neil Island 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="135330"/>
						</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_18/524328/214393.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_18/524328/214393.jpg"  width="150" height="150"    alt="Andaman Holiday With Neil Island Tour" title="Andaman Holiday With Neil Island 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>
													
								Honeymoon Supplement Cost: <br />
INR: 6500/- One Session of Candle Light Dinner. <br />
INR: 3000/- One Session of Flower Bed Decoration <br />
INR: 4000/- One Honeymoon Cake & Wine <br />
<br />
<br />
Supplement Charges For Water Activities:<br />
INR: 4500/- Head One Session of Scuba Diving <br />
INR: 3500/- Head One Session of Scuba Diving <br />
INR: 4000/- Head One Session Of Under Water Sea Walk <br />
INR: 3500/- Head One Session Of Under Water Sea Walk  <br />
<br />
<br />
Cruise Up Gradation<br />
Deluxe Class –INR: 400/Head/One Way<br />
Royal Class INR: 1100/Head/One Way<br />
Tour Escort For Accompany INR: 2000/DayAirfares/Ship Fare to Mainland<br />
Personal Expenses<br />
Room Service, Laundry, Telephone Charges<br />
Activity Charges, Scuba, Jet Ski, Snorkeling Etc<br />
Expenses Occurred Due To Bad Weather Or Ferry /Flight Cancellation<br />
Additional Tour Or Vehicle Usage								</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> Arrive Port Blair
										</p>
										<p class="aj">Arrive at the evergreen islands. Transfer to selected hotel. After lunch visit Corbyn’s Cove Beach. This lovely palm fringed beach is 9 km from Port Blair. In the evening, view the famous (Light and Sound) show in Andaman's historic Cellular Jail is running houseful this season forcing the administration to increase the number of shows. Overnight stay at Port Blair.</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> Ross Island
										</p>
										<p class="aj">Morning we will set out on a Sea Safari, we will reach the water sports complex from here we will take a luxury motor sail yacht air conditioned and explore the famous islands of North Bay coral island & the historic Ross Island, experience the fun of cruising and feel the joy of sailing through small big Island and discover the blue ocean and with the on board crew and activity experts who will there to assist you. Upon arrival back to the Port our escorts will arrange necessary transfers back to the respective hotel.</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> Havelock Island
										</p>
										<p class="aj">Early morning as per the check-out time we will check-out and proceed to the jetty to catch the booked Govt. Ferry to Havelock Island , the lag time between boarding of the cruise and the check-out will be an ideal time , our local Rep. will provide you with the tickets and you will be received in the next Port at Havelock by our local Rep. in the Island , who will assist you with transfer to respective hotel , will take you to the Famous Radha Nagar Beach post lunch , and we will return back only after the sun set</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> Elephant Beach 
										</p>
										<p class="aj">After breakfast visit to Elephant Beach by motor boat and enjoy Complementary Snorkeling/ under water sea walk on direct payment basis . Overnight stay at resort in Havelock. <br />
<br />
Point to Note while traveling to Havelock Island / Neil Island <br />
<br />
1. Both the Ports in Port Blair and Havelock does not have potter hence it’s better to carry Minimum leaving the rest in the Respective hotel Clock Room in Port Blair. <br />
2. Room booking in each destination is as per the Check-in/out Times. Hence any delay in arrival and departure in each destination does not guaranty Room Occupation & additional sightseeing trips.<br />
3. Arrival & Departure to destinations are as per the availability of tickets in the cruise while conforming the Package hence we might change the present program or shuffle to adjust those timings. <br />
4. The numbers of vehicles in the Islands are less compared to number of tourist hence request your cooperation in case of delay and report to the concerned person</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> Neil Island
										</p>
										<p class="aj">Morning after the breakfast check-out from the Hotel in Havelock Island and proceed to Neil island, upon arrival our local representative in the Island will receive the guest and assist them with respective hotel transfers post lunch we will take a tour of Bharat Pur Beach, LaxmanPur Beach and the Natural Bridge and return back to the Resort. Day end here.  Night stay in Neil Island.</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> Chiriyatapu Beach
										</p>
										<p class="aj">Morning as per the scheduled check-out we will check out the Resort, and take a morning cruise back to Port Blair, our local representatives will assist you with respective hotel transfers and then in the evening proceed to Chiriyatapu Beach to witness the ultimate Sun Set. The Beach is some 35 min from Port Blair city and will take some 45 min to reach. (Cruise transfers are subjected to change as per the availability of tickets & weather conditions.)</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> Visit The City Museums
										</p>
										<p class="aj">Visit the city museums, among which the best is the anthropological museums dedicated to the life of the aborigines of Andaman. then gaze through the fisheries museum dedicated to the marine life and its ecology and then proceed to Chatham saw mill , considered to be the oldest saw mill in Asia even though bombarded by the Japanese and concurred by the British east India  company and then proceed to  Samudrika, and fisheries, and back to the respective hotel.</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> Departure
										</p>
										<p class="aj">Departure drop you to the Airport.</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>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																				<li>Room With The Breakfast & Dinner </li><li>
All Transfers And Sightseeing By Private A.C Vehicle In Port Blair</li><li>
And Ac Vehicle At Havelock </li><li>
Transfer to Ross Half Day Excursion For City Tour</li><li>
One Session of Complementary Snorkeling At Elephanta</li><li>
 Full Day Excursion at Baratang</li><li>
All Entry, Monument, Permit, Parking And Ferry Charges</li><li>
To & Fro To Havelock By Private Cruise@ Premium Class Seat Ac (Tickets Are Subject To Availability)</li><li>
Meet And Assist At All Arrival And Departure Points</li><li>
ALL TAXES.</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Airfares/Ship Fare to Mainland</li><li>
Personal Expenses</li><li>
Room Service, Laundry, Telephone Charges</li><li>
Activity Charges, Scuba, Jet Ski, Snorkeling Etc</li><li>
Expenses Occurred Due To Bad Weather Or Ferry /Flight Cancellation</li><li>
Additional Tour Or Vehicle Usage</li></ul>
								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<p><strong>Please Note:</strong>

<ul>
	<li>Do Not Treat Above Quotation Mail As Confirmation Of Your Booking, As We Are Not Holding Any Booking At The Time Of Quotation. Price And Services Can Be Changed At The Time Of Confirmation. Confirmation Of Bookings Is Only Based On Written Communications &amp; Rooms Are Subject To Availability</li>
</ul>

<p><strong> Kindly Note:</strong>

<ul>
	<li>Checkout Time In Most Of The Hotels Is 0800hrs</li>
	<li>Our Escort Team Will Hold The Placard With Client Name Outside The Exit Gate Of The Terminal.</li>
	<li>The Vehicle Used Will Be Exclusively For The Couple/Group But Will Not Be At Disposal.</li>
	<li>The Tour Programme Will Be Advised To Client By Our Escort Team At The Very First Day Of Arrival, Please Note Tour Programme May Be Shuffled Due To Inclement Weather Condition In And Around Port Blair.</li>
	<li>As The Vehicle And Driver Changes Always We Request You To Be Careful With Your Personal Belongings.</li>
	<li>Sightseeing Points Are Remains Closed On Every Mondays And Government Holidays.</li>
</ul>								</div>
														
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.tripandamanholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman Holiday With Neil Island 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="135330"/>
						</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.tripandamanholidays.com/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(47)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripandamanholidays.com/packages-in-havelock.htm" title="Packages in Havelock">Havelock</a> <b class="alpha50 bn small">(46)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripandamanholidays.com/packages-in-kolkata.htm" title="Packages in Kolkata">Kolkata</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripandamanholidays.com/packages-in-genting.htm" title="Packages in Genting">Genting</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.tripandamanholidays.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(47)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripandamanholidays.com/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(47)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripandamanholidays.com/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripandamanholidays.com/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripandamanholidays.com/family-holidays-catid.htm" title="Family Packages">Family</a> <b class="alpha50 bn small">(1)</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 Port Blair, Havelock</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.tripandamanholidays.com/tour-packages/andaman-honeymoon-delight-package-with-neil-island.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/524328/230101.jpg"  alt="Andaman Honeymoon Delight Package with Neil Island" title="Andaman Honeymoon Delight Package with Neil Island"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.tripandamanholidays.com/tour-packages/andaman-honeymoon-delight-package-with-neil-island.htm" title="Andaman Honeymoon Delight Package with Neil Island"><h3>Andaman Honeymoon Delight Package With Nei..</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> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_148616" id="pkg_148616" method="post" action="http://www.tripandamanholidays.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.tripandamanholidays.com/tour-packages/andaman-honeymoon-delight-package-with-neil-island.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman Honeymoon Delight Package with Neil Island - 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="148616"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.tripandamanholidays.com/tour-packages/andaman-tour-twin-islands-ross-and-smith-island-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/524328/230631.jpg"  alt="Andaman Tour - Twin Islands Ross and Smith Island Tour" title="Andaman Tour - Twin Islands Ross and Smith Island Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.tripandamanholidays.com/tour-packages/andaman-tour-twin-islands-ross-and-smith-island-tour.htm" title="Andaman Tour - Twin Islands Ross and Smith Island Tour"><h3>Andaman Tour - Twin Islands Ross And Smith..</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> : 
								8 Nights / 9 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_149105" id="pkg_149105" method="post" action="http://www.tripandamanholidays.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.tripandamanholidays.com/tour-packages/andaman-tour-twin-islands-ross-and-smith-island-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman Tour - Twin Islands Ross and Smith Island 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="149105"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.tripandamanholidays.com/tour-packages/amazing-experience-andaman-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/524328/214388.jpg"  alt="Amazing Experience Andaman Tour" title="Amazing Experience Andaman Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.tripandamanholidays.com/tour-packages/amazing-experience-andaman-tour.htm" title="Amazing Experience Andaman Tour"><h3>Amazing Experience Andaman 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> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_135325" id="pkg_135325" method="post" action="http://www.tripandamanholidays.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.tripandamanholidays.com/tour-packages/amazing-experience-andaman-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Amazing Experience Andaman 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="135325"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.tripandamanholidays.com/tour-packages/honeymoon-extravaganza-with-havelock-island-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/524328/230115.jpg"  alt="Honeymoon Extravaganza with Havelock Island Tour" title="Honeymoon Extravaganza with Havelock Island Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.tripandamanholidays.com/tour-packages/honeymoon-extravaganza-with-havelock-island-tour.htm" title="Honeymoon Extravaganza with Havelock Island Tour"><h3>Honeymoon Extravaganza With Havelock Islan..</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> : 
								7 Nights / 8 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_148630" id="pkg_148630" method="post" action="http://www.tripandamanholidays.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.tripandamanholidays.com/tour-packages/honeymoon-extravaganza-with-havelock-island-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Honeymoon Extravaganza with Havelock Island 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="148630"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.tripandamanholidays.com/tour-packages/andaman-tour-explore-havelock-island.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/524328/230648.jpg"  alt="Andaman Tour - Explore Havelock Island" title="Andaman Tour - Explore Havelock Island"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.tripandamanholidays.com/tour-packages/andaman-tour-explore-havelock-island.htm" title="Andaman Tour - Explore Havelock Island"><h3>Andaman Tour - Explore Havelock Island</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> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_149121" id="pkg_149121" method="post" action="http://www.tripandamanholidays.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.tripandamanholidays.com/tour-packages/andaman-tour-explore-havelock-island.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman Tour - Explore Havelock Island - 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="149121"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.tripandamanholidays.com/tour-packages/havelock-honeymoon-escape-with-jolly-bouy-island-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/524328/230109.jpg"  alt="Havelock Honeymoon Escape with Jolly Bouy Island Package" title="Havelock Honeymoon Escape with Jolly Bouy Island Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.tripandamanholidays.com/tour-packages/havelock-honeymoon-escape-with-jolly-bouy-island-package.htm" title="Havelock Honeymoon Escape with Jolly Bouy Island Package"><h3>Havelock Honeymoon Escape With Jolly Bouy ..</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> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_148624" id="pkg_148624" method="post" action="http://www.tripandamanholidays.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.tripandamanholidays.com/tour-packages/havelock-honeymoon-escape-with-jolly-bouy-island-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Havelock Honeymoon Escape with Jolly Bouy Island Package - 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="148624"/>
							</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:76:"Book Andaman Holiday With Neil Island Tour - 7 Nights / 8 Days Tour Packages";i:2;s:145:"book andaman holiday with neil island tour - 7 nights / 8 days tour packages, beach and islands tour packages, port blair, havelock tour packages";i:3;s:183:"Trip Andaman Holidays offers Andaman Holiday With Neil Island Tour - 7 Nights / 8 Days tour package, budget Beach and Islands tour packages for Port Blair, Havelock at exciting price.";i:4;s:1232:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Port Blair, Havelock"        
		                 },
		      "description": "Honeymoon Supplement Cost: 
INR: 6500/- One Session of Candle Light Dinner. 
INR: 3000/- One Session of Flower Bed Decoration 
INR: 4000/- One Honeymoon Cake & Wine 


Supplement Charges For Water Activities:
INR: 4500/- Head One Session of Scuba Diving 
INR: 3500/- Head One Session of Scuba Diving 
INR: 4000/- Head One Session Of Under Water Sea Walk 
INR: 3500/- Head One Session Of Under Water Sea Walk  


Cruise Up Gradation
Deluxe Class –INR: 400/Head/One Way
Royal Class INR: 1100/Head/One Way
Tour Escort For Accompany INR: 2000/DayAirfares/Ship Fare to Mainland
Personal Expenses
Room Service, Laundry, Telephone Charges
Activity Charges, Scuba, Jet Ski, Snorkeling Etc
Expenses Occurred Due To Bad Weather Or Ferry /Flight Cancellation
Additional Tour Or Vehicle Usage",
		      "name": "Andaman Holiday With Neil Island Tour",
		      "telephone": "+91-9531880557"
		    }
		    </script>
			";i:5;N;}