a:6:{i:0;s:43273:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Mahaprabhuji Vallabhacharya Bethak Ji Pilgrimage Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.travelsupportindia.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.travelsupportindia.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Mahaprabhuji Vallabhacharya Bethak Ji Pilgrimage Tour</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-->				
									<div class="fo dt w100"> 
					<div class="dtc vat ttw-detail pr20px pr">					
												<ul class="lsn gallery-slide" id="bxlider_ins">
																	<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_1/7390/106336.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_1/7390/106336.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/7390/106336.jpg"  alt="Mahaprabhuji Vallabhacharya Bethak ji Pilgrimage Tour" title="Mahaprabhuji Vallabhacharya Bethak ji Pilgrimage Tour" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																	</ul>
												
					<script>
					var $j = jQuery.noConflict();
					var realSlider= $j("ul#bxlider_ins").bxSlider({
					      speed:500,
					      pager:false,
					      auto: true,
					      slideWidth: 450,
					      slideMargin: 0,
					      nextText:'',
					      prevText:'',
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					        changeRealThumb(realThumbSlider,newIndex);
					        
					      }
					      
					    });
					    
					    var realThumbSlider=$j("ul#bxslider-pager").bxSlider({
					      minSlides: 4,
					      maxSlides: 4,
					      slideWidth: 200,
					      slideMargin: 5,
					      moveSlides: 1,
					      pager:false,
					      speed:1000,
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      nextText:'<span></span>',
					      prevText:'<span></span>',
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					
					      }
					    });
					    
					    linkRealSliders(realSlider,realThumbSlider);
					    
					    if($j("#bxslider-pager li").length<5){
					      $j("#bxslider-pager .bx-next").hide();
					    }
					
					// sincronizza sliders realizzazioni
					function linkRealSliders(bigS,thumbS){
					  
					  $j("ul#bxslider-pager").on("click","a",function(event){
					    event.preventDefault();
					    var newIndex=$j(this).parent().attr("data-slideIndex");
					        bigS.goToSlide(newIndex);
					  });
					}
					
					//slider!=$thumbSlider. slider is the realslider
					function changeRealThumb(slider,newIndex){
					  
					  var $thumbS=$j("#bxslider-pager");
					  $thumbS.find('.active').removeClass("active");
					  $thumbS.find('li[data-slideIndex="'+newIndex+'"]').addClass("active");
					  
					  if(slider.getSlideCount()-newIndex>=4)slider.goToSlide(newIndex);
					  else slider.goToSlide(slider.getSlideCount()-4);
					
					}
					
					</script>
					</div>
			        <div class="dtc">
			        <p class="b xlarge mb10px">Mahaprabhuji Vallabhacharya Bethak ji Pilgrimage Tour</p>
					
											<p class="mb5px"><b>Tour Code :</b> TS-PUSHTIMARG PILGRI</p>
												<p class="mb5px"><b>Duration :</b> 
						5 Nights / 6 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Prayagraj, Lucknow, Mirzapur, Varanasi, Ayodhya</p>
												<p class="mb5px"><b>Attractions :</b> Vishwanath Temple</p>
												<div class="fo mt20px mb20px xxlarge">
						<p class="xxlarge b dif mb2px">Price</p>
						<p class="xxsmall">On Request</p>
						</div>
												<div class="mt12px mb7px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.travelsupportindia.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Mahaprabhuji Vallabhacharya Bethak ji Pilgrimage Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px ts0 xxlarge dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="50619"/>
						</form>
						
												</div>
											<br/>
					</div>       
					</div>
											<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">Chaurasi Bethak, Literally Meaning "84 Seats", Refers To The 84 Places Where Vallabhacharya, A Devotional Philosopher, Gave Discourse Of Bhagavata In The 15Th Century. This Forms One Of The Very Important Concepts In The Pushtimarg Tradition Of Vaishnavites In India, And These Places Are Treated As Sacred Sites By The Followers Of This Sect, For Performing Devotional Rituals.<br />
