a:6:{i:0;s:42545:"				<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>9 Nights Malaysia - Cruise - Singapore Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.kritiways.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.kritiways.com/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>9 Nights Malaysia - Cruise - Singapore 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> 
						9 Nights / 10 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Kuala Lumpur, Singapore</p>
												<p class="mb5px"><b>Price (Starting From) :</b> 
						INR 149999 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.kritiways.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="9 Nights Malaysia - Cruise - Singapore 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="126210"/>
						</form>
						
													<form name="frmpackageemi" id="frmpackageemi" method="post" action="http://www.kritiways.com/kisshtrequesthandler.php">
							<input type="hidden" name="order_id" value="126210"/>
							<input type="hidden" name="order_amount" value="149999"/>
							<a href="#" onclick="document.getElementById('frmpackageemi').submit();" class="button p10px20px c5px b large dib ml5px">Package on EMI</a>
							</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_15/448793/203345.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/448793/203345.jpg"  width="150" height="150"    alt="9 Nights Malaysia - Cruise - Singapore Tour" title="9 Nights Malaysia - Cruise - Singapore Tour" /></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>
													
								Flight Details:- <br />
D7 183 17JUN DEL KUL 2315 0715 18JUN<br />
AK 712 27JUN SIN  KUL 1410 1515 27JUN<br />
D7 182 27JUN KUL DEL 1900 2200 27JUN<br />
<br />
Accommodation Details:-<br />
02 Nights in Kuala Lumpur                   (18Jun–20Jun)<br />
01 Nights in Singapore                         (21Jun–22Jun)<br />
03 Nights in Royal Caribbean Cruise (22Jun-25Jun)<br />
02 Nights in Singapore-                        (25Jun-27Jun)<br />
<br />
Economy Class Air Asia Air Ticket (Delhi – Kul -Sin- Delhi)( Baggage Incl)<br />
·    2 Night Accommodation in Kuala Lumpur. <br />
·   3 Night Stay on Royal Caribbean Cruise. (Inside Stateroom) <br />
·   3 Night Accommodation in Singapore. <br />
·    Meal As Per Itinerary & All Meals on Cruise<br />
·    Kuala Lumpur Night Tour<br />
·   Sunway Lagoon Tour with 3 Theme Park Rides ticket<br />
·   Batu caves visit (enroute to Gentling Highland)<br />
·   2 way Cable car tickets for Gentling Highland<br />
·   Kuala Lumpur – Singapore overnight (by Coach)<br />
·   01 Additional Breakfast on Singapore arrival <br />
·    Night Safari tour<br />
·    Sentosa Island (Cable Car (Skypass) - One Way + Wings of Time {8:40 Pm} + S.E.A. Aquarium)<br />
·    Half day Singapore City tour<br />
·   Airport & Cruise transfers, All Tours & Transfers on Seat in Coach(Shared) basis<br />
·   Malaysia# & Singapore Visa charges<br />
·   GST Included <br />
<br />
Star Points Hotel Kuala Lumpur<br />
Hotel Category 3 star ***<br />
is located in the heart of the golden triangle in the beautiful bustling city of Kuala Lumpur, the capital of Malaysia. This Kuala Lumpur hotel is ideally located at the edge of the city centre , surrounded by major public highways, making it easily accessible for entering and exiting the city at any time of the day. Soft lighting, modern chic furnishing and contemporary decor provide an ambience for relaxation.(Google Map) For your accommodation in Kuala Lumpur, this Kuala Lumpur hotel consists of 137 contemporary designed rooms including two floors with tastefully furnished executive rooms. Whatever the purpose of your stay, our aim is to make you feel at home .With its cozy and homely demeanor, and friendly hotel staff, it is set to warm the hearts of guests wherever they come from. The hotel is an ideal choice for business travelers and leisure guests alike , who would like to have fuss free accommodation in the ethnic part of the city.This section of the city has no parallels when it comes to shopping havens and a wide variety of local and international specialty restaurants and cafes. When the sun sets, there is a burst of activities on the streets which will definitely arouse the curiosity of travelers, with music and the aroma of food filling the air.<br />
Royal Caribbean Cruise Welcome aboard Voyager of the Seas Filled with glittering skyscrapers, Singapore practically hums with business and trade. You'll also find multi-ethnic culture, great cuisine and attractions that include modern malls, traditional shops, colonial buildings and historic temples. Accommodations The ultimate in comfort, convenience, and luxury plus a staff that's available twenty-four seven. You'll agree there's nothing better than returning "home" after a day filled with adventure. Dine Royally On a Royal Caribbean cruise vacation, dining is part of the journey. It's more than just food. It's about the ambience, the dining experience, variety and the flexibility to plan dinner whenever you're ready. Love Your Days at Sea <br />
whether it's your first time on a rock wall or you're a seasoned climber, there are challenges for all levels of experience. We'll provide all of the equipment, including shoes, helmets, and harnesses. Entertainment The gorgeous view isn't the only thing that will dazzle you onboard our cruise ships. World-class performers from all over the globe star in awe-inspiring original shows by Royal Caribbean Productions. <br />
<br />
Aqueen Lavender <br />
Hotel Category: 3 star ***<br />
Aqueen Hotel Lavender in Singapore is situated along Lavender Street and conveniently accessible through a network of public transport systems; historical, cultural, entertainment and retail areas in Singapore are easily connected. Aqueen Lavender Hotel in Singapore is located 30 minutes from Changi International Airport and Singapore Expo, 10 minutes to Suntec Convention Centre and 15 minutes from Orchard Road and the financial district. Aqueen Hotel Lavender's location near the MRT makes it convenient for guests to visit Singapore sights including Marina Bay Sands, Resorts World, Esplanade, Sentosa and Singapore’s latest sports playground – The Singapore Sports Hub. The hotel in Singapore is also a short stroll from the colourful sights, sounds and spices of Little India, round-the-clock shopping at Mustafa Centre and the eco-friendly City Square Mall. Get lost in this historically-rich neighbourhood with streets lined with old buildings that tell the tale of Singapore’s past. The juxtaposition of the new and old creates a charm that will appeal to travellers.Lavender Street got its name after residents in the area who used it as tongue-in-cheek reference to the smells from the vegetable gardens, sugar plantations and an old town gas works in the area<br />
<br />
Hotel Parc Soveriegn <br />
Hotel Category: 3 star ***<br />
Located in the Arts, Culture, Learning and Entertainment hub of Singapore, explore the many art institutions, galleries and museums. Our contemporary rooms are designed to meet the needs of leisure and business travellers. Besides our in-room Wi-Fi facility, the cable movie channels provide round-the-clock entertainment to keep you occupied all day long. Our Executive, Deluxe and Family rooms provide cityscape glimpse of the historic Little India district. Guests who regularly enjoy a dip in the pool or sun tanning on the deck chair will also find delight in staying at our pool view rooms. Kids can also enjoy the playground by the side of the pool, perfect for families.The hotel is easily accessible by Mass Rapid Transit (MRT) to popular attractions and shopping districts such as Bugis Street, Orchard Road and Suntec City Mall . Parc Sovereign Hotel – Albert St provides an ideal accommodation for mid-range hotels in Singapore.<br />
<br />
Hotel Village Albert Court <br />
Hotel Category: 4 star ****<br />
Conveniently located just minutes away from the bright lights of Little India and the culture-rich Straits Chinese enclave of Bugis, Village Hotel Albert Court effortlessly straddles the best of both worlds. While a walk around the compound will uncover traditional Indian and Peranakan carvings and motifs on the walls, a peek into any room will reveal modern facilities catered to both business and leisure travellers. Adding to this balance of old and new, the hotel has a central courtyard that offers a quiet respite from the bustling malls located just a stone’s throw away. Stepping out, guests will find themselves within walking distance of both historical and modern attractions such as the Goddess of Mercy Temple and the Singapore Art Museum. If you’re looking to live like a local, Village Hotel Albert Court will definitely put you right at the centre of it all.<br />
<br />
Hotel Hilton Garden Inn<br />
Hotel Category: 4 star ****<br />
Hilton Garden Inn Singapore Serangoon is centrally located close to Central Business District and all major landmarks. The hotel offers guests a colorful stay in the heart of Little India, one of Singapore’s most vibrant enclaves. We are a short 6-minute walk from Little India MRT, a 25-minute drive from Singapore Changi International Airport and an 8-minute drive from Central Business District and Suntec Convention & Exhibition Centre. Surrounding the hotel are historic sites, beautiful temples, shopping and entertainment. The Mustafa Centre is an 8-story shopping mall open 24 hours, and the Tekka Centre is Singapore’s largest indoor wet market.Enjoy the casual Garden Grille’s hearty and healthy dishes, or indulge in the convenient evening room service. The 24-hour Pavilion Pantry™ offers drinks, instant meals and travel essentials. Relax under the sun in the sparkling outdoor pool, or work out in the 24-hour fitness center. The 24-hour Business Centre offers remote printing services, and our pre-set boardroom hosts up to 14 guests with complimentary Wi-Fi throughout the hotel.<br />
<br />
Hotel Cosmo Kuala Lumpur<br />
Hotel Category: 4 star ****<br />
Where comfortable accommodation, warm hospitality and courteous service is second to none. Discover Cosmo Hotel Kuala Lumpur, the trendiest and stylishly chic hotel to open in the heart of Kuala Lumpur. Located at Leboh Ampang, this charming and contemporary hotel boasts of 347 spaciously designed and furnished guestrooms and suites. An ideal address for both business and leisure travellers, Cosmo Hotel Kuala Lumpur is within walking distance to some of the city’s banking institutions and popular attractions such as Central Market, the historical landmark of Sultan Abdul Samad Building and Merdeka Square, Chinatown as well as a host of shopping enclaves. With the Masjid Jamek Interchange Station just steps away, the hotel offers easy accessibility to and around the city; and just two stops away to KL Sentral for a seamless journey to the airport via the KLIA Express.<br />
<br />
Hotel Grand Season <br />
Hotel Category: 4 star ****<br />
Grand Seasons Hotel, Kuala Lumpur provides a comfortable haven for those traveling on business or for savvy holiday-makers who want to be at the centre of it all. Situated close to commercial, retail and cultural areas, travelers will be spoiled for choice when it comes to filling their days.Join us and stay in one of our 800 well appointed rooms and suites.Guests of Grand Seasons Hotel will enjoy the hotel’s on-site facilities – from cooling off in our very own Outdoor Swimming Pool to working out in our fully equipped Gymnasium, complete with sauna.Strategically located within easy walking distance to the KL Monorail, Star LRT and the KL Hop-On Hop-Off City Tour bus-stop, the Grand Seasons Hotel is the perfect choice when traveling for both business and leisure.Travel Insurance (mandatory for person above 60 years of age)<br />
Any Service not mentioned in Inclusions<br />
Surcharge (if Applicable)<br />
Early Check-in (Subject to Availability)<br />
Tourism Tax imposed by The Royal Malaysia Customs Department (RM10 per room per night) to be paid by the guest directly at hotel.<br />
Gratuity Fee on cruise guests (Additional cost) Directly payable by guest.								</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> 18th June - Day 1
										</p>
										<p class="aj">Arrival at KUL by Flight D7-183 @ 0715 Hrs from DELHI. Meet & greet at the arrival lounge & Proceed to Hotel, Check-in at the Hotel (Official Check In time 1400 Hrs). In Evening Proceed for KL Night Tour- 3.5hrs Independence Square, China Town, Mariamman Temple, Twin Tower (Photo Stop) This evening tour introduces you to the Malaysian way of life - A harmonious mingling of the different races, cultures and religion. Overnight stay at hotel. <br />
<br />
* Kuala Lumpur City Gallery<br />
<br />
* The Sri Mahamariamman Temple<br />
<br />
* Petaling Street - The Open Air Bazaar of Chinatown</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> 19th June - Day 2
										</p>
										<p class="aj">Breakfast at Hotel. Proceed to Sunway Lagoon Theme Park. Full Day Sunway Lagoon With more than 80 rides and attractions and within 15 minutes from Kuala Lumpur, Sunway Lagoon is the ultimate destination you'll have to visit when you're in town! Sunway Lagoon is separated into 3 major themed lands, each boasting their own exciting attractions. Find entertainment, adventure and excitement all in place. A place where you will bring back more than just memories. Transfer back to KUL hotel is 1830hrs. Overnight stay at hotel.</p>					
											<p><b>Meals : </b> Breakfast</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> 20th June - Day 3
										</p>
										<p class="aj">Enjoy Breakfast at the Hotel. Check-out of Hotel & Proceed for Gentling Highland Day Tour Transfers with 2 Way Cable Car (En-route 15 minutes batu cave photo stop). Amidst the freshness of cool, Crisp Mountain airs about 6,000 feet (above sea level lies Malaysia only casino resort and is a World-Class City of Entertainment). Fringed by one of the oldest tropical jungles in the world, you can enjoy yourselves with the numerous indoor amusement rides, casino, cinemas, restaurants and shopping malls. Then Drop to Bus Terminal, Overnight (22:30) Singapore to Kul Coach.</p>					
											<p><b>Meals : </b> Breakfast</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> 21st June - Day 4
										</p>
										<p class="aj">Arrive in Singapore. Proceed to hotel and have breakfast at hotel (Check in Time 14:00 hrs). At evening Pick Up from the Hotel - 1800 Hours "Hop onboard the tram and psyche yourself for a 40-minute journey of wild animal encounters! Journey from the Himalayan foothills to wild Equatorial Africa, this tram ride offers live commentary. Get a chance to come up-close with lions, tigers, tapirs, deer and more! Set in a forest clearing, the Creatures of the Night Show a 20-minute animal presentation will introduce you to nocturnal animals, from the elusive owl to nimble binturongs to intuitive civets. Return from Night Safari - 2130 Hours, Overnight stay at Hotel.</p>					
											<p><b>Meals : </b> Breakfast</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> 22 June - Day 5
										</p>
										<p class="aj">After Breakfast, check out and proceed for Royal Caribbean Cruise.</p>					
											<p><b>Meals : </b> Breakfast, Dinner</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> 23 June - Days 6
										</p>
										<p class="aj">Stay at Royal Caribbean Cruise</p>					
											<p><b>Meals : </b> Breakfast, Lunch, Dinner</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> 24 June - Day 7
										</p>
										<p class="aj">Stay at Royal Caribbean Cruise</p>					
											<p><b>Meals : </b> Breakfast, Lunch, Dinner</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> 25 June - Day 8
										</p>
										<p class="aj">After Breakfast at Hotel & Proceed for a  Singapore City tour Including Merlion Photoshop, Suntec City, Foundation of Wealth, Orchard Road, Little Indian & China Town. Day Free for at your own Leisure. Overnight at Hotel. <br />
<br />
Cruise Arrival at 08:00 AM in Singapore. Proceed to Hotel For Check In Process & pick up (14:00 – 14:30 hrs) from hotel lobby for Sentosa Island Tour. Sentosa - an island of peace and tranquility is just minutes away from the main Island of Singapore. Enter and explore the marine ream of S.E.A Aquarium, home to more than 100,000 marine animals of over 800 species, across into 49 different Habitats, each one as fascination as the next. It’s an experience you won’t forget. Cable Car tour with a scenic Cable Car Ride from Sentosa to Mount Faber where you can see the beautiful landscape of the city. The Wings of Time show at Sentosa is the latest night show that is available daily the show, <br />
<br />
Be mesmerized by awe-inspiring display of water, laser, fire effects and music as you soar through space and time in a magical adventure! Return back to the hotel. Overnight in the hotel.</p>					
											<p><b>Meals : </b> Breakfast</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 9:</b> 26 June - Day 9
										</p>
										<p class="aj">After Breakfast at Hotel & Proceed for a  Singapore City tour Including Merlion Photoshop, Suntec City, Foundation of Wealth, Orchard Road, Little Indian & China Town. Day Free for at your own Leisure. Overnight at Hotel.</p>					
											<p><b>Meals : </b> Breakfast</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 10:</b> 27 June - Day 10
										</p>
										<p class="aj">After Breakfast, Checkout & Proceed to Singapore Airport to catch the flight.</p>					
											<p><b>Meals : </b> Breakfast</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>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Travel Insurance (mandatory for person above 60 years of age)</li><li>
Any Service not mentioned in Inclusions</li><li>
Surcharge (if Applicable)</li><li>
Early Check-in (Subject to Availability)</li><li>
Tourism Tax imposed by The Royal Malaysia Customs Department (RM10 per room per night) to be paid by the guest directly at hotel.</li><li>
Gratuity Fee on cruise guests (Additional cost) Directly payable by guest.</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Rate Card</p>
								</div>
								
    	<p class="h dif xlarge b mb5px">Pricing:-</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Accommodation</td>
				<td class="headHr p5px b">Family with KID</td>
				<td class="headHr p5px b">Family with 3 Adults</td>
			</tr>
			<tr>
				<td class="data p5px">SIN-queen Lavender or Similar  KUL- Star point Hotel or Similar</td>
				<td class="data p5px">1,49,999/-</td>
				<td class="data p5px">1,49,999/-</td>
			</tr>
		</table></div><br>
    	<p class="h dif xlarge b mb5px">Cruise Sailing Details: Friday, June 22, 2018</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Day</td>
				<td class="headHr p5px b">Port ***</td>
				<td class="headHr p5px b">Arrive</td>
				<td class="headHr p5px b">Depart</td>
				<td class="headHr p5px b">Activity</td>
			</tr>
			<tr>
				<td class="data p5px">22-Jun-2018</td>
				<td class="data p5px">SINGAPORE</td>
				<td class="data p5px"></td>
				<td class="data p5px">16:30:00</td>
				<td class="data p5px">EMBARK</td>
			</tr>
			<tr>
				<td class="data p5px">23-Jun-2018</td>
				<td class="data p5px">PORT KLANG - MALAYSIA</td>
				<td class="data p5px">07:00:00</td>
				<td class="data p5px">19:00:00</td>
				<td class="data p5px">DOCKED</td>
			</tr>
			<tr>
				<td class="data p5px">24-Jun-2018</td>
				<td class="data p5px">CRUISING</td>
				<td class="data p5px"></td>
				<td class="data p5px"></td>
				<td class="data p5px">CRUISING</td>
			</tr>
			<tr>
				<td class="data p5px">25-Jun-2018</td>
				<td class="data p5px">SINGAPORE</td>
				<td class="data p5px">08:00:00</td>
				<td class="data p5px"></td>
				<td class="data p5px">DEBARK</td>
			</tr>
		</table></div><br>								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<ul>
	<li>The above rates are per person based on Twin/triple &amp; quad sharing basis</li>
	<li>Rooms would be subject to availability at the time of booking</li>
	<li>The above rates are subject to change without notice</li>
	<li>All other rates, terms &amp; conditions as per published tariff</li>
	<li>Final ROE Will Be Decided At Time Of Final Payment To Hotel. Today ROE SGD 49Rs, USD 64,5Rs</li>
	<li>*The above hotels are suggested on the basis of the feedback taken from our customers</li>
	<li>*Still we request you that before finalizing the tour with us kindly go through the website of the hotels and read the reviews.</li>
	<li>Please reach the airport 3 hours before the departure of the flight.</li>
	<li>In flight food and beverages are on chargeable basis.</li>
	<li>Kindly reconfirm the departure terminal and the flight schedule from the airline before leaving for the airport.</li>
	<li>Web check in is not possible in our group packages.</li>
	<li>Transfers and sightseeing tours are on SIC (seat in coach) basis.</li>
	<li>The request for an adjacent or an adjoining room will be on subject to availability.</li>
	<li>It is mandatory to carry the age proof of children (02 to 11 yrs) and infant (below 02yrs) along with other travel documents. Child above than 11 yrs shall be considered for an adult cost.</li>
	<li>In airline no seat is provided to Infant.</li>
	<li>Room allocation (Twin bed / Double bed) is at the discretion of the hotel.</li>
	<li>The check in and checkout time of the hotel is 02:00 PM to 12 noon and number of meals including breakfast are always corresponding to the no. Of nights booked by the guest OR us.</li>
	<li>The hotel does not provide breakfast on the day of arrival.</li>
	<li>For early check in and late check out the payment is to be settled directly by the guest.</li>
	<li>Hotel has the right to claim the damages incurred by any of the guest.</li>
	<li>The guests are requested to take care of their personal belongings carefully and avoid leaving them unattended.</li>
	<li>Proper swim wears are necessary to avail the swimming pool facility. Moreover the hotel is not responsible for the safety and security of the in-house guests availing the same.</li>
	<li>Cost of additional services availed by the guest which are not part of our package inclusions are to be settled directly at the hotel. To avail the arrival transfers please check the hotel representative holding the placard of your name/ hotel name.</li>
	<li>Cancellation Policy</li>
	<li>Air tickets Non -refundable</li>
	<li>After Re-confirm the booking of Cruise &amp; Hotel, Cruise &amp; Hotel will be Non &ndash;refundable.</li>
	<li>In case passenger is no show at the time of departure, 100% of the tour cost shall be deducted.</li>
	<li>Visa Terms &amp; condition</li>
	<li>6 months Valid Passport is required for all the Passengers travelling (Adult, Child, and Infant)</li>
	<li># In case Malaysian online visa service is withdrawn, then will be a supplement charge Rs 5000 per person for Sticker visa of Malaysia will be Applicable#</li>
</ul>

<p><strong>Booking Procedure</strong>

<ul>
	<li>To process the reservation Passport Copies &amp; Rs. 35000 advance deposit (Non Refundable)</li>
	<li>Rs. 30,000 amount Deposit at 65 Days before the travel date For Cruise.</li>
	<li>Full and final payment should be made before 35 Days of travel date.</li>
	<li>The above air packages are made on the basis of the special fare and rates taken from the respective airlines and hotels. Once confirmation is made no amendments are possible. The airline tickets/Cruise/Hotel/Visa are non refundable.</li>
	<li>Cost does not include expenses caused by factors beyond our control like /flight/vehicle delays, cancellations, strikes, natural calamity, political disturbance etc.</li>
	<li>Hotels/Cruise May Ask For Security Deposit For Extra Billing At The time of Check in.</li>
	<li>Airline reserves the right to withdraw above offer without prior notice.</li>
	<li>Rates are subject to change as per your dates and number of Pax</li>
	<li>All Fixed Departures are Non Refundable, Non Changable.</li>
</ul>								</div>
														
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.kritiways.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="9 Nights Malaysia - Cruise - Singapore 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="126210"/>
						</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.kritiways.com/new-delhi-tour-packages.htm" title="New Delhi Tour Packages">New Delhi</a> <b class="alpha50 bn small">(24)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/jaipur-tour-packages.htm" title="Jaipur Tour Packages">Jaipur</a> <b class="alpha50 bn small">(20)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/agra-tour-packages.htm" title="Agra Tour Packages">Agra</a> <b class="alpha50 bn small">(20)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/mumbai-tour-packages.htm" title="Mumbai Tour Packages">Mumbai</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/udaipur-tour-packages.htm" title="Udaipur Tour Packages">Udaipur</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/sawai-madhopur-tour-packages.htm" title="Sawai Madhopur Tour Packages">Sawai Madhopur</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/kullu-tour-packages.htm" title="Kullu Tour Packages">Kullu</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/manali-tour-packages.htm" title="Manali Tour Packages">Manali</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/kochi-tour-packages.htm" title="Kochi Tour Packages">Kochi</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/alleppey-tour-packages.htm" title="Alleppey Tour Packages">Alleppey</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/shimla-tour-packages.htm" title="Shimla Tour Packages">Shimla</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/jodhpur-tour-packages.htm" title="Jodhpur Tour Packages">Jodhpur</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/khajuraho-tour-packages.htm" title="Khajuraho Tour Packages">Khajuraho</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/kovalam-tour-packages.htm" title="Kovalam Tour Packages">Kovalam</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/nashik-tour-packages.htm" title="Nashik Tour Packages">Nashik</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/bangalore-tour-packages.htm" title="Bangalore Tour Packages">Bangalore</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.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 spanlist dn"><a class="dif" href="http://www.kritiways.com/vadodara-baroda-tour-packages.htm" title="Vadodara (Baroda) Tour Packages">Vadodara (Baroda)</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/mount-abu-tour-packages.htm" title="Mount Abu Tour Packages">Mount Abu</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/thiruvananthapuram-tour-packages.htm" title="Thiruvananthapuram Tour Packages">Thiruvananthapuram</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/madurai-tour-packages.htm" title="Madurai Tour Packages">Madurai</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/chittorgarh-tour-packages.htm" title="Chittorgarh Tour Packages">Chittorgarh</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/goa-city-tour-packages.htm" title="Goa City Tour Packages">Goa City</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/kanyakumari-tour-packages.htm" title="Kanyakumari Tour Packages">Kanyakumari</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/munnar-tour-packages.htm" title="Munnar Tour Packages">Munnar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/pushkar-tour-packages.htm" title="Pushkar Tour Packages">Pushkar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/varanasi-tour-packages.htm" title="Varanasi Tour Packages">Varanasi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/tiruchirappalli-tour-packages.htm" title="Tiruchirappalli Tour Packages">Tiruchirappalli</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/aurangabad-tour-packages.htm" title="Aurangabad Tour Packages">Aurangabad</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.kritiways.com/kumarakom-tour-packages.htm" title="Kumarakom Tour Packages">Kumarakom</a> <b class="alpha50 bn small">(2)</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.kritiways.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(28)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.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.kritiways.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/cruise-holidays-catid.htm" title="Cruise Packages">Cruise</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.kritiways.com/camping-holidays-catid.htm" title="Camping Packages">Camping</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.kritiways.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 spanlist dn"><a class="dif" href="http://www.kritiways.com/shopping-holidays-catid.htm" title="Shopping Packages">Shopping</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.kritiways.com/safari-holidays-catid.htm" title="Safari Packages">Safari</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.kritiways.com/boat-cruise-holidays-catid.htm" title="Boat Cruise Packages">Boat Cruise</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>
				</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:83:"Book 9 Nights Malaysia - Cruise - Singapore Tour - 9 Nights / 10 Days Tour Packages";i:2;s:155:"book 9 nights malaysia - cruise - singapore tour - 9 nights / 10 days tour packages, beach and islands tour packages, kuala lumpur, singapore tour packages";i:3;s:181:"Kritiways offers 9 Nights Malaysia - Cruise - Singapore Tour - 9 Nights / 10 Days tour package, budget Beach and Islands tour packages for Kuala Lumpur, Singapore at exciting price.";i:4;s:10823:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Kuala Lumpur, Singapore"        
		                 },
		      "description": "Flight Details:- 
