Try executing this chunk by clicking the Run button within the chunk or by placing your cursor inside it and pressing Ctrl+Shift+Enter.

#chargement de packages
library(tidyverse)
library(gtsummary)
library(lubridate)

setwd("C:/Users/SB545911/Desktop/Documents")
getwd()

Import de la base de donnes issue d une requete BO

Extraction des RUM de 2022 des lits dedies soins palliatifs

concatenation des RUM appartenant au meme sejour :

3 paires de 2 RUM appartenant au meme RSS

lisp<-read.csv(file ="C:/Users/SB545911/Desktop/lisp2022.csv",sep=";",head=T)

Description generale

summary(lisp)
     No_RSS        Date_Debut_Sejour  Date_Fin_Sejour     Duree_Sejour         Age            Ghm           
 Min.   :1661403   Length:185         Length:185         Min.   :  1.00   Min.   :34.00   Length:185        
 1st Qu.:1680634   Class :character   Class :character   1st Qu.:  8.00   1st Qu.:67.00   Class :character  
 Median :1698718   Mode  :character   Mode  :character   Median : 15.00   Median :77.00   Mode  :character  
 Mean   :1698060                                         Mean   : 21.81   Mean   :75.99                     
 3rd Qu.:1714405                                         3rd Qu.: 31.00   3rd Qu.:87.00                     
 Max.   :1729935                                         Max.   :146.00   Max.   :98.00                     
                                                                                                            
      GHS       Valorisation_GHS   Duree_RUM      Mode_Entree      Provenance     Mode_Sortie   
 Min.   : 274   Min.   : 1583    Min.   : 0.00   Min.   :6.000   Min.   :1.000   Min.   :7.000  
 1st Qu.:2140   1st Qu.: 5714    1st Qu.: 5.00   1st Qu.:6.000   1st Qu.:1.000   1st Qu.:8.000  
 Median :7993   Median : 5714    Median :11.00   Median :7.000   Median :1.000   Median :9.000  
 Mean   :5471   Mean   : 6596    Mean   :15.45   Mean   :6.908   Mean   :1.472   Mean   :8.627  
 3rd Qu.:7993   3rd Qu.: 6992    3rd Qu.:19.00   3rd Qu.:8.000   3rd Qu.:1.000   3rd Qu.:9.000  
 Max.   :7993   Max.   :16842    Max.   :86.00   Max.   :8.000   Max.   :5.000   Max.   :9.000  
                                                                 NA's   :58                     
  Destination     Code_DP           Libelle_DP             UF           
 Min.   :1.00   Length:185         Length:185         Length:185        
 1st Qu.:3.00   Class :character   Class :character   Class :character  
 Median :6.00   Mode  :character   Mode  :character   Mode  :character  
 Mean   :4.75                                                           
 3rd Qu.:7.00                                                           
 Max.   :7.00                                                           
 NA's   :157                                                            
View(lisp)
lisp$No_RSS<-as.character(lisp$No_RSS)
lisp$Date_Debut_Sejour<-dmy(lisp$Date_Debut_Sejour)
lisp$Date_Fin_Sejour<-dmy(lisp$Date_Fin_Sejour)
lisp$GHS<-as.factor(lisp$GHS)
lisp$Ghm<-as.factor(lisp$Ghm)
lisp$Mode_Entree<-as.factor(lisp$Mode_Entree)
lisp$Provenance<-as.factor(lisp$Provenance)
lisp$Mode_Sortie<-as.factor(lisp$Mode_Sortie)
lisp$Destination<-as.factor(lisp$Destination)
lisp$Code_DP<-as.factor(lisp$Code_DP)
lisp$UF<-as.factor(lisp$UF)

DEscription des sejours avec passage dans un lit dedie soins palliatifs

summary(lisp)
    No_RSS          Date_Debut_Sejour    Date_Fin_Sejour       Duree_Sejour         Age             Ghm    
 Length:185         Min.   :2022-01-06   Min.   :2022-01-14   Min.   :  1.00   Min.   :34.00   23Z02Z :97  
 Class :character   1st Qu.:2022-03-07   1st Qu.:2022-04-11   1st Qu.:  8.00   1st Qu.:67.00   04M093 :11  
 Mode  :character   Median :2022-06-08   Median :2022-06-23   Median : 15.00   Median :77.00   06M053 : 7  
                    Mean   :2022-05-25   Mean   :2022-06-16   Mean   : 21.81   Mean   :75.99   04M073 : 4  
                    3rd Qu.:2022-07-25   3rd Qu.:2022-08-22   3rd Qu.: 31.00   3rd Qu.:87.00   05M093 : 4  
                    Max.   :2022-10-14   Max.   :2022-10-27   Max.   :146.00   Max.   :98.00   17M153 : 4  
                                                                                               (Other):58  
      GHS     Valorisation_GHS   Duree_RUM     Mode_Entree Provenance Mode_Sortie Destination    Code_DP   
 7993   :97   Min.   : 1583    Min.   : 0.00   6:90        1   :112   7: 18       1   :  6    Z515   :127  
 1163   :11   1st Qu.: 5714    1st Qu.: 5.00   7:22        5   : 15   8: 33       3   :  5    C341   :  8  
 2140   : 7   Median : 5714    Median :11.00   8:73        NA's: 58   9:134       6   :  7    C61    :  3  
 1153   : 4   Mean   : 6596    Mean   :15.45                                      7   : 10    J690   :  3  
 1755   : 4   3rd Qu.: 6992    3rd Qu.:19.00                                      NA's:157    C170   :  2  
 6528   : 4   Max.   :16842    Max.   :86.00                                                  C182   :  2  
 (Other):58                                                                                   (Other): 40  
  Libelle_DP                                     UF    
 Length:185         SB_HEMATO ONCOLOGIE_HC        :50  
 Class :character   SB_MED GERIATRIQUE 1_HC       :21  
 Mode  :character   SB_MED GERIATRIQUE 2_HC       : 2  
                    SB_MED POLYVALENTE_HC         : 1  
                    SB_PNEUMOLOGIE 1_HC           :57  
                    SB_PNEUMOLOGIE 2_HC           :10  
                    SB_UOP_HC                     :44  

Attention, l’um de soins palliatifs n’est pas forcement l’um retenue dans le groupage

Sur les 185 RUM, 127 avaient le Z51.5 en DP

Repartition des rum selon l’UF pneumologie 1 : 57 hematologie oncologie

50 uop : 44 geriatrie 1 : 21 pneumologie 2 : 10 geriatrie 2 : 2 medecine polyvalente : 1

regroupement d uf pneumologie : 67 hematologie oncologie : 50 uop : 44 geriatrie : 23 medecine geriatrique 1 : 21 medecine polyvalente : 1

## prendre le sous ensemble des RUM dont le ghm 23z02z

