a:4:{i:0;s:30143:"					<div class="h1"><h1>2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.jalandharproperty.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.jalandharproperty.in/browse-property.htm" title="Browse Property">Browse Property</a>  			
											
					
					<b class="ffv p2px">&rsaquo;</b>2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar</p> 
					<br />
					
											<p class="aj">Newly Built East Phasing House Is Available For Sale In Jalandhar<br/>
<br/>
Address:-- Venus Velly Colony , Amritsar By-Pass Road Backside Verka Milk Plant Near Swami Mohan Dass Public School Jalandhar<br/>
<br/>
Luxuries 2 Bedrooms,2 Bathrooms, Drawing Room cum Lobby,Balcony,Staircase, Terrace,Kitchen And Car-Porch Etc.<br/>
<br/>
House Is Government Approved By Municipal Corporation Jalandhar And Very Well Planned Colony House<br/>
<br/>
Price :- 26 Lac<br/>
Booking Price :- 20 Thousand<br/>
Built-Up Area :- 1095 sqft<br/>
<br/>
Facilities :- 24"ft Wide Road,Water Supply,Drainage System,Street Light,, Green Belt And Many More Facilities Are Available Here<br/>
<br/>
All Things Are Available Within 2 km<br/>
<br/>
Harjitsons Real Estate Jalandhar<br/>
<br/>
We Earn Trust Only <br/>
<br/>
T&C Apply</p>
						<br />
											<div class="headVr p10px">
					<p class="xxlarge b mb10px">Property Details</p>
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="vat data p10px">
					<table class="w100">
											<tr>
						<td class="vat p2px5px w175px"><b>Property ID</b>:</td>
						<td class="vat p2px5px">REI752142</td>
						</tr>
						<tr><td colspan="3"><p class="hr"></p></td></tr>
												<tr>
						<td class="vat p2px5px"><b>Property For </b>:</td>
						<td class="vat p2px5px">Sale</td>
						</tr>
						<tr><td colspan="3"><p class="hr"></p></td></tr>
												<tr>
						<td class="vat p2px5px"><b>Price</b>: </td>
						<td class="vat p2px5px">24.80 L</td>
						</tr>
						<tr><td colspan="3"><p class="hr"></p></td></tr>
												<script type="text/javascript">
						area_conversion=function(b,f,e){var c=createAreaArr();if(e==1){if(b<20&&b!=18){var a=f/c[b];return a}else{return 0}}else{if(e==2){if(b<20&&b!=18){var d=f*c[b];return d}else{return 0}}}};
						
						function createAreaArr(){
							var a={
								1:1,
								2:0.1111111111111,
								3:0.093,
								4:0.00041666667,
								5:0.013890889,
								6:0.000091810503,
								7:0.002222222222222223,
								8:0.0036724201,
								9:0.0009182736455464,
								10:0.00092936802973,
								11:0.0000028696051,
								12:0.00002295663,
								13:0.000057392103,
								14:0.0013888889,
								15:0.0000092904166,
								16:0.003673095,
								17:0.0000092605969,
								19:0.002295684
							};
							return a;
						}
						
						function updateArea(a,c,d,h,b,w,z){
							var g=createAreaArr();
							 
							var bu = {
						    'Sq.ft.':'1',
						    'Sq. Yards':'2',
						    'Sq. Meter':'3',
						    'Guntha':'9',
						    'Ares':'10',
						    'Acre':'12',
						    'Bigha':'13',
						    'Hectares':'15',
						    'Marla':'16',
						    'Cent':'19',
						    };
							if(w=='Sq. Feet'){
								var e=d*(parseFloat(g[c]));
							}
							else{
								var e=parseFloat(g[c])*(d/ parseFloat(g[bu[w]]));
							} 
							
							if(b=="Y"){
								jQuery("#"+h+"_span").html(e.toFixed(2));
							}else{
								if(b=="N"){
									jQuery("#"+h).html(jQuery("#"+h).html+e.toFixed(2));
									console.log("#"+h);
								}
							}
							jQuery("#"+h+"Label").html(" "+a);
							jQuery("#"+z).html(a+" &#9660;")
						}
						
						</script>						
												<tr>
						<td class="vat p2px5px"><b>Built Up Area</b>: </td>
						
						<td class="vat p2px5px">
						<script type="text/javascript">
						function convert(basetext,baseindex,baseunit){
						     if(1095 > 0 )  updateArea(basetext,baseindex,1095,'builtupArea','Y',baseunit,'DrpDownTab');   }
						</script>  
						<span id="builtupArea_span">1095</span>
						<span class="pr">
						<a onClick="jQuery('#builtUp').show();event.stopPropagation();" class="headVr pl5px pr5px small dib vam ml5px" id="DrpDownTab">Sq.ft. &#9660;</a>
						<div id="builtUp" style="width:120px;display:none;top:-1px;left:0px;" class="pa">
						<span class="data p5px15px pb10px dib xlarge b pr" style="border-bottom:none;z-index:101;" id="builtupAreaLabel">Sq.ft.</span>
						<ul class="lsn m0px p0px data small bdrB0 pr uo" style="top:-1px;z-index:100;">
						<li><a class="bdrB db p2px10px" href="javascript:convert('Sq.%20Feet',1,'Sq.ft.');">Sq. Feet</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Cent',19,'Sq.ft.');">Cent</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Sq.%20Yards',2,'Sq.ft.');">Sq. Yards</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Ares',10,'Sq.ft.');">Ares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Acre',12,'Sq.ft.');">Acres</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Sq.%20Meter',3,'Sq.ft.');">Sq. Meter</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Bigha',13,'Sq.ft.');">Bigha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Hectares',15,'Sq.ft.');">Hectares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Guntha',9,'Sq.ft.');">Guntha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert('Marla',16,'Sq.ft.');">Marla</a></li>
						</ul>
						</div>
						</span>
						<script>
						jQuery(document).ready(function(e) {
							jQuery('body').click(function(){
								jQuery('#builtUp').hide();
								
							})
						});
						</script>
						</td>
						</tr>
						<tr><td colspan="3"><p class="hr"></p></td></tr>
												<tr>
						<td class="vat p2px5px"><b>Land / Plot Area</b>: </td>
						
						<td class="vat p2px5px">
						<script type="text/javascript">
						function convert1(basetext,baseindex,baseunit){
						     if(1093 > 0 )  updateArea(basetext,baseindex,1093,'landArea','Y',baseunit,'DrpDownTab1'); }
						</script>  
						<span id="landArea_span">1093</span>
						<span class="pr">
						<a onClick="jQuery('#landArea').show();event.stopPropagation();" class="headVr pl5px pr5px small dib vam ml5px" id="DrpDownTab1">Sq.ft. &#9660;</a>
						<div id="landArea" style="width:120px;display:none;top:-1px;left:0px;" class="pa">
						<span class="data p5px15px pb10px dib xlarge b pr" style="border-bottom:none;z-index:101;" id="landAreaLabel">Sq.ft.</span>
						<ul class="lsn m0px p0px data small bdrB0 pr uo" style="top:-1px;z-index:100;">
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Sq.%20Feet',1,'Sq.ft.');">Sq.Feet</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Cent',19,'Sq.ft.');">Cent</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Sq.%20Yards',2,'Sq.ft.');">Sq. Yards</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Ares',10,'Sq.ft.');">Ares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Acre',12,'Sq.ft.');">Acres</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Sq.%20Meter',3,'Sq.ft.');">Sq. Meter</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Bigha',13,'Sq.ft.');">Bigha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Hectares',15,'Sq.ft.');">Hectares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Guntha',9,'Sq.ft.');">Guntha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Marla',16,'Sq.ft.');">Marla</a></li>
						</ul>
						</div>
						</span>
						<script>
						jQuery(document).ready(function(e) {
							jQuery('body').click(function(){
								jQuery('#landArea').hide();
								
							})
						});
						</script>			
						</td>
						</tr>
						<tr><td colspan="3"><p class="hr"></p></td></tr>
												<tr>
						<td class="vat p2px5px"><b>Carpet Area</b>: </td>
						
						<td class="vat p2px5px">
						<script type="text/javascript">
						function convert2(basetext,baseindex,baseunit){
						     if(984 > 0 )  updateArea(basetext,baseindex,984,'catpetArea','Y',baseunit,'DrpDownTab2');   }
						</script>  
						<span id="catpetArea_span">984</span>
						<span class="pr">
						<a onClick="jQuery('#catpetArea').show();event.stopPropagation();" class="headVr pl5px pr5px small dib vam ml5px" id="DrpDownTab2">Sq.ft. &#9660;</a>
						<div id="catpetArea" style="width:120px;display:none;top:-1px;left:0px;" class="pa">
						<span class="data p5px15px pb10px dib xlarge b pr" style="border-bottom:none;z-index:101;" id="catpetAreaLabel">Sq.ft.</span>
						<ul class="lsn m0px p0px data small bdrB0 pr uo" style="top:-1px;z-index:100;">
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Sq.%20Feet',1,'Sq.ft.');">Sq.Feet</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Cent',19,'Sq.ft.');">Cent</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Sq.%20Yards',2,'Sq.ft.');">Sq. Yards</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Ares',10,'Sq.ft.');">Ares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Acre',12,'Sq.ft.');">Acres</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Sq.%20Meter',3,'Sq.ft.');">Sq. Meter</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Bigha',13,'Sq.ft.');">Bigha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Hectares',15,'Sq.ft.');">Hectares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Guntha',9,'Sq.ft.');">Guntha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert2('Marla',16,'Sq.ft.');">Marla</a></li>
						</ul>
						</div>
						</span>
						<script>
						jQuery(document).ready(function(e) {
							jQuery('body').click(function(){
								jQuery('#catpetArea').hide();
								
							})
						});
						</script>			
						</td>
						</tr>
						<tr><td colspan="3"><p class="hr"></p></td></tr>
											</table>
					</td>
											<td class="vat pl15px w175px">
													<div class="w150px imgWidth150 m0a" id="thumbContainer0" >
							<div class="ac lh0 mt10px">
							<a  data-fancybox="showZoomImage"  title="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar" href="https://rei.wlimg.com/prop_images/1017004/752142_1.jpg"><div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/752142_1-350x350.jpg);background-size:cover;background-position:center;width:150px;height:150px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/752142_1-350x350.jpg"  alt="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div></a>							</div>
							</div>
														<div class="w150px imgWidth150 m0a" id="thumbContainer1"  style="display:none;">
							<div class="ac lh0 mt10px">
							<a  data-fancybox="showZoomImage"  title="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar" href="https://rei.wlimg.com/prop_images/1017004/752142_2.jpg"><div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/752142_2-350x350.jpg);background-size:cover;background-position:center;width:150px;height:150px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/752142_2-350x350.jpg"  alt="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div></a>							</div>
							</div>
														<div class="w150px imgWidth150 m0a" id="thumbContainer2"  style="display:none;">
							<div class="ac lh0 mt10px">
							<a  data-fancybox="showZoomImage"  title="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar" href="https://rei.wlimg.com/prop_images/1017004/752142_3.jpg"><div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/752142_3-350x350.jpg);background-size:cover;background-position:center;width:150px;height:150px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/752142_3-350x350.jpg"  alt="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div></a>							</div>
							</div>
														<div class="w150px imgWidth150 m0a" id="thumbContainer3"  style="display:none;">
							<div class="ac lh0 mt10px">
							<a  data-fancybox="showZoomImage"  title="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar" href="https://rei.wlimg.com/prop_images/1017004/752142_4.jpg"><div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/752142_4-350x350.jpg);background-size:cover;background-position:center;width:150px;height:150px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/752142_4-350x350.jpg"  alt="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div></a>							</div>
							</div>
														<div class="w150px imgWidth150 m0a" id="thumbContainer4"  style="display:none;">
							<div class="ac lh0 mt10px">
							<a  data-fancybox="showZoomImage"  title="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar" href="https://rei.wlimg.com/prop_images/1017004/752142_5.jpg"><div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/752142_5-350x350.jpg);background-size:cover;background-position:center;width:150px;height:150px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/752142_5-350x350.jpg"  alt="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div></a>							</div>
							</div>
														<div class="w150px imgWidth150 m0a" id="thumbContainer5"  style="display:none;">
							<div class="ac lh0 mt10px">
							<a  data-fancybox="showZoomImage"  title="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar" href="https://rei.wlimg.com/prop_images/1017004/752142_6.jpg"><div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/752142_6-350x350.jpg);background-size:cover;background-position:center;width:150px;height:150px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/752142_6-350x350.jpg"  alt="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div></a>							</div>
							</div>
														<div class="w150px imgWidth150 m0a" id="thumbContainer6"  style="display:none;">
							<div class="ac lh0 mt10px">
							<a  data-fancybox="showZoomImage"  title="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar" href="https://rei.wlimg.com/prop_images/1017004/752142_7.jpg"><div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/752142_7-350x350.jpg);background-size:cover;background-position:center;width:150px;height:150px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/752142_7-350x350.jpg"  alt="2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div></a>							</div>
							</div>
													<p class="paging ac p10px small" id="propertyThumbLinks">
													<a href="javascript:void(0);" class="on w15px bdr dib b" onclick="imgDisplay('0')" title="">1</a> &nbsp; 
														<a href="javascript:void(0);" class="bdr dib w15px" onclick="imgDisplay('1')" title="">2</a> &nbsp; 
														<a href="javascript:void(0);" class="bdr dib w15px" onclick="imgDisplay('2')" title="">3</a> &nbsp; 
														<a href="javascript:void(0);" class="bdr dib w15px" onclick="imgDisplay('3')" title="">4</a> &nbsp; 
														<a href="javascript:void(0);" class="bdr dib w15px" onclick="imgDisplay('4')" title="">5</a> &nbsp; 
														<a href="javascript:void(0);" class="bdr dib w15px" onclick="imgDisplay('5')" title="">6</a> &nbsp; 
														<a href="javascript:void(0);" class="bdr dib w15px" onclick="imgDisplay('6')" title="">7</a> &nbsp; 
													</p>
						<script type="text/javascript">
						// <![CDATA[
						function imgDisplay(num) {
						as=document.getElementById('propertyThumbLinks').getElementsByTagName('a');
						for (i=0; i<as.length; i++) {
						as[i].className='p2px5px';
						document.getElementById('thumbContainer'+i).style.display='none';
						}
						as[num].className='on p2px5px'
						document.getElementById('thumbContainer'+num).style.display='';
						}
						//]]>
						</script>
						</td>
											</tr>
					</table>
					</div>
					<br />
											<div class="bdrB xxlarge b dif lh14em mb7px">Additional Details</div>
						<ul class="lsn m0px p0px wp33">
														<li class="p2px"><b>Property Age :</b> New Construction</li>
																<li class="p2px"><b>Furnishing :</b> Unfurnished</li>
																<li class="p2px"><b>Transaction :</b> New Property</li>
																<li class="p2px"><b>Bedrooms :</b> 2</li>
																<li class="p2px"><b>Bathrooms :</b> 2</li>
																<li class="p2px"><b>No. of Floors :</b> 1</li>
																<li class="p2px"><b>Property On Floor :</b> 1</li>
																<li class="p2px"><b>Property Face :</b> East</li>
														</ul>
			            <p class="cb"></p>
			            <br />
												<div class="bdrB xxlarge b dif lh14em mb7px">Amenities</div>
						<ul class="lsn m0px p0px wp33">
													<li class="p2px vat"><i class="si w24px icon-rp" title="Reserved Parking"></i> Reserved Parking</li>
													</ul>
			            <p class="cb"></p>
			        	<br>
			        								<div class="bdrB xxlarge b dif lh14em mb7px">Property Address</div>
							<p>Amritsar By-Pass  Road Backside Verka Milk Plant Near Swami Mohan Dass Public School, Venus Velly Colony, Jalandhar, Jalandhar, Punjab</p>
													<br />
						<div class="bdrB xxlarge b dif lh14em mb7px">Location Map</div>
						<div class="bdr p2px lh0 mt10px"> 
						<iframe width="100%" height="300" frameborder="0"  marginheight="0" marginwidth="0"
						src="https://www.google.com/maps/embed/v1/place?key=AIzaSyAN_m_CqOOtgmiF9crPBw9oSbiFBPNwn5o&q=~~Venus Velly Colony~~Jalandhar~~Punjab,India">
						</iframe>
						</div>
												<br />
						
						<table class="w100 formTable">
						<tr>
						<td class="headVr b p5px" colspan="2">Property Seller Detail</td>
						</tr>
														<tr>
								<td class="ar b p5px w30">Contact Person :</td>
								<td class="p5px">
								Mr. Harpreet Singh 								</td>
								</tr>
																	<tr>
									<td class="ar b p5px">Phone :</td>
									<td class="p5px">+91-181-2603421</td>
									</tr>
																	<tr>
								<td class="ar b p5px">Mobile :</td>
								<td  class="p5px">
								+91-9855125027								</td>
								</tr>
																<tr>
								<td class="ar b p5px">Contact Address :</td>
								<td  class="p5px">
								110-111 Khukrain Colony Near Swami Mohan Dass Public School Back Side Verka Milk Plant Amritsar Bye-Pass Road, Amritsar By-Pass Road, Jalandhar, Punjab, India								</td>
								</tr>
															</table>
													<form name="frmpropertydetail" method="post" action="http://www.jalandharproperty.in/property-inquiry.htm">
						<p class="p10px ac">
						<input type="hidden" name="enqtype" value="property" />
						<input type="hidden" name="subject" value="Inquiry For Property - 2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar - REI752142" />
						<input class="button p5px10px b" type="submit" value="SEND ENQUIRY" />
						<input type="hidden" name="property_id" value="752142" />
						</p>
						</form>
												<br />
						<br />
						<div class="headHr xlarge p7px pl10px">Properties you might be Interested</div>
						
						<div class="p10px">
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight">
													<li class="imgWidth200 ac">
							<div class="imgFrame dib bdr">
							<div class="imgFrame picBg dtc ac vam lh0">
							<div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/706463_1-350x350.jpg);background-size:cover;background-position:center;width:200px;height:200px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/706463_1-350x350.jpg"  alt="3 BHK Individual House for Sale in New Sarabha Nagar, Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div>							</div>
							</div>
							<p class="mb5px mt10px"><a href="http://www.jalandharproperty.in/sell/3-bhk-individual-house-new-sarabha-nagar-jalandhar_706463.htm" title="3 BHK Individual House for Sale in New Sarabha Nagar, Jalandhar" class="dif b">3 BHK Individual House for Sale in New Sarabha Nagar, Jalandhar</a></p>
							<p class="mb5px"> (New Sarabha Nagar, Jalandhar/Jalandhar)  1276 Sq.ft. | 3 Bedrooms | 1 Floor | 3 Bathrooms |   36 Lac  50 Thousand </p>
							<br />
							</li>
														<li class="imgWidth200 ac">
							<div class="imgFrame dib bdr">
							<div class="imgFrame picBg dtc ac vam lh0">
							<div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/792161_1-350x350.jpg);background-size:cover;background-position:center;width:200px;height:200px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/792161_1-350x350.jpg"  alt="3-Bedroom Set Property For Sale In Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div>							</div>
							</div>
							<p class="mb5px mt10px"><a href="http://www.jalandharproperty.in/sell/3-bhk-individual-houses-villas-new-guru-amardass-nagar-jalandhar_792161.htm" title="3-Bedroom Set Property For Sale In Jalandhar" class="dif b">3-Bedroom Set Property For Sale In Jalandhar</a></p>
							<p class="mb5px"> (New Guru Amardass Nagar, Jalandhar/Jalandhar)   Area: 1482 Sq.ft. / 1000 Sq.ft. | 3 Bedrooms | 1 Floor | 3 Bathrooms |   32 Lac  50 Thousand </p>
							<br />
							</li>
														<li class="imgWidth200 ac">
							<div class="imgFrame dib bdr">
							<div class="imgFrame picBg dtc ac vam lh0">
							<div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/811684_1-350x350.jpeg);background-size:cover;background-position:center;width:200px;height:200px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/811684_1-350x350.jpeg"  alt="3BHK,Low Price Property In Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div>							</div>
							</div>
							<p class="mb5px mt10px"><a href="http://www.jalandharproperty.in/sell/3-bhk-individual-houses-villas-toor-enclave-jalandhar_811684.htm" title="3BHK,Low Price Property In Jalandhar" class="dif b">3BHK,Low Price Property In Jalandhar</a></p>
							<p class="mb5px"> (Toor Enclave, Jalandhar/Jalandhar)   Area: 980 Sq.ft. / 880.02 Sq.ft. | 3 Bedrooms | 1 Floor | 3 Bathrooms |   27 Lac </p>
							<br />
							</li>
														<li class="imgWidth200 ac">
							<div class="imgFrame dib bdr">
							<div class="imgFrame picBg dtc ac vam lh0">
							<div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/756257_1-350x350.jpg);background-size:cover;background-position:center;width:200px;height:200px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/756257_1-350x350.jpg"  alt="Commercial Shops for Sale in Toor Enclave, Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div>							</div>
							</div>
							<p class="mb5px mt10px"><a href="http://www.jalandharproperty.in/sell/commercial-shops-toor-enclave-jalandhar_756257.htm" title="Commercial Shops for Sale in Toor Enclave, Jalandhar" class="dif b">Commercial Shops for Sale in Toor Enclave, Jalandhar</a></p>
							<p class="mb5px"> (Toor Enclave, Jalandhar/Jalandhar)  208 Sq.ft. | 1 Floor |  15  Lac </p>
							<br />
							</li>
														<li class="imgWidth200 ac">
							<div class="imgFrame dib bdr">
							<div class="imgFrame picBg dtc ac vam lh0">
							<div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/755850_1-350x350.jpg);background-size:cover;background-position:center;width:200px;height:200px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/755850_1-350x350.jpg"  alt="3 BHK Individual House for Sale in Venus Velly Colony, Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div>							</div>
							</div>
							<p class="mb5px mt10px"><a href="http://www.jalandharproperty.in/sell/3-bhk-individual-house-venus-velly-colony-jalandhar_755850.htm" title="3 BHK Individual House for Sale in Venus Velly Colony, Jalandhar" class="dif b">3 BHK Individual House for Sale in Venus Velly Colony, Jalandhar</a></p>
							<p class="mb5px"> (Venus Velly Colony, Jalandhar/Jalandhar)   Area: 1584 Sq.ft. / 1242 Sq.ft. | 3 Bedrooms | 1 Floor | 3 Bathrooms |   31 Lac </p>
							<br />
							</li>
														<li class="imgWidth200 ac">
							<div class="imgFrame dib bdr">
							<div class="imgFrame picBg dtc ac vam lh0">
							<div class="imgWidth" style="background-image:url(https://rei.wlimg.com/prop_images/1017004/781196_1-350x350.jpg);background-size:cover;background-position:center;width:200px;height:200px;overflow:hidden;"><img src="https://rei.wlimg.com/prop_images/1017004/781196_1-350x350.jpg"  alt="3bhk Property In Toor Enclave Phase 1 Jalandhar"  style="max-height:150px;max-width:150px;z-index: -1;margin-left: -1000px;"  /></div>							</div>
							</div>
							<p class="mb5px mt10px"><a href="http://www.jalandharproperty.in/sell/3-bhk-individual-houses-villas-toor-enclave-phase-1-jalandhar_781196.htm" title="3bhk Property In Toor Enclave Phase 1 Jalandhar" class="dif b">3bhk Property In Toor Enclave Phase 1 Jalandhar</a></p>
							<p class="mb5px"> (Toor Enclave Phase 1, Jalandhar/Jalandhar)   Area: 1618 Sq.ft. / 1274 Sq.ft. | 3 Bedrooms | 1 Floor | 3 Bathrooms |   33 Lac  50 Thousand </p>
							<br />
							</li>
											
						</ul>
						</div>
						</div>
										<div id="myModal" class="modal fade dn pf" role="dialog" style="z-index:9999;left:0;top:0%;width:100%;height:100%;background-color:rgba(0,0,0,0.6);overflow-x: hidden; overflow-y: auto;">
				    <!-- Modal content-->
				    <div style="max-width:700px;margin-top: 50px;min-height:400px;" class="modal-content data m0a p10px pr">
				      <div class="modal-header">
				        <a style="right:25px;top:25px;" class="pa b xxxlarge" data-dismiss="modal"><span class="xlarge">&times;</span></a>	        
				      </div>
				      <div class="modal-body">
				        <div class="ac" style="padding-top: 10%;"><p style="font-size:18px">Loading...</p></div>
				      </div>
				      <div class="modal-footer">
				        
				      </div>
				    </div>
				</div>
				<script type="text/javascript">
					jQuery(document).ready(function(){
						jQuery(document).on("click", ".submit-inquiry" , function(){
							var form = jQuery(this).parent().find(".inquiry-form");
							if(form.length){
								jQuery.ajax({
									url: form.attr("action"),
									type: form.attr("method"),
									data:form.serialize(),
									crossDomain:true,
									success:function(res){
										jQuery("#myModal .modal-body").html(res);
									}
								});
							}
						});
						jQuery(document).on("click", "[data-dismiss=modal]", function(){
							jQuery("#myModal .modal-body").html('<div class="ac" style="padding-top: 10%;"><p style="font-size:18px">Loading...</p></div>');
							jQuery("#myModal").hide();
						});
						jQuery(document).on("submit", "form[name=static_form]", function(e){				
							e.preventDefault();
							var isValidForm =static_inq_form_validate(jQuery(this).attr("form-id"));
							if(isValidForm == undefined){
								var form = jQuery(this);
								if(form.length){
									jQuery.ajax({
										url: form.attr("action"),
										type: form.attr("method"),
										data:form.serialize(),
										crossDomain:true,
										beforeSend:function(){
											jQuery("#myModal .modal-footer").html("");
										},
										success:function(res){
											jQuery("#myModal .modal-body").html(res);
											setTimeout(function(){
												jQuery("#myModal", document).hide();
												jQuery("#myModal .modal-body").html('<div class="ac" style="padding-top: 10%;"><p style="font-size:18px">Loading...</p></div>');
												},2000)
										}
									});
								}
							}
						});
						var modal = jQuery("#myModal", document);
			
						jQuery(document).on("click", ".submit-inquiry" , function(){
						    modal.show();
						});
			
						window.onclick = function(event) {
						    if (jQuery(event.target) == modal) {
						        modal.css("display","none");
						    }
						}
					});
				</script>
				";i:1;s:64:"2 BHK Individual House for Sale in Venus Velly Colony, Jalandhar";i:2;s:291:"Property for Sale in Venus Velly Colony, Jalandhar, Punjab, 2 Bedrooms, 2 Bath Rooms, 1 Total Floor, 1095 Sq.ft. Individual Houses / Villas in Venus Velly Colony, Jalandhar, Punjab, Harpreet Real Estate deal in all type of Individual Houses / Villas in Venus Velly Colony, Jalandhar, Punjab.";i:3;s:291:"Property for Sale in Venus Velly Colony, Jalandhar, Punjab, 2 Bedrooms, 2 Bath Rooms, 1 Total Floor, 1095 Sq.ft. Individual Houses / Villas in Venus Velly Colony, Jalandhar, Punjab, Harpreet Real Estate deal in all type of Individual Houses / Villas in Venus Velly Colony, Jalandhar, Punjab.";}