<br />
This Packages Includes The Baithakji Pilgrimage In Eastern Uttar Pradesh. Visiting The Below Baithaji And Temples.<br />
<br />
1. Kashi- A. Baithak At Jatanvad. B.Baithak At Hanuman Ghat. C.Baithak At Panchganga. Gopal Mandir Temple, Kashi Vishwanath Temple, Annapurna Temple.<br />
<br />
2. Chunar- A. Charnat Baithakji.<br />
3. Allahabad- A. Adel Baithaji.<br />
4. Ayodhaya- A. Ayodhaya Baithakji B. Temples Of Ayodhaya.<br />
5. Shree Naimisharanya Baithakji.Meals: Breakfast, Lunch, Dinner.<br />
Monument Entrance<br />
Guide<br />
Any other expenses apart from Room, and Transport services.</p>
						</div>
														<div class="mt30px b xlarge">
												   					Detailed Tour Itinerary
				   													</div>		   
								<br/>
																			<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 1											
											:</b> Varanasi Arrival										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Arrival in Varanasi, Later proceed to Hotel.<br />
As per timings visit to the Baithakji and Temples.<br />
<br />
Baithak at Jatanvad:- Shri Mahaprabhu Vallabhacharya stayed at the house of Purushttamdas and celebrated Lord Krishna’s appearance day. During the festivities, Krishna’s parents and friends all appeared. Everyond present had this divine vision and Shiva joined in the celebrations.<br />
<br />
Baithak at Hanuman Ghat:- At the Hanuman Ghat by the Ganges river, Shri Mahaprabhu Vallabhachrya stayed after he took sanyas, the highest order of renunciation. He live for one month on a stone completely silent without eating or drinking anything.<br />
<br />
Baithak at Panchganga:-This baithakji is the vivah sthal of shree Vallabhacharya Mahaprabhuji, the founder of Pushtimarg and Shuddhadvaita Siddhant.<br />
<br />
Gopal Mandir:-During the early Mughal period the leading poet saint of Krishna devotion was Vallabhacharya (1479-1531), who at the age of 11 years came to Kashi for study. Later after completing pilgrimage to all the important sacred places in India, he finally settled down in Varanasi. While living in Varanasi at Jatanbar he propounded the philosophy of Shuddhadvaita, and wrote about 84 books. He was married in 1504, and his son Vitthalanatha was born in 1515 in Kashi. Vallabhacharya built a small temple of Krishna, which was renovated and expanded in 1730 by one of the great saints of the same line, Sri Gopal-Ji. The present structure of the temple was built in 1777 and named Gopala Mandir. Lying in Chaukhambha area, the Gopala Mandir is the patron seat of the Vallabha group of follower<br />
<br />
Kashi Vishwanath Temple															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 2											
											:</b> Varanasi to Chunar and to Allahabad.										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Varanasi to Chunar- 40 KMS- Visit to the Baithakji<br />