ghmpallia<-subset(lisp,Ghm=="23Z02Z")
summary(ghmpallia)
    No_RSS          Date_Debut_Sejour    Date_Fin_Sejour       Duree_Sejour         Age             Ghm    
 Length:97          Min.   :2022-01-06   Min.   :2022-01-14   Min.   :  1.00   Min.   :47.00   23Z02Z :97  
 Class :character   1st Qu.:2022-03-07   1st Qu.:2022-04-11   1st Qu.: 10.00   1st Qu.:67.00   01M213 : 0  
 Mode  :character   Median :2022-05-31   Median :2022-06-13   Median : 19.00   Median :74.00   01M263 : 0  
                    Mean   :2022-05-15   Mean   :2022-06-09   Mean   : 24.87   Mean   :74.35   01M264 : 0  
                    3rd Qu.:2022-07-08   3rd Qu.:2022-08-08   3rd Qu.: 32.00   3rd Qu.:83.00   01M303 : 0  
                    Max.   :2022-10-11   Max.   :2022-10-27   Max.   :146.00   Max.   :96.00   01M304 : 0  
                                                                                               (Other): 0  
      GHS     Valorisation_GHS   Duree_RUM     Mode_Entree Provenance Mode_Sortie Destination    Code_DP  
 7993   :97   Min.   :5672     Min.   : 1.00   6:40        1   :56    7:13        1   : 4     Z515   :97  
 274    : 0   1st Qu.:5714     1st Qu.: 8.00   7:16        5   : 6    8:24        3   : 4     C169   : 0  
 297    : 0   Median :5714     Median :15.00   8:41        NA's:35    9:60        6   : 5     C170   : 0  
 298    : 0   Mean   :5709     Mean   :20.11                                      7   : 7     C180   : 0  
 316    : 0   3rd Qu.:5714     3rd Qu.:28.00                                      NA's:77     C182   : 0  
 317    : 0   Max.   :5714     Max.   :77.00                                                  C20    : 0  
 (Other): 0                                                                                   (Other): 0  
  Libelle_DP                                     UF    
 Length:97          SB_HEMATO ONCOLOGIE_HC        :31  
 Class :character   SB_MED GERIATRIQUE 1_HC       :16  
 Mode  :character   SB_MED GERIATRIQUE 2_HC       : 0  
                    SB_MED POLYVALENTE_HC         : 1  
                    SB_PNEUMOLOGIE 1_HC           :26  
                    SB_PNEUMOLOGIE 2_HC           : 6  
                    SB_UOP_HC                     :17  

#16,4 jours
#On compte 97 sejours avec GHM soins palliatifs
#duree moyenne  rum 20,1 jours  duree mediane 15 jours (q1-q3 8-28), min-max (1-77jours)

#valorisation 5672 euros (janv-fev 2022) puis 5714 euros (nouveau tarif mars 2022)
a<-ghmpallia[,8:9]
sum_valo<-apply(a,2,sum)
sum_valo
Valorisation_GHS        Duree_RUM 
          553796             1951 
#pour 97 sejours avec GHM soins palliatifs, une valorisation de 553 796 euros

# on compte 60 deces sur 97 rum soit 60%

#variable duree sejour en factorielle
ghmpallia$duree_sejour_fact<-as.factor(ghmpallia$Duree_Sejour)
summary(ghmpallia$duree_sejour_fact)
  1   2   3   4   5   6   7   8   9  10  12  13  14  15  16  17  19  20  21  22  23  25  26  27  28  30  31 
  3   3   4   1   5   1   3   2   2   3   2   2   3   6   4   4   4   1   2   2   1   3   2   1   1   1   4 
 32  34  35  41  42  44  45  46  47  51  52  53  55  56  60  61  73  77  88 146 
  4   2   1   2   1   1   1   1   2   1   1   1   1   1   2   1   1   1   1   1 

Combien de sejours sont inferieures a la borne de 4 jours

Sur les 97 sejours: 10 sont entre 1 et 3 jours 19 entre 4 et 12 jours 68 plus de 12 jours

creation de variable “nb_bas” pour nombre de jours sous la borne basse “nb_haut” pour nombre de jours au dela de la borne haute

ghmpallia$nb_bas<-4-ghmpallia$Duree_Sejour
summary(ghmpallia$nb_bas)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
-142.00  -28.00  -15.00  -20.87   -6.00    3.00 
ghmpallia$nb_bas[ghmpallia$nb_bas<0|ghmpallia$Mode_Sortie=="9"]<-0

#si deces
ghmpallia$nb_haut<-ghmpallia$Duree_Sejour-11
summary(ghmpallia$nb_haut)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
 -10.00   -1.00    8.00   13.87   21.00  135.00 
 ghmpallia<-ghmpallia%>%mutate(nb_hautbis=if_else(Mode_Sortie!="9",nb_haut-1,nb_haut))
 ghmpallia<-ghmpallia%>%mutate(nb_hautter=if_else(nb_hautbis<0,0,nb_hautbis))

names(ghmpallia)
 [1] "No_RSS"            "Date_Debut_Sejour" "Date_Fin_Sejour"   "Duree_Sejour"      "Age"              
 [6] "Ghm"               "GHS"               "Valorisation_GHS"  "Duree_RUM"         "Mode_Entree"      
[11] "Provenance"        "Mode_Sortie"       "Destination"       "Code_DP"           "Libelle_DP"       
[16] "UF"                "duree_sejour_fact" "nb_bas"            "nb_haut"           "nb_hautbis"       
[21] "nb_hautter"       
ghmpallia%>%select(4,12,17,20)
 save(ghmpallia,file="ghmpallia.Rdata")
 head(ghmpallia)
 names(ghmpallia)
 [1] "No_RSS"            "Date_Debut_Sejour" "Date_Fin_Sejour"   "Duree_Sejour"      "Age"              
 [6] "Ghm"               "GHS"               "Valorisation_GHS"  "Duree_RUM"         "Mode_Entree"      
[11] "Provenance"        "Mode_Sortie"       "Destination"       "Code_DP"           "Libelle_DP"       
[16] "UF"                "duree_sejour_fact" "nb_bas"            "nb_haut"           "nb_hautbis"       
[21] "nb_hautter"       
 ghmpallia%>%select(1,4,12,17,20,21)

Estimer la valo

 apply(recette,2,sum)
Duree_RUM     tarif 
     1951   1269550 

pour 97 rum, valo de 1269550

Etude la valo des séjours dont GHM different de 23Z02Z, où le patient pourra aller dans une uM précédente. Ces sejours representent 88 sejours/197 jours donc dans 45% des cas, GHM different 23Z02Z quelle est la valo des ces 88 sejours ?

