a:6:{i:0;s:24064:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Port Blair With Same Day Return Trip To Havelock</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.adorableandaman.in/" title="Home">Home</a>
						
							
						<b class="ffv p2px">&rsaquo;</b> Port Blair With Same Day Return Trip To Havelock</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> 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.adorableandaman.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Port Blair with Same Day Return Trip to Havelock - 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="198243"/>
						</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/506806/317868.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/506806/317868.jpg"  height="150"  width="150"    alt="Port Blair with Same Day Return Trip to Havelock" title="Port Blair with Same Day Return Trip to Havelock" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<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 TO PORT BLAIR
										</p>
										<p class="aj">Fly in to Port Blair Airport .Our representative will meet and assist you at the Veer Savarkar Airport. Board the waiting vehicles, drive to your hotel and check in. First half of the day is at leisure. Later in the afternoon visit Cellular jail followed by light and sound show. The Cellular Jail has a pride of place in India’s freedom struggle. Many a stalwart were imprisoned here. Declared a national memorial, this three storey prison constructed by Britishers in 1906, is a pilgrimage destination for freedom fighters. This colossal edifice has mutely witnessed the most treacherous of inhumane atrocities borne by the convicts, who were mostly freedom fighters. The day draws to a gentle close with the Sound and Light Show at the historic Cellular Jail which gives you a vivid experience of its strong association with the freedom fighters and their struggle for independence. Dinner and stay overnight at the 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 2:</b> PORT BLAIR – ROSS ISLAND – NORTH BAY ISLAND (Coral Island) (OR)– HARBOUR CRUISE (Viper Island)
										</p>
										<p class="aj">Fly in to Port Blair Airport .Our representative will meet and assist you at the Veer Savarkar Airport. Board the waiting vehicles, drive to your hotel and check in. First half of the day is at leisure. Later in the afternoon visit Cellular jail followed by light and sound show. The Cellular Jail has a pride of place in India’s freedom struggle. Many a stalwart were imprisoned here. Declared a national memorial, this three storey prison constructed by Britishers in 1906, is a pilgrimage destination for freedom fighters. This colossal edifice has mutely witnessed the most treacherous of inhumane atrocities borne by the convicts, who were mostly freedom fighters. The day draws to a gentle close with the Sound and Light Show at the historic Cellular Jail which gives you a vivid experience of its strong association with the freedom fighters and their struggle for independence. Dinner and stay overnight at the 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> PORT BLAIR – HAVELOCK ISLAND – PORT BLAIR
										</p>
										<p class="aj">Today after breakfast you will transfer to Jetty. Head to Havelock Island on board Cruise connecting the two islands! Havelock, about 54 kilometres northeast of Portblair, the Island is a hidden jewel. Few Indians know of this stunning beach destination in their own backyard while heading for Phuket (in Thailand) across the waters of Andaman Sea. Havelock is a serene tropical island encompassing about 86 square kilometres. It’s clear waters are rated among the best in the world for Snorkelling and scuba diving. Close to 1000 different species of marine life inhabit the waters of the Andaman Islands. Scuba divers can see nudi branches, sea slugs and snails, varieties of ghost pipe fish, jaw fish and a number of different crustaceans of all shapes and sizes. With its serene beaches, 40 meters visibility underwater, colorful coral reefs and ‘far from the maddening crowd’ appeal, Havelock Island has emerged as a dream destination among discerning travellers Arrive at Havelock Jetty, you are met and assisted by Our representative. Board the waiting vehicles for trip to Radhanagar Beach (or Beach No. 7) is the jewel in the crown of Havelock Island. Located on the western side of the island, it stands away from the cluster. The glorious white sand beach shot to global fame when Time magazine (in 2004) rated it as the finest in Asia. With lush tropical forest rising on a hill to one side, the draw of this white sand beach has steadily grown in the legion of avid beach buffs. The popularity of this beach has triggered cruises from across the Andaman Sea. travellers cruise over a few days from Thailand to experience the magic of this beach in particular. A wide beach that runs over a few kilometres, Radhanagar is simply stunning. It lends itself to a variety of activities. Evening return to Port Blair .Dinner and stay overnight at the 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 4:</b> DEPART PORT BLAIR – AIRPORT DROPPING
										</p>
										<p class="aj">Dropping to Airport with memories of an ultimate holiday at Andaman Islands.</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>CP (Room + Breakfast)</li>
																						<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>* 20% Advance Percentage of total booking amount</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.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.adorableandaman.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Port Blair with Same Day Return Trip to Havelock - 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="198243"/>
						</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.adorableandaman.in/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(15)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.adorableandaman.in/packages-in-havelock.htm" title="Packages in Havelock">Havelock</a> <b class="alpha50 bn small">(13)</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.adorableandaman.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(15)</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.adorableandaman.in/tour-packages/port-blair-havelock6-days5-nights.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/506806/317849.jpg"  height="100"  width="100"    alt="Port Blair Havelock 6 Days 5 Nights" title="Port Blair Havelock 6 Days 5 Nights"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.adorableandaman.in/tour-packages/port-blair-havelock6-days5-nights.htm" title="Port Blair Havelock 6 Days 5 Nights"><h3>Port Blair Havelock 6 Days 5 Nights</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_198233" id="pkg_198233" method="post" action="http://www.adorableandaman.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.adorableandaman.in/tour-packages/port-blair-havelock6-days5-nights.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Port Blair Havelock 6 Days 5 Nights - 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="198233"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.adorableandaman.in/tour-packages/port-blair-havelock-island-6days5-nights.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/506806/317858.jpg"  height="100"  width="100"    alt="Port Blair Havelock Island 6Days 5 Nights" title="Port Blair Havelock Island 6Days 5 Nights"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.adorableandaman.in/tour-packages/port-blair-havelock-island-6days5-nights.htm" title="Port Blair Havelock Island 6Days 5 Nights"><h3>Port Blair Havelock Island 6days 5 Nights</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_198237" id="pkg_198237" method="post" action="http://www.adorableandaman.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.adorableandaman.in/tour-packages/port-blair-havelock-island-6days5-nights.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Port Blair Havelock Island 6Days 5 Nights - 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="198237"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.adorableandaman.in/tour-packages/andamans3-nights4-days-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/506806/317845.jpg"  height="100"  width="100"    alt="Andamans 3 Nights 4 Days Tour" title="Andamans 3 Nights 4 Days Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.adorableandaman.in/tour-packages/andamans3-nights4-days-tour.htm" title="Andamans 3 Nights 4 Days Tour"><h3>Andamans 3 Nights 4 Days 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> : 
								3 Nights / 4 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair</p>
															<div class="mt10px small">
							<form name="pkg_198229" id="pkg_198229" method="post" action="http://www.adorableandaman.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.adorableandaman.in/tour-packages/andamans3-nights4-days-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andamans 3 Nights 4 Days 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="198229"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.adorableandaman.in/tour-packages/port-blair-havelock-island-neil-island8-days7-night.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/506806/317862.jpg"  height="100"  width="100"    alt="Port Blair Havelock Island Neil Island 8 Days 7 Night" title="Port Blair Havelock Island Neil Island 8 Days 7 Night"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.adorableandaman.in/tour-packages/port-blair-havelock-island-neil-island8-days7-night.htm" title="Port Blair Havelock Island Neil Island 8 Days 7 Night"><h3>Port Blair Havelock Island Neil Island 8 D..</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</p>
															<div class="mt10px small">
							<form name="pkg_198241" id="pkg_198241" method="post" action="http://www.adorableandaman.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.adorableandaman.in/tour-packages/port-blair-havelock-island-neil-island8-days7-night.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Port Blair Havelock Island Neil Island 8 Days 7 Night - 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="198241"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.adorableandaman.in/tour-packages/port-blair-havelock-island-neil-island7-days6-night.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/506806/317851.jpg"  height="100"  width="100"    alt="Port Blair Havelock Island Neil Island 7 Days 6 Night" title="Port Blair Havelock Island Neil Island 7 Days 6 Night"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.adorableandaman.in/tour-packages/port-blair-havelock-island-neil-island7-days6-night.htm" title="Port Blair Havelock Island Neil Island 7 Days 6 Night"><h3>Port Blair Havelock Island Neil Island 7 D..</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> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Havelock, Neil Island</p>
															<div class="mt10px small">
							<form name="pkg_198235" id="pkg_198235" method="post" action="http://www.adorableandaman.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.adorableandaman.in/tour-packages/port-blair-havelock-island-neil-island7-days6-night.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Port Blair Havelock Island Neil Island 7 Days 6 Night - 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="198235"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.adorableandaman.in/tour-packages/port-blair-havelock-island-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/506806/317848.jpg"  height="100"  width="100"    alt="Port Blair Havelock Island Package" title="Port Blair Havelock Island Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.adorableandaman.in/tour-packages/port-blair-havelock-island-package.htm" title="Port Blair Havelock Island Package"><h3>Port Blair Havelock Island Package</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_198232" id="pkg_198232" method="post" action="http://www.adorableandaman.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.adorableandaman.in/tour-packages/port-blair-havelock-island-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Port Blair Havelock 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="198232"/>
							</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:87:"Book Port Blair with Same Day Return Trip to Havelock - 3 Nights / 4 Days Tour Packages";i:2;s:156:"book port blair with same day return trip to havelock - 3 nights / 4 days tour packages, beach and islands tour packages, port blair, havelock tour packages";i:3;s:194:"Adorable Andaman Tour offers Port Blair with Same Day Return Trip to Havelock - 3 Nights / 4 Days tour package, budget Beach and Islands tour packages for Port Blair, Havelock at exciting price.";i:4;s:440:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Port Blair, Havelock"        
		                 },
		      "description": "",
		      "name": "Port Blair with Same Day Return Trip to Havelock",
		      "telephone": "+91-9679520969"
		    }
		    </script>
			";i:5;N;}