Chunar Baithak ji:-At Charanat Shri Mahaprabhu Vallabhacharya stayed in a abower and conducted a saptah. Six miles away from where he was staying a Brahmin hermit who had daily recited the Vishunsahastranam, The Thousand Names of the Lord for the last twelve ;years. One day he found a Krishna Deity in the Ganges river and the Lord told him that because he was a hermit he would not be able to properly serve Him and but because the hermit offered the Lord ;milk, He agreed to stay with the Brahmin for one month. On the night before the birth of Shri Mahaprabhu Vallabhacharya’s second son, Shri Vitthalnath Gusianji, the Deity told the Brahmin to take Him to Shri Mahaprabhu Vallabhacharya explaining, You will find him sitting by a lake. Explain to him that it is my wish that I remain there with him. Then I will be very pleased with you. <br />
Arriving before the guru, the Brahmin humbly bowed and submitted, I am a simple man of no learning but this Deity has informed me to bring Him to you. Glad to receive the Deity, Shri Mahaprabhuji blessed him. The following day in late December in the year 1519 AD Shri Mahaprabhuji’s second son Shri Vitthalnathji was borm. The poet Gopaldas sings of that appearance, <br />
On a late december mid-day the Lord showered his blessing in Akkaji’s heart {Vitthalnathji mother} by appearing as the moon of Vrindavan. <br />
Many other poets have sung about that great event. After his appearance, Lord Krishna’s parents and friends all divinely appeared to celebrate the occasion. The Lord had a golden jewelled palace made for the celebrations and musicians played sweetly at the door. Toys of silver and gold were presented to the divine child and the Gopi Chandravali made the infant tilak. Shri Radha gave the child earrings to wear and composed many poems suitable for the occasion by using saffron and a lotus stem. Shri Vitthalnathji was swung in a jewelled studded cradle and everyone rocked the child. It was like the appearance celebrations of Lord Krishna. The serpent god Shesha appear with his thousand hoods to provide shade and Brahma the Creator came to recite the vedas while Shiva danced and was accompanied by millions of deities playing instruments and showering flowers. Celestial nymphs and musicians danced and played instruments. The place was grace by the presence of the great sages Shri Vyasa, Shri Sukadeva as well as by eight thousand other sages. Flags and banners waved while milk and curd were thrown in celebration. The eight supernatural powers and the nine riches also personally appeared. Everyone was completely lost in the aupiciousness of that divine hour. One poet sings of that divine day. <br />
In groups they came to the house of Vallabh <br />
To celebrate the coming of the beautiful Braja child. <br />
In group they celebrated the divine appearance <br />
Of Shri Vallabh’s son Shri Vitthalanthji. <br />
His appearance has made the town of Gokul very happy. <br />
Shri Mahaprabhu Vallabhacharya bathed and then gave gifts of jewels, chariots etc to all present. Shri Garga Acharya came to bless the child and predicted, This child will accomplish everything, he will have two wives and seven sons and his lineage will be made up of the Lord’s incarnation.s he will defeat the Mayavadians and uplift many divine souls. He will purify the world and accomplish more things than a thousand mouths can praise. <br />
After speaking those word, Garga Acharya left and all the other divine beings present there bowed and returned to their respective spheres. Shri Mahaprabhu Vallabhacharya gazing at his son knew he was the Lord Himself. A bhakta sang, splendor has spread in the four direction. <br />
When Swhri Mahaprabhuji looked upon his son <br />
He laughs with joy. <br />
They both laughed and control my heart. <br />
His tilak is made of musk. <br />
The glory of that scene goes beyond all explanation. <br />
The concealed divine nectar of grace was forced to make its appearance. <br />
Later, the lovers of Shri Krishna appeared and rocked the child. Shri Vitthalnathji tilak was made and bessing showered. The residents of Braja said that he would lie at the town of Shri Gokul and his greatness would grow day by day. All the residents of the divine abode then returned and that transcendental vision suddenly vanished. Only then did all present regain their their worldly consciousness. Here, Shri Mahaprabhuji fulfillled the divine wishes of the great devotees. <br />
<br />
Later in evening proceed to Allahabad. Approx 110 Kms from chunar. Overnight Allahabad.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 3											
											:</b> Allahabad to Adel and later to Ayodhaya (Faizabad)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Morning visit to Adel Baithakji<br />
Baithak at Adel:- This seat of Gusianji is at Adel, where Gusainji spent his childhood, Here Mahadevji came to play with Gusainji. He would play Musical Instruments & dance. Seeing this Gusainji would be very happy. & Gusainji nearest Vaishnavas would also play with him and Gusainji with his divine eyes would bless them.<br />
<br />
Later proceed to Ayodhaya (Faizabad) Overnight Stay in Faizabad Hotel.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 4											
											:</b> Ayodhaya - Lucknow										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Morning Visit to Baithakji<br />