D7 183 17JUN DEL KUL 2315 0715 18JUN
AK 712 27JUN SIN  KUL 1410 1515 27JUN
D7 182 27JUN KUL DEL 1900 2200 27JUN

Accommodation Details:-
02 Nights in Kuala Lumpur                   (18Jun–20Jun)
01 Nights in Singapore                         (21Jun–22Jun)
03 Nights in Royal Caribbean Cruise (22Jun-25Jun)
02 Nights in Singapore-                        (25Jun-27Jun)

Economy Class Air Asia Air Ticket (Delhi – Kul -Sin- Delhi)( Baggage Incl)
·    2 Night Accommodation in Kuala Lumpur. 
·   3 Night Stay on Royal Caribbean Cruise. (Inside Stateroom) 
·   3 Night Accommodation in Singapore. 
·    Meal As Per Itinerary & All Meals on Cruise
·    Kuala Lumpur Night Tour
·   Sunway Lagoon Tour with 3 Theme Park Rides ticket
·   Batu caves visit (enroute to Gentling Highland)
·   2 way Cable car tickets for Gentling Highland
·   Kuala Lumpur – Singapore overnight (by Coach)
·   01 Additional Breakfast on Singapore arrival 
·    Night Safari tour
·    Sentosa Island (Cable Car (Skypass) - One Way + Wings of Time {8:40 Pm} + S.E.A. Aquarium)
·    Half day Singapore City tour
·   Airport & Cruise transfers, All Tours & Transfers on Seat in Coach(Shared) basis
·   Malaysia# & Singapore Visa charges
·   GST Included 

