Commit 86c43b2c authored by anarvariya's avatar anarvariya

Commited by radheshyam[30/06/2015][According to piyush sir merge all data in cvs at base office]


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@28898 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 361b7c6d
ad_from_date = From Date
ad_to_date = To Date
MFR_DATE = From Date
MTO_DATE = To Date
from_date = From Date
from_date = To Date
to_date = To Date
date_from = From Date
date_to = To Date
m_fr_date = From Date
m_to_date = To Date
lve_tblno = Leave Table No
lve_tblno = Leave Table No
date_fr = From Date
date_to = To Date
ad_ret1 = From Date
ad_ret2 = To Date
mfr_date = From Date
mto_date = To Date
frdate = From Date
todate = To Date
as_site_code = Site Code
site_code = Site Code
as_site_code = Site Code
site_code = Site Code
This diff is collapsed.
This diff is collapsed.
/**
* PURPOSE : Local Interface
* AUTHOR : Kunal Mandhre
* Date : 11/10/2012
*/
package ibase.webitm.ejb.adm;
import ibase.webitm.utility.ITMException;
import java.rmi.RemoteException;
import java.sql.Connection;
@javax.ejb.Local
public interface AdvanceAddPosLocal
{
public String postSave()throws RemoteException,ITMException;
public String postSave( String tranId, String editFlag, String xtraParams, Connection conn ) throws RemoteException,ITMException;
}
\ No newline at end of file
/**
* PURPOSE : Remote Interface
* AUTHOR : Kunal Mandhre
* Date : 10/10/2012
*/
package ibase.webitm.ejb.adm;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.*;
import java.rmi.RemoteException;
import java.sql.Connection;
@javax.ejb.Remote
public interface AdvanceAddPosRemote
{
public String postSave()throws RemoteException,ITMException;
public String postSave( String tranId, String editFlag, String xtraParams, Connection conn ) throws RemoteException,ITMException;
}
/**
* PURPOSE : Post Save to create loans against adhoc advance given to employee
* AUTHOR : Abhishek Jaiswal
* DATE : 20/02/2015
*/
package ibase.webitm.ejb.adm;
import ibase.webitm.ejb.*;
import ibase.webitm.utility.GenericUtility;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.ITMDBAccessEJB;
import ibase.webitm.ejb.adm.AdmCommon;
import ibase.webitm.ejb.dis.DistCommon;
import ibase.webitm.ejb.fin.FinCommon;
import ibase.webitm.ejb.sys.CreateRCPXML;
import ibase.webitm.utility.TransIDGenerator;
import ibase.utility.CommonConstants;
import java.rmi.RemoteException;
import java.sql.*;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.HashMap;
import org.w3c.dom.*;
@javax.ejb.Stateless
public class AttdDailyPos extends ValidatorEJB implements AttdDailyPosLocal, AttdDailyPosRemote
{
public String postSave()throws RemoteException,ITMException
{
return "";
}
public String postSave(String xmlString, String editFlag, String xtraParams, Connection conn ) throws RemoteException,ITMException
{
String empCode = "";
String loginEmpCode = "";
String paySite = "";
String errString = "";
String sql = "";
String errCode = "";
String userId = "";
String chgTerm = "";
String attdDateStr = "";
String prevInTime = "";
String newInTime = "";
String prevOutTime = "";
String newOutTime = "";
String punchStr = "";
int attdUpdCnt = 0;
Timestamp attdDate = null ;
Timestamp currDate = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
boolean toUpdate = false;
ITMDBAccessEJB itmDBAccess = new ITMDBAccessEJB();
AdmCommon admCommon = new AdmCommon();
GenericUtility genericUtility = GenericUtility.getInstance();
SimpleDateFormat sdfAppl = null;
Document headerDom = null;
try
{
System.out.println("XML String :"+xmlString);
headerDom = genericUtility.parseString(xmlString);
currDate = new java.sql.Timestamp(System.currentTimeMillis());
userId = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginCode");
chgTerm = genericUtility.getValueFromXTRA_PARAMS( xtraParams, "chgTerm" );
loginEmpCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginEmpCode");
empCode = checkNullAndTrim(genericUtility.getColumnValue("emp_code",headerDom));
attdDateStr = checkNullAndTrim(genericUtility.getColumnValue("attd_date",headerDom));
prevInTime = checkNullAndTrim(genericUtility.getColumnValue("prev_in_time",headerDom));
newInTime = checkNullAndTrim(genericUtility.getColumnValue("in_time",headerDom));
prevOutTime = checkNullAndTrim(genericUtility.getColumnValue("prev_out_time",headerDom));
newOutTime = checkNullAndTrim(genericUtility.getColumnValue("out_time",headerDom));
punchStr = checkNullAndTrim(genericUtility.getColumnValue("punch_str",headerDom));
if (!prevInTime.equalsIgnoreCase(newInTime))
{
punchStr = "*-" + newInTime + "," + punchStr;
toUpdate = true;
}
if (!prevOutTime.equalsIgnoreCase(newOutTime))
{
if (punchStr.length() > 0 && punchStr.substring(punchStr.length()-1) != ",")
{
punchStr = punchStr + ",";
}
punchStr = punchStr + "*-" + newOutTime;
toUpdate = true;
}
if (toUpdate)
{
attdDateStr = genericUtility.getValidDateString(attdDateStr, genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat());
attdDate = java.sql.Timestamp.valueOf(attdDateStr + " 00:00:00");
sql = "UPDATE ATTENDANCE_DAY SET PUNCH_STR = ? WHERE EMP_CODE = ? AND ATTD_DATE = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1 , punchStr);
pstmt.setString(2 , empCode);
pstmt.setTimestamp(3 , attdDate);
attdUpdCnt = pstmt.executeUpdate();
System.out.println("AttdDailyPos - ATTENDANCE_DAY UPDATE COUNT [" + attdUpdCnt + "]");
}
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
catch(Exception e)
{
try
{
System.out.println("Exception IN AttdDailyPos::::"+e.getMessage());
e.printStackTrace();
throw new ITMException(e);
}
catch (Exception e1)
{
e1.printStackTrace();
throw new ITMException(e1);
}
}
finally
{
try
{
if(errString != null && errString.trim().length() > 0)
{
{
conn.rollback();
}
}
if( rs != null )
{
rs.close();
rs = null;
}
if( pstmt != null )
{
pstmt.close();
pstmt = null;
}
}
catch(Exception e)
{
System.out.println("Exception "+e.getMessage());
e.printStackTrace();
throw new ITMException(e);
}
}
return errString;
}
private String checkNull( String inputVal )
{
if ( inputVal == null )
{
inputVal = "";
}
return inputVal;
}
private String checkNullAndTrim( String inputVal )
{
if ( inputVal == null )
{
inputVal = "";
}
return inputVal.trim();
}
}
/**
* PURPOSE : Local Interface
* AUTHOR : Kunal Mandhre
* Date : 11/10/2012
*/
package ibase.webitm.ejb.adm;
import ibase.webitm.utility.ITMException;
import java.rmi.RemoteException;
import java.sql.Connection;
@javax.ejb.Local
public interface AttdDailyPosLocal
{
public String postSave()throws RemoteException,ITMException;
public String postSave( String tranId, String editFlag, String xtraParams, Connection conn ) throws RemoteException,ITMException;
}
\ No newline at end of file
/**
* PURPOSE : Remote Interface
* AUTHOR : Kunal Mandhre
* Date : 10/10/2012
*/
package ibase.webitm.ejb.adm;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.*;
import java.rmi.RemoteException;
import java.sql.Connection;
@javax.ejb.Remote
public interface AttdDailyPosRemote
{
public String postSave()throws RemoteException,ITMException;
public String postSave( String tranId, String editFlag, String xtraParams, Connection conn ) throws RemoteException,ITMException;
}
......@@ -325,7 +325,13 @@ public class AttdProcess extends ProcessEJB implements AttdProcessLocal ,AttdPr
System.out.println("Commit transaction**********");
if(conn!=null)
conn.commit();
errString = "";
// Modified by Piyush on 19/03/2015 [To show message in RCP].Start
// errString = "";
if( xtraParams.indexOf("user_lang=") == -1)
{
errString = "";
}
// Modified by Piyush on 19/03/2015 [To show message in RCP].Start
}
else{
//System.out.println("Not Successful************** ");
......@@ -546,7 +552,9 @@ public class AttdProcess extends ProcessEJB implements AttdProcessLocal ,AttdPr
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm"); //Added by jaimin on 13/06/2008 (AD89SUN013)
tranId = getExistTranId(empCode,procDate,conn); // gets Tran_id from empotime - Jiten
if(tranId == null)
tranId = getTranId(conn);
// Modified by Piyush on 19/03/2015 [To pass required parameters to generate tran id as per transetup. Issues resolved during RCP migration]
// tranId = getTranId(conn);
tranId = getTranId(empCode,procDate,conn);
else
isExist=true;
......@@ -1602,7 +1610,9 @@ public class AttdProcess extends ProcessEJB implements AttdProcessLocal ,AttdPr
tranId = getExistTranId(empCode,stDate,conn); // gets Tran_id from empotime - Jiten
System.out.println("tranId from getExistTranId :::: " + tranId); //SOP BY ALKA 01/08/07
if(tranId == null)
tranId = getTranId(conn);
// Modified by Piyush on 19/03/2015 [To pass required parameters to generate tran id as per transetup. Issues resolved during RCP migration]
// tranId = getTranId(conn);
tranId = getTranId(empCode,stDate,conn);
else
isExist = true;
System.out.println("stDate : "+stDate);
......@@ -2016,6 +2026,88 @@ private static int getDayOfWeek(String str)
return dno;
}//end of getDayOfWeek .
// Modified by Piyush on 19/03/2015 [To generated tran id as per transetup].Start
private String getTranId(String empCode , Timestamp otDate , Connection conn )
{
String tranSer = "";
String keyString = "";
String keyCol = "";
String keyStringQuery = "";
String xmlValues="";
Statement crstmt = null;
String tranId="";
String workSite="";
String empSite="";
String paySite="";
try
{
SimpleDateFormat sdf1 = new SimpleDateFormat(genericUtility.getApplDateFormat());
String otDateStr = sdf1.format(otDate);
System.out.println("getTranId otDate :: " + otDate);
System.out.println("getTranId otDateStr :: " + otDateStr);
keyStringQuery = "SELECT WORK_SITE, EMP_SITE, PAY_SITE "
+ "FROM EMPLOYEE "
+ "WHERE EMP_CODE = '" + empCode + "'";
System.out.println("Employee fetch site sql from getTranId :::"+keyStringQuery);
crstmt = conn.createStatement();
rsn20 = crstmt.executeQuery(keyStringQuery);
if (rsn20.next())
{
workSite = rsn20.getString("WORK_SITE");
empSite = rsn20.getString("EMP_SITE");
paySite = rsn20.getString("PAY_SITE");
}
rsn20.close();
rsn20 = null;
crstmt.close();
crstmt=null;
keyStringQuery = "SELECT KEY_STRING, TRAN_ID_COL, REF_SER FROM TRANSETUP WHERE TRAN_WINDOW = 'w_emp_overtime'";
System.out.println("keyStringQuery::"+keyStringQuery);
crstmt = conn.createStatement();
rsn20 = crstmt.executeQuery(keyStringQuery);
if (rsn20.next())
{
keyString = rsn20.getString(1);
keyCol = rsn20.getString(2);
tranSer = rsn20.getString(3);
}
crstmt.close();
crstmt=null;
rsn20.close();
rsn20=null;
xmlValues = "";
xmlValues ="<?xml version=\"1.0\" encoding=\"utf-8\"?><Root>";
xmlValues = xmlValues + "<Header></Header>";
xmlValues = xmlValues + "<Detail1>";
xmlValues = xmlValues + "<site_code>" + workSite + "</site_code>";
xmlValues = xmlValues + "<work_site>" + workSite + "</work_site>";
xmlValues = xmlValues + "<emp_site>" + empSite + "</emp_site>";
xmlValues = xmlValues + "<pay_site>" + paySite + "</pay_site>";
xmlValues = xmlValues + "<ot_date>" + otDateStr + "</ot_date>";
xmlValues = xmlValues +"</Detail1></Root>";
System.out.println("xmlValues :["+xmlValues+"]");
TransIDGenerator tg = new TransIDGenerator(xmlValues, "SUN", CommonConstants.DB_NAME);
tranId = tg.generateTranSeqID(tranSer, keyCol, keyString, conn);
}
catch(SQLException se)
{
System.out.println("SQLException :Generating id[failed] : " + "\n" +se.getMessage());
}
catch(Exception ex)
{
System.out.println("Exception8:Generating id [failed]:" + "\n" +ex.getMessage());
}
return tranId;
}//end of getTranId function .
// Modified by Piyush on 19/03/2015 [To generated tran id as per transetup].End
private String getTranId(Connection conn )
{
String tranSer = "";
......
......@@ -91,18 +91,18 @@ public class AttendancePrc extends ValidatorEJB implements AttendancePrcLocal,A
Node childNode = null;
System.out.println("itemChanged called");
String loginSite = "";
String empCode = null;
String siteCode = null;
String procGroup = null;
String frProcGr = null;
String prdCode = null;
String pdCode = null;
String prdCodeDescr = null;
String todate = null;
String dateTo = null;
String toSiteCodeDescr = null;
String frSiteCodeDescr = null;
String pdDescr = null;
String empCode = "";
String siteCode = "";
String procGroup = "";
String frProcGr = "";
String prdCode = "";
String pdCode = "";
String prdCodeDescr = "";
String todate = "";
String dateTo = "";
String toSiteCodeDescr = "";
String frSiteCodeDescr = "";
String pdDescr = "";
StringBuffer valueXmlString = null;
int currentFormNo = 0;
......@@ -199,9 +199,20 @@ public class AttendancePrc extends ValidatorEJB implements AttendancePrcLocal,A
}
stmt.close();
rs.close();
// Modified by Piyush on 19/03/2015 [During RCP Migration].Start
String cutOffDate = "";
cutOffDate = todate;
if( xtraParams.indexOf("user_lang=") != -1)
{
cutOffDate = genericUtility.getValidDateString(todate, genericUtility.getDBDateFormat() , genericUtility.getApplDateFormat());
}
valueXmlString.append("<fr_prd_descr><![CDATA[").append(prdCodeDescr).append("]]></fr_prd_descr>\r\n");
valueXmlString.append("<cutoff_date><![CDATA[").append(todate).append("]]></cutoff_date>\r\n");
valueXmlString.append("<no_days protect=\"1\"></no_days>\r\n");
//valueXmlString.append("<cutoff_date><![CDATA[").append(todate).append("]]></cutoff_date>\r\n");
valueXmlString.append("<cutoff_date><![CDATA[").append(cutOffDate).append("]]></cutoff_date>\r\n");
//valueXmlString.append("<no_days protect=\"1\"></no_days>\r\n");
valueXmlString.append("<no_days protect=\"1\"><![CDATA[").append("0").append("]]></no_days>\r\n");
// Modified by Piyush on 19/03/2015 [During RCP Migration].End
}
else if(currentColumn.trim().equals("emp_code__fr"))
{
......
......@@ -11,8 +11,6 @@ import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.text.SimpleDateFormat;
import java.sql.Timestamp;
import org.jboss.ejb3.statistics.InvocationStatistics.TimeStatistic;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
......
......@@ -33,6 +33,7 @@ public class EmpAdPrs extends ValidatorEJB implements EmpAdPrsLocal,EmpAdPrsRemo
public void ejbPassivate()
{
}*/
public String preSaveRec() throws RemoteException,ITMException
{
return "";
......
This diff is collapsed.
package ibase.webitm.ejb.adm;
import java.rmi.RemoteException;
import ibase.webitm.ejb.*;
import ibase.webitm.utility.ITMException;
@javax.ejb.Local
public interface EmpAddressInfoLocal extends ValidatorLocal
{
public String wfValData() throws RemoteException,ITMException;
public String wfValData(String xmlString, String xmlString1, String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(String xmlString, String xmlString1, String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
}
\ No newline at end of file
package ibase.webitm.ejb.adm;
import java.rmi.RemoteException;
import ibase.webitm.ejb.*;
import ibase.webitm.utility.ITMException;
@javax.ejb.Remote
public interface EmpAddressInfoRemote extends ValidatorRemote
{
public String wfValData() throws RemoteException,ITMException;
public String wfValData(String xmlString, String xmlString1, String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(String xmlString, String xmlString1, String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
}
This diff is collapsed.
package ibase.webitm.ejb.adm;
import ibase.webitm.ejb.*;
import java.rmi.RemoteException;
import java.sql.Connection;
import ibase.webitm.utility.ITMException;
@javax.ejb.Local
public interface EmpBasicInfoPosLocal extends ValidatorLocal//, EJBObject
{
public String postSave()throws RemoteException,ITMException;
public String postSave( String domString, String editFlag, String xtraParams, Connection conn ) throws RemoteException,ITMException;
}
\ No newline at end of file
package ibase.webitm.ejb.adm;
import ibase.webitm.ejb.*;
import java.rmi.RemoteException;
import java.sql.Connection;
import ibase.webitm.utility.ITMException;
@javax.ejb.Remote
public interface EmpBasicInfoPosRemote extends ValidatorRemote//, EJBObject
{
public String postSave()throws RemoteException,ITMException;
public String postSave( String domString, String editFlag, String xtraParams, Connection conn ) throws RemoteException,ITMException;
}
\ No newline at end of file
This diff is collapsed.
package ibase.webitm.ejb.adm;
import ibase.webitm.ejb.*;
import java.rmi.RemoteException;
import java.sql.Connection;
import ibase.webitm.utility.ITMException;
@javax.ejb.Local
public interface EmpCompletePrsLocal extends ValidatorLocal//, EJBObject
{
public String preSave()throws RemoteException,ITMException;
public String preSave( String domString, String editFlag, String xtraParams, Connection conn ) throws RemoteException,ITMException;
}
\ No newline at end of file
package ibase.webitm.ejb.adm;
import ibase.webitm.ejb.*;
import java.rmi.RemoteException;
import java.sql.Connection;
import ibase.webitm.utility.ITMException;
@javax.ejb.Remote
public interface EmpCompletePrsRemote extends ValidatorRemote//, EJBObject
{
public String preSave()throws RemoteException,ITMException;
public String preSave( String domString, String editFlag, String xtraParams, Connection conn ) throws RemoteException,ITMException;
}
\ No newline at end of file
......@@ -67,7 +67,7 @@ public class EmpITDeclMultiPrc extends ProcessEJB implements EmpITDeclMultiPrcLo
{
Document headerDom = null;
Document detailDom = null;
System.out.println("windowName::::::::::::: Declaration multi"+ windowName);
System.out.println("windowName:::::::::::::;"+ windowName);
String rtrStr ="";
try
{
......@@ -123,7 +123,6 @@ public class EmpITDeclMultiPrc extends ProcessEJB implements EmpITDeclMultiPrcLo
StringBuffer retTabSepStrBuff = new StringBuffer();
AdmCommon admCommon = new AdmCommon();
HashMap empAllDednMap = new HashMap();
System.out.println("view data called: before try");
try
{
ConnDriver connDriver = new ConnDriver();
......@@ -135,7 +134,6 @@ public class EmpITDeclMultiPrc extends ProcessEJB implements EmpITDeclMultiPrcLo
}
try
{
System.out.println("view data called:");
empCode = genericUtility.getColumnValue("emp_code",headerDom);
acctPrd = genericUtility.getColumnValue("acct_prd",headerDom);
chgUser = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"userId");
......@@ -345,7 +343,6 @@ public class EmpITDeclMultiPrc extends ProcessEJB implements EmpITDeclMultiPrcLo
try
{
System.out.println("Closing Connection..............");
System.out.println("iam inside declaration getdate in finally");
retTabSepStrBuff = null;
if (rs != null)
{
......@@ -388,11 +385,8 @@ public class EmpITDeclMultiPrc extends ProcessEJB implements EmpITDeclMultiPrcLo
String retStr = "";
Document detailDom = null;
Document headerDom = null;
System.out.println("below genericUtility--------------->>>>>>>>>declaration");
try
{
System.out.println("Process Method xmlString = "+xmlString);
System.out.println("Process Method xmlString22 = "+xmlString2);
try
{
if(xmlString != null && xmlString.trim().length()!=0)
{
headerDom = genericUtility.parseString(xmlString);
......@@ -462,7 +456,7 @@ public class EmpITDeclMultiPrc extends ProcessEJB implements EmpITDeclMultiPrcLo
PreparedStatement pstmt = null;
Statement stmt = null;
String errString = "";
System.out.println("executing process method of declaration method ++++++");
while (true)
{
try
......
......@@ -5,13 +5,12 @@ import ibase.webitm.ejb.ProcessLocal;
import java.rmi.RemoteException;
//import javax.ejb.EJBObject;
import org.w3c.dom.*;
import javax.ejb.Local; // added for ejb3
@javax.ejb.Local// added for ejb3
public interface EmpITDeclMultiPrcLocal extends ProcessLocal //, EJBObject
@Local // added for ejb3
public interface EmpITDeclMultiPrcLocal extends ibase.webitm.ejb.ProcessLocal //, EJBObject
{
public String process(String xmlString, String xmlString2, String objcontext, String xtraParams) throws RemoteException,ITMException;
public String process(Document headerDom, Document detailDom, String objcontext, String xtraParams) throws RemoteException,ITMException;
public String process() throws RemoteException,ITMException;
public String process(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException,ITMException;
public String getData(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException,ITMException;
}
......@@ -5,13 +5,12 @@ import ibase.webitm.ejb.ProcessRemote;
import java.rmi.RemoteException;
//import javax.ejb.EJBObject;
import org.w3c.dom.*;
import javax.ejb.Remote; // added for ejb3
@javax.ejb.Remote // added for ejb3
public interface EmpITDeclMultiPrcRemote extends ProcessRemote //, EJBObject
@Remote // added for ejb3
public interface EmpITDeclMultiPrcRemote extends ibase.webitm.ejb.ProcessRemote //, EJBObject
{
public String process(String xmlString, String xmlString2, String objcontext, String xtraParams) throws RemoteException,ITMException;
public String process(Document headerDom, Document detailDom, String objcontext, String xtraParams) throws RemoteException,ITMException;
public String process() throws RemoteException,ITMException;
public String process(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException,ITMException;
public String getData(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException,ITMException;
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment