a:6:{i:0;s:28686:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Malaysia With Bali Tour Package</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.anandtourandtravels.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.anandtourandtravels.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Malaysia With Bali Tour Package</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> 
						7 Nights / 8 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Kuala Lumpur, Bali</p>
												<p class="mb5px"><b>Price (Starting From) :</b> 
						INR 24880 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.anandtourandtravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Malaysia with Bali Tour Package - 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="193366"/>
						</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_22/638211/305447.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_22/638211/305447.jpg"  width="150" height="84"    alt="Malaysia with Bali Tour Package" title="Malaysia with Bali Tour Package" /></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>
													
								Malaysia's capital Kuala Lumpur is a city caught in a metropolitan dilemma; it aspires to be Singapore, but at times feels more like Bangkok. It is a mix of clean, clinical efficiency of business-like Singapore, and the raffish rough edges of the Thai capital, Bangkok, that creates the Kuala Lumpur's charm. Kuala Lumpur, meaning ‘muddy confluence', has grown with amazing speed since the economic growth accelerated during the 1980s and early 1990s, resulted in vibrant cityscape. Over the last few years the construction and infrastructure projects have seen the city's skyline become crowded with cranes and clanking machinery as entire neighborhoods have undergone redevelopment. Kuala Lumpur is now one of the most important cities of Asia and continues to grow economically, culturally and politically. <br />
For the Malaysians, Kuala Lumpur is ‘Ibukota’ (Mother City) and treated with great respect. The Malaysian government tourism slogan of Malaysia truly Asia is perfect for KL. As the city is the confluence of Malaysian Inhabitants, Chinese settlers, Indian Migrants and British colonials all offered their distinct cultural contribution to KL. The tourism sector also plays an important part in the city’s economy, providing income, employment and expanding business opportunities. As an extension of this, many large worldwide hotel chains have presence in the city. Kuala Lumpur has also developed into an international shopping destination with a wide variety of shopping centers and megamalls which carry well-known global and local brands. Conference tourism—which mainly encompasses conventions—has also expanded in recent years and is becoming a very important component of the industry. <br />
The major tourist destinations are as follows: <br />
Dataran Merdeka (the Independence Square), the House of Parliament, the Istana Budaya, the Istana Negara (National Palace), the Kuala Lumpur Tower, the Muzium Negara (National Museum), the Putra World Trade Centre, the Tugu Negara (National Monument) and mosques such as the Masjid Jamek, the Masjid Negara (National Mosque) and the Federal Territory Mosque. <br />
Other tourist attraction includes the Aquaria KLCC, the Batu Caves, the Makam Pahlawan (National Mausoleum), the National Science Centre, Petaling Street, the Royal Selangor Pewter Visitor Centre, the Zoo Negara (National Zoo), and events such as Malay cultural centres, the Chinese cultural festivals at the Thean Hou Temple and the Thaipusam procession at the Sri Mahamariamman Temple. <br />
The Golden Triangle, the commercial hub of the city, contains the Petronas Twin Towers and has a distinctive nightlife. Trendy nightclubs, bars and lounges, such as the Beach Club, Espanda, the Hakka Republic Wine Bar & Restaurant, Hard Rock Cafe, the Luna Bar, Nuovo, Rum Jungle, the Thai Club, Zouk, and many others are located within and around Jalan P. Ramlee, Jalan Sultan Ismail and Jalan Ampang.<br />
How to Reach Kuala Lumpur<br />
By Air: Kuala Lumpur, the national capital is well connected with the rest of the world by various international airline. The national carrier is the Malaysian Airlines which serves various important cities of the world. Long distance flights from Europe to Far East made transit stops in Malaysia. Kuala Lumpur is also served by various low cost airlines that operate in the Southeast Asia.								</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 in Bali
										</p>
										<p class="aj">Arrive at the Bali Airport. Meet our tour representative who helps you with an assisted transfer to the hotel. Complete the check-in formalities at the hotel. The rest of the day is at leisure. Termed as Paradise on Earth, this island destination is quite popular amid honeymooners as well as leisure vacationers. Bali has been blessed with immense natural beauty, breathtaking vistas and varied experiences.<br />
Overnight stay.</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> Benoa Beach with Uluwatu Sunset Tour
										</p>
										<p class="aj">Post breakfast; get ready for a visit to Tanjung Benoa, an ideal for different kinds of marine activities. You can partake in a number of exciting activities such as banana boat ride, rolling donut, glass bottom boat ride, parasailing and jet ski and so on. Thereafter, in the afternoon, head to Blue Point Beach, followed by splendid sunset views from the Cliff, which just next to Uluwatu Temple. Later on, you can also enjoy the Kecak Dance Performance.<br />
Stay overnight.</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> Bedugul and Tanah lot Sunset Tour
										</p>
										<p class="aj">Today, after an early breakfast, get ready for exploring the Bedugul area for visiting the wonderful Ulun Danu Temple. Located on the banks of Lake Beratan Lake and Gobleg hill, this temple is an architectural masterpiece. Next in line are the beautiful twin lakes of Buyan and Tamblingan. Enjoy the salubrious weather and lush scenery. After this, you visit the very well-known Tanah Lot Temple, also the most photographed monument of Bali. This temple was constructed in the 11th century, which was known to be the golden age of Hinduism in Indonesia. This temple was built on the top of a rock, amid the Indian Ocean. The sunset views are absolutely mesmerizing.<br />
Overnight Stay.</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> Kintamani Volcano Tour and Ubud Village Tour
										</p>
										<p class="aj">Day 4 starts early. Post breakfast, get an assisted transferred to Batubulan Village for enjoying Barong and Kris dance performance. This village is known for its beautiful artistic ambience. These dance performances happen in 5 different stages and are inspired from the culture of Indonesia. Continue sightseeing and visit the peaceful Celuk Village, and popular Wood Carving Center at Kemenuh Village. In Celuk, have a look at how the local artisans are creating amazing masterpieces with silver and gold. Likewise, Kemenuh village is popular as an open air exhibition hall of art, mainly wooden sculptures. Later on visit the gurgling Tegenungan Waterfall. Your next stops are Kintamani and Batur Volcano and Lake. Lastly, visit Tampak Siring / Tirta Empul Temple, a Hindu sacred site with 2 big springs. You can take a dip in these holy waters, which are believed to have medicinal properties. Stay overnight.</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> Arrival in Kuala Lumpur
										</p>
										<p class="aj">Enjoy breakfast and complete the check out. Get transferred to the airport to board the flight to Kuala Lumpur. On reaching, get an assisted transfer to the hotel. The rest of the day is free for leisure activities. You can explore the place on your own. Kuala Lumpur is an exciting Asian metropolitan city, which is a wonderful amalgam of historic temples and mosques, as well as space-age towers and shopping malls. Overnight at 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 6:</b> Kuala Lumpur (City Tour entrance to KL tower)
										</p>
										<p class="aj">Enjoy breakfast and get ready for sightseeing in Kuala Lumpur. First you visit the site from where the city got its names- the confluence of River Gombak and River Klang. The next two attractions are the King's Palace, and the National Monument. After that drive past the Lake Gardens and treat your eyes to the lush views of the surroundings. Next is a photo opportunity at the National Mosque. Next you visit the Moorish styled railway station, and then the Independence Square. Sultan Abdul Samad Building is your next stop. Also known as the Clock Tower of Kuala Lumpur, it used to be Malaysia High Court bases. Enjoy a photo stop at the magnificent Petronas Twin Towers. Thereafter, proceed for the entrance in KL tower. The remaining day is at leisure. Stay overnight.</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> Kuala Lumpur –Sunway Lagoon Tour (8 hrs)
										</p>
										<p class="aj">After breakfast, get all set for an exciting Full day Sunway Lagoon Tour. Sunway Lagoon is a theme-based amusement park, which is just 15 minutes away from the city. This park is divided into 3 main themed lands, which comprise of more than 80 rides and attractions. It is a one stop destination for excitement, adventure and entertainment. Sunway 3 Park Ticket includes Water Park, Amusement Park & Wildlife Park. Sunway 5 Park Ticket includes Water Park, Amusement Park, Wildlife Park , Extreme Park & Scream Park. At 1830 hours, assemble at the Waiting Point at Sunway Pyramid Tower Hotel Lobby for returning back to your hotel for overnight stay.</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 from Kuala Lumpur
										</p>
										<p class="aj">After breakfast, get an assisted transfer to the airport for going on-board a flight for your onward destination. Tour Ends.</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>EP (No Meal)</li>
																				<li>4 Nights accommodation in Bali Hotel</li><li>
3 Nights accommodation in Kuala Lumper Hotel</li><li>
Daily Breakfast at Hotel</li><li>
Benoa Beach with Uluwatu Sunset </li><li>
Tour with return transfers</li><li>
Bedugul and Tanah lot Sunset Tour </li><li>
with return transfers</li><li>
Kintamani Volcano Tour and Ubud </li><li>
Village Tour with return transfers</li><li>
Complimentary sim on upon arrival</li><li>
Candle Light dinner on beach for </li><li>
Honeymooner only </li><li>
Return airport transfers on Private </li><li>
basis</li><li>
City Tour entrance to KL tower with </li><li>
return transfers</li><li>
Sunway Lagoon Tour with return </li><li>
transfers</li><li>
Return airport transfers on SIC basis</li><li>
All applicable VAT and taxes</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Return airfare charges.</li><li>
Applicable Airport taxes.</li><li>
Service tax extra.</li><li>
Bali Visa (On Arrival and free of cost for Indian arrival)</li><li>
Malaysia Visa Charges.</li><li>
Tips to driver and guides locally.</li><li>
All surcharges for Airport transfers after the Scheduled Seat in coach timings.</li><li>
Guaranteed early check in / late checkout charges (Standard check in 1400hrs and Check out 1200 Hrs.)</li><li>
Any expenses of personal nature.</li><li>
Travel Insurance charges.</li><li>
Personal extras.</li><li>
Meals other than mentioned in the inclusions column.</li><li>
Anything not mentioned in the inclusions.</li><li>
GST</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>Some Advance Percentage of total booking amount</li><li>
Airfare/Transport fare to be paid full at one time in advance.</li></ul>					
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Price &amp; Rates</p>
						</div>				
				        <table class="mb15px bdrall bdreee w100 p5px15px formTable">
			            	<tr class="headVr b">
			                	<td class="p5px10px">No of pax</td>
			                    <td class="p5px10px">Age Limit</td>
			                    <td class="p5px10px">Price per pax (Rs)</td>
			                </tr>

															<tr>
				            	<td class="p5px10px">Adult</td>
				                <td class="p5px10px">Above 12 years</td>
				                <td class="p5px10px">
			                				                		<b class="webrupee">INR</b>
			                					                	<b>24880</b> <small>/
			
			                		Adult			
			                	( With Tax )			
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</div>
					 					
						<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Accommodation</p>
						</div>				
		
				    	<table class="mb15px bdrall bdreee w100 p5px15px formTable">
						<tr class="headVr b">
						<td class="p5px10px">City</td>
						<td class="p5px10px">Hotel Name</td>
						<td class="p5px10px">Star Rating</td>
						</tr>
												</tbody>
						</table>
						</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><li>
Retention Amount varies as per the number of days left before your package start date.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.anandtourandtravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Malaysia with Bali Tour Package - 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="193366"/>
						</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.anandtourandtravels.com/shimla-tour-packages.htm" title="Shimla Tour Packages">Shimla</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/manali-tour-packages.htm" title="Manali Tour Packages">Manali</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/new-delhi-tour-packages.htm" title="New Delhi Tour Packages">New Delhi</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/dharamshala-tour-packages.htm" title="Dharamshala Tour Packages">Dharamshala</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/chandigarh-city-tour-packages.htm" title="Chandigarh City Tour Packages">Chandigarh City</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/kufri-tour-packages.htm" title="Kufri Tour Packages">Kufri</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/kullu-tour-packages.htm" title="Kullu Tour Packages">Kullu</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/dalhousie-tour-packages.htm" title="Dalhousie Tour Packages">Dalhousie</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/manikaran-tour-packages.htm" title="Manikaran Tour Packages">Manikaran</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/katra-tour-packages.htm" title="Katra Tour Packages">Katra</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.anandtourandtravels.com/chail-tour-packages.htm" title="Chail Tour Packages">Chail</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.anandtourandtravels.com/pathankot-tour-packages.htm" title="Pathankot Tour Packages">Pathankot</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.anandtourandtravels.com/kuala-lumpur-tour-packages.htm" title="Kuala Lumpur Tour Packages">Kuala Lumpur</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.anandtourandtravels.com/mandi-tour-packages.htm" title="Mandi Tour Packages">Mandi</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.anandtourandtravels.com/kalpa-tour-packages.htm" title="Kalpa Tour Packages">Kalpa</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.anandtourandtravels.com/agra-tour-packages.htm" title="Agra Tour Packages">Agra</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.anandtourandtravels.com/jispa-tour-packages.htm" title="Jispa Tour Packages">Jispa</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.anandtourandtravels.com/srinagar-tour-packages.htm" title="Srinagar Tour Packages">Srinagar</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.anandtourandtravels.com/leh-ladakh-tour-packages.htm" title="Leh Ladakh Tour Packages">Leh Ladakh</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.anandtourandtravels.com/bali-tour-packages.htm" title="Bali Tour Packages">Bali</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.anandtourandtravels.com/dubai-tour-packages.htm" title="Dubai Tour Packages">Dubai</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.anandtourandtravels.com/pahalgam-tour-packages.htm" title="Pahalgam Tour Packages">Pahalgam</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.anandtourandtravels.com/tabo-tour-packages.htm" title="Tabo Tour Packages">Tabo</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.anandtourandtravels.com/jaipur-tour-packages.htm" title="Jaipur Tour Packages">Jaipur</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.anandtourandtravels.com/gulmarg-tour-packages.htm" title="Gulmarg Tour Packages">Gulmarg</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.anandtourandtravels.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/desert-holidays-catid.htm" title="Deserts Packages">Deserts</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.anandtourandtravels.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</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:70:"Book Malaysia with Bali Tour Package - 7 Nights / 8 Days Tour Packages";i:2;s:129:"book malaysia with bali tour package - 7 nights / 8 days tour packages, adventure tour packages, kuala lumpur, bali tour packages";i:3;s:183:"Book Malaysia with Bali Tour Package - 7 Nights / 8 Days tour packages from Anand Tour and Travels - Get attractive 7 Nights / 8 Days Adventure  tour packages for  Kuala Lumpur, Bali.";i:4;s:3770:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Kuala Lumpur, Bali"        
		                 },
		      "description": "Malaysia's capital Kuala Lumpur is a city caught in a metropolitan dilemma; it aspires to be Singapore, but at times feels more like Bangkok. It is a mix of clean, clinical efficiency of business-like Singapore, and the raffish rough edges of the Thai capital, Bangkok, that creates the Kuala Lumpur's charm. Kuala Lumpur, meaning ‘muddy confluence', has grown with amazing speed since the economic growth accelerated during the 1980s and early 1990s, resulted in vibrant cityscape. Over the last few years the construction and infrastructure projects have seen the city's skyline become crowded with cranes and clanking machinery as entire neighborhoods have undergone redevelopment. Kuala Lumpur is now one of the most important cities of Asia and continues to grow economically, culturally and politically. 