Star Points Hotel Kuala Lumpur
Hotel Category 3 star ***
is located in the heart of the golden triangle in the beautiful bustling city of Kuala Lumpur, the capital of Malaysia. This Kuala Lumpur hotel is ideally located at the edge of the city centre , surrounded by major public highways, making it easily accessible for entering and exiting the city at any time of the day. Soft lighting, modern chic furnishing and contemporary decor provide an ambience for relaxation.(Google Map) For your accommodation in Kuala Lumpur, this Kuala Lumpur hotel consists of 137 contemporary designed rooms including two floors with tastefully furnished executive rooms. Whatever the purpose of your stay, our aim is to make you feel at home .With its cozy and homely demeanor, and friendly hotel staff, it is set to warm the hearts of guests wherever they come from. The hotel is an ideal choice for business travelers and leisure guests alike , who would like to have fuss free accommodation in the ethnic part of the city.This section of the city has no parallels when it comes to shopping havens and a wide variety of local and international specialty restaurants and cafes. When the sun sets, there is a burst of activities on the streets which will definitely arouse the curiosity of travelers, with music and the aroma of food filling the air.
Royal Caribbean Cruise Welcome aboard Voyager of the Seas Filled with glittering skyscrapers, Singapore practically hums with business and trade. You'll also find multi-ethnic culture, great cuisine and attractions that include modern malls, traditional shops, colonial buildings and historic temples. Accommodations The ultimate in comfort, convenience, and luxury plus a staff that's available twenty-four seven. You'll agree there's nothing better than returning "home" after a day filled with adventure. Dine Royally On a Royal Caribbean cruise vacation, dining is part of the journey. It's more than just food. It's about the ambience, the dining experience, variety and the flexibility to plan dinner whenever you're ready. Love Your Days at Sea 
whether it's your first time on a rock wall or you're a seasoned climber, there are challenges for all levels of experience. We'll provide all of the equipment, including shoes, helmets, and harnesses. Entertainment The gorgeous view isn't the only thing that will dazzle you onboard our cruise ships. World-class performers from all over the globe star in awe-inspiring original shows by Royal Caribbean Productions. 

