a:6:{i:0;s:25664:"				<div class="h1"><h1>Bali Singapore tour package with Plan Journeys</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.planjourneysindia.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.planjourneysindia.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Bali Singapore tour package with Plan Journeys</p>
				<br />
				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Tour Code </td>
						<td class="p5px pl0px vat">Bali Singapore tour</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						7 Nights / 8 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Bali, Singapore</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 45000 Per Person						</td>
						</tr>
												<tr>
						<td class="b p5px dif w125px vat">Special Offer </td>
						<td class="p5px pl0px dif vat">Get in touch with team Plan Journeys for best offers and customized travel packages to Bali and Singapore.</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.planjourneysindia.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Bali Singapore tour package with Plan Journeys - 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="73845"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" id="detailslider1">
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132007.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132007.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132003.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132003.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132004.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132004.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132005.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132005.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132006.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132006.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132008.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132008.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132009.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132009.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132010.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132010.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Interested to travel to destinations with pristine beaches, vibrant nightlife, world famous theme parks and activities for everyone in the family? Singapore Bali tour package with Plan Journeys is the best bet for anyone traveling on a leisure trip or for people looking for romantic destination clubbed with quality amusement parks. These two destinations offer fun and relaxation all together in one itinerary. You can go to Singapore first and then to Bali, if relaxation is main objective or vice versa if you are adventure lover interested in spending good time in Singapore’s renowned theme parks.<br />
<br />
Get in touch with team Plan Journeys for more information on Bali Singapore tour packages. Our Far East travel expert will make sure that you will have gala time while traveling on Singapore Bali package with us.Get in touch with team Plan Journeys for best offers and customized travel packages to Bali and Singapore.Service taxes extra.<br />
All hotels and services are subject to availability.<br />
Prices are subject to change.<br />
Airfare & Visa charges extra.04-1101-09<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> Arrival in Bali, Dinner cruise
								</p>
								<p class="aj">On arrival in Bali transfer to your hotel.  In the evening we will take you to a romantic dinner cruise in Bali. Your cruise includes welcome drink, international buffet dinner, on board DJ, Balinese dance, Exotic Dance Show, Trio singers, comedy cabaret show, Live singer, etc. Overnight in your hotel in Bali.</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132003.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132003.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></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> Full day Kintamani & Ubud tour with lunch
								</p>
								<p class="aj">Breakfast in your hotel in Bali. Later get ready for full day tour of Kintamani and Ubud. Among the most dramatic accessible live volcanoes in the world, Kintamani attracts tourists from all over the world. Visit Ubud also known as “ the artist colony” offering an amazing experience where local culture get mixed with world art. Local lunch is included in the trip ( subject to change). Overnight accommodation in Bali hotel.</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132004.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132004.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 3:</b> Water Sports and Balinese massage
								</p>
								<p class="aj">After breakfast in the hotel, we will take you to an adventurous morning with watersports in Bali. Enjoy activities like Jet Ski, parasailing and Banana boat ride. After fun filled morning, relax a bit. Later in the afternoon we will take you to enjoy traditional Balinese massage. After a warm massage come back to your hotel with a rejuvenated mind and body. Overnight in Bali hotel.</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132005.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132005.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 4:</b> Bali to Singapore
								</p>
								<p class="aj">Today breakfast in your hotel in Bali, and later check out to board your flight to Singapore. At Singapore Changi Airport, Plan Journeys representative is waiting for you. After meet and greet transfer to your hotel in Singapore. Check in and relax.</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132006.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132006.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 5:</b> City tour and Sentosa visit
								</p>
								<p class="aj">Today after breakfast in Singapore hotel, we will take you to the city tour of Singapore where you will pass through some of the main shopping areas like Orchard Road, Little India, China Town, etc. and will also stop for a while at Singapore’s Icon – Merlion, for a picture. Later in the afternoon we will take you to Sentosa. There are many things to do in Sentosa but to make it easier for you we have included some of the major attractions in your package like Cable car, visit SEA Aquarium and witness one of the best night shows of the world – Wings of Time, a perfect combination of laser, water and fireworks. Overnight in your hotel in Singapore.</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132007.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132007.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 6:</b> Night Safari tour
								</p>
								<p class="aj">Morning is free after breakfast in hotel. You can relax in the afternoon or can go for the activities like Jurong Bird Park, Singapore Science Centre, enjoy a ride on Singapore Flyer or just do a relaxing cruise on Singapore River. Later in the evening we will pick you for the world famous Singapore Night Safari tour. It’s the world’s first Night Safari, offering an amazing experience to the tourists from all over the world. Enjoy the Animal / cultural show along with the tram ride there. Overnight in your hotel in Singapore.</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132008.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132008.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></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 7:</b> Full day tour of Universal Studios
								</p>
								<p class="aj">Breakfast in your hotel in Singapore. Later in the morning get ready for a fun filled day visiting Universal Studios Singapore. Witness the magical world of Hollywood movies with movie sets, sci-fi and live entertainment for the whole family. You can experience the best rides, brilliant shows and amazing attractions based on your favorite blockbuster films. Later in the evening come back to your hotel. Overnight in your hotel in Singapore.</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132009.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132009.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 8:</b> Departure from Singapore
								</p>
								<p class="aj">Breakfast in your hotel. Go for last minute shopping at Mustafa Shopping Centre or just relax. Later we will drop you to the airport board your flight back to your home. Come back with happy memories of your tour with Plan Journeys, visit us on www.planjourneys.com for your future travel plans and holiday packages.</p>
								</td>
									<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
												<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/425396/132010.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/425396/132010.jpg"  width="150" height="150"    alt="Bali Singapore tour package with Plan Journeys" title="Bali Singapore tour package with Plan Journeys" /></a></p></div></li>
									</ul>
									</div>
									</td>
								</tr>
								</table>					
								</div>						<br />
													<div class="headHr">
				            <p class="p7px b pl10px xlarge">Hotel Detail : </p>
				            </div>
															<div class="data lh13em p20px aj mb7px">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px"><p class="fr lh0">
								
																	<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																		<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																		<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																		<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																		<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																		<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																		<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																	
								</p>
								<div class="mb5px">
								<h2 class="dif b xxlarge">Hotel Pinnacle Singapore</h2>
								</div>
								<p class="cb"></p>
								<p><b>Address :</b> Little India, Singapore</p>
								<p><b>Facility :</b> </p>
								<div class="mt7px">good 3* budget hotel.</div>
								</td>
								
																
								</tr>
								</table>
								</div>
																	<div id="show_more_content" style="display:none;">
																		<div class="data lh13em p20px aj mb7px">
									<table class="w100 formTable bdr0 imgWidth">
									<tr>
									<td class="p10px"><p class="fr lh0">
									
																			<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																				<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																				<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																				<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																				<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																				<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																				<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																			
									</p>
									<div class="mb5px">
									<h2 class="dif b xxlarge">Hotel Pinnacle Singapore</h2>
									</div>
									<p class="cb"></p>
									<p><b>Address :</b> Little India, Singapore</p>
									<p><b>Facility :</b> </p>
									<div class="mt7px">good 3* budget hotel.</div>
									</td>
									
																		
									</tr>
									</table>
									</div>
																		<div class="data lh13em p20px aj mb7px">
									<table class="w100 formTable bdr0 imgWidth">
									<tr>
									<td class="p10px"><p class="fr lh0">
									
																			<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																				<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																				<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																				<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																				<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																				<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																				<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																			
									</p>
									<div class="mb5px">
									<h2 class="dif b xxlarge">Novotel Bali Benoa</h2>
									</div>
									<p class="cb"></p>
									<p><b>Address :</b> Bali, Indonesia</p>
									<p><b>Facility :</b> </p>
									<div class="mt7px">4* city centre hotel.</div>
									</td>
									
																		
									</tr>
									</table>
									</div>
																	</div>
																<p class="mt10px ac"><a class="buttonBig p5px10px dib b" id="more_button" href="javascript:topDestinationToggle('show_more_content','more_button');" >View More &#9660;</a></p>
															<br />
													 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Hotel</li>
																		<li>Transfers</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Service taxes extra.</li><li>
All hotels and services are subject to availability.</li><li>
Prices are subject to change.</li><li>
Airfare & Visa charges extra.</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.~^#^~* Upon cancellation, refund will be made after deducting the Retention Amount. 
* Retention Amount varies as per the number of days left before your package start date. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.planjourneysindia.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Bali Singapore tour package with Plan Journeys - 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="73845"/>
						</form>
						</div>
						
						";i:1;s:85:"Book Bali Singapore tour package with Plan Journeys - 7 Nights / 8 Days Tour Packages";i:2;s:149:"book bali singapore tour package with plan journeys - 7 nights / 8 days tour packages, beach and islands tour packages, bali, singapore tour packages";i:3;s:211:"Book Bali Singapore tour package with Plan Journeys - 7 Nights / 8 Days tour packages from Plan Journeys Private Limited. - Get attractive 7 Nights / 8 Days Beach and Islands  tour packages for  Bali, Singapore.";i:4;s:1505:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Bali, Singapore"        
		                 },
		      "description": "Interested to travel to destinations with pristine beaches, vibrant nightlife, world famous theme parks and activities for everyone in the family? Singapore Bali tour package with Plan Journeys is the best bet for anyone traveling on a leisure trip or for people looking for romantic destination clubbed with quality amusement parks. These two destinations offer fun and relaxation all together in one itinerary. You can go to Singapore first and then to Bali, if relaxation is main objective or vice versa if you are adventure lover interested in spending good time in Singapore’s renowned theme parks.

Get in touch with team Plan Journeys for more information on Bali Singapore tour packages. Our Far East travel expert will make sure that you will have gala time while traveling on Singapore Bali package with us.Get in touch with team Plan Journeys for best offers and customized travel packages to Bali and Singapore.Service taxes extra.
All hotels and services are subject to availability.
Prices are subject to change.
Airfare & Visa charges extra.04-1101-09",
		      "name": "Bali Singapore tour package with Plan Journeys",
		      "telephone": "91-9899892292"
		    }
		    </script>
			";i:5;N;}