Baithak at Ayodhyaramghat:-At Ayoudhy on the bands of the Sarji river, at Gossainji ghat, Shri Mahaprabhu Vallabhachrya spoke the Bhagavata. Once while he was wandering in that area, he found someone speaking the Ramayan with Hanuman listening. Later, Hanuman approachec Mahaprabhuji and asked, Beign a devotee of Shri Krishna, what has brought you her to the land of Shri Rama. <br />
Shri Manaprabhuji replied, I am visiting the home of Krishna’s inlaws. <br />
Hanuman questioned, How is that possible? <br />
Shri Mahaprabhuji replied, Agnijet was the king of Ayodhya. Once he proclaimed that the person who could tame his sever fierce bulls couls have his daughter Satya’s hand. Kwishna suceeded in taming the bull and took her to wife, therefore, Shri Ram and Lord Krishna are related. <br />
Shri Mahaprabhuji then told Hanuman, you should not listen to holy discourse in a nude state. From that day Hanuman always wore some clothing. Later, Shri Mahabpabhuji met with Lord Rama and mentioned during their talks that Shri Rama was the Godheac governed by law. Hanuman hearing this doubted its validity. Ram, knowing of Hanuman’s doubt told him to bring Shri Mahaprabhuji some foodstuffs. When Hanuman present him the offereing he saw as Lord Ram. When he reported this amazing even t Shri Ram, the Lord said, Shri Mahaprabhuji Vallabhacharya can take my form, but I cannot take his. <br />
The reason for this is that Ram is the laugh avatar of Krishna while Shri Mahaprabhuji is Shri Krishna’s entire faces therefore, Shri Ram is only a partial manifestation, while Shri Mahaprabhuji is a complete manifestation of Krishna. <br />
<br />
Temples of Ayodhaya.<br />
<br />
Later Proceed to Lucknow- 135 KMS- 3 HRS. Overnight Lucknow Hotel			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 5											
											:</b> Lucknow - Naimisharanya - Lucknow										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Morning After breakfast proceed to Shri Naimisharanya Baithakji.<br />
Shree Naimisharanya Baithakji-Here by the Gomati lake, under a tree, Shri Mahaprabhu Vallabhacharya spoke the Bhagavatam for seven days.<br />
Visit Other Temples at Naimisharanya.<br />
<br />
Later back to Lucknow-88 Kms.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 6											
											:</b> Lucknow to Next Destination										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Morning Departure to Airport/Railway Station to Catch Train or Flight for next destination.			
														   
											</div> 
											</div>
																			<script>
								jQuery(document).ready(function() {
									//jQuery('.product-detail').css('display','none');
								    jQuery(".sub-title").click(function() {
								        var $this = jQuery(this);
										  jQuery('.w-title').addClass('h15px',400);
								          $this.find('.w-title').removeClass('h15px',400);
										  jQuery('.product-detail').slideUp();
								          $this.next().slideDown();
								          if($this.find('i').hasClass('fa-angle-up')){
								          	$this.find('i').removeClass('fa-angle-up').addClass('fa-angle-down');
								          } else {
								          	$this.find('i').removeClass('fa-angle-down').addClass('fa-angle-up');
								          }
								        });
									});
								</script>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																						<li>Transport</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Meals: Breakfast, Lunch, Dinner.</li><li>