Aqueen Lavender 
Hotel Category: 3 star ***
Aqueen Hotel Lavender in Singapore is situated along Lavender Street and conveniently accessible through a network of public transport systems; historical, cultural, entertainment and retail areas in Singapore are easily connected. Aqueen Lavender Hotel in Singapore is located 30 minutes from Changi International Airport and Singapore Expo, 10 minutes to Suntec Convention Centre and 15 minutes from Orchard Road and the financial district. Aqueen Hotel Lavender's location near the MRT makes it convenient for guests to visit Singapore sights including Marina Bay Sands, Resorts World, Esplanade, Sentosa and Singapore’s latest sports playground – The Singapore Sports Hub. The hotel in Singapore is also a short stroll from the colourful sights, sounds and spices of Little India, round-the-clock shopping at Mustafa Centre and the eco-friendly City Square Mall. Get lost in this historically-rich neighbourhood with streets lined with old buildings that tell the tale of Singapore’s past. The juxtaposition of the new and old creates a charm that will appeal to travellers.Lavender Street got its name after residents in the area who used it as tongue-in-cheek reference to the smells from the vegetable gardens, sugar plantations and an old town gas works in the area

Hotel Parc Soveriegn 
Hotel Category: 3 star ***
Located in the Arts, Culture, Learning and Entertainment hub of Singapore, explore the many art institutions, galleries and museums. Our contemporary rooms are designed to meet the needs of leisure and business travellers. Besides our in-room Wi-Fi facility, the cable movie channels provide round-the-clock entertainment to keep you occupied all day long. Our Executive, Deluxe and Family rooms provide cityscape glimpse of the historic Little India district. Guests who regularly enjoy a dip in the pool or sun tanning on the deck chair will also find delight in staying at our pool view rooms. Kids can also enjoy the playground by the side of the pool, perfect for families.The hotel is easily accessible by Mass Rapid Transit (MRT) to popular attractions and shopping districts such as Bugis Street, Orchard Road and Suntec City Mall . Parc Sovereign Hotel – Albert St provides an ideal accommodation for mid-range hotels in Singapore.