ghmdiff<-lisp%>%filter(Ghm!="23Z02Z")
summary(ghmdiff)
    No_RSS          Date_Debut_Sejour    Date_Fin_Sejour       Duree_Sejour        Age            Ghm    
 Length:88          Min.   :2022-01-06   Min.   :2022-01-25   Min.   : 2.00   Min.   :34.0   04M093 :11  
 Class :character   1st Qu.:2022-03-20   1st Qu.:2022-04-16   1st Qu.: 8.00   1st Qu.:69.0   06M053 : 7  
 Mode  :character   Median :2022-06-19   Median :2022-07-06   Median :13.50   Median :78.0   04M073 : 4  
                    Mean   :2022-06-04   Mean   :2022-06-23   Mean   :18.43   Mean   :77.8   05M093 : 4  
                    3rd Qu.:2022-08-09   3rd Qu.:2022-08-29   3rd Qu.:24.75   3rd Qu.:88.0   17M153 : 4  
                    Max.   :2022-10-14   Max.   :2022-10-27   Max.   :86.00   Max.   :98.0   07M063 : 3  
                                                                                             (Other):55  
      GHS     Valorisation_GHS   Duree_RUM     Mode_Entree Provenance Mode_Sortie Destination    Code_DP  
 1163   :11   Min.   : 1583    Min.   : 0.00   6:50        1   :56    7: 5        1   : 2     Z515   :30  
 2140   : 7   1st Qu.: 6303    1st Qu.: 4.00   7: 6        5   : 9    8: 9        3   : 1     C341   : 8  
 1153   : 4   Median : 7064    Median : 7.00   8:32        NA's:23    9:74        6   : 2     C61    : 3  
 1755   : 4   Mean   : 7574    Mean   :10.32                                      7   : 3     J690   : 3  
 6528   : 4   3rd Qu.: 8915    3rd Qu.:12.25                                      NA's:80     C170   : 2  
 2526   : 3   Max.   :16842    Max.   :86.00                                                  C182   : 2  
 (Other):55                                                                                   (Other):40  
  Libelle_DP                                     UF    
 Length:88          SB_HEMATO ONCOLOGIE_HC        :19  
 Class :character   SB_MED GERIATRIQUE 1_HC       : 5  
 Mode  :character   SB_MED GERIATRIQUE 2_HC       : 2  
                    SB_MED POLYVALENTE_HC         : 0  
                    SB_PNEUMOLOGIE 1_HC           :31  
                    SB_PNEUMOLOGIE 2_HC           : 4  
                    SB_UOP_HC                     :27  

On note une valorisation allant de 1583 à 16842 euros avec une moyenne de de 7574 euros. IL y a 6 transferts d’un autre établissement et 8 venant du domicile. Pour ces 14 personnes, nous pouvons appliquer les tarifs GHS7994 et voir si le montant est supérieur au GHS actuel.

Information à recuperer les monorum

recup_norum<-read.csv(file ="C:/Users/SB545911/Desktop/recup_norum.csv",sep=";",head=T)
str(recup_norum)
recup_norum$No_RSS<-as.character(recup_norum$No_RSS)
lisp2<-lisp%>%left_join(recup_norum)
names(lisp2)
save(lisp2,file="lisp2.Rdata")

Faire les simulations pour les monorum DP soins pallia=>multiplier valo GHS par 1,14 DP != soins pallia : regarder ce qui est plus valorisant entre GHS 7994 et GHS actuel

monorum<-subset(lisp2,lisp2$Nb_RUM==1)
dim(monorum)
[1] 95 17
save(monorum, file="monrum.Rdata") #95 rum
summary(monorum)
    No_RSS          Date_Debut_Sejour    Date_Fin_Sejour       Duree_Sejour        Age             Ghm    
 Length:95          Min.   :2022-01-06   Min.   :2022-01-14   Min.   : 1.00   Min.   :47.00   23Z02Z :57  
 Class :character   1st Qu.:2022-03-08   1st Qu.:2022-04-08   1st Qu.: 6.00   1st Qu.:64.00   04M093 : 7  
 Mode  :character   Median :2022-06-13   Median :2022-06-22   Median :13.00   Median :74.00   06M053 : 5  
                    Mean   :2022-05-23   Mean   :2022-06-10   Mean   :17.83   Mean   :74.09   17M153 : 3  
                    3rd Qu.:2022-07-14   3rd Qu.:2022-08-07   3rd Qu.:23.50   3rd Qu.:84.00   04M094 : 2  
                    Max.   :2022-10-14   Max.   :2022-10-27   Max.   :86.00   Max.   :96.00   07M063 : 2  
                                                                                              (Other):19  
      GHS     Valorisation_GHS   Duree_RUM     Mode_Entree Provenance Mode_Sortie Destination    Code_DP  
 7993   :57   Min.   : 1583    Min.   : 1.00   6: 0        1   :22    7: 9        1   : 4     Z515   :57  
 1163   : 7   1st Qu.: 5714    1st Qu.: 6.00   7:22        5   :15    8:16        3   : 2     C341   : 5  
 2140   : 5   Median : 5714    Median :13.00   8:73        NA's:58    9:70        6   : 3     C182   : 2  
 6528   : 3   Mean   : 6261    Mean   :17.83                                      7   : 6     C56    : 2  
 1164   : 2   3rd Qu.: 6830    3rd Qu.:23.50                                      NA's:80     C61    : 2  
 2526   : 2   Max.   :13101    Max.   :86.00                                                  C763   : 2  
 (Other):19                                                                                   (Other):25  
  Libelle_DP                                     UF         Nb_RUM 
 Length:95          SB_HEMATO ONCOLOGIE_HC        :40   Min.   :1  
 Class :character   SB_MED GERIATRIQUE 1_HC       :21   1st Qu.:1  
 Mode  :character   SB_MED GERIATRIQUE 2_HC       : 1   Median :1  
                    SB_MED POLYVALENTE_HC         : 0   Mean   :1  
                    SB_PNEUMOLOGIE 1_HC           :17   3rd Qu.:1  
                    SB_PNEUMOLOGIE 2_HC           : 4   Max.   :1  
                    SB_UOP_HC                     :12              

57/95 ont DP Z51.5 70/95 sont deces duree 1 a 86 jours, moy 18 jours

TARIF pour les ghm 23z02z : appliquer le GHS7994 (x1.15 GHS 7993)

simulation tarif autre ghm

autreghm<-subset(monorum, Ghm!="23Z02Z")
summary(autreghm)
    No_RSS          Date_Debut_Sejour    Date_Fin_Sejour       Duree_Sejour        Age             Ghm    
 Length:38          Min.   :2022-01-19   Min.   :2022-01-25   Min.   : 2.00   Min.   :56.00   04M093 : 7  
 Class :character   1st Qu.:2022-03-11   1st Qu.:2022-04-27   1st Qu.: 6.00   1st Qu.:64.50   06M053 : 5  
 Mode  :character   Median :2022-06-24   Median :2022-07-10   Median :10.00   Median :74.50   17M153 : 3  
                    Mean   :2022-06-03   Mean   :2022-06-18   Mean   :14.84   Mean   :75.00   04M094 : 2  
                    3rd Qu.:2022-08-03   3rd Qu.:2022-08-16   3rd Qu.:13.75   3rd Qu.:85.75   07M063 : 2  
                    Max.   :2022-10-14   Max.   :2022-10-27   Max.   :86.00   Max.   :96.00   09M113 : 2  
                                                                                              (Other):17  
      GHS     Valorisation_GHS   Duree_RUM     Mode_Entree Provenance Mode_Sortie Destination    Code_DP  
 1163   : 7   Min.   : 1583    Min.   : 2.00   6: 0        1   : 6    7: 2        1   : 1     C341   : 5  
 2140   : 5   1st Qu.: 6303    1st Qu.: 6.00   7: 6        5   : 9    8: 5        3   : 1     C182   : 2  
 6528   : 3   Median : 7007    Median :10.00   8:32        NA's:23    9:31        6   : 0     C56    : 2  
 1164   : 2   Mean   : 7090    Mean   :14.84                                      7   : 1     C61    : 2  
 2526   : 2   3rd Qu.: 7334    3rd Qu.:13.75                                      NA's:35     C763   : 2  
 3561   : 2   Max.   :13101    Max.   :86.00                                                  J690   : 2  
 (Other):17                                                                                   (Other):23  
  Libelle_DP                                     UF         Nb_RUM 
 Length:38          SB_HEMATO ONCOLOGIE_HC        :13   Min.   :1  
 Class :character   SB_MED GERIATRIQUE 1_HC       : 5   1st Qu.:1  
 Mode  :character   SB_MED GERIATRIQUE 2_HC       : 1   Median :1  
                    SB_MED POLYVALENTE_HC         : 0   Mean   :1  
                    SB_PNEUMOLOGIE 1_HC           : 9   3rd Qu.:1  
                    SB_PNEUMOLOGIE 2_HC           : 2   Max.   :1  
                    SB_UOP_HC                     : 8              

