a:4:{i:0;s:37757:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Resale</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.saikiranproperties.com/" title="Home">Home</a>
						
						<b class="ffv p2px">&rsaquo;</b><a href="http://www.saikiranproperties.com/property-in-pune.htm" title="Property in Pune">Pune</a><b class="ffv p2px">&rsaquo;</b><a href="http://www.saikiranproperties.com/property-for-sale-in-pimple-saudagar-pune.htm" title="Property for Sale in Pimple Saudagar, Pune">Pimple Saudagar</a>											
						<b class="ffv p2px">&rsaquo;</b> Resale</p>
						</div>
						</div>
						</section>
											<script>	
						(function($){	
						  $(function(){
							$('[id^=slider1]').each(function(){
								$(this).DG_Slider({
									auto: true, mode:'fade', pager:false, pagerType:'short',controls:false
								});
							})
							$('a[rel=gall]').fancybox()
						  });	
						}(jQuery))		
					</script>
					<section id="middle"><br />
					<div class="wrap" id="bodyFormatNT">
					<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
					<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->
											<section class="fo pro_detail_n">
						<div class="w100 dt ac-dtr acac-dtc fl">
						<ul>
												<li class="vat pr30px vat w300px lh0">
	                    <div class="demo-wrap slider300">
						<ul class="lsn m0px p0px" id="slider1">
														<li class="bdr bw1px c5px p1px">
								<div class="">
								<p class="ac vam">
																	<div class="lh0 blur-bg" style="background-image:url(https://rei.wlimg.com/prop_images/1396306/850141_1.jpg); background-repeat:no-repeat;"></div>
									<a  data-fancybox="showZoomImage"  title="Resale" href="https://rei.wlimg.com/prop_images/1396306/850141_1.jpg"><img src="https://rei.wlimg.com/prop_images/1396306/850141_1-350x350.jpg"  alt="Resale"  /></a>								</p>
								</div>
								</li>
																<li class="bdr bw1px c5px p1px">
								<div class="">
								<p class="ac vam">
																	<div class="lh0 blur-bg" style="background-image:url(https://rei.wlimg.com/prop_images/1396306/850141_4.jpg); background-repeat:no-repeat;"></div>
									<a  data-fancybox="showZoomImage"  title="Resale" href="https://rei.wlimg.com/prop_images/1396306/850141_4.jpg"><img src="https://rei.wlimg.com/prop_images/1396306/850141_4-350x350.jpg"  alt="Resale"  /></a>								</p>
								</div>
								</li>
																<li class="bdr bw1px c5px p1px">
								<div class="">
								<p class="ac vam">
																	<div class="lh0 blur-bg" style="background-image:url(https://rei.wlimg.com/prop_images/1396306/850141_5.jpg); background-repeat:no-repeat;"></div>
									<a  data-fancybox="showZoomImage"  title="Resale" href="https://rei.wlimg.com/prop_images/1396306/850141_5.jpg"><img src="https://rei.wlimg.com/prop_images/1396306/850141_5-350x350.jpg"  alt="Resale"  /></a>								</p>
								</div>
								</li>
																<li class="bdr bw1px c5px p1px">
								<div class="">
								<p class="ac vam">
																	<div class="lh0 blur-bg" style="background-image:url(https://rei.wlimg.com/prop_images/1396306/850141_6.jpg); background-repeat:no-repeat;"></div>
									<a  data-fancybox="showZoomImage"  title="Resale" href="https://rei.wlimg.com/prop_images/1396306/850141_6.jpg"><img src="https://rei.wlimg.com/prop_images/1396306/850141_6-350x350.jpg"  alt="Resale"  /></a>								</p>
								</div>
								</li>
																<li class="bdr bw1px c5px p1px">
								<div class="">
								<p class="ac vam">
																	<div class="lh0 blur-bg" style="background-image:url(https://rei.wlimg.com/prop_images/1396306/850141_7.jpg); background-repeat:no-repeat;"></div>
									<a  data-fancybox="showZoomImage"  title="Resale" href="https://rei.wlimg.com/prop_images/1396306/850141_7.jpg"><img src="https://rei.wlimg.com/prop_images/1396306/850141_7-350x350.jpg"  alt="Resale"  /></a>								</p>
								</div>
								</li>
																<li class="bdr bw1px c5px p1px">
								<div class="">
								<p class="ac vam">
																	<div class="lh0 blur-bg" style="background-image:url(https://rei.wlimg.com/prop_images/1396306/850141_8.jpg); background-repeat:no-repeat;"></div>
									<a  data-fancybox="showZoomImage"  title="Resale" href="https://rei.wlimg.com/prop_images/1396306/850141_8.jpg"><img src="https://rei.wlimg.com/prop_images/1396306/850141_8-350x350.jpg"  alt="Resale"  /></a>								</p>
								</div>
								</li>
																<li class="bdr bw1px c5px p1px">
								<div class="">
								<p class="ac vam">
																	<div class="lh0 blur-bg" style="background-image:url(https://rei.wlimg.com/prop_images/1396306/850141_9.jpg); background-repeat:no-repeat;"></div>
									<a  data-fancybox="showZoomImage"  title="Resale" href="https://rei.wlimg.com/prop_images/1396306/850141_9.jpg"><img src="https://rei.wlimg.com/prop_images/1396306/850141_9-350x350.jpg"  alt="Resale"  /></a>								</p>
								</div>
								</li>
																<li class="bdr bw1px c5px p1px">
								<div class="">
								<p class="ac vam">
																	<div class="lh0 blur-bg" style="background-image:url(https://rei.wlimg.com/prop_images/1396306/850141_10.jpg); background-repeat:no-repeat;"></div>
									<a  data-fancybox="showZoomImage"  title="Resale" href="https://rei.wlimg.com/prop_images/1396306/850141_10.jpg"><img src="https://rei.wlimg.com/prop_images/1396306/850141_10-350x350.jpg"  alt="Resale"  /></a>								</p>
								</div>
								</li>
													</ul>
					</div>
					</li>
					<li class="vat ffos">
					<div class="fo mb10px bdrb bdreee pb10px res_clr">
					<div class="">
												<div><i class="fa fa-map-marker pr7px fl"></i><p class="ofh">Pimple Sodager, Pimple Saudagar, Pune							<br>
							<span class="gray">By Sai Kiran Properties</span></p>
							</div>
												</div>
					</div>
					<p class="pr"><span class="headHr dib c5px"><a data-fancybox data-type="iframe" data-src="https://www.realestateindia.com/view_map.php?title=Resale&gaddress=The+Westford%2C+Pimple+Saudagar%2C+Pune%2C+Maharashtra&goglepointer1=&goglepointer2=" href="javascript:void(0);" style="padding-left:50px;" class="b xlarge p7px pr20px dib ts0">Location Map</a></span>
					<span style="top:-10px;left:0;" class="pa dib lh0px"><img src="https://static.realestateindia.com/images/icon_loc_map.png" alt=""></span>
					</p>
					<script>
					$("[data-fancybox]").fancybox({
					    iframe : {
					        css : {
					            width : '860px'
					        }
					    }
					});
					</script>
					<br />
											<div class="xxlarge mb10px">
						<div class="xxlarge ffrr mb7px dib red"><i class="fa fa-inr"></i> <span itemprop="price">85 L</span></div>
													<div class="xsmall ml15px dib">@ Rs 8366 per Sq.ft.</div>
													</div>
											<ul class="fo ac-mb10px pb10px lsn bdrb large">
											<li>
						<p class="fl w130px">Property ID: </p>
						<p class="fl mr30px">:</p>
						<p class="ofh b">REI850141</p>
						</li>
												<li>
						<p class="fl w130px">Property For</p>
						<p class="fl mr30px">:</p>
						<p class="ofh b">Sale</p>
						</li>
														<li>
								<p class="fl w130px">Society Name</p>
								<p class="fl mr30px">:</p>
								<p class="ofh b">The Westford</p>
								</li>
														<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>						
												<li class="fo">
						<p class="fl w130px">Built Up Area</p>
						<p class="fl mr30px">:</p>
						<div class="fl b">
						<script type="text/javascript">
						function convert(basetext,baseindex,baseunit){
						     if(1016 > 0 )  updateArea(basetext,baseindex,1016,'builtupArea','Y',baseunit,'DrpDownTab');   }
						</script>  
						<span id="builtupArea_span">1016</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>
						</div>
						</li>
												<li class="fo">
						<p class="fl w130px">Land / Plot Area</p>
						<p class="fl mr30px">:</p>
						<div class="fl b">
						<script type="text/javascript">
						function convert1(basetext,baseindex,baseunit){
						     if(1 > 0 )  updateArea(basetext,baseindex,1,'landArea','Y',baseunit,'DrpDownTab1'); }
						</script>  
						<span id="landArea_span">1</span>
						<span class="pr">
						<a onClick="jQuery('#landArea').show();event.stopPropagation();" class="headVr pl5px pr5px small dib vam ml5px" id="DrpDownTab1">Ares &#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">Ares</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,'Ares');">Sq.Feet</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Cent',19,'Ares');">Cent</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Sq.%20Yards',2,'Ares');">Sq. Yards</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Ares',10,'Ares');">Ares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Acre',12,'Ares');">Acres</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Sq.%20Meter',3,'Ares');">Sq. Meter</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Bigha',13,'Ares');">Bigha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Hectares',15,'Ares');">Hectares</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Guntha',9,'Ares');">Guntha</a></li>
						<li><a class="bdrB db p2px10px" href="javascript:convert1('Marla',16,'Ares');">Marla</a></li>
						</ul>
						</div>
						</span>
						<script>
						jQuery(document).ready(function(e) {
							jQuery('body').click(function(){
								jQuery('#landArea').hide();
								
							})
						});
						</script>
						</div>			
						</li>
												<li class="fo">
						<p class="fl w130px">Carpet Area</p>
						<p class="fl mr30px">:</p>
						<div class="fl b">
						<script type="text/javascript">
						function convert2(basetext,baseindex,baseunit){
						     if(960 > 0 )  updateArea(basetext,baseindex,960,'catpetArea','Y',baseunit,'DrpDownTab2');   }
						</script>  
						<span id="catpetArea_span">960</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>	
						</div>		
						</li>
											</ul>
											<form class="inquiry-form" name="frmpropertydetail" method="post" action="http://www.saikiranproperties.com/enquiry-form-10017.htm">
						<input type="hidden" name="enqtype" value="property" />
						<input type="hidden" name="subject" value="Inquiry For Property - Resale - REI850141" />
						<input type="hidden" name="property_id" value="850141" />
						</form>
						<a href="javascript:void(0);" class="submit-inquiry buttonBig xxlarge ts0 p10px20px mt10px c5px">Send Enquiry</a>
							
					</li>
					</ul>
					</div>											
					</section>
					<br /> 
											<div class="bdrB xxlarge b dif pb5px mt10px mb7px">Additional Details</div>
	                    <ul class="lsn m0px p0px wp33 lh2em">
														<li><b>Transaction :</b> Resale Property</li>
																<li><b>Bedrooms :</b> 2</li>
																<li><b>Bathrooms :</b> 2</li>
																<li><b>No. of Floors :</b> 12</li>
																<li><b>Property On Floor :</b> 5</li>
														</ul>
			            <p class="cb"></p>
			            <br />
												<div class="bdrB xxlarge b dif pb5px mt10px mb7px">Amenities</div>
	                    <ul class="lsn m0px p0px wp33 lh2em">
													<li><i class="si w24px icon-rp" title="Reserved Parking"></i> Reserved Parking</li>
														<li><i class="si w24px icon-pb" title="Power Back Up"></i> Power Back Up</li>
														<li><i class="si w24px icon-fa" title="Security"></i> Security</li>
														<li><i class="si w24px icon-lf" title="Lift"></i> Lift</li>
														<li><i class="si w24px icon-ccc" title="Club House"></i> Club House</li>
														<li><i class="si w24px icon-rain-water" title="Rain Water Harvesting"></i> Rain Water Harvesting</li>
														<li><i class="si w24px icon-intercom" title="Intercom"></i> Intercom</li>
														<li><i class="si w24px icon-ms" title="Maintenance Staff"></i> Maintenance Staff</li>
														<li><i class="si w24px icon-vastu-complaiant" title="Vastu Complaiant"></i> Vastu Complaiant</li>
													</ul>
			            <p class="cb"></p>
			        	<br>
			        							<br />
						<div class="bdrB xxlarge b dif pb5px mt10px mb7px">Property Description </div>
						<p class="aj">Property available for sale in pimple sodager at main road. Its new construction and unused flat.</p>						
											</div>
					<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				    <div class="db p20px bdr large ac">
				    <div class="dib mb10px">
					<div class="propUser bdr bdrddd vam"><i class="fa fa-user"></i></div>
					</div>
					<p class="mb5px"> Kiran Padiyar </p>
					<p class="alpha75 mb5px">  </p>
					<p> <i class="fa xxxlarge vam mr5px fa-mobile" aria-hidden="true"></i> 8805467151 </p>
					</div>
		
					<div class="column_Box mc">
					<div class="tcl bullet divider">
					<div class="h h2"><b class="plusMinus"></b>
					<p class="b dif rHead">Property by City</p>
					</div>
					<div class="ic showHide_rp">
					<div class="mt10px">
											<span class="dib p5px10px c2px headVr mr7px mb7px "><a href="http://www.saikiranproperties.com/property-in-pune.htm" class="dif" title="Property in Pune">Pune</a> <b class="alpha50 bn small">(51)</b></span>
											
					</div>
					</div>
					</div>
					</div>
					
										
					</div>
					</div>
					
												<br />
							<br />
							<section><br/>
							<div class="wrap fullFormat">	
							<div class="xxxlarge b mb30px ac">Related Properties in Pune</div>
							<div class="cf_3img mt30px">
							<ul class="lsn m0px p0px fo idv_eqheight cols_similar">						
															<li>
								<div class="bdr mb15px">
								<div class="cp" onclick="location.href='http://www.saikiranproperties.com/sell/3-bhk-flats-apartments-hinjewadi-pune_846144.htm'">
								<p class="theme2 bdr0 p2px5px small">PROPERTY ID - REI846144</p>
								<div class="picBg lh0"><img src="https://rei.wlimg.com/prop_images/1396306/846144_1-350x350.jpg"  alt="Resale"  /></div>
								<p class="ffrr b large db headHr p5px10px"><a href="http://www.saikiranproperties.com/sell/3-bhk-flats-apartments-hinjewadi-pune_846144.htm">Resale</a></p>
								<div class="p10px headVr bdr0" style="min-height:188px;">
								<p class="b"><i class="fa fa-map-marker mr5px"></i> Hinjawadi Phase 1, Pune </p>
																	<p class="mt5px b dull-text">Available property for sale at hinjewadi. Excellent view from balcony along <a href="http://www.saikiranproperties.com/sell/3-bhk-flats-apartments-hinjewadi-pune_846144.htm" title="Resale" class="dif u">Read More</a></p>
																	<div class="dt ac-dtr acac-dtc dul b mt10px">
																	<ul class="mb5px">
									<li class="dull-text">Cost </li>
									<li>: <b class="webrupee"></b> 1.11 Cr </li>
									</ul>
																		<ul class="mb5px">
									<li class="dull-text">Built Up Area </li>
									<li>: <b class="webrupee"></b> 1450 Sq.ft. </li>
									</ul>
																	<ul class="mb5px">
								<li class="dull-text">Property Type </li>
								<li>: <b class="webrupee"></b> Flats & Apartments </li>
								</ul>
																	<ul class="mb5px">
									<li class="dull-text">Bedroom </li>
									<li>: <b class="webrupee"></b> 3 BHK  </li>
									</ul>
																	</div> 
								</div>
								</div>
								<div class="bdrT p5px ac">	
								<form class="inquiry-form" name="prop_846144" id="prop_846144" method="post" action="http://www.saikiranproperties.com/enquiry-form-10017.htm">
								<input type="hidden" name="enqtype" value="property" />
								<input type="hidden" name="subject" value="Inquiry For Property - Resale - REI846144" />
								<input type="hidden" name="property_id" value="846144" />
								</form>			 
								<a href="http://www.saikiranproperties.com/sell/3-bhk-flats-apartments-hinjewadi-pune_846144.htm" class="button p5px10px c3px mt5px mb5px">View Detail</a> <a href="javascript:void(0);" class="submit-inquiry buttonBig p5px10px ml5px c3px mt5px mb5px">Send Enquiry</a></div>
								</div>
																<li>
								<div class="bdr mb15px">
								<div class="cp" onclick="location.href='http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-mamurdi-pune_861255.htm'">
								<p class="theme2 bdr0 p2px5px small">PROPERTY ID - REI861255</p>
								<div class="picBg lh0"><img src="https://rei.wlimg.com/prop_images/1396306/861255_1-350x350.jpg"  alt="2 BHK Flats & Apartments for Sale in Mamurdi, Pune"  /></div>
								<p class="ffrr b large db headHr p5px10px"><a href="http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-mamurdi-pune_861255.htm">2 BHK Flats & Apartments for Sale in Mamurdi, Pune</a></p>
								<div class="p10px headVr bdr0" style="min-height:188px;">
								<p class="b"><i class="fa fa-map-marker mr5px"></i> Mamurdi, Pune </p>
																	<p class="mt5px b dull-text">Sai Kiran Properties is proud to unveil its new venture in the Residential  <a href="http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-mamurdi-pune_861255.htm" title="2 BHK Flats & Apartments for Sale in Mamurdi, Pune" class="dif u">Read More</a></p>
																	<div class="dt ac-dtr acac-dtc dul b mt10px">
																	<ul class="mb5px">
									<li class="dull-text">Built Up Area </li>
									<li>: <b class="webrupee"></b> 570 Sq.ft. </li>
									</ul>
																	<ul class="mb5px">
								<li class="dull-text">Property Type </li>
								<li>: <b class="webrupee"></b> Flats & Apartments </li>
								</ul>
																	<ul class="mb5px">
									<li class="dull-text">Bedroom </li>
									<li>: <b class="webrupee"></b> 2 BHK  </li>
									</ul>
																	</div> 
								</div>
								</div>
								<div class="bdrT p5px ac">	
								<form class="inquiry-form" name="prop_861255" id="prop_861255" method="post" action="http://www.saikiranproperties.com/enquiry-form-10017.htm">
								<input type="hidden" name="enqtype" value="property" />
								<input type="hidden" name="subject" value="Inquiry For Property - 2 BHK Flats & Apartments for Sale in Mamurdi, Pune - REI861255" />
								<input type="hidden" name="property_id" value="861255" />
								</form>			 
								<a href="http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-mamurdi-pune_861255.htm" class="button p5px10px c3px mt5px mb5px">View Detail</a> <a href="javascript:void(0);" class="submit-inquiry buttonBig p5px10px ml5px c3px mt5px mb5px">Send Enquiry</a></div>
								</div>
																<li>
								<div class="bdr mb15px">
								<div class="cp" onclick="location.href='http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-hinjewadi-pune_844415.htm'">
								<p class="theme2 bdr0 p2px5px small">PROPERTY ID - REI844415</p>
								<div class="picBg lh0"><img src="https://rei.wlimg.com/prop_images/1396306/844415_1-350x350.jpg"  alt="2 BHK flat for sale in Ashok Meadows, Hinjewadi"  /></div>
								<p class="ffrr b large db headHr p5px10px"><a href="http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-hinjewadi-pune_844415.htm">2 BHK flat for sale in Ashok Meadows, Hinjewadi</a></p>
								<div class="p10px headVr bdr0" style="min-height:188px;">
								<p class="b"><i class="fa fa-map-marker mr5px"></i> Hinjawadi Phase 1, Pune </p>
																	<p class="mt5px b dull-text">Description: A very good 2 bhk flat for sale in Ashok Meadows Hinjewadi, Pu <a href="http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-hinjewadi-pune_844415.htm" title="2 BHK flat for sale in Ashok Meadows, Hinjewadi" class="dif u">Read More</a></p>
																	<div class="dt ac-dtr acac-dtc dul b mt10px">
																	<ul class="mb5px">
									<li class="dull-text">Cost </li>
									<li>: <b class="webrupee"></b> 90 L </li>
									</ul>
																		<ul class="mb5px">
									<li class="dull-text">Built Up Area </li>
									<li>: <b class="webrupee"></b> 1340 Sq.ft. </li>
									</ul>
																	<ul class="mb5px">
								<li class="dull-text">Property Type </li>
								<li>: <b class="webrupee"></b> Flats & Apartments </li>
								</ul>
																	<ul class="mb5px">
									<li class="dull-text">Bedroom </li>
									<li>: <b class="webrupee"></b> 2 BHK  </li>
									</ul>
																	</div> 
								</div>
								</div>
								<div class="bdrT p5px ac">	
								<form class="inquiry-form" name="prop_844415" id="prop_844415" method="post" action="http://www.saikiranproperties.com/enquiry-form-10017.htm">
								<input type="hidden" name="enqtype" value="property" />
								<input type="hidden" name="subject" value="Inquiry For Property - 2 BHK flat for sale in Ashok Meadows, Hinjewadi - REI844415" />
								<input type="hidden" name="property_id" value="844415" />
								</form>			 
								<a href="http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-hinjewadi-pune_844415.htm" class="button p5px10px c3px mt5px mb5px">View Detail</a> <a href="javascript:void(0);" class="submit-inquiry buttonBig p5px10px ml5px c3px mt5px mb5px">Send Enquiry</a></div>
								</div>
																<li>
								<div class="bdr mb15px">
								<div class="cp" onclick="location.href='http://www.saikiranproperties.com/sell/3-bhk-individual-houses-villas-aundh-pune_876460.htm'">
								<p class="theme2 bdr0 p2px5px small">PROPERTY ID - REI876460</p>
								<div class="picBg lh0"><img src="https://rei.wlimg.com/prop_images/1396306/876460_1-350x350.jpg"  alt="Resale"  /></div>
								<p class="ffrr b large db headHr p5px10px"><a href="http://www.saikiranproperties.com/sell/3-bhk-individual-houses-villas-aundh-pune_876460.htm">Resale</a></p>
								<div class="p10px headVr bdr0" style="min-height:188px;">
								<p class="b"><i class="fa fa-map-marker mr5px"></i> Aundh, Pune </p>
																	<p class="mt5px b dull-text">Available bungalow for sale in aundh. <a href="http://www.saikiranproperties.com/sell/3-bhk-individual-houses-villas-aundh-pune_876460.htm" title="Resale" class="dif u">Read More</a></p>
																	<div class="dt ac-dtr acac-dtc dul b mt10px">
																	<ul class="mb5px">
									<li class="dull-text">Cost </li>
									<li>: <b class="webrupee"></b> 1.70 Cr </li>
									</ul>
																		<ul class="mb5px">
									<li class="dull-text">Built Up Area </li>
									<li>: <b class="webrupee"></b> 1900 Sq.ft. </li>
									</ul>
																	<ul class="mb5px">
								<li class="dull-text">Property Type </li>
								<li>: <b class="webrupee"></b> Individual Houses / Villas </li>
								</ul>
																	<ul class="mb5px">
									<li class="dull-text">Bedroom </li>
									<li>: <b class="webrupee"></b> 3 BHK  </li>
									</ul>
																	</div> 
								</div>
								</div>
								<div class="bdrT p5px ac">	
								<form class="inquiry-form" name="prop_876460" id="prop_876460" method="post" action="http://www.saikiranproperties.com/enquiry-form-10017.htm">
								<input type="hidden" name="enqtype" value="property" />
								<input type="hidden" name="subject" value="Inquiry For Property - Resale - REI876460" />
								<input type="hidden" name="property_id" value="876460" />
								</form>			 
								<a href="http://www.saikiranproperties.com/sell/3-bhk-individual-houses-villas-aundh-pune_876460.htm" class="button p5px10px c3px mt5px mb5px">View Detail</a> <a href="javascript:void(0);" class="submit-inquiry buttonBig p5px10px ml5px c3px mt5px mb5px">Send Enquiry</a></div>
								</div>
																<li>
								<div class="bdr mb15px">
								<div class="cp" onclick="location.href='http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-hinjawadi-pune_850153.htm'">
								<p class="theme2 bdr0 p2px5px small">PROPERTY ID - REI850153</p>
								<div class="picBg lh0"><img src="https://rei.wlimg.com/prop_images/1396306/850153_1-350x350.jpg"  alt="Resale"  /></div>
								<p class="ffrr b large db headHr p5px10px"><a href="http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-hinjawadi-pune_850153.htm">Resale</a></p>
								<div class="p10px headVr bdr0" style="min-height:188px;">
								<p class="b"><i class="fa fa-map-marker mr5px"></i> Hinjawadi Phase 1, Pune </p>
																	<p class="mt5px b dull-text">Resale property 2 BHK available for sale. Its a main road society in very p <a href="http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-hinjawadi-pune_850153.htm" title="Resale" class="dif u">Read More</a></p>
																	<div class="dt ac-dtr acac-dtc dul b mt10px">
																	<ul class="mb5px">
									<li class="dull-text">Cost </li>
									<li>: <b class="webrupee"></b> 85.85 L </li>
									</ul>
																		<ul class="mb5px">
									<li class="dull-text">Built Up Area </li>
									<li>: <b class="webrupee"></b> 1100 Sq.ft. </li>
									</ul>
																	<ul class="mb5px">
								<li class="dull-text">Property Type </li>
								<li>: <b class="webrupee"></b> Flats & Apartments </li>
								</ul>
																	<ul class="mb5px">
									<li class="dull-text">Bedroom </li>
									<li>: <b class="webrupee"></b> 2 BHK  </li>
									</ul>
																	</div> 
								</div>
								</div>
								<div class="bdrT p5px ac">	
								<form class="inquiry-form" name="prop_850153" id="prop_850153" method="post" action="http://www.saikiranproperties.com/enquiry-form-10017.htm">
								<input type="hidden" name="enqtype" value="property" />
								<input type="hidden" name="subject" value="Inquiry For Property - Resale - REI850153" />
								<input type="hidden" name="property_id" value="850153" />
								</form>			 
								<a href="http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-hinjawadi-pune_850153.htm" class="button p5px10px c3px mt5px mb5px">View Detail</a> <a href="javascript:void(0);" class="submit-inquiry buttonBig p5px10px ml5px c3px mt5px mb5px">Send Enquiry</a></div>
								</div>
																<li>
								<div class="bdr mb15px">
								<div class="cp" onclick="location.href='http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-wakad-pune_844406.htm'">
								<p class="theme2 bdr0 p2px5px small">PROPERTY ID - REI844406</p>
								<div class="picBg lh0"><img src="https://rei.wlimg.com/prop_images/1396306/844406_1-350x350.jpg"  alt="2 BHK Flats & Apartments for Sale in Pune"  /></div>
								<p class="ffrr b large db headHr p5px10px"><a href="http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-wakad-pune_844406.htm">2 BHK Flats & Apartments for Sale in Pune</a></p>
								<div class="p10px headVr bdr0" style="min-height:188px;">
								<p class="b"><i class="fa fa-map-marker mr5px"></i> Pimpri Chinchwad, Pune </p>
																	<p class="mt5px b dull-text">2BHK unused flat for sale in Apostrophe, Wakad, Pune.  It\'s Pent house fla <a href="http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-wakad-pune_844406.htm" title="2 BHK Flats & Apartments for Sale in Pune" class="dif u">Read More</a></p>
																	<div class="dt ac-dtr acac-dtc dul b mt10px">
																	<ul class="mb5px">
									<li class="dull-text">Cost </li>
									<li>: <b class="webrupee"></b> 95.95 L </li>
									</ul>
																		<ul class="mb5px">
									<li class="dull-text">Built Up Area </li>
									<li>: <b class="webrupee"></b> 2400 Sq.ft. </li>
									</ul>
																	<ul class="mb5px">
								<li class="dull-text">Property Type </li>
								<li>: <b class="webrupee"></b> Flats & Apartments </li>
								</ul>
																	<ul class="mb5px">
									<li class="dull-text">Bedroom </li>
									<li>: <b class="webrupee"></b> 2 BHK  </li>
									</ul>
																	</div> 
								</div>
								</div>
								<div class="bdrT p5px ac">	
								<form class="inquiry-form" name="prop_844406" id="prop_844406" method="post" action="http://www.saikiranproperties.com/enquiry-form-10017.htm">
								<input type="hidden" name="enqtype" value="property" />
								<input type="hidden" name="subject" value="Inquiry For Property - 2 BHK Flats & Apartments for Sale in Pune - REI844406" />
								<input type="hidden" name="property_id" value="844406" />
								</form>			 
								<a href="http://www.saikiranproperties.com/sell/2-bhk-flats-apartments-wakad-pune_844406.htm" class="button p5px10px c3px mt5px mb5px">View Detail</a> <a href="javascript:void(0);" class="submit-inquiry buttonBig p5px10px ml5px c3px mt5px mb5px">Send Enquiry</a></div>
								</div>
												
							</ul>
							</div>
							</div> 
							</section> 
												</div>
					</section>
									<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:58:"2 BHK Flats & Apartments for Sale in Pimple Saudagar, Pune";i:2;s:288:"Flats & Apartments having 2 Bedrooms, 2 Bath Rooms, 12 Total Floor, 1016 Sq.ft. in Pimple Saudagar, Pune, Maharashtra Pimple Saudagar, Pune, Maharashtra. Flats & Apartments Property for Sale in Pimple Saudagar, Pune, Maharashtra Pimple Saudagar, Pune, Maharashtra at Sai Kiran Properties.";i:3;s:288:"Flats & Apartments having 2 Bedrooms, 2 Bath Rooms, 12 Total Floor, 1016 Sq.ft. in Pimple Saudagar, Pune, Maharashtra Pimple Saudagar, Pune, Maharashtra. Flats & Apartments Property for Sale in Pimple Saudagar, Pune, Maharashtra Pimple Saudagar, Pune, Maharashtra at Sai Kiran Properties.";}