Hotel Village Albert Court 
Hotel Category: 4 star ****
Conveniently located just minutes away from the bright lights of Little India and the culture-rich Straits Chinese enclave of Bugis, Village Hotel Albert Court effortlessly straddles the best of both worlds. While a walk around the compound will uncover traditional Indian and Peranakan carvings and motifs on the walls, a peek into any room will reveal modern facilities catered to both business and leisure travellers. Adding to this balance of old and new, the hotel has a central courtyard that offers a quiet respite from the bustling malls located just a stone’s throw away. Stepping out, guests will find themselves within walking distance of both historical and modern attractions such as the Goddess of Mercy Temple and the Singapore Art Museum. If you’re looking to live like a local, Village Hotel Albert Court will definitely put you right at the centre of it all.

Hotel Hilton Garden Inn
Hotel Category: 4 star ****
Hilton Garden Inn Singapore Serangoon is centrally located close to Central Business District and all major landmarks. The hotel offers guests a colorful stay in the heart of Little India, one of Singapore’s most vibrant enclaves. We are a short 6-minute walk from Little India MRT, a 25-minute drive from Singapore Changi International Airport and an 8-minute drive from Central Business District and Suntec Convention & Exhibition Centre. Surrounding the hotel are historic sites, beautiful temples, shopping and entertainment. The Mustafa Centre is an 8-story shopping mall open 24 hours, and the Tekka Centre is Singapore’s largest indoor wet market.Enjoy the casual Garden Grille’s hearty and healthy dishes, or indulge in the convenient evening room service. The 24-hour Pavilion Pantry™ offers drinks, instant meals and travel essentials. Relax under the sun in the sparkling outdoor pool, or work out in the 24-hour fitness center. The 24-hour Business Centre offers remote printing services, and our pre-set boardroom hosts up to 14 guests with complimentary Wi-Fi throughout the hotel.