Nouveau tarif : simulGHS7994

autreghm$nb_bas<-4-autreghm$Duree_Sejour
summary(autreghm$nb_bas)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
 -82.00   -9.75   -6.00  -10.84   -2.00    2.00 
autreghm$nb_bas[autreghm$nb_bas<0|autreghm$Mode_Sortie=="9"]<-0
summary(autreghm$nb_bas)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
      0       0       0       0       0       0 
#si deces
autreghm$nb_haut<-autreghm$Duree_Sejour-12
summary(autreghm$nb_haut)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
-10.000  -6.000  -2.000   2.842   1.750  74.000 
 autreghm<-autreghm%>%mutate(nb_hautbis=if_else(Mode_Sortie!="9",nb_haut-1,nb_haut))
 autreghm<-autreghm%>%mutate(nb_hautter=if_else(nb_hautbis<0,0,nb_hautbis))

names(autreghm)
 [1] "No_RSS"            "Date_Debut_Sejour" "Date_Fin_Sejour"   "Duree_Sejour"      "Age"              
 [6] "Ghm"               "GHS"               "Valorisation_GHS"  "Duree_RUM"         "Mode_Entree"      
[11] "Provenance"        "Mode_Sortie"       "Destination"       "Code_DP"           "Libelle_DP"       
[16] "UF"                "Nb_RUM"            "nb_bas"            "nb_haut"           "nb_hautbis"       
[21] "nb_hautter"       
autreghm%>%select(4,12,18,21)

autreghm<-autreghm%>%mutate(tarif=6595.17+nb_hautter*430.05-nb_bas*1501.75)

je peux prendre les monorum ghm differents 23z + en plus de l’ensemble des autres ghm23z

names(autreghm)
 [1] "No_RSS"            "Date_Debut_Sejour" "Date_Fin_Sejour"   "Duree_Sejour"      "Age"              
 [6] "Ghm"               "GHS"               "Valorisation_GHS"  "Duree_RUM"         "Mode_Entree"      
[11] "Provenance"        "Mode_Sortie"       "Destination"       "Code_DP"           "Libelle_DP"       
[16] "UF"                "Nb_RUM"            "nb_bas"            "nb_haut"           "nb_hautbis"       
[21] "nb_hautter"        "tarif"            
autreghm%>%select(1,4,8,22,18,21)

#je cree une variable meilleurtarif : le meilleur de valorisation ghs et de tarif


autreghm$Valorisation_GHS<-as.numeric(autreghm$Valorisation_GHS)
autreghm<-autreghm%>%mutate(meilleur_tarif=if_else(tarif>Valorisation_GHS,tarif,Valorisation_GHS))
str(autreghm)
'data.frame':   38 obs. of  23 variables:
 $ No_RSS           : chr  "1661470" "1661505" "1665307" "1665865" ...
 $ Date_Debut_Sejour: Date, format: "2022-01-19" "2022-01-25" "2022-01-27" ...
 $ Date_Fin_Sejour  : Date, format: "2022-01-25" "2022-01-29" "2022-02-02" ...
 $ Duree_Sejour     : int  6 4 6 12 7 15 33 13 11 8 ...
 $ Age              : int  63 56 73 69 63 92 86 64 76 68 ...
 $ Ghm              : Factor w/ 52 levels "01M213","01M263",..: 1 26 44 48 23 51 11 11 23 11 ...
 $ GHS              : Factor w/ 52 levels "274","297","298",..: 1 26 44 48 23 51 11 11 23 11 ...
 $ Valorisation_GHS : num  5653 6805 7039 8915 6259 ...
 $ Duree_RUM        : int  6 4 6 12 7 15 33 13 11 8 ...
 $ Mode_Entree      : Factor w/ 3 levels "6","7","8": 2 3 3 3 3 3 2 3 3 3 ...
 $ Provenance       : Factor w/ 2 levels "1","5": 1 NA NA NA NA NA 1 NA NA NA ...
 $ Mode_Sortie      : Factor w/ 3 levels "7","8","9": 2 3 3 3 3 3 3 3 3 3 ...
 $ Destination      : Factor w/ 4 levels "1","3","6","7": NA NA NA NA NA NA NA NA NA NA ...
 $ Code_DP          : Factor w/ 40 levels "C169  ","C170  ",..: 38 6 16 26 5 33 15 10 4 9 ...
 $ Libelle_DP       : chr  "Douleurs chroniques irr\xe9ductibles, autres et non pr\xe9cis\xe9es            " "carcinome h\xe9patocellulaire                                            " "tumeur maligne de l'ovaire                                            " "lymphome angio-immunoblastique \xe0 cellules T                           " ...
 $ UF               : Factor w/ 7 levels "SB_HEMATO ONCOLOGIE_HC        ",..: 5 5 1 1 5 2 2 5 1 5 ...
 $ Nb_RUM           : int  1 1 1 1 1 1 1 1 1 1 ...
 $ nb_bas           : num  0 0 0 0 0 0 0 0 0 0 ...
 $ nb_haut          : num  -6 -8 -6 0 -5 3 21 1 -1 -4 ...
 $ nb_hautbis       : num  -7 -8 -6 0 -5 3 21 1 -1 -4 ...
 $ nb_hautter       : num  0 0 0 0 0 3 21 1 0 0 ...
 $ tarif            : num  6595 6595 6595 6595 6595 ...
 $ meilleur_tarif   : num  6595 6805 7039 8915 6595 ...
names(autreghm)
 [1] "No_RSS"            "Date_Debut_Sejour" "Date_Fin_Sejour"   "Duree_Sejour"      "Age"              
 [6] "Ghm"               "GHS"               "Valorisation_GHS"  "Duree_RUM"         "Mode_Entree"      