For the Malaysians, Kuala Lumpur is ‘Ibukota’ (Mother City) and treated with great respect. The Malaysian government tourism slogan of Malaysia truly Asia is perfect for KL. As the city is the confluence of Malaysian Inhabitants, Chinese settlers, Indian Migrants and British colonials all offered their distinct cultural contribution to KL. The tourism sector also plays an important part in the city’s economy, providing income, employment and expanding business opportunities. As an extension of this, many large worldwide hotel chains have presence in the city. Kuala Lumpur has also developed into an international shopping destination with a wide variety of shopping centers and megamalls which carry well-known global and local brands. Conference tourism—which mainly encompasses conventions—has also expanded in recent years and is becoming a very important component of the industry. 
The major tourist destinations are as follows: 
Dataran Merdeka (the Independence Square), the House of Parliament, the Istana Budaya, the Istana Negara (National Palace), the Kuala Lumpur Tower, the Muzium Negara (National Museum), the Putra World Trade Centre, the Tugu Negara (National Monument) and mosques such as the Masjid Jamek, the Masjid Negara (National Mosque) and the Federal Territory Mosque. 
Other tourist attraction includes the Aquaria KLCC, the Batu Caves, the Makam Pahlawan (National Mausoleum), the National Science Centre, Petaling Street, the Royal Selangor Pewter Visitor Centre, the Zoo Negara (National Zoo), and events such as Malay cultural centres, the Chinese cultural festivals at the Thean Hou Temple and the Thaipusam procession at the Sri Mahamariamman Temple. 
The Golden Triangle, the commercial hub of the city, contains the Petronas Twin Towers and has a distinctive nightlife. Trendy nightclubs, bars and lounges, such as the Beach Club, Espanda, the Hakka Republic Wine Bar & Restaurant, Hard Rock Cafe, the Luna Bar, Nuovo, Rum Jungle, the Thai Club, Zouk, and many others are located within and around Jalan P. Ramlee, Jalan Sultan Ismail and Jalan Ampang.
How to Reach Kuala Lumpur
By Air: Kuala Lumpur, the national capital is well connected with the rest of the world by various international airline. The national carrier is the Malaysian Airlines which serves various important cities of the world. Long distance flights from Europe to Far East made transit stops in Malaysia. Kuala Lumpur is also served by various low cost airlines that operate in the Southeast Asia.",
		      "name": "Malaysia with Bali Tour Package",
		      "telephone": "+91-9877728360"
		    }
		    </script>
			";i:5;N;}