Hotel Cosmo Kuala Lumpur
Hotel Category: 4 star ****
Where comfortable accommodation, warm hospitality and courteous service is second to none. Discover Cosmo Hotel Kuala Lumpur, the trendiest and stylishly chic hotel to open in the heart of Kuala Lumpur. Located at Leboh Ampang, this charming and contemporary hotel boasts of 347 spaciously designed and furnished guestrooms and suites. An ideal address for both business and leisure travellers, Cosmo Hotel Kuala Lumpur is within walking distance to some of the city’s banking institutions and popular attractions such as Central Market, the historical landmark of Sultan Abdul Samad Building and Merdeka Square, Chinatown as well as a host of shopping enclaves. With the Masjid Jamek Interchange Station just steps away, the hotel offers easy accessibility to and around the city; and just two stops away to KL Sentral for a seamless journey to the airport via the KLIA Express.

Hotel Grand Season 
Hotel Category: 4 star ****
Grand Seasons Hotel, Kuala Lumpur provides a comfortable haven for those traveling on business or for savvy holiday-makers who want to be at the centre of it all. Situated close to commercial, retail and cultural areas, travelers will be spoiled for choice when it comes to filling their days.Join us and stay in one of our 800 well appointed rooms and suites.Guests of Grand Seasons Hotel will enjoy the hotel’s on-site facilities – from cooling off in our very own Outdoor Swimming Pool to working out in our fully equipped Gymnasium, complete with sauna.Strategically located within easy walking distance to the KL Monorail, Star LRT and the KL Hop-On Hop-Off City Tour bus-stop, the Grand Seasons Hotel is the perfect choice when traveling for both business and leisure.Travel Insurance (mandatory for person above 60 years of age)
Any Service not mentioned in Inclusions
Surcharge (if Applicable)
Early Check-in (Subject to Availability)
Tourism Tax imposed by The Royal Malaysia Customs Department (RM10 per room per night) to be paid by the guest directly at hotel.
Gratuity Fee on cruise guests (Additional cost) Directly payable by guest.",
		      "name": "9 Nights Malaysia - Cruise - Singapore Tour",
		      "telephone": "+91-9650753646"
		    }
		    </script>
			";i:5;N;}