[11] "Provenance"        "Mode_Sortie"       "Destination"       "Code_DP"           "Libelle_DP"       
[16] "UF"                "Nb_RUM"            "nb_bas"            "nb_haut"           "nb_hautbis"       
[21] "nb_hautter"        "tarif"             "meilleur_tarif"   
autreghm%>%select(1,4,8,22,18,21,23)

summary(autreghm)
    No_RSS          Date_Debut_Sejour    Date_Fin_Sejour       Duree_Sejour        Age             Ghm    
 Length:38          Min.   :2022-01-19   Min.   :2022-01-25   Min.   : 2.00   Min.   :56.00   04M093 : 7  
 Class :character   1st Qu.:2022-03-11   1st Qu.:2022-04-27   1st Qu.: 6.00   1st Qu.:64.50   06M053 : 5  
 Mode  :character   Median :2022-06-24   Median :2022-07-10   Median :10.00   Median :74.50   17M153 : 3  
                    Mean   :2022-06-03   Mean   :2022-06-18   Mean   :14.84   Mean   :75.00   04M094 : 2  
                    3rd Qu.:2022-08-03   3rd Qu.:2022-08-16   3rd Qu.:13.75   3rd Qu.:85.75   07M063 : 2  
                    Max.   :2022-10-14   Max.   :2022-10-27   Max.   :86.00   Max.   :96.00   09M113 : 2  
                                                                                              (Other):17  
      GHS     Valorisation_GHS   Duree_RUM     Mode_Entree Provenance Mode_Sortie Destination    Code_DP  
 1163   : 7   Min.   : 1583    Min.   : 2.00   6: 0        1   : 6    7: 2        1   : 1     C341   : 5  
 2140   : 5   1st Qu.: 6303    1st Qu.: 6.00   7: 6        5   : 9    8: 5        3   : 1     C182   : 2  
 6528   : 3   Median : 7007    Median :10.00   8:32        NA's:23    9:31        6   : 0     C56    : 2  
 1164   : 2   Mean   : 7090    Mean   :14.84                                      7   : 1     C61    : 2  
 2526   : 2   3rd Qu.: 7334    3rd Qu.:13.75                                      NA's:35     C763   : 2  
 3561   : 2   Max.   :13101    Max.   :86.00                                                  J690   : 2  
 (Other):17                                                                                   (Other):23  
  Libelle_DP                                     UF         Nb_RUM      nb_bas     nb_haut       
 Length:38          SB_HEMATO ONCOLOGIE_HC        :13   Min.   :1   Min.   :0   Min.   :-10.000  
 Class :character   SB_MED GERIATRIQUE 1_HC       : 5   1st Qu.:1   1st Qu.:0   1st Qu.: -6.000  
 Mode  :character   SB_MED GERIATRIQUE 2_HC       : 1   Median :1   Median :0   Median : -2.000  
                    SB_MED POLYVALENTE_HC         : 0   Mean   :1   Mean   :0   Mean   :  2.842  
                    SB_PNEUMOLOGIE 1_HC           : 9   3rd Qu.:1   3rd Qu.:0   3rd Qu.:  1.750  
                    SB_PNEUMOLOGIE 2_HC           : 2   Max.   :1   Max.   :0   Max.   : 74.000  
                    SB_UOP_HC                     : 8                                            
   nb_hautbis        nb_hautter         tarif       meilleur_tarif 
 Min.   :-10.000   Min.   : 0.000   Min.   : 6595   Min.   : 6595  
 1st Qu.: -6.750   1st Qu.: 0.000   1st Qu.: 6595   1st Qu.: 6595  
 Median : -2.500   Median : 0.000   Median : 6595   Median : 7334  
 Mean   :  2.658   Mean   : 5.974   Mean   : 9164   Mean   : 9702  
 3rd Qu.:  1.750   3rd Qu.: 1.750   3rd Qu.: 7348   3rd Qu.: 8986  
 Max.   : 74.000   Max.   :74.000   Max.   :38419   Max.   :38419  
                                                                   
recetteautreghm<-autreghm%>%select(9,22)
apply(recetteautreghm,2,sum)
Duree_RUM     tarif 
    564.0  348237.8 
#au total 564 jours pour recette complete 348 237 euros

#en changeant le dp, on passe d'une valo moyenne de 7090 euros à 9702

en 2022 : 97/185=52% sejours ghm 23z02z avec simulation nouveaux tarifs ghs 7994 avec recette totale 1 269 550 euros 38/185=21% sejours ghm !=23z02z monrum avec obtention meilleure simulation avec recette complete 348 237 euros 50/185=27% sejours ghm!=23z02z multirum simulation impossible dont la valo est :397 056 (valo ghs mais pas tarif total, variable non dispo sur bo)

duree moyenne rum lisp 15,45 jours 15 lits 365 jours 5475 lits jours 5475/15,45=354 taux occupation 90% 0,90*354=318,9 rum lisp/rss

APPLICATION SIMULATION 0.52319=166 sejours 23z02z soit 2 172 631 euros 0.21319=67 sejours soit 613 996 euros 0.27*319=86 sejours soit 682 936 euros

somme recette 3 469 563 euros

