From a886e1576fd1f45db37ed84b3c8b61aea4cdd4b1 Mon Sep 17 00:00:00 2001
From: 游畅 <youchang@prec-tech.com>
Date: 星期五, 07 四月 2023 09:55:11 +0800
Subject: [PATCH] 20230407招标项目同步询价的中标信息

---
 force-app/main/default/classes/UpdateTenderInformationBatch.cls |  585 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 562 insertions(+), 23 deletions(-)

diff --git a/force-app/main/default/classes/UpdateTenderInformationBatch.cls b/force-app/main/default/classes/UpdateTenderInformationBatch.cls
index 43a4a12..304e952 100644
--- a/force-app/main/default/classes/UpdateTenderInformationBatch.cls
+++ b/force-app/main/default/classes/UpdateTenderInformationBatch.cls
@@ -54,15 +54,19 @@
 
     global Database.QueryLocator start(Database.BatchableContext bc) {
         String query = 'SELECT Id,IsBid__c,NotBidApprovalStatus__c,IsReactionOpp__c,Hospital__c,Hospital1__c,Hospital2__c,Hospital3__c,Hospital4__c, ';
-               query += 'Hospital__r.DepartmentChanges__c,Hospital1__r.DepartmentChanges__c,Hospital2__r.DepartmentChanges__c,Hospital3__r.DepartmentChanges__c,Hospital4__r.DepartmentChanges__c ';
+               query += 'Hospital__r.Assume_Change__c,Hospital1__r.Assume_Change__c,Hospital2__r.Assume_Change__c,Hospital3__r.Assume_Change__c,Hospital4__r.Assume_Change__c ';
                query += 'FROM Tender_information__c ';
             if(IsOnlyTrue){               
                query += 'WHERE  ((IsReactionOpp__c = true ) '; 
                //2021-07-29 mzy  update 褰撳尰闄㈠彂鐢熷彉鍖�/鎷涙姇鏍囬」鐩甇CSM鐪佸彂鐢熷彉鍖栨椂,绌烘洿鏂颁竴涓嬫嫑鎶曟爣 start
-               query += 'OR (BiddingOCSMAdministration__c = true) OR (Hospital__r.DepartmentChanges__c = true) '; 
-               query += 'OR (Hospital1__r.DepartmentChanges__c = true) OR (Hospital2__r.DepartmentChanges__c = true) '; 
-               query += 'OR (Hospital3__r.DepartmentChanges__c = true) OR (Hospital4__r.DepartmentChanges__c = true) )'; 
+               // 2022-04-08 ssm SWAG-CC58ME 澧炲姞鎵�鏈変汉鏃犳晥鐨勫垽鏂� start 
+               query += 'OR (Owner.IsActive = false) ';
+               // 2022-04-08 ssm SWAG-CC58ME end
+               query += 'OR (BiddingOCSMAdministration__c = true) OR (Hospital__r.Assume_Change__c = true) '; 
+               query += 'OR (Hospital1__r.Assume_Change__c = true) OR (Hospital2__r.Assume_Change__c = true) '; 
+               query += 'OR (Hospital3__r.Assume_Change__c = true) OR (Hospital4__r.Assume_Change__c = true) )'; 
                //2021-07-29  mzy update 褰撳尰闄㈠彂鐢熷彉鍖�/鎷涙姇鏍囬」鐩甇CSM鐪佸彂鐢熷彉鍖栨椂,绌烘洿鏂颁竴涓嬫嫑鎶曟爣 end
+               // DepartmentChanges__c 鍏ㄩ儴鎹㈡垚 Assume_Change__c 
             }   
             if(String.isNotBlank(this.tempTenderId)){
                 if(IsOnlyTrue){
@@ -111,6 +115,7 @@
             //2021-07-29  mzy  update  褰撳尰闄㈠彂鐢熷彉鍖�/鎷涙姇鏍囬」鐩甇CSM鐪佸彂鐢熷彉鍖栨椂,绌烘洿鏂颁竴涓嬫嫑鎶曟爣   end
         }
         //2021-07-29  mzy  update  绌烘洿鏂板け璐ョ殑璇濅笉娓呯┖鍖婚櫌鐨勬爣璇�  start
+        // System.debug('EmptyUpdateTenderList: ' + EmptyUpdateTenderList);
         if(EmptyUpdateTenderList.size()>0){
             //绌烘洿鏂版嫑鎶曟爣
             // fxk 2021/9/28 Star
@@ -127,19 +132,19 @@
                     String faildTenderId = String.valueOf(EmptyUpdateTenderList.get(i).id).substring(0,15);
                     Tender_information__c  faildtender = EmptyUpdateTenderMap.get(faildTenderId);
 
-                    if(faildtender.Hospital__c != null && faildtender.Hospital__r.DepartmentChanges__c == true){                        
+                    if(faildtender.Hospital__c != null && faildtender.Hospital__r.Assume_Change__c == true){                        
                         faildHospIdSet.add(faildtender.Hospital__c);
                     }
-                    if(faildtender.Hospital1__c != null && faildtender.Hospital1__r.DepartmentChanges__c == true){                        
+                    if(faildtender.Hospital1__c != null && faildtender.Hospital1__r.Assume_Change__c == true){                        
                         faildHospIdSet.add(faildtender.Hospital1__c);
                     }
-                    if(faildtender.Hospital2__c != null&& faildtender.Hospital2__r.DepartmentChanges__c == true){                        
+                    if(faildtender.Hospital2__c != null&& faildtender.Hospital2__r.Assume_Change__c == true){                        
                         faildHospIdSet.add(faildtender.Hospital2__c);
                     }
-                    if(faildtender.Hospital3__c != null&& faildtender.Hospital3__r.DepartmentChanges__c == true){                        
+                    if(faildtender.Hospital3__c != null&& faildtender.Hospital3__r.Assume_Change__c == true){                        
                         faildHospIdSet.add(faildtender.Hospital3__c);
                     }
-                    if(faildtender.Hospital4__c != null&& faildtender.Hospital4__r.DepartmentChanges__c == true){                        
+                    if(faildtender.Hospital4__c != null&& faildtender.Hospital4__r.Assume_Change__c == true){                        
                        faildHospIdSet.add(faildtender.Hospital4__c);
                     }
                 }
@@ -153,23 +158,23 @@
                 Tender_information__c  tender = EmptyUpdateTenderMap.get(tenderId);
 
                 //濡傛灉澶辫触鐨凷et閲屾病鏈夎繖涓尰闄�,鍒欐竻绌鸿繖涓尰闄㈢殑鏍囪瘑
-                if(tender.Hospital__c != null && tender.Hospital__r.DepartmentChanges__c == true
+                if(tender.Hospital__c != null && tender.Hospital__r.Assume_Change__c == true
                     && (!faildHospIdSet.contains(tender.Hospital__c)) ){  
                     HospitalId.add(tender.Hospital__c);
                 }
-                if(tender.Hospital1__c != null && tender.Hospital1__r.DepartmentChanges__c == true
+                if(tender.Hospital1__c != null && tender.Hospital1__r.Assume_Change__c == true
                     && (!faildHospIdSet.contains(tender.Hospital1__c)) ){  
                     HospitalId.add(tender.Hospital1__c);
                 }
-                if(tender.Hospital2__c != null && tender.Hospital2__r.DepartmentChanges__c == true
+                if(tender.Hospital2__c != null && tender.Hospital2__r.Assume_Change__c == true
                     && (!faildHospIdSet.contains(tender.Hospital2__c)) ){
                     HospitalId.add(tender.Hospital2__c); 
                 }
-                if(tender.Hospital3__c != null && tender.Hospital3__r.DepartmentChanges__c == true
+                if(tender.Hospital3__c != null && tender.Hospital3__r.Assume_Change__c == true
                     && (!faildHospIdSet.contains(tender.Hospital3__c)) ){
                     HospitalId.add(tender.Hospital3__c);  
                 }
-                if(tender.Hospital4__c != null && tender.Hospital4__r.DepartmentChanges__c == true
+                if(tender.Hospital4__c != null && tender.Hospital4__r.Assume_Change__c == true
                     && (!faildHospIdSet.contains(tender.Hospital4__c)) ){
                     HospitalId.add(tender.Hospital4__c);
                 }
@@ -180,7 +185,7 @@
             while(HospitalIds.hasNext()){
                 Account acc = new Account();
                 acc.id = HospitalIds.next();
-                acc.DepartmentChanges__c = false;
+                acc.Assume_Change__c = false;
                 needUpdateHPList.add(acc);  
             }
 
@@ -347,7 +352,11 @@
                 }
 
             }
-
+            //璇环娴佺▼鏀瑰杽 fy start
+            System.debug('batch2寮�濮�');
+            Id execBTId = Database.executeBatch(new UpdateTenderInformationBatch2(TenderIdList),100);
+            System.debug('batch2缁撴潫');
+            //璇环娴佺▼鏀瑰杽 fy end
 
         }catch(NullPointerException ex){         
             system.debug('aa1:'+ex.getMessage());
@@ -389,7 +398,11 @@
         List<Tender_information__c> updateTenderNumList = [SELECT Id, Hospital__c, Hospital1__c, 
         Hospital2__c, Hospital3__c, Hospital4__c, OwnerId, IsRelateProject__c, IsBid__c, department__c, 
         subDepartment1__c, subDepartment2__c, subDepartment3__c, subDepartment4__c, NotBidApprovalStatus__c, 
-        OpportunityNum__c, OpportunityStatus__c FROM Tender_information__c WHERE Id IN :tenders];
+        OpportunityNum__c, OpportunityStatus__c
+        //20221010  lt SWAG-CHL5XA銆怓Y23璇环鏀瑰杽銆�-缁熻涓绘満鍙版暟 start
+        ,OlyNumberHosts__c, RivalHostsNumber__c, TotalNumberHosts__c
+        //20221010  lt SWAG-CHL5XA銆怓Y23璇环鏀瑰杽銆�-缁熻涓绘満鍙版暟 end
+        FROM Tender_information__c WHERE Id IN :tenders];
         // 鎷涙爣-璇环鍏宠仈淇敼 20210817 end
 
         return updateTenderNumList;
@@ -435,24 +448,83 @@
                 Integer WinNum = 0;
                 //澶卞崟 num
                 Integer SHDNum = 0;
+                //XLIU-CG98L5銆愬鎵樸�戙�愯瘎浼般�戞柊闇�姹�-鎷涙爣椤圭洰/璇环瀵瑰簲娴佹爣銆佸簾鏍囨敼鍠� fy start
+                //鍙栨秷 num
+                Integer QuxNum = 0;
+                //XLIU-CG98L5銆愬鎵樸�戙�愯瘎浼般�戞柊闇�姹�-鎷涙爣椤圭洰/璇环瀵瑰簲娴佹爣銆佸簾鏍囨敼鍠� fy end
+                //涓爣 2022-6-29 yjk
+                Integer bidNum = 0;
+                //瀵规墜涓爣 2022-6-29 yjk
+                Integer loseNum = 0;
+
+                //20221010  lt SWAG-CHL5XA銆怓Y23璇环鏀瑰杽銆�-缁熻涓绘満鍙版暟 start
+                tempTender.OlyNumberHosts__c = 0;
+                tempTender.RivalHostsNumber__c = 0;
+                tempTender.TotalNumberHosts__c = 0;
+
+                Decimal OlyNum = 0;
+                Decimal RivalNum = 0;
+                Decimal TotalNum = 0;
+                //20221010  lt SWAG-CHL5XA銆怓Y23璇环鏀瑰杽銆�-缁熻涓绘満鍙版暟 end
 
                 //鑾峰彇褰撳墠key鐨凩ist
                 for(Opportunity tempOp :BiddingDownOppList){
+
+                    //20221010  lt SWAG-CHL5XA銆怓Y23璇环鏀瑰杽銆�-缁熻涓绘満鍙版暟 start
+                    System.debug('lt123---------------------------------------');
+
+                    if(tempOp.OlyNumberHosts__c == null){
+                        tempOp.OlyNumberHosts__c = 0;
+                    }
+                    if(tempOp.RivalHostsNumber__c == null){
+                        tempOp.RivalHostsNumber__c = 0;
+                    }
+
+                    OlyNum += tempOp.OlyNumberHosts__c;
+                    RivalNum += tempOp.RivalHostsNumber__c;
+                    TotalNum += tempOp.InquireNumberHosts__c;
+                    //20221010  lt SWAG-CHL5XA銆怓Y23璇环鏀瑰杽銆�-缁熻涓绘満鍙版暟 end
+
                 // 鏉庢収濞熷娉� 锛� 杩欓噷璇锋浛鎹㈡垚<SAP涓婁紶(WIN)>鏍囪瘑鍒ゆ柇
                     //<!--璇环鐘舵��-->
-                    if(tempOp.SAP_Send_OK__c){
+                    if(tempOp.SAP_Send_OK__c || '瀹屾瘯'.equals(tempOp.StageName__c)){ // 2022-6-2 yjk SWAG-CEP9G8
                       //win 
                       WinNum += 1; 
-                    }else if(tempOp.StageName__c.equals('澶卞崟')){
-                      //澶卞崟  
-                      SHDNum += 1;
                     }
+                    //XLIU-CG98L5銆愬鎵樸�戙�愯瘎浼般�戞柊闇�姹�-鎷涙爣椤圭洰/璇环瀵瑰簲娴佹爣銆佸簾鏍囨敼鍠� fy start
+                    // else if(tempOp.StageName__c.equals('澶卞崟') || tempOp.StageName__c.equals('鍙栨秷')){ //2022-5-23 yjk SWAG-CEP9G8
+                    //   //澶卞崟  
+                    //   SHDNum += 1;
+                    // }
+                    else if(tempOp.StageName__c.equals('澶卞崟')){ //2022-5-23 yjk SWAG-CEP9G8
+                            //澶卞崟  
+                        SHDNum += 1;
+                    }
+                    else if(tempOp.StageName__c.equals('鍙栨秷')){ //2022-5-23 yjk SWAG-CEP9G8
+                            //澶卞崟  
+                            QuxNum += 1;
+                    }
+                    //XLIU-CG98L5銆愬鎵樸�戙�愯瘎浼般�戞柊闇�姹�-鎷涙爣椤圭洰/璇环瀵瑰簲娴佹爣銆佸簾鏍囨敼鍠� fy end
                     //鑾峰彇璇环鐨勫尰闄�(鐩稿叧鎬ф椂鐢�)
                     if(!OppHospitalList.contains(tempOp.Hospital__c)&&tempOp.Hospital__c!=null){
                         OppHospitalList.add(tempOp.Hospital__c);
                     }
 
+                    //2022-6-29 yjk 涓爣纭璧嬪�� start
+                    if('OLY涓爣'.equals(tempOp.ConfirmationofAward__c)){
+                        bidNum++;
+                    }else if('绔炰簤瀵规墜涓爣'.equals(tempOp.ConfirmationofAward__c)){
+                        loseNum++;
+                    }
+                    //2022-6-29 yjk 涓爣纭璧嬪�� end
+
                 }
+
+                //20221010  lt SWAG-CHL5XA銆怓Y23璇环鏀瑰杽銆�-缁熻涓绘満鍙版暟 start
+                tempTender.OlyNumberHosts__c = OlyNum;
+                tempTender.RivalHostsNumber__c = RivalNum;
+                tempTender.TotalNumberHosts__c = TotalNum;
+                //20221010  lt SWAG-CHL5XA銆怓Y23璇环鏀瑰杽銆�-缁熻涓绘満鍙版暟 end
 
                 //<!--璇环鐘舵��-->
                 if(WinNum == BiddingDownOppList.size()){
@@ -464,7 +536,14 @@
                 }else if(WinNum>0&&SHDNum>0&&(WinNum + SHDNum) == BiddingDownOppList.size() ){
                     //閮ㄥ垎Win,閮ㄥ垎澶卞崟鏃�, 鐘舵�佷负  閮ㄥ垎鎴愪氦
                     tempTender.OpportunityStatus__c = '閮ㄥ垎鎴愪氦';
-                }else if(tempTender.OpportunityNum__c > 0){
+                }
+                //XLIU-CG98L5銆愬鎵樸�戙�愯瘎浼般�戞柊闇�姹�-鎷涙爣椤圭洰/璇环瀵瑰簲娴佹爣銆佸簾鏍囨敼鍠� fy start
+                else if(QuxNum == BiddingDownOppList.size()){
+                        //鍏ㄩ儴涓哄彇娑�.鐘舵�佷负 鍙栨秷
+                    tempTender.OpportunityStatus__c = '鍙栨秷';
+                }
+                //XLIU-CG98L5銆愬鎵樸�戙�愯瘎浼般�戞柊闇�姹�-鎷涙爣椤圭洰/璇环瀵瑰簲娴佹爣銆佸簾鏍囨敼鍠� fy end
+                else if(tempTender.OpportunityNum__c > 0){
                     //濡傛灉璇环鏁伴噺澶т簬0鐨勮瘽灏辨槸 璺熻繘涓�
                     tempTender.OpportunityStatus__c = '璺熻繘涓�';
                 }else{
@@ -472,6 +551,21 @@
                     tempTender.OpportunityStatus__c = '';
                 }
                 //<!---- 璇环鐘舵��  end --->
+
+                //2022-6-29 yjk 涓爣纭璧嬪�� start
+                if(bidNum > 0 && loseNum == 0){
+                    tempTender.ConfirmationofAward__c = 'OLY涓爣';
+                }else if(loseNum > 0 && bidNum == 0){
+                    tempTender.ConfirmationofAward__c = '绔炰簤瀵规墜涓爣';
+                }else if(bidNum > 0 && loseNum > 0){
+                    tempTender.ConfirmationofAward__c = '閮ㄥ垎OLY涓爣';
+                }else{
+                    //DB202304056706  you 20230406 娓呯┖
+                    tempTender.ConfirmationofAward__c = '';
+                }
+
+
+                //2022-6-29 yjk 涓爣纭璧嬪�� end
 
                 //<!------ 鐩稿叧鎬� 淇℃伅   start ----> 
                 //瀹氫箟Map瀛樻斁褰撳墠鎷涙姇鏍囬」鐩殑浜斾釜鍖婚櫌
@@ -564,6 +658,8 @@
             }else {
                 //娓呯┖
                 tempTender.OpportunityStatus__c = '';
+                //DB202304056706  you 20230406 娓呯┖
+                tempTender.ConfirmationofAward__c = '';
             }
             updateTenderList.add(tempTender);
         }
@@ -592,7 +688,11 @@
             oppIds.add(link.Opportunity__c);
         }
         List<Opportunity> allRelativeOppList = [SELECT Id ,AccountId,Hospital__c,Department_Class__c,SAP_Send_OK__c,CreatedDate, Whether_Bidding__c,
-        Old_BiddingProject_Bid__c, OwnerId, StageName__c, Bidding_Project_Name_Bid__c FROM Opportunity WHERE Id in :oppIds ORDER By createdDate ASC];
+        Old_BiddingProject_Bid__c, OwnerId, StageName__c, Bidding_Project_Name_Bid__c, ConfirmationofAward__c
+        //20221010  lt SWAG-CHL5XA銆怓Y23璇环鏀瑰杽銆�-缁熻涓绘満鍙版暟 start
+        ,OlyNumberHosts__c, RivalHostsNumber__c, InquireNumberHosts__c
+        //20221010  lt SWAG-CHL5XA銆怓Y23璇环鏀瑰杽銆�-缁熻涓绘満鍙版暟 end
+        FROM Opportunity WHERE Id in :oppIds ORDER By createdDate ASC];
         // List<Opportunity> allRelativeOppList = [SELECT Id ,AccountId,Hospital__c,Department_Class__c,SAP_Send_OK__c,CreatedDate, Whether_Bidding__c,
         // Old_BiddingProject_Bid__c,Bidding_Project_Name_Bid__c ,StageName__c ,Bidding_Project_Name_Bid__r.Hospital__c,Bidding_Project_Name_Bid__r.Hospital1__c,
         // Bidding_Project_Name_Bid__r.Hospital2__c,Bidding_Project_Name_Bid__r.Hospital3__c,Bidding_Project_Name_Bid__r.Hospital4__c,
@@ -771,5 +871,444 @@
         i++;
         i++;
         i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+             i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+             i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
+        i++;
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1