Monument Entrance</li><li>
Guide</li><li>
Any other expenses apart from Room, and Transport services.</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 * 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">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. * 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.travelsupportindia.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Mahaprabhuji Vallabhacharya Bethak ji Pilgrimage 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="50619"/>
						</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.travelsupportindia.com/packages-in-varanasi.htm" title="Packages in Varanasi">Varanasi</a> <b class="alpha50 bn small">(30)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(14)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/packages-in-prayagraj.htm" title="Packages in Prayagraj">Prayagraj</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/packages-in-lucknow.htm" title="Packages in Lucknow">Lucknow</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/packages-in-gaya.htm" title="Packages in Gaya">Gaya</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/packages-in-kushinagar.htm" title="Packages in Kushinagar">Kushinagar</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/packages-in-agra.htm" title="Packages in Agra">Agra</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/packages-in-patna.htm" title="Packages in Patna">Patna</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/packages-in-sravasti.htm" title="Packages in Sravasti">Sravasti</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/packages-in-ayodhya.htm" title="Packages in Ayodhya">Ayodhya</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelsupportindia.com/packages-in-rajgir.htm" title="Packages in Rajgir">Rajgir</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelsupportindia.com/packages-in-nalanda.htm" title="Packages in Nalanda">Nalanda</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelsupportindia.com/packages-in-vaishali.htm" title="Packages in Vaishali">Vaishali</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.travelsupportindia.com/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</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.travelsupportindia.com/packages-in-bodh-gaya.htm" title="Packages in Bodhgaya">Bodhgaya</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.travelsupportindia.com/packages-in-sarnath.htm" title="Packages in Sarnath">Sarnath</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.travelsupportindia.com/packages-in-lumbini.htm" title="Packages in Lumbini">Lumbini</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.travelsupportindia.com/packages-in-jhansi.htm" title="Packages in Jhansi">Jhansi</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.travelsupportindia.com/packages-in-khajuraho.htm" title="Packages in Khajuraho">Khajuraho</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.travelsupportindia.com/packages-in-faizabad.htm" title="Packages in Faizabad">Faizabad</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.travelsupportindia.com/packages-in-rishikesh.htm" title="Packages in Rishikesh">Rishikesh</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.travelsupportindia.com/packages-in-kovalam.htm" title="Packages in Kovalam">Kovalam</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.travelsupportindia.com/packages-in-warangal.htm" title="Packages in Warangal">Warangal</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.travelsupportindia.com/packages-in-mirzapur.htm" title="Packages in Mirzapur">Mirzapur</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.travelsupportindia.com/packages-in-aurangabad.htm" title="Packages in Aurangabad">Aurangabad</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.travelsupportindia.com/packages-in-fatehpur-sikri.htm" title="Packages in Fatehpur Sikri">Fatehpur Sikri</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.travelsupportindia.com/packages-in-pushkar.htm" title="Packages in Pushkar">Pushkar</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.travelsupportindia.com/packages-in-vijayawada.htm" title="Packages in Vijayawada">Vijayawada</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.travelsupportindia.com/packages-in-tikamgarh.htm" title="Packages in Tikamgarh">Tikamgarh</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.travelsupportindia.com/packages-in-mandawa.htm" title="Packages in Mandawa">Mandawa</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.travelsupportindia.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(28)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.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.travelsupportindia.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelsupportindia.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(1)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Prayagraj, Lucknow, Mirzapur, Varanasi, Ayodhya</p>
						</div>
						<br/>
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight cols_similar">
											
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.travelsupportindia.com/tour-packages/varanasi-gaya-allahabad-chitrakoot-ayodhya-lucknow-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/7390/122031.jpg"  alt="Varanasi - Gaya - Allahabad - Chitrakoot - Ayodhya - Lucknow Tour" title="Varanasi - Gaya - Allahabad - Chitrakoot - Ayodhya - Lucknow Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.travelsupportindia.com/tour-packages/varanasi-gaya-allahabad-chitrakoot-ayodhya-lucknow-tour.htm" title="Varanasi - Gaya - Allahabad - Chitrakoot - Ayodhya - Lucknow Tour"><h3>Varanasi - Gaya - Allahabad - Chitrakoot -..</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Prayagraj, Lucknow, Varanasi, Gaya, Ayod..</p>
															<div class="mt10px small">
							<form name="pkg_55395" id="pkg_55395" method="post" action="http://www.travelsupportindia.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.travelsupportindia.com/tour-packages/varanasi-gaya-allahabad-chitrakoot-ayodhya-lucknow-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Varanasi - Gaya - Allahabad - Chitrakoot - Ayodhya - Lucknow Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="55395"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.travelsupportindia.com/tour-packages/kashi-prayag-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/7390/122045.jpg"  alt="Kashi Prayag Tour" title="Kashi Prayag Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.travelsupportindia.com/tour-packages/kashi-prayag-tour.htm" title="Kashi Prayag Tour"><h3>Kashi Prayag Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								2 Nights / 3 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Prayagraj, Varanasi, Sarnath</p>
															<div class="mt10px small">
							<form name="pkg_7341" id="pkg_7341" method="post" action="http://www.travelsupportindia.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.travelsupportindia.com/tour-packages/kashi-prayag-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Kashi Prayag Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="7341"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.travelsupportindia.com/tour-packages/buddha-pilgrimage-with-taj-mahal-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/7390/113892.jpg"  alt="Bodhgaya" title="Bodhgaya"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.travelsupportindia.com/tour-packages/buddha-pilgrimage-with-taj-mahal-tour.htm" title="Buddha Pilgrimage With Taj Mahal Tour"><h3>Buddha Pilgrimage With Taj Mahal Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								9 Nights / 10 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Agra, Lucknow, Sravasti, Vara..</p>
															<div class="mt10px small">
							<form name="pkg_50592" id="pkg_50592" method="post" action="http://www.travelsupportindia.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.travelsupportindia.com/tour-packages/buddha-pilgrimage-with-taj-mahal-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Buddha Pilgrimage With Taj Mahal Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="50592"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.travelsupportindia.com/tour-packages/shradh-and-pind-daan-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/7390/27964.jpg"  alt="Shradh and Pind Daan Package" title="Shradh and Pind Daan Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.travelsupportindia.com/tour-packages/shradh-and-pind-daan-package.htm" title="Shradh and Pind Daan Package"><h3>Shradh And Pind Daan Package</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Prayagraj, Varanasi, Bodhgaya, Gaya, Ayo..</p>
															<div class="mt10px small">
							<form name="pkg_16768" id="pkg_16768" method="post" action="http://www.travelsupportindia.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.travelsupportindia.com/tour-packages/shradh-and-pind-daan-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Shradh and Pind Daan Package - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="16768"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.travelsupportindia.com/tour-packages/uttar-pradesh-jain-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/7390/113886.jpg"  alt="Uttar Pradesh Jain Tour" title="Uttar Pradesh Jain Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.travelsupportindia.com/tour-packages/uttar-pradesh-jain-tour.htm" title="Uttar Pradesh Jain Tour"><h3>Uttar Pradesh Jain Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Prayagraj, Varanasi, Ayodhya, Kushinagar..</p>
															<div class="mt10px small">
							<form name="pkg_60502" id="pkg_60502" method="post" action="http://www.travelsupportindia.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.travelsupportindia.com/tour-packages/uttar-pradesh-jain-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Uttar Pradesh Jain Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="60502"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.travelsupportindia.com/tour-packages/heritage-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/7390/11452.jpg"  alt="Heritage Tour" title="Heritage Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.travelsupportindia.com/tour-packages/heritage-tour.htm" title="Heritage Tour"><h3>Heritage Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								9 Nights / 10 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Jaipur, Agra, Jhansi, Varanas..</p>
															<div class="mt10px small">
							<form name="pkg_10406" id="pkg_10406" method="post" action="http://www.travelsupportindia.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.travelsupportindia.com/tour-packages/heritage-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Heritage Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="10406"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</div>
				</section>
				
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
				";i:1;s:92:"Book Mahaprabhuji Vallabhacharya Bethak ji Pilgrimage Tour - 5 Nights / 6 Days Tour Packages";i:2;s:193:"book mahaprabhuji vallabhacharya bethak ji pilgrimage tour - 5 nights / 6 days tour packages, religious & pilgrimage tour packages, prayagraj, lucknow, mirzapur, varanasi, ayodhya tour packages";i:3;s:224:"Travel Support offers Mahaprabhuji Vallabhacharya Bethak ji Pilgrimage Tour - 5 Nights / 6 Days tour package, budget Religious & Pilgrimage tour packages for Prayagraj, Lucknow, Mirzapur, Varanasi, Ayodhya at exciting price.";i:4;s:1404:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Prayagraj, Lucknow, Mirzapur, Varanasi, Ayodhya"        
		                 },
		      "description": "Chaurasi Bethak, Literally Meaning "84 Seats", Refers To The 84 Places Where Vallabhacharya, A Devotional Philosopher, Gave Discourse Of Bhagavata In The 15Th Century. This Forms One Of The Very Important Concepts In The Pushtimarg Tradition Of Vaishnavites In India, And These Places Are Treated As Sacred Sites By The Followers Of This Sect, For Performing Devotional Rituals.

This Packages Includes The Baithakji Pilgrimage In Eastern Uttar Pradesh. Visiting The Below Baithaji And Temples.

1. Kashi- A. Baithak At Jatanvad. B.Baithak At Hanuman Ghat. C.Baithak At Panchganga. Gopal Mandir Temple, Kashi Vishwanath Temple, Annapurna Temple.

2. Chunar- A. Charnat Baithakji.
3. Allahabad- A. Adel Baithaji.
4. Ayodhaya- A. Ayodhaya Baithakji B. Temples Of Ayodhaya.
5. Shree Naimisharanya Baithakji.Meals: Breakfast, Lunch, Dinner.
Monument Entrance
Guide
Any other expenses apart from Room, and Transport services.",
		      "name": "Mahaprabhuji Vallabhacharya Bethak ji Pilgrimage Tour",
		      "telephone": "+91-9935070007"
		    }
		    </script>
			";i:5;N;}