LS0tDQp0aXRsZTogIkV0dWRlIG1lZGljby1lY29ub21pcXVlIDogcHJvamV0IG91dmVydHVyZSBkIHVuZSB1bml0ZSBkZSBzb2lucyBwYWxsaWF0aWZzICgyMDIzKSINCm91dHB1dDogaHRtbF9ub3RlYm9vaw0KZWRpdG9yX29wdGlvbnM6IA0KICBtYXJrZG93bjogDQogICAgd3JhcDogNzINCi0tLQ0KDQpUcnkgZXhlY3V0aW5nIHRoaXMgY2h1bmsgYnkgY2xpY2tpbmcgdGhlICpSdW4qIGJ1dHRvbiB3aXRoaW4gdGhlIGNodW5rDQpvciBieSBwbGFjaW5nIHlvdXIgY3Vyc29yIGluc2lkZSBpdCBhbmQgcHJlc3NpbmcgKkN0cmwrU2hpZnQrRW50ZXIqLg0KDQpgYGB7cn0NCiNjaGFyZ2VtZW50IGRlIHBhY2thZ2VzDQpsaWJyYXJ5KHRpZHl2ZXJzZSkNCmxpYnJhcnkoZ3RzdW1tYXJ5KQ0KbGlicmFyeShsdWJyaWRhdGUpDQoNCnNldHdkKCJDOi9Vc2Vycy9TQjU0NTkxMS9EZXNrdG9wL0RvY3VtZW50cyIpDQpnZXR3ZCgpDQpgYGANCg0KSW1wb3J0IGRlIGxhIGJhc2UgZGUgZG9ubmVzIGlzc3VlIGQgdW5lIHJlcXVldGUgQk8NCg0KRXh0cmFjdGlvbiBkZXMgUlVNIGRlIDIwMjIgZGVzIGxpdHMgZGVkaWVzIHNvaW5zIHBhbGxpYXRpZnMNCg0KY29uY2F0ZW5hdGlvbiBkZXMgUlVNIGFwcGFydGVuYW50IGF1IG1lbWUgc2Vqb3VyIDoNCg0KMyBwYWlyZXMgZGUgMiBSVU0gYXBwYXJ0ZW5hbnQgYXUgbWVtZSBSU1MNCg0KYGBge3J9DQpsaXNwPC1yZWFkLmNzdihmaWxlID0iQzovVXNlcnMvU0I1NDU5MTEvRGVza3RvcC9saXNwMjAyMi5jc3YiLHNlcD0iOyIsaGVhZD1UKQ0KYGBgDQoNCkRlc2NyaXB0aW9uIGdlbmVyYWxlDQoNCmBgYHtyfQ0Kc3VtbWFyeShsaXNwKQ0KDQpsaXNwJE5vX1JTUzwtYXMuY2hhcmFjdGVyKGxpc3AkTm9fUlNTKQ0KbGlzcCREYXRlX0RlYnV0X1Nlam91cjwtZG15KGxpc3AkRGF0ZV9EZWJ1dF9TZWpvdXIpDQpsaXNwJERhdGVfRmluX1Nlam91cjwtZG15KGxpc3AkRGF0ZV9GaW5fU2Vqb3VyKQ0KbGlzcCRHSFM8LWFzLmZhY3RvcihsaXNwJEdIUykNCmxpc3AkR2htPC1hcy5mYWN0b3IobGlzcCRHaG0pDQpsaXNwJE1vZGVfRW50cmVlPC1hcy5mYWN0b3IobGlzcCRNb2RlX0VudHJlZSkNCmxpc3AkUHJvdmVuYW5jZTwtYXMuZmFjdG9yKGxpc3AkUHJvdmVuYW5jZSkNCmxpc3AkTW9kZV9Tb3J0aWU8LWFzLmZhY3RvcihsaXNwJE1vZGVfU29ydGllKQ0KbGlzcCREZXN0aW5hdGlvbjwtYXMuZmFjdG9yKGxpc3AkRGVzdGluYXRpb24pDQpsaXNwJENvZGVfRFA8LWFzLmZhY3RvcihsaXNwJENvZGVfRFApDQpsaXNwJFVGPC1hcy5mYWN0b3IobGlzcCRVRikNCmBgYA0KDQoNCiMjIERFc2NyaXB0aW9uIGRlcyBzZWpvdXJzIGF2ZWMgcGFzc2FnZSBkYW5zIHVuIGxpdCBkZWRpZSBzb2lucyBwYWxsaWF0aWZzDQpgYGB7cn0NCnN1bW1hcnkobGlzcCkNCmBgYA0KDQoNCg0KDQpBdHRlbnRpb24sIGwndW0gZGUgc29pbnMgcGFsbGlhdGlmcyBuJ2VzdCBwYXMgZm9yY2VtZW50IGwndW0gcmV0ZW51ZQ0KZGFucyBsZSBncm91cGFnZQ0KDQpTdXIgbGVzIDE4NSBSVU0sIDEyNyBhdmFpZW50IGxlIFo1MS41IGVuIERQDQoNClJlcGFydGl0aW9uIGRlcyBydW0gc2Vsb24gbCdVRiBwbmV1bW9sb2dpZSAxIDogNTcgaGVtYXRvbG9naWUgb25jb2xvZ2llDQoNCjogICA1MCB1b3AgOiA0NCBnZXJpYXRyaWUgMSA6IDIxIHBuZXVtb2xvZ2llIDIgOiAxMCBnZXJpYXRyaWUgMiA6IDINCiAgICBtZWRlY2luZSBwb2x5dmFsZW50ZSA6IDENCg0KcmVncm91cGVtZW50IGQgdWYgcG5ldW1vbG9naWUgOiA2NyBoZW1hdG9sb2dpZSBvbmNvbG9naWUgOiA1MCB1b3AgOiA0NA0KZ2VyaWF0cmllIDogMjMgbWVkZWNpbmUgZ2VyaWF0cmlxdWUgMSA6IDIxIG1lZGVjaW5lIHBvbHl2YWxlbnRlIDogMQ0KDQpgYGB7cn0NCiMjIHByZW5kcmUgbGUgc291cyBlbnNlbWJsZSBkZXMgUlVNIGRvbnQgbGUgZ2htIDIzejAyeg0KDQpnaG1wYWxsaWE8LXN1YnNldChsaXNwLEdobT09IjIzWjAyWiIpDQpzdW1tYXJ5KGdobXBhbGxpYSkNCmBgYA0KDQoNCmBgYHtyfQ0KDQojMTYsNCBqb3Vycw0KI09uIGNvbXB0ZSA5NyBzZWpvdXJzIGF2ZWMgR0hNIHNvaW5zIHBhbGxpYXRpZnMNCiNkdXJlZSBtb3llbm5lICBydW0gMjAsMSBqb3VycyAgZHVyZWUgbWVkaWFuZSAxNSBqb3VycyAocTEtcTMgOC0yOCksIG1pbi1tYXggKDEtNzdqb3VycykNCg0KI3ZhbG9yaXNhdGlvbiA1NjcyIGV1cm9zIChqYW52LWZldiAyMDIyKSBwdWlzIDU3MTQgZXVyb3MgKG5vdXZlYXUgdGFyaWYgbWFycyAyMDIyKQ0KYTwtZ2htcGFsbGlhWyw4OjldDQpzdW1fdmFsbzwtYXBwbHkoYSwyLHN1bSkNCnN1bV92YWxvDQojcG91ciA5NyBzZWpvdXJzIGF2ZWMgR0hNIHNvaW5zIHBhbGxpYXRpZnMsIHVuZSB2YWxvcmlzYXRpb24gZGUgNTUzIDc5NiBldXJvcw0KDQojIG9uIGNvbXB0ZSA2MCBkZWNlcyBzdXIgOTcgcnVtIHNvaXQgNjAlDQoNCiN2YXJpYWJsZSBkdXJlZSBzZWpvdXIgZW4gZmFjdG9yaWVsbGUNCmdobXBhbGxpYSRkdXJlZV9zZWpvdXJfZmFjdDwtYXMuZmFjdG9yKGdobXBhbGxpYSREdXJlZV9TZWpvdXIpDQpzdW1tYXJ5KGdobXBhbGxpYSRkdXJlZV9zZWpvdXJfZmFjdCkNCg0KYGBgDQoNCkNvbWJpZW4gZGUgc2Vqb3VycyBzb250IGluZmVyaWV1cmVzIGEgbGEgYm9ybmUgZGUgNCBqb3Vycw0KDQoNClN1ciBsZXMgOTcgc2Vqb3VyczoNCjEwIHNvbnQgZW50cmUgMSBldCAzIGpvdXJzIA0KMTkgZW50cmUgNCBldCAxMiBqb3VycyANCjY4IHBsdXMgZGUgMTIgam91cnMgDQoNCmNyZWF0aW9uIGRlIHZhcmlhYmxlICJuYl9iYXMiIHBvdXIgbm9tYnJlIGRlIGpvdXJzIHNvdXMgbGEgYm9ybmUgYmFzc2UNCiJuYl9oYXV0IiBwb3VyIG5vbWJyZSBkZSBqb3VycyBhdSBkZWxhIGRlIGxhIGJvcm5lIGhhdXRlDQoNCmBgYHtyfQ0KZ2htcGFsbGlhJG5iX2JhczwtNC1naG1wYWxsaWEkRHVyZWVfU2Vqb3VyDQpzdW1tYXJ5KGdobXBhbGxpYSRuYl9iYXMpDQpnaG1wYWxsaWEkbmJfYmFzW2dobXBhbGxpYSRuYl9iYXM8MHxnaG1wYWxsaWEkTW9kZV9Tb3J0aWU9PSI5Il08LTANCg0KI3NpIGRlY2VzDQpnaG1wYWxsaWEkbmJfaGF1dDwtZ2htcGFsbGlhJER1cmVlX1Nlam91ci0xMQ0Kc3VtbWFyeShnaG1wYWxsaWEkbmJfaGF1dCkNCg0KIGdobXBhbGxpYTwtZ2htcGFsbGlhJT4lbXV0YXRlKG5iX2hhdXRiaXM9aWZfZWxzZShNb2RlX1NvcnRpZSE9IjkiLG5iX2hhdXQtMSxuYl9oYXV0KSkNCiBnaG1wYWxsaWE8LWdobXBhbGxpYSU+JW11dGF0ZShuYl9oYXV0dGVyPWlmX2Vsc2UobmJfaGF1dGJpczwwLDAsbmJfaGF1dGJpcykpDQoNCm5hbWVzKGdobXBhbGxpYSkNCmdobXBhbGxpYSU+JXNlbGVjdCg0LDEyLDE3LDIwKQ0KIHNhdmUoZ2htcGFsbGlhLGZpbGU9ImdobXBhbGxpYS5SZGF0YSIpDQogaGVhZChnaG1wYWxsaWEpDQogbmFtZXMoZ2htcGFsbGlhKQ0KIGdobXBhbGxpYSU+JXNlbGVjdCgxLDQsMTIsMTcsMjAsMjEpDQpgYGANCg0KRXN0aW1lciBsYSB2YWxvDQoNCmBgYHtyfQ0KDQoNCmdobXBhbGxpYTwtZ2htcGFsbGlhJT4lbXV0YXRlKHRhcmlmPTY1OTUuMTcrbmJfaGF1dHRlcio0MzAuMDUtbmJfYmFzKjE1MDEuNzUpDQoNCm5hbWVzKGdobXBhbGxpYSkNCnJlY2V0dGU8LWdobXBhbGxpYVssYyg5LDIyKV0NCiBhcHBseShyZWNldHRlLDIsc3VtKQ0KIyAgICBuYiBqb3VycyBydW0gMTk1MSAgIHNvbW1lIHRhcmlmIHNpbXVsZSAxIDI2OSA1NTAgZXVyb3MNCiANCiANCiBzdW1tYXJ5KGdobXBhbGxpYSkNCiANCmBgYA0KcG91ciA5NyBydW0sIHZhbG8gZGUgMTI2OTU1MCANCg0KDQoNCg0KDQpFdHVkZSBsYSB2YWxvIGRlcyBzw6lqb3VycyBkb250IEdITSBkaWZmZXJlbnQgZGUgMjNaMDJaLCBvw7kNCmxlIHBhdGllbnQgcG91cnJhIGFsbGVyIGRhbnMgdW5lIHVNIHByw6ljw6lkZW50ZS4NCkNlcyBzZWpvdXJzIHJlcHJlc2VudGVudCA4OCBzZWpvdXJzLzE5NyBqb3Vycw0KZG9uYyBkYW5zIDQ1JSBkZXMgY2FzLCBHSE0gZGlmZmVyZW50IDIzWjAyWg0KcXVlbGxlIGVzdCBsYSB2YWxvIGRlcyBjZXMgODggc2Vqb3VycyA/DQoNCmBgYHtyfQ0KZ2htZGlmZjwtbGlzcCU+JWZpbHRlcihHaG0hPSIyM1owMloiKQ0Kc3VtbWFyeShnaG1kaWZmKQ0KYGBgDQpPbiBub3RlIHVuZSB2YWxvcmlzYXRpb24gYWxsYW50IGRlIDE1ODMgw6AgMTY4NDIgZXVyb3MgYXZlYyB1bmUNCm1veWVubmUgZGUgZGUgNzU3NCBldXJvcy4NCklMIHkgYSA2IHRyYW5zZmVydHMgZCd1biBhdXRyZSDDqXRhYmxpc3NlbWVudCBldCA4IHZlbmFudCBkdSBkb21pY2lsZS4NClBvdXIgY2VzIDE0IHBlcnNvbm5lcywgbm91cyBwb3V2b25zIGFwcGxpcXVlciBsZXMgdGFyaWZzIEdIUzc5OTQgZXQgdm9pcg0Kc2kgbGUgbW9udGFudCBlc3Qgc3Vww6lyaWV1ciBhdSBHSFMgYWN0dWVsLg0KDQpJbmZvcm1hdGlvbiDDoCByZWN1cGVyZXIgbGVzIG1vbm9ydW0NCg0KYGBge3J9DQpyZWN1cF9ub3J1bTwtcmVhZC5jc3YoZmlsZSA9IkM6L1VzZXJzL1NCNTQ1OTExL0Rlc2t0b3AvcmVjdXBfbm9ydW0uY3N2IixzZXA9IjsiLGhlYWQ9VCkNCnN0cihyZWN1cF9ub3J1bSkNCnJlY3VwX25vcnVtJE5vX1JTUzwtYXMuY2hhcmFjdGVyKHJlY3VwX25vcnVtJE5vX1JTUykNCmxpc3AyPC1saXNwJT4lbGVmdF9qb2luKHJlY3VwX25vcnVtKQ0KbmFtZXMobGlzcDIpDQpzYXZlKGxpc3AyLGZpbGU9Imxpc3AyLlJkYXRhIikNCmBgYA0KRmFpcmUgbGVzIHNpbXVsYXRpb25zIHBvdXIgbGVzIG1vbm9ydW0NCkRQIHNvaW5zIHBhbGxpYT0+bXVsdGlwbGllciB2YWxvIEdIUyBwYXIgMSwxNA0KRFAgIT0gc29pbnMgcGFsbGlhIDogcmVnYXJkZXIgY2UgcXVpIGVzdCBwbHVzIHZhbG9yaXNhbnQgZW50cmUgR0hTIDc5OTQgZXQgR0hTIGFjdHVlbA0KDQpgYGB7cn0NCm1vbm9ydW08LXN1YnNldChsaXNwMixsaXNwMiROYl9SVU09PTEpDQpkaW0obW9ub3J1bSkNCnNhdmUobW9ub3J1bSwgZmlsZT0ibW9ucnVtLlJkYXRhIikgIzk1IHJ1bQ0Kc3VtbWFyeShtb25vcnVtKQ0KYGBgDQo1Ny85NSBvbnQgRFAgWjUxLjUNCjcwLzk1IHNvbnQgZGVjZXMNCmR1cmVlIDEgYSA4NiBqb3VycywgbW95IDE4IGpvdXJzDQoNClRBUklGDQpwb3VyIGxlcyBnaG0gMjN6MDJ6IDogYXBwbGlxdWVyIGxlIEdIUzc5OTQgKHgxLjE1IEdIUyA3OTkzKQ0KDQpzaW11bGF0aW9uIHRhcmlmIGF1dHJlIGdobQ0KDQpgYGB7cn0NCmF1dHJlZ2htPC1zdWJzZXQobW9ub3J1bSwgR2htIT0iMjNaMDJaIikNCnN1bW1hcnkoYXV0cmVnaG0pDQpgYGANCg0KTm91dmVhdSB0YXJpZiA6IHNpbXVsR0hTNzk5NA0KYGBge3J9DQphdXRyZWdobSRuYl9iYXM8LTQtYXV0cmVnaG0kRHVyZWVfU2Vqb3VyDQpzdW1tYXJ5KGF1dHJlZ2htJG5iX2JhcykNCmF1dHJlZ2htJG5iX2Jhc1thdXRyZWdobSRuYl9iYXM8MHxhdXRyZWdobSRNb2RlX1NvcnRpZT09IjkiXTwtMA0Kc3VtbWFyeShhdXRyZWdobSRuYl9iYXMpDQoNCiNzaSBkZWNlcw0KYXV0cmVnaG0kbmJfaGF1dDwtYXV0cmVnaG0kRHVyZWVfU2Vqb3VyLTEyDQpzdW1tYXJ5KGF1dHJlZ2htJG5iX2hhdXQpDQoNCiBhdXRyZWdobTwtYXV0cmVnaG0lPiVtdXRhdGUobmJfaGF1dGJpcz1pZl9lbHNlKE1vZGVfU29ydGllIT0iOSIsbmJfaGF1dC0xLG5iX2hhdXQpKQ0KIGF1dHJlZ2htPC1hdXRyZWdobSU+JW11dGF0ZShuYl9oYXV0dGVyPWlmX2Vsc2UobmJfaGF1dGJpczwwLDAsbmJfaGF1dGJpcykpDQoNCm5hbWVzKGF1dHJlZ2htKQ0KYXV0cmVnaG0lPiVzZWxlY3QoNCwxMiwxOCwyMSkNCg0KYXV0cmVnaG08LWF1dHJlZ2htJT4lbXV0YXRlKHRhcmlmPTY1OTUuMTcrbmJfaGF1dHRlcio0MzAuMDUtbmJfYmFzKjE1MDEuNzUpDQpgYGANCg0KamUgcGV1eCBwcmVuZHJlIGxlcyBtb25vcnVtIGdobSBkaWZmZXJlbnRzIDIzeiArIGVuIHBsdXMgZGUgbCdlbnNlbWJsZSBkZXMgYXV0cmVzIGdobTIzeg0KYGBge3J9DQpuYW1lcyhhdXRyZWdobSkNCmF1dHJlZ2htJT4lc2VsZWN0KDEsNCw4LDIyLDE4LDIxKQ0KDQojamUgY3JlZSB1bmUgdmFyaWFibGUgbWVpbGxldXJ0YXJpZiA6IGxlIG1laWxsZXVyIGRlIHZhbG9yaXNhdGlvbiBnaHMgZXQgZGUgdGFyaWYNCg0KDQphdXRyZWdobSRWYWxvcmlzYXRpb25fR0hTPC1hcy5udW1lcmljKGF1dHJlZ2htJFZhbG9yaXNhdGlvbl9HSFMpDQphdXRyZWdobTwtYXV0cmVnaG0lPiVtdXRhdGUobWVpbGxldXJfdGFyaWY9aWZfZWxzZSh0YXJpZj5WYWxvcmlzYXRpb25fR0hTLHRhcmlmLFZhbG9yaXNhdGlvbl9HSFMpKQ0Kc3RyKGF1dHJlZ2htKQ0KDQpuYW1lcyhhdXRyZWdobSkNCmF1dHJlZ2htJT4lc2VsZWN0KDEsNCw4LDIyLDE4LDIxLDIzKQ0KDQpzdW1tYXJ5KGF1dHJlZ2htKQ0KDQpyZWNldHRlYXV0cmVnaG08LWF1dHJlZ2htJT4lc2VsZWN0KDksMjIpDQphcHBseShyZWNldHRlYXV0cmVnaG0sMixzdW0pDQojYXUgdG90YWwgNTY0IGpvdXJzIHBvdXIgcmVjZXR0ZSBjb21wbGV0ZSAzNDggMjM3IGV1cm9zDQoNCiNlbiBjaGFuZ2VhbnQgbGUgZHAsIG9uIHBhc3NlIGQndW5lIHZhbG8gbW95ZW5uZSBkZSA3MDkwIGV1cm9zIMOgIDk3MDINCmBgYA0KDQoNCg0KDQoNCmVuIDIwMjIgOg0KOTcvMTg1PTUyJSBzZWpvdXJzIGdobSAyM3owMnogYXZlYyBzaW11bGF0aW9uIG5vdXZlYXV4IHRhcmlmcyBnaHMgNzk5NCBhdmVjIHJlY2V0dGUgdG90YWxlIDEgMjY5IDU1MCBldXJvcw0KMzgvMTg1PTIxJSBzZWpvdXJzIGdobSAhPTIzejAyeiBtb25ydW0gYXZlYyBvYnRlbnRpb24gbWVpbGxldXJlIHNpbXVsYXRpb24gIGF2ZWMgcmVjZXR0ZSBjb21wbGV0ZSAzNDggMjM3IGV1cm9zDQo1MC8xODU9MjclIHNlam91cnMgZ2htIT0yM3owMnogbXVsdGlydW0gc2ltdWxhdGlvbiBpbXBvc3NpYmxlIGRvbnQgbGEgdmFsbyBlc3QgOjM5NyAwNTYgKHZhbG8gZ2hzIG1haXMgcGFzIHRhcmlmIHRvdGFsLCB2YXJpYWJsZSBub24gZGlzcG8gc3VyIGJvKQ0KDQpkdXJlZSBtb3llbm5lIHJ1bSBsaXNwIDE1LDQ1IGpvdXJzDQoxNSBsaXRzDQozNjUgam91cnMNCjU0NzUgbGl0cyBqb3Vycw0KNTQ3NS8xNSw0NT0zNTQNCnRhdXggb2NjdXBhdGlvbiA5MCUNCjAsOTAqMzU0PTMxOCw5IHJ1bSBsaXNwL3Jzcw0KDQpBUFBMSUNBVElPTiBTSU1VTEFUSU9ODQowLjUyKjMxOT0xNjYgc2Vqb3VycyAyM3owMnogc29pdCAyIDE3MiA2MzEgZXVyb3MNCjAuMjEqMzE5PTY3IHNlam91cnMgc29pdCA2MTMgOTk2IGV1cm9zDQowLjI3KjMxOT04NiBzZWpvdXJzIHNvaXQgNjgyIDkzNiBldXJvcw0KDQpzb21tZSByZWNldHRlIDMgNDY5IDU2MyBldXJvcw0KDQoNCg==