From 4d6a97f7a58ce83a5e12a6b24c8d7855547dc74b Mon Sep 17 00:00:00 2001 From: amyheather Date: Wed, 6 Aug 2025 14:34:48 +0100 Subject: [PATCH 1/9] docs(authorship): add tom monks to author list as reviewer --- CITATION.cff | 5 +++++ README.md | 10 +++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/CITATION.cff b/CITATION.cff index f63a922..b8a462d 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -14,6 +14,11 @@ authors: email: a.heather2@exeter.ac.uk affiliation: University of Exeter orcid: 'https://orcid.org/0000-0002-6596-3479' + - given-names: Thomas + family-names: Monks + email: t.m.w.monks@exeter.ac.uk + affiliation: University of Exeter + orcid: 'https://orcid.org/0000-0003-2631-4481' repository-code: >- https://github.com/pythonhealthdatascience/pydesrap_stroke abstract: >- diff --git a/README.md b/README.md index ca5fc19..8678e45 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,6 @@ [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.15574906.svg)](https://doi.org/10.5281/zenodo.15574906) [![Tests](https://github.com/pythonhealthdatascience/pydesrap_stroke/actions/workflows/tests.yaml/badge.svg)](https://github.com/pythonhealthdatascience/pydesrap_stroke/actions/workflows/tests.yaml) [![Linting](https://github.com/pythonhealthdatascience/pydesrap_stroke/actions/workflows/lint.yaml/badge.svg)](https://github.com/pythonhealthdatascience/pydesrap_stroke/actions/workflows/lint.yaml) -[![ORCID](https://img.shields.io/badge/ORCID_Amy_Heather-0000--0002--6596--3479-A6CE39?&logo=orcid&logoColor=white)](https://orcid.org/0000-0002-6596-3479) @@ -119,9 +118,9 @@ The other notebooks generate results for tests and illustrate other functionalit For this applied example, please cite either: -> Heather, A. (2025). Stroke capacity planning model: python DES RAP. GitHub. https://github.com/pythonhealthdatascience/pydesrap_stroke. +> Heather, A. Monks, T. (2025). Stroke capacity planning model: python DES RAP. GitHub. https://github.com/pythonhealthdatascience/pydesrap_stroke. > -> Heather, A. (2025). Stroke capacity planning model: python DES RAP. Zenodo. https://doi.org/10.5281/zenodo.15574906. +> Heather, A. Monks, T. (2025). Stroke capacity planning model: python DES RAP. Zenodo. https://doi.org/10.5281/zenodo.15574906. A `CITATION.cff` file is also provided. @@ -132,6 +131,11 @@ A `CITATION.cff` file is also provided. * [![ORCID](https://img.shields.io/badge/ORCID-0000--0002--6596--3479-A6CE39?style=for-the-badge&logo=orcid&logoColor=white)](https://orcid.org/0000-0002-6596-3479) * [![GitHub](https://img.shields.io/badge/GitHub-amyheather-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/amyheather) +**Tom Monks** - peer review of the repository. + +* [![ORCID](https://img.shields.io/badge/ORCID-0000--0003--2631--4481-A6CE39?style=for-the-badge&logo=orcid&logoColor=white)](https://orcid.org/0000-0003-2631-4481) +* [![GitHub](https://img.shields.io/badge/GitHub-TomMonks-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/TomMonks) +
## Licence From f58a1ae0141507276cbd6b7d271d8ffd640a5a0a Mon Sep 17 00:00:00 2001 From: amyheather Date: Wed, 6 Aug 2025 14:54:04 +0100 Subject: [PATCH 2/9] docs(stress): update/rewrite (#4) --- docs/stress_des.md | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/docs/stress_des.md b/docs/stress_des.md index 7a149c3..37f5c43 100644 --- a/docs/stress_des.md +++ b/docs/stress_des.md @@ -6,20 +6,20 @@ This checklist describes the study: > Monks T, Worthington D, Allen M, Pitt M, Stein K, James MA. A modelling tool for capacity planning in acute and community stroke services. BMC Health Serv Res. 2016 Sep 29;16(1):530. doi: [10.1186/s12913-016-1789-4](https://doi.org/10.1186/s12913-016-1789-4). PMID: 27688152; PMCID: PMC5043535. -Answers to this checklist, and the diagram used, are copied and/or adapted from [llm_simpy/notebooks/03_stroke/00_stress/](https://github.com/pythonhealthdatascience/llm_simpy/tree/main/notebooks/03_stroke/00_stress), which is shared under an MIT licence by: +Answers to this checklist are adapted from [llm_simpy/notebooks/03_stroke/00_stress/](https://github.com/pythonhealthdatascience/llm_simpy/tree/main/notebooks/03_stroke/00_stress), which is shared under an MIT licence by: > Monks, T., Harper, A., & Heather, A. (2025). Unlocking the Potential of Past Research: Using Generative AI to Reconstruct Healthcare Simulation Models. GitHub. https://github.com/pythonhealthdatascience/llm_simpy. | **Item** | **Description** | | - | - | | **Objectives** | -| **1.1 Purpose of the model**
Explain the background and objectives for the model | The simulation model provides capacity planning tools for acute stroke and rehabilitation units across a shared service that cares for Stroke, TIA, Complex Neurology and other types of neurological dependency patients. It guides users on the likelihood that a given capacity will cause admission delays. | -| **1.2 Model outputs**
Define all quantitative performance measures that are reported, using equations where necessary. Specify how and when they are calculated during the model run along with how any measures of error such as confidence intervals are calculated. | At the end of a model run the following is calculated:
・ The probability of delay - p(delay) - in admission to an Acute Stroke Unit by bed numbers.
・ The probability of delay - p(delay) - in admission to a Rehabilitation Unit by bed numbers.
・ The reciprocal of p(delay) for both ASU and Rehab. Interpreted as 1 in every n patients is delayed.
・ The occupancy distribution of the Acute Stroke Unit.
・ The occupancy distribution of the Rehabilitation Unit
The probability of delay is calculated as follows: `P(N=n)/P(<=n)` | -| **1.3 Experimentation aims**
If the model has been used for experimentation, state the objectives that it was used to investigate.
(A) Scenario based analysis – Provide a name and description for each scenario, providing a rationale for the choice of scenarios and ensure that item 2.3 (below) is completed.
(B) Design of experiments – Provide details of the overall design of the experiments with reference to performance measures and their parameters (provide further details in data below).
(C) Simulation Optimisation – (if appropriate) Provide full details of what is to be optimised, the parameters that were included and the algorithm(s) that was be used. Where possible provide a citation of the algorithm(s). | This is an infinite server model. A single scenario is run, given set of arrival and length of stay parameters, to produce a distribution of outputs. | +| **1.1 Purpose of the model**
Explain the background and objectives for the model | The simulation model helps plan bed capacity for acute stroke and rehabilitation units by showing how different patient groups (stroke, TIA, complex neurology, and others) use beds and how changes in capacity or patient flow affect admission delays. | +| **1.2 Model outputs**
Define all quantitative performance measures that are reported, using equations where necessary. Specify how and when they are calculated during the model run along with how any measures of error such as confidence intervals are calculated. | At the end of each simulation run, the model calculates:
・ **Probability of admission delay** to the Acute Stroke Unit and Rehabilitation Unit for each tested bed capacity (p(delay)).
・ **"1 in n" metric**: how often a delay occurs (reciprocal of probability).
・ **Occupancy distributions** for both units (frequency of different occupancy levels over time).
Delay probability is calculated as `P(N=n)/P(<=n)`, where N is the number of occupied beds. | +| **1.3 Experimentation aims**
If the model has been used for experimentation, state the objectives that it was used to investigate.
(A) Scenario based analysis – Provide a name and description for each scenario, providing a rationale for the choice of scenarios and ensure that item 2.3 (below) is completed.
(B) Design of experiments – Provide details of the overall design of the experiments with reference to performance measures and their parameters (provide further details in data below).
(C) Simulation Optimisation – (if appropriate) Provide full details of what is to be optimised, the parameters that were included and the algorithm(s) that was be used. Where possible provide a citation of the algorithm(s). | This is an infinite server simulation, where every patient is admitted immediately and there is no queue. Each scenario uses set arrival and length-of-stay parameters to generate occupancy distributions. Users can explore different scenarios - like increased demand, bed pooling, or subgroup removal - by adjusting these inputs and analysing key outcomes. | | **Logic** | | **2.1 Base model overview diagram**
Describe the base model using appropriate diagrams and description. This could include one or more process flow, activity cycle or equivalent diagrams sufficient to describe the model to readers. Avoid complicated diagrams in the main text. The goal is to describe the breadth and depth of the model with respect to the system being studied. | ![Logic diagram](../images/stroke_rehab_design.png) | -| **2.2 Base model logic**
Give details of the base model logic. Give additional model logic details sufficient to communicate to the reader how the model works. | The model allows users to specify a population of stroke, transient ischaemic attack (TIA; or mini-stroke), complex neurological, and other patient types that use acute and rehabilitation services. The patient classes have their own external inter-arrival distributions to acute and rehabilitation services, transfer probabilities between services and length of stay distributions (where first sub division occurs to model ESD versus non-ESD patients). The model takes an infinite capacity approach to capacity planning and estimates the probability of delay. A warm-up period and multiple replications are employed. The ESD modelling is not documented in the article we therefore chose to simplify the design and focus on the acute stroke and rehabilitation units; although we aimed for model setup to be simple to extend for ESD capacity modelling. | -| **2.3 Scenario logic**
Give details of the logical difference between the base case model and scenarios (if any). This could be incorporated as text or where differences are substantial could be incorporated in the same manner as 2.2. | Only a single scenario is included in this recreation experiment. To recreate the original paper’s increased demand scenarios the inter-arrival times could be increased in the `Experiment` class. | +| **2.2 Base model logic**
Give details of the base model logic. Give additional model logic details sufficient to communicate to the reader how the model works. | The model lets users define populations of stroke, TIA, complex neurology, and other patients, each with their own arrival patterns, transfer probabilities, and length-of-stay distributions for acute and rehab services. It uses an infinite capacity approach to estimate admission delay probability. The design focuses on acute and rehab units, with a warm-up period and multiple replications; ESD pathways are simplified but the model can be extended to include them. | +| **2.3 Scenario logic**
Give details of the logical difference between the base case model and scenarios (if any). This could be incorporated as text or where differences are substantial could be incorporated in the same manner as 2.2. | Scenarios in the article (increased demand, grouping patient types) are implemented as parameter changes in the notebooks. | | **2.4 Algorithms**
Provide further detail on any algorithms in the model that (for example) mimic complex or manual processes in the real world (i.e. scheduling of arrivals/ appointments/ operations/ maintenance, operation of a conveyor system, machine breakdowns, etc.). Sufficient detail should be included (or referred to in other published work) for the algorithms to be reproducible. Pseudo-code may be used to describe an algorithm. | There are no algorithms used in this model. | | **2.5.1 Components - entities**
Give details of all entities within the simulation including a description of their role in the model and a description of all their attributes. | ・ Stroke
・ Transient Ischemic Attack (TIA - minor strokes with rapidly resolving symptoms)
・ Complex Neurological
・ Other (including medical outliers) | | **2.5.2 Components - activities**
Describe the activities that entities engage in within the model. Provide details of entity routing into and out of the activity. | ASU + rehab treatment activities:
・ Stroke patients who are eligible for Early Supported Discharge
・ Stroke patients who are **NOT** eligible for Early Supported Discharge
・ TIA
・ Other | @@ -27,18 +27,18 @@ Answers to this checklist, and the diagram used, are copied and/or adapted from | **2.5.4 Components - queues**
Give details of the assumed queuing discipline used in the model (e.g. First in First Out, Last in First Out, prioritisation, etc.). Where one or more queues have a different discipline from the rest, provide a list of queues, indicating the queuing discipline used for each. If reneging, balking or jockeying occur, etc., provide details of the rules. Detail any delays or capacity constraints on the queues. | ・ None | | **2.5.5 Components - entry/exit points**
Give details of the model boundaries i.e. all arrival and exit points of entities. Detail the arrival mechanism (e.g. ‘thinning’ to mimic a non-homogenous Poisson process or balking) | ・ Each patient class has an ASU arrival process with its own distribution and parameters.
・ A proportion of ASU patients exit the model after acute treatment is complete.
・ Stroke, Complex Neurological and Other patients have an additional external Rehab arrival process with its own distribution and parameters.
・ All rehab patients exit the model when rehab is completed. | | **Data** | -| **3.1 Data sources**
List and detail all data sources. Sources may include:
• Interviews with stakeholders,
• Samples of routinely collected data,
• Prospectively collected samples for the purpose of the simulation study,
• Public domain data published in either academic or organisational literature. Provide, where possible, the link and DOI to the data or reference to published literature.
All data source descriptions should include details of the sample size, sample date ranges and use within the study. | All data is sourced from the 2016 publication in the Health Services Research: Monks T, Worthington D, Allen M, Pitt M, Stein K, James MA. A modelling tool for capacity planning in acute and community stroke services. BMC Health Serv Res. 2016 Sep 29;16(1):530. doi: 10.1186/s12913-016-1789-4. PMID: 27688152; PMCID: PMC5043535.
In [Monks et al. (2016)](http://doi.org/10.1186/s12913-016-1789-4) they state: "*The model was constructed using anonymised administrative data collected routinely by the healthcare provider in the acute and community settings.*" | -| **3.2 Pre-processing**
Provide details of any data manipulation that has taken place before its use in the simulation, e.g. interpolation to account for missing data or the removal of outliers. | No additional pre-processing of data was undertaken. This was conducted in the original study.
In [Monks et al. (2016)](http://doi.org/10.1186/s12913-016-1789-4) they state: "*All patients had a recorded primary diagnosis using ICD-10 coding. These codes were grouped into a simpler coding scheme of stroke (ischemic or haemorrhagic), TIA, complex neurological and other. The ‘other’ category represents medical patients who are displaced into the stroke units due to capacity constraints elsewhere in the hospital.*" | +| **3.1 Data sources**
List and detail all data sources. Sources may include:
• Interviews with stakeholders,
• Samples of routinely collected data,
• Prospectively collected samples for the purpose of the simulation study,
• Public domain data published in either academic or organisational literature. Provide, where possible, the link and DOI to the data or reference to published literature.
All data source descriptions should include details of the sample size, sample date ranges and use within the study. | All base-case parameter values (arrival rates, length-of-stay, routing probabilities) are sourced from Monks T. et al. (2016, BMC Health Serv Res). They state: "*The model was constructed using anonymised administrative data collected routinely by the healthcare provider in the acute and community settings.*" | +| **3.2 Pre-processing**
Provide details of any data manipulation that has taken place before its use in the simulation, e.g. interpolation to account for missing data or the removal of outliers. | No additional pre-processing of data was undertaken. This was conducted in Monks T. et al. (2016, BMC Health Serv Res). They state: "*All patients had a recorded primary diagnosis using ICD-10 coding. These codes were grouped into a simpler coding scheme of stroke (ischemic or haemorrhagic), TIA, complex neurological and other. The ‘other’ category represents medical patients who are displaced into the stroke units due to capacity constraints elsewhere in the hospital.*" | | **3.3 Input parameters**
List all input variables in the model. Provide a description of their use and include parameter values. For stochastic inputs provide details of any continuous, discrete or empirical distributions used along with all associated parameters. Give details of all time dependent parameters and correlation.
Clearly state:
• Base case data
• Data use in experimentation, where different from the base case.
• Where optimisation or design of experiments has been used, state the range of values that parameters can take.
• Where theoretical distributions are used, state how these were selected and prioritised above other candidate distributions. | All sampling distributions are reported in the original paper. We did not make any additional assumptions.

**Arrivals and length of stay parameters**
• ASU Arrivals: Stroke - Exponential(1.2 days)
• ASU Arrivals: TIA - Exponential(9.3 days)
• ASU Arrivals: Complex Neuro - Exponential(3.6 days)
• ASU Arrivals: Other - Exponential(3.2 days)
• Rehab Arrivals: Stroke - Exponential(21.8 days)
• Rehab Arrivals: Complex Neuro - Exponential(31.7 days)
• Rehab Arrivals: Other - Exponential(28.6 days)
• ASU Length of Stay: Stroke No ESD - LogNormal(mean=7.4, sd=8.61)
• ASU Length of Stay: Stroke ESD - LogNormal(mean=4.6, sd=4.8)
• ASU Length of Stay: TIA - LogNormal(mean=1.8, sd=2.3)
• ASU Length of Stay: Complex Neuro - LogNormal(mean=4.0, sd=5.0)
• ASU Length of Stay: Other - LogNormal(mean=3.8, sd=5.2)
• Rehab Length of Stay: Stroke No ESD - LogNormal(mean=28.4, sd=27.2)
• Rehab Length of Stay: Stroke ESD - LogNormal(mean=30.3, sd=23.1)
• Rehab Length of Stay: TIA - LogNormal(mean=18.7, sd=23.5)
• Rehab Length of Stay: Complex Neuro - LogNormal(mean=27.6, sd=28.4)
• Rehab Length of Stay: Other - LogNormal(mean=16.1, sd=14.1)

**Patient routing out of ASU**
A discrete distribution was used for each patient type with the following probabilities:
• Rehab - stroke 24%, TIA 1%, complex neuro 11%, other 5%.
• ESD - stroke 13%, TIA 1%, complex neuro 5%, other 10%
• Other - stroke 63%, TIA 98%, complex neuro 84%, other 85%

**Patient routing out of rehab**
A discrete distribution was used for each patient type with the following probabilities:
• ESD stroke 40%, TIA 0%, complex neuro 9%, other 13%
• Other - stroke 60%, TIA 100%, complex neuro 91%, other 88%| -| **3.4 Assumptions**
Where data or knowledge of the real system is unavailable what assumptions are included in the model? This might include parameter values, distributions or routing logic within the model. | • Monks et al. report that the model can be used to report results for ESD probability of delay and capacity.
• No data are given for Length of stay in this service. Therefore we simplified the model to use ESD as an exit point. | +| **3.4 Assumptions**
Where data or knowledge of the real system is unavailable what assumptions are included in the model? This might include parameter values, distributions or routing logic within the model. | No additional model structure assumptions are made beyond those described in the main article for the subset of care steps implemented. ESD is modeled as an exit point as there are no LOS data for this service in the original publication. | | **Experimentation** | | **4.1 Initialisation**
Report if the system modelled is terminating or non-terminating. State if a warm-up period has been used, its length and the analysis method used to select it. For terminating systems state the stopping condition.
State what if any initial model conditions have been included, e.g., pre-loaded queues and activities. Report whether initialisation of these variables is deterministic or stochastic. | The model is a non-terminating system. It has a default warm-up of 3 years (365 days * 3). | | **4.2 Run length**
Detail the run length of the simulation model and time units. | The time units used in the model are days and a results collection period of 5 years (365 days * 5). | -| **4.3 Estimation approach**
State the method used to account for the stochasticity: For example, two common methods are multiple replications or batch means. Where multiple replications have been used, state the number of replications and for batch means, indicate the batch length and whether the batch means procedure is standard, spaced or overlapping. For both procedures provide a justification for the methods used and the number of replications/size of batches. | Multiple independent replications are employed to account for lack of independence. Common random numbers are employed between scenarios. A total of 150 replications are run for each experiment, but this number can be varied. | +| **4.3 Estimation approach**
State the method used to account for the stochasticity: For example, two common methods are multiple replications or batch means. Where multiple replications have been used, state the number of replications and for batch means, indicate the batch length and whether the batch means procedure is standard, spaced or overlapping. For both procedures provide a justification for the methods used and the number of replications/size of batches. | Multiple independent replications (n=150) are run, each with its own random seed. | | **Implementation** | -| **5.1 Software or programming language**
State the operating system and version and build number.
State the name, version and build number of commercial or open source DES software that the model is implemented in.
State the name and version of general-purpose programming languages used (e.g. Python 3.5).
Where frameworks and libraries have been used provide all details including version numbers. | The simulation model was developed using python 3.10 and simpy 4.1.1. Simpy details are here: https://simpy.readthedocs.io/en/latest/. A conda virtual environment is provided to manage versions on a local machine. | -| **5.2 Random sampling**
State the algorithm used to generate random samples in the software/programming language used e.g. Mersenne Twister.
If common random numbers are used, state how seeds (or random number streams) are distributed among sampling processes. | All sampling uses `numpy.random.Generator`. A `numpy` generator object implements the Permuted Congruential Generator 64-bit (PCG64; period = 2^128; maximum number of streams = 2^63).
Repeatable experiments and common random number streams are used in the model. A simple method is used to create streams are creating using multiple seeds. This does not guarantee, that streams are non overlapping. | -| **5.3 Model execution**
State the event processing mechanism used e.g. three phase, event, activity, process interaction.
*Note that in some commercial software the event processing mechanism may not be published. In these cases authors should adhere to item 5.1 software recommendations.*
State all priority rules included if entities/activities compete for resources.
If the model is parallel, distributed and/or use grid or cloud computing, etc., state and preferably reference the technology used. For parallel and distributed simulations the time management algorithms used. If the HLA is used then state the version of the standard, which run-time infrastructure (and version), and any supporting documents (FOMs, etc.) | `simpy` implements a process based simulation worldview. | -| **5.4 System specification**
State the model run time and specification of hardware used. This is particularly important for large scale models that require substantial computing power. For parallel, distributed and/or use grid or cloud computing, etc. state the details of all systems used in the implementation (processors, network, etc.) | Intel Core i7-12700H with 32GB RAM running Ubuntu 24.04.1 Linux. | +| **5.1 Software or programming language**
State the operating system and version and build number.
State the name, version and build number of commercial or open source DES software that the model is implemented in.
State the name and version of general-purpose programming languages used (e.g. Python 3.5).
Where frameworks and libraries have been used provide all details including version numbers. | The simulation model was developed using python 3.13.1, `simpy` for DES logic, `sim-tools` for distributions, among others. All requirements are pinned in `environment.yaml` and `requirements.txt`, to support full reproducibility. Runs on Linux, macOS, and Windows. | +| **5.2 Random sampling**
State the algorithm used to generate random samples in the software/programming language used e.g. Mersenne Twister.
If common random numbers are used, state how seeds (or random number streams) are distributed among sampling processes. | All random sampling uses `numpy.random.Generator` (PCG64). Each replication and each distribution stream are assigned separate, deterministic seeds based on the run number to ensure repeatability and enable common random numbers. Streams are initialised with different seeds. | +| **5.3 Model execution**
State the event processing mechanism used e.g. three phase, event, activity, process interaction.
*Note that in some commercial software the event processing mechanism may not be published. In these cases authors should adhere to item 5.1 software recommendations.*
State all priority rules included if entities/activities compete for resources.
If the model is parallel, distributed and/or use grid or cloud computing, etc., state and preferably reference the technology used. For parallel and distributed simulations the time management algorithms used. If the HLA is used then state the version of the standard, which run-time infrastructure (and version), and any supporting documents (FOMs, etc.) | `simpy` implements a process based simulation worldview. Multiple replications are handled either sequentially or with parallelism (`Runner`, via `joblib.Parallel`). | +| **5.4 System specification**
State the model run time and specification of hardware used. This is particularly important for large scale models that require substantial computing power. For parallel, distributed and/or use grid or cloud computing, etc. state the details of all systems used in the implementation (processors, network, etc.) | Saved results and run times are from execution on Intel Core i7-12700H with 32GB RAM running Ubuntu 24.04.1 Linux. Hardware requirements are minimal; model is platform-agnostic. | | **Code access** | -| **6.1 Computer model sharing statement**
Describe how someone could obtain the model described in the paper, the simulation software and any other associated software (or hardware) needed to reproduce the results. Provide, where possible, the link and DOIs to these. | Code is provided in https://github.com/pythonhealthdatascience/pydesrap_stroke, and archived on Zenodo: https://doi.org/10.5281/zenodo.15574906 | +| **6.1 Computer model sharing statement**
Describe how someone could obtain the model described in the paper, the simulation software and any other associated software (or hardware) needed to reproduce the results. Provide, where possible, the link and DOIs to these. | All simulation code is provided in on GitHub in [pythonhealthdatascience/pydesrap_stroke](https://github.com/pythonhealthdatascience/pydesrap_stroke), and archived on Zenodo: [10.5281/zenodo.15574906](https://doi.org/10.5281/zenodo.15574906). | From 2a2e018f9fdc0ce7ec2056513e17992e81765b11 Mon Sep 17 00:00:00 2001 From: amyheather Date: Wed, 6 Aug 2025 15:01:57 +0100 Subject: [PATCH 3/9] docs(stress): improve 2.3 (#4) --- docs/stress_des.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/stress_des.md b/docs/stress_des.md index 37f5c43..d20335d 100644 --- a/docs/stress_des.md +++ b/docs/stress_des.md @@ -19,7 +19,7 @@ Answers to this checklist are adapted from [llm_simpy/notebooks/03_stroke/00_str | **Logic** | | **2.1 Base model overview diagram**
Describe the base model using appropriate diagrams and description. This could include one or more process flow, activity cycle or equivalent diagrams sufficient to describe the model to readers. Avoid complicated diagrams in the main text. The goal is to describe the breadth and depth of the model with respect to the system being studied. | ![Logic diagram](../images/stroke_rehab_design.png) | | **2.2 Base model logic**
Give details of the base model logic. Give additional model logic details sufficient to communicate to the reader how the model works. | The model lets users define populations of stroke, TIA, complex neurology, and other patients, each with their own arrival patterns, transfer probabilities, and length-of-stay distributions for acute and rehab services. It uses an infinite capacity approach to estimate admission delay probability. The design focuses on acute and rehab units, with a warm-up period and multiple replications; ESD pathways are simplified but the model can be extended to include them. | -| **2.3 Scenario logic**
Give details of the logical difference between the base case model and scenarios (if any). This could be incorporated as text or where differences are substantial could be incorporated in the same manner as 2.2. | Scenarios in the article (increased demand, grouping patient types) are implemented as parameter changes in the notebooks. | +| **2.3 Scenario logic**
Give details of the logical difference between the base case model and scenarios (if any). This could be incorporated as text or where differences are substantial could be incorporated in the same manner as 2.2. | Scenarios are defined by changing input parameters (e.g., admissions rates, bed numbers, patient groups) and re-running the model; no code changes are required. All scenarios from the original publication are implemented:
・**Base Case:** Default parameter values.
・ **Increased Demand:** 5% higher acute admissions.
・ **Pooling Beds:** Combines/reallocates bed numbers between acute and rehab units.
・ **Patient Group Removal:** Runs without complex neurological patients to isolate impact. | | **2.4 Algorithms**
Provide further detail on any algorithms in the model that (for example) mimic complex or manual processes in the real world (i.e. scheduling of arrivals/ appointments/ operations/ maintenance, operation of a conveyor system, machine breakdowns, etc.). Sufficient detail should be included (or referred to in other published work) for the algorithms to be reproducible. Pseudo-code may be used to describe an algorithm. | There are no algorithms used in this model. | | **2.5.1 Components - entities**
Give details of all entities within the simulation including a description of their role in the model and a description of all their attributes. | ・ Stroke
・ Transient Ischemic Attack (TIA - minor strokes with rapidly resolving symptoms)
・ Complex Neurological
・ Other (including medical outliers) | | **2.5.2 Components - activities**
Describe the activities that entities engage in within the model. Provide details of entity routing into and out of the activity. | ASU + rehab treatment activities:
・ Stroke patients who are eligible for Early Supported Discharge
・ Stroke patients who are **NOT** eligible for Early Supported Discharge
・ TIA
・ Other | From 492920f1cf9aa8bda244452f83b787cfa1af275b Mon Sep 17 00:00:00 2001 From: amyheather Date: Wed, 6 Aug 2025 15:53:35 +0100 Subject: [PATCH 4/9] build(sim-tools): upgrade to 0.10.0, and re-run, which alters results due to new sort=True argument in create_batch() --- environment.yaml | 2 +- notebooks/analysis.ipynb | 746 ++--- notebooks/generate_exp_results.ipynb | 122 +- notebooks/logs.ipynb | 900 ++----- outputs/figure1_asu.png | Bin 28453 -> 29195 bytes outputs/figure1_rehab.png | Bin 28614 -> 30585 bytes outputs/figure3_asu.png | Bin 25194 -> 24375 bytes outputs/figure3_rehab.png | Bin 25962 -> 25118 bytes outputs/logs/log_example.log | 540 ++-- outputs/suptable1.csv | 20 +- outputs/table2.csv | 14 +- outputs/table3.csv | 18 +- requirements.txt | 2 +- tests/exp_results/asu_occupancy.csv | 38 +- tests/exp_results/audit_list.csv | 3596 ++++++++++++------------- tests/exp_results/rehab_occupancy.csv | 42 +- 16 files changed, 2795 insertions(+), 3245 deletions(-) diff --git a/environment.yaml b/environment.yaml index 610ced8..6ee8ca8 100644 --- a/environment.yaml +++ b/environment.yaml @@ -20,5 +20,5 @@ dependencies: - simpy=4.1.1 - pip: - kaleido==1.0.0 - - sim-tools==0.9.1 + - sim-tools==0.10.0 - -e .[dev] diff --git a/notebooks/analysis.ipynb b/notebooks/analysis.ipynb index 6d8f109..f5120dd 100644 --- a/notebooks/analysis.ipynb +++ b/notebooks/analysis.ipynb @@ -189,12 +189,12 @@ "textposition": "auto", "type": "bar", "x": { - "bdata": "AAECAwQFBgcICQoLDA0ODxAREhMUFRYX", + "bdata": "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGA==", "dtype": "i1" }, "xaxis": "x", "y": { - "bdata": "YJBlozdkMz/1ed4Loq1kPwrPxZpANoM/vXVOZvyOmj8a9gZizGmrP8OheCrkZbY/9MZxHYN7vj/ROAVIv4DBP7fd04Y408E/tU7X9mLtvz+l0+tlZmm6P70Hgkf1K7M/u9Ne2QlKqj9TPAkivrKgPzwbXaH0PJM/6RW32pw1hT8WgTKPx6J1P4M5qbNPnmQ/89fufq9oVD/N3gFI1Ow9PzR5lLh9RzA/X7mIVs/lGD+YjpBC7ibzPibkgGqwpO4+", + "bdata": "/XppGceEMD+VSrEoCZ1iP0BaiWaLkYI/zO7M91+zmj8ai3GU6L2qP5ngvgg0+bU/aeDwwdZovj+ZvE6q6qzBP62Bflu7FsI/Cf8L1txSwD/hTFDeEE+6P0vHTO+iHLM/HJNDmnB5qj++vSWHNxWgP+sLUTEAy5I/hNuYQELjhD+H8O+goI91P/YbzpiU8mQ/luDWqB0qTj/u5VXL+eE+P+aDkv01tyE/JuSAarCkDj8m5IBqsKT+Ph2r4E+E++Y+JuSAarCkzj4=", "dtype": "f8" }, "yaxis": "y" @@ -1040,12 +1040,12 @@ "textposition": "auto", "type": "bar", "x": { - "bdata": "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBka", + "bdata": "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBk=", "dtype": "i1" }, "xaxis": "x", "y": { - "bdata": "occwXRrQGj93hzy/yDFCP7TYONLTzmg/R1WvbcEMhD/rL8GPSReXPwInmKva5KU/1qQx8zwcsj/xwBsbJj65PyfoaW10gr4/jI0gCdCGwD9iMxB+IuK/P53zmWVnJ7w/FVddKo/6tj/9tnYtJFOxPwkivrIQYKc/EUFUGJAnnT9LvrCXkAmSP50WT3a4OoQ/FoEyj8eidT+5leTFExxkPxKbY+jv01Q/DROltCXAQz8Hi+aAW6wyP9qcOEk5ERU/HavgT4T75j4m5IBqsKTePibkgGqwpM4+", + "bdata": "+6OMzF4GFj8921eGQXI9P05/XS5+ZWU/i4h5hPZpgz88EEVGt6uXP1eCVTs8nKY/SRjYB9rmsT86pnnKXVe4P8ZXDWaUML4/4S5FhrZewD/Bsv4naGW/PwacbH7fq7s/M6tTwyfctj/3ZtwK8y+xP2y/nxTHoqg/RfrkT2knoD9+gmLG/qyTPz6DrBkjE4g/JUj246y7eD9/Hu1MApZpP6OeDaqCTlU/0Iy74aTpQj/FfD56EMIwP1WA6DujPCE/JuSAarCk/j4m5IBqsKTePg==", "dtype": "f8" }, "yaxis": "y" @@ -2010,12 +2010,12 @@ "showlegend": false, "type": "scatter", "x": { - "bdata": "AAECAwQFBgcICQoLDA0ODxAREhMUFRYX", + "bdata": "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGA==", "dtype": "i1" }, "xaxis": "x", "y": { - "bdata": "AAAAAAAA8D97Y/UHeqTsPz3TBQ+Fmug/VoixDzDD5T+kyYguPrDiP28GglKYQN8/r8qgBD2N2T8cp4bLdx7UP9OoVr5/Cs8/DMajQtTWxj9J95C4p3bAP4jPmVou3LU/h8xbz1dRrD8MNu4VUmChP5umTP+popM/E5zfiMdrhT9qyjWiWbx1P+lNLixOqWQ/knrLaQptVD+p8xZ2tu89PxcVliQGSDA/c38M/ATmGD8DmLKZACfzPiTkgGqwpO4+", + "bdata": "AAAAAAAA8D8P0pNL/M3sP2NF1MX8B+k/GloVPBQn5j+BK2rim5fiP3JBLwijQt8/LMgklCTQ2T+S+4S91G3UP2L9fp6HhM8/wlZiK25Fxz8aspIzUFvAP73SnJfovrU/Ie3ncvpyrD9LqEoA3LegP2ok56htK5M/BAFWEkYWhT+OONfX1KZ1P/9Y9OBU+2Q/jAZpm5cvTj83fel52uM+P8RJOcGstyE/0uDMcwilDj+iWbfCzaT+PobtZtCJ++Y+J+SAarCkzj4=", "dtype": "f8" }, "yaxis": "y" @@ -2905,12 +2905,12 @@ "showlegend": false, "type": "scatter", "x": { - "bdata": "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBka", + "bdata": "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBk=", "dtype": "i1" }, "xaxis": "x", "y": { - "bdata": "AAAAAAAA8D9bsAVbsAXrP/2Y9biXSuo/9oTkq1s/5z820qUCrwfkPxiR8SIyXuE/2sNS/VFH3j8e5Ffxtm7ZP+R03Z/vw9Q/Sam4nUKl0D+WP94TEazJP4/qFggtQsM/OAdsfaj/uz/tucpCX4CzPzJsR7OoBqk/ieOTFkZKnj9p3jYpNGeSP8IoN24Fb4Q/t+QmKga9dT/+ThuQvidkPwcSt4I42VQ/dOqmGRvCQz9RHf6v2KwyP1hDP4xXERU/kFl70ZT75j6wPInAt6TePiTkgGqwpM4+", + "bdata": "AAAAAAAA8D9Yr169evXqP7eDCWDhkuo/chzHcRwH6D+g3A5/V7LkP7iFzw2kr+E/9GrO1r7e3T9eGo4gytjYPxX44uoHzdQ/elMR/tqt0D+zyPj6zZfJP4yZaT9eLcM/+sUUjxgyvD8mi3/C55OzP06xg3Onmqo/p2+pLKreoD/pDd+1uSSUP7XyV76aWog/OFV/uTXeeD8tjuQkHqVpP/adx7H5U1U/wvqiUbLrQj8H6kQOycIwP1pcMIDMPCE/chiVFr+k/j4n5IBqsKTePg==", "dtype": "f8" }, "yaxis": "y" @@ -3945,118 +3945,118 @@ " 0\n", " asu\n", " 9\n", - " 0.178431\n", + " 0.181806\n", " 6.0\n", - " 0.201086\n", + " 0.206046\n", " 5.0\n", " \n", " \n", " 1\n", " asu\n", " 10\n", - " 0.128621\n", + " 0.127787\n", " 8.0\n", - " 0.146767\n", + " 0.148402\n", " 7.0\n", " \n", " \n", " 2\n", " asu\n", " 11\n", - " 0.085391\n", + " 0.084944\n", " 12.0\n", - " 0.102962\n", + " 0.102303\n", " 10.0\n", " \n", " \n", " 3\n", " asu\n", " 12\n", - " 0.055308\n", + " 0.055565\n", " 18.0\n", - " 0.069172\n", - " 14.0\n", + " 0.068525\n", + " 15.0\n", " \n", " \n", " 4\n", " asu\n", " 13\n", - " 0.033938\n", - " 29.0\n", - " 0.043366\n", + " 0.032653\n", + " 31.0\n", + " 0.043014\n", " 23.0\n", " \n", " \n", " 5\n", " asu\n", " 14\n", - " 0.019175\n", - " 52.0\n", - " 0.025806\n", + " 0.018720\n", + " 53.0\n", + " 0.025733\n", " 39.0\n", " \n", " \n", " 6\n", " rehab\n", " 10\n", - " 0.200564\n", + " 0.199945\n", " 5.0\n", - " 0.227341\n", + " 0.225089\n", " 4.0\n", " \n", " \n", " 7\n", " rehab\n", " 11\n", - " 0.150457\n", + " 0.149822\n", " 7.0\n", - " 0.172294\n", + " 0.171326\n", " 6.0\n", " \n", " \n", " 8\n", " rehab\n", " 12\n", - " 0.109370\n", + " 0.110139\n", " 9.0\n", - " 0.129282\n", + " 0.128463\n", " 8.0\n", " \n", " \n", " 9\n", " rehab\n", " 13\n", - " 0.076178\n", + " 0.076476\n", " 13.0\n", - " 0.092611\n", + " 0.093579\n", " 11.0\n", " \n", " \n", " 10\n", " rehab\n", " 14\n", - " 0.048879\n", - " 20.0\n", - " 0.062321\n", + " 0.051961\n", + " 19.0\n", + " 0.064323\n", " 16.0\n", " \n", " \n", " 11\n", " rehab\n", " 15\n", - " 0.029580\n", - " 34.0\n", - " 0.039036\n", - " 26.0\n", + " 0.032949\n", + " 30.0\n", + " 0.042301\n", + " 24.0\n", " \n", " \n", " 12\n", " rehab\n", " 16\n", - " 0.017972\n", - " 56.0\n", - " 0.024886\n", - " 40.0\n", + " 0.019671\n", + " 51.0\n", + " 0.026988\n", + " 37.0\n", " \n", " \n", "\n", @@ -4064,25 +4064,25 @@ ], "text/plain": [ " unit beds prob_delay_current 1_in_n_delay_current prob_delay_5% \\\n", - "0 asu 9 0.178431 6.0 0.201086 \n", - "1 asu 10 0.128621 8.0 0.146767 \n", - "2 asu 11 0.085391 12.0 0.102962 \n", - "3 asu 12 0.055308 18.0 0.069172 \n", - "4 asu 13 0.033938 29.0 0.043366 \n", - "5 asu 14 0.019175 52.0 0.025806 \n", - "6 rehab 10 0.200564 5.0 0.227341 \n", - "7 rehab 11 0.150457 7.0 0.172294 \n", - "8 rehab 12 0.109370 9.0 0.129282 \n", - "9 rehab 13 0.076178 13.0 0.092611 \n", - "10 rehab 14 0.048879 20.0 0.062321 \n", - "11 rehab 15 0.029580 34.0 0.039036 \n", - "12 rehab 16 0.017972 56.0 0.024886 \n", + "0 asu 9 0.181806 6.0 0.206046 \n", + "1 asu 10 0.127787 8.0 0.148402 \n", + "2 asu 11 0.084944 12.0 0.102303 \n", + "3 asu 12 0.055565 18.0 0.068525 \n", + "4 asu 13 0.032653 31.0 0.043014 \n", + "5 asu 14 0.018720 53.0 0.025733 \n", + "6 rehab 10 0.199945 5.0 0.225089 \n", + "7 rehab 11 0.149822 7.0 0.171326 \n", + "8 rehab 12 0.110139 9.0 0.128463 \n", + "9 rehab 13 0.076476 13.0 0.093579 \n", + "10 rehab 14 0.051961 19.0 0.064323 \n", + "11 rehab 15 0.032949 30.0 0.042301 \n", + "12 rehab 16 0.019671 51.0 0.026988 \n", "\n", " 1_in_n_delay_5% \n", "0 5.0 \n", "1 7.0 \n", "2 10.0 \n", - "3 14.0 \n", + "3 15.0 \n", "4 23.0 \n", "5 39.0 \n", "6 4.0 \n", @@ -4090,8 +4090,8 @@ "8 8.0 \n", "9 11.0 \n", "10 16.0 \n", - "11 26.0 \n", - "12 40.0 " + "11 24.0 \n", + "12 37.0 " ] }, "metadata": {}, @@ -4174,7 +4174,7 @@ " 2\n", " asu\n", " 11\n", - " 0.09\n", + " 0.08\n", " 12.0\n", " 0.10\n", " 10.0\n", @@ -4186,14 +4186,14 @@ " 0.06\n", " 18.0\n", " 0.07\n", - " 14.0\n", + " 15.0\n", " \n", " \n", " 4\n", " asu\n", " 13\n", " 0.03\n", - " 29.0\n", + " 31.0\n", " 0.04\n", " 23.0\n", " \n", @@ -4202,7 +4202,7 @@ " asu\n", " 14\n", " 0.02\n", - " 52.0\n", + " 53.0\n", " 0.03\n", " 39.0\n", " \n", @@ -4238,7 +4238,7 @@ " rehab\n", " 14\n", " 0.05\n", - " 20.0\n", + " 19.0\n", " 0.06\n", " 16.0\n", " \n", @@ -4247,18 +4247,18 @@ " rehab\n", " 15\n", " 0.03\n", - " 34.0\n", + " 30.0\n", " 0.04\n", - " 26.0\n", + " 24.0\n", " \n", " \n", " 12\n", " rehab\n", " 16\n", " 0.02\n", - " 56.0\n", - " 0.02\n", - " 40.0\n", + " 51.0\n", + " 0.03\n", + " 37.0\n", " \n", " \n", "\n", @@ -4268,30 +4268,30 @@ " unit beds prob_delay_current 1_in_n_delay_current prob_delay_5% \\\n", "0 asu 9 0.18 6.0 NaN \n", "1 asu 10 0.13 8.0 0.15 \n", - "2 asu 11 0.09 12.0 0.10 \n", + "2 asu 11 0.08 12.0 0.10 \n", "3 asu 12 0.06 18.0 0.07 \n", - "4 asu 13 0.03 29.0 0.04 \n", - "5 asu 14 0.02 52.0 0.03 \n", + "4 asu 13 0.03 31.0 0.04 \n", + "5 asu 14 0.02 53.0 0.03 \n", "6 rehab 10 0.20 5.0 NaN \n", "8 rehab 12 0.11 9.0 0.13 \n", "9 rehab 13 0.08 13.0 0.09 \n", - "10 rehab 14 0.05 20.0 0.06 \n", - "11 rehab 15 0.03 34.0 0.04 \n", - "12 rehab 16 0.02 56.0 0.02 \n", + "10 rehab 14 0.05 19.0 0.06 \n", + "11 rehab 15 0.03 30.0 0.04 \n", + "12 rehab 16 0.02 51.0 0.03 \n", "\n", " 1_in_n_delay_5% \n", "0 NaN \n", "1 7.0 \n", "2 10.0 \n", - "3 14.0 \n", + "3 15.0 \n", "4 23.0 \n", "5 39.0 \n", "6 NaN \n", "8 8.0 \n", "9 11.0 \n", "10 16.0 \n", - "11 26.0 \n", - "12 40.0 " + "11 24.0 \n", + "12 37.0 " ] }, "metadata": {}, @@ -4414,10 +4414,10 @@ " 1\n", " asu\n", " 11\n", - " 0.09\n", + " 0.08\n", " 12.0\n", " 0.05\n", - " 20.0\n", + " 21.0\n", " \n", " \n", " 2\n", @@ -4426,34 +4426,34 @@ " 0.06\n", " 18.0\n", " 0.03\n", - " 36.0\n", + " 37.0\n", " \n", " \n", " 3\n", " asu\n", " 13\n", " 0.03\n", - " 29.0\n", - " 0.02\n", - " 66.0\n", + " 31.0\n", + " 0.01\n", + " 67.0\n", " \n", " \n", " 4\n", " asu\n", " 14\n", " 0.02\n", - " 52.0\n", + " 53.0\n", " 0.01\n", - " 128.0\n", + " 139.0\n", " \n", " \n", " 5\n", " asu\n", " 15\n", " 0.01\n", - " 96.0\n", + " 97.0\n", " 0.00\n", - " 284.0\n", + " 290.0\n", " \n", " \n", " 6\n", @@ -4461,8 +4461,8 @@ " 12\n", " 0.11\n", " 9.0\n", - " 0.05\n", - " 19.0\n", + " 0.06\n", + " 18.0\n", " \n", " \n", " 7\n", @@ -4471,34 +4471,34 @@ " 0.08\n", " 13.0\n", " 0.03\n", - " 33.0\n", + " 30.0\n", " \n", " \n", " 8\n", " rehab\n", " 14\n", " 0.05\n", - " 20.0\n", + " 19.0\n", " 0.02\n", - " 61.0\n", + " 54.0\n", " \n", " \n", " 9\n", " rehab\n", " 15\n", " 0.03\n", - " 34.0\n", + " 30.0\n", " 0.01\n", - " 119.0\n", + " 105.0\n", " \n", " \n", " 10\n", " rehab\n", " 16\n", " 0.02\n", - " 56.0\n", - " 0.00\n", - " 231.0\n", + " 51.0\n", + " 0.01\n", + " 193.0\n", " \n", " \n", "\n", @@ -4507,29 +4507,29 @@ "text/plain": [ " unit beds prob_delay_current 1_in_n_delay_current \\\n", "0 asu 10 0.13 8.0 \n", - "1 asu 11 0.09 12.0 \n", + "1 asu 11 0.08 12.0 \n", "2 asu 12 0.06 18.0 \n", - "3 asu 13 0.03 29.0 \n", - "4 asu 14 0.02 52.0 \n", - "5 asu 15 0.01 96.0 \n", + "3 asu 13 0.03 31.0 \n", + "4 asu 14 0.02 53.0 \n", + "5 asu 15 0.01 97.0 \n", "6 rehab 12 0.11 9.0 \n", "7 rehab 13 0.08 13.0 \n", - "8 rehab 14 0.05 20.0 \n", - "9 rehab 15 0.03 34.0 \n", - "10 rehab 16 0.02 56.0 \n", + "8 rehab 14 0.05 19.0 \n", + "9 rehab 15 0.03 30.0 \n", + "10 rehab 16 0.02 51.0 \n", "\n", " prob_delay_no_complex_neuro 1_in_n_delay_no_complex_neuro \n", "0 0.08 13.0 \n", - "1 0.05 20.0 \n", - "2 0.03 36.0 \n", - "3 0.02 66.0 \n", - "4 0.01 128.0 \n", - "5 0.00 284.0 \n", - "6 0.05 19.0 \n", - "7 0.03 33.0 \n", - "8 0.02 61.0 \n", - "9 0.01 119.0 \n", - "10 0.00 231.0 " + "1 0.05 21.0 \n", + "2 0.03 37.0 \n", + "3 0.01 67.0 \n", + "4 0.01 139.0 \n", + "5 0.00 290.0 \n", + "6 0.06 18.0 \n", + "7 0.03 30.0 \n", + "8 0.02 54.0 \n", + "9 0.01 105.0 \n", + "10 0.01 193.0 " ] }, "metadata": {}, @@ -4604,326 +4604,353 @@ " \n", " 0\n", " 3\n", - " 1\n", - " 0.000004\n", - " 0.000004\n", + " 2\n", + " 0.000007\n", + " 0.000007\n", " 1.000000\n", " 1.0\n", " \n", " \n", " 1\n", " 4\n", - " 22\n", - " 0.000080\n", - " 0.000084\n", - " 0.956522\n", + " 18\n", + " 0.000066\n", + " 0.000073\n", + " 0.900000\n", " 1.0\n", " \n", " \n", " 2\n", " 5\n", - " 75\n", - " 0.000274\n", - " 0.000358\n", - " 0.765306\n", + " 43\n", + " 0.000157\n", + " 0.000230\n", + " 0.682540\n", " 1.0\n", " \n", " \n", " 3\n", " 6\n", - " 207\n", - " 0.000756\n", - " 0.001114\n", - " 0.678689\n", + " 177\n", + " 0.000647\n", + " 0.000877\n", + " 0.737500\n", " 1.0\n", " \n", " \n", " 4\n", " 7\n", - " 542\n", - " 0.001980\n", - " 0.003094\n", - " 0.639906\n", - " 2.0\n", + " 521\n", + " 0.001903\n", + " 0.002780\n", + " 0.684625\n", + " 1.0\n", " \n", " \n", " 5\n", " 8\n", - " 1273\n", - " 0.004650\n", - " 0.007744\n", - " 0.600472\n", + " 1217\n", + " 0.004446\n", + " 0.007226\n", + " 0.615268\n", " 2.0\n", " \n", " \n", " 6\n", " 9\n", - " 2493\n", - " 0.009107\n", - " 0.016851\n", - " 0.540429\n", + " 2456\n", + " 0.008972\n", + " 0.016197\n", + " 0.553902\n", " 2.0\n", " \n", " \n", " 7\n", " 10\n", - " 4420\n", - " 0.016146\n", - " 0.032997\n", - " 0.489317\n", + " 4343\n", + " 0.015865\n", + " 0.032062\n", + " 0.494816\n", " 2.0\n", " \n", " \n", " 8\n", " 11\n", - " 7231\n", - " 0.026415\n", - " 0.059412\n", - " 0.444602\n", + " 7056\n", + " 0.025775\n", + " 0.057837\n", + " 0.445651\n", " 2.0\n", " \n", " \n", " 9\n", " 12\n", - " 10638\n", - " 0.038860\n", - " 0.098272\n", - " 0.395435\n", + " 10420\n", + " 0.038064\n", + " 0.095901\n", + " 0.396907\n", " 3.0\n", " \n", " \n", " 10\n", " 13\n", - " 14429\n", - " 0.052709\n", - " 0.150981\n", - " 0.349108\n", + " 14455\n", + " 0.052804\n", + " 0.148705\n", + " 0.355090\n", " 3.0\n", " \n", " \n", " 11\n", " 14\n", - " 18782\n", - " 0.068610\n", - " 0.219591\n", - " 0.312445\n", + " 18318\n", + " 0.066915\n", + " 0.215620\n", + " 0.310338\n", " 3.0\n", " \n", " \n", " 12\n", " 15\n", - " 22341\n", - " 0.081611\n", - " 0.301202\n", - " 0.270951\n", + " 21899\n", + " 0.079996\n", + " 0.295616\n", + " 0.270609\n", " 4.0\n", " \n", " \n", " 13\n", " 16\n", - " 24598\n", - " 0.089856\n", - " 0.391058\n", - " 0.229776\n", + " 24413\n", + " 0.089180\n", + " 0.384796\n", + " 0.231759\n", " 4.0\n", " \n", " \n", " 14\n", " 17\n", - " 25954\n", - " 0.094809\n", - " 0.485867\n", - " 0.195134\n", + " 25441\n", + " 0.092935\n", + " 0.477732\n", + " 0.194534\n", " 5.0\n", " \n", " \n", " 15\n", " 18\n", - " 25739\n", - " 0.094024\n", - " 0.579890\n", - " 0.162141\n", + " 25539\n", + " 0.093293\n", + " 0.571025\n", + " 0.163378\n", " 6.0\n", " \n", " \n", " 16\n", " 19\n", - " 23537\n", - " 0.085980\n", - " 0.665870\n", - " 0.129124\n", - " 8.0\n", + " 24105\n", + " 0.088055\n", + " 0.659079\n", + " 0.133603\n", + " 7.0\n", " \n", " \n", " 17\n", " 20\n", - " 21404\n", - " 0.078188\n", - " 0.744058\n", - " 0.105083\n", - " 10.0\n", + " 21591\n", + " 0.078871\n", + " 0.737951\n", + " 0.106879\n", + " 9.0\n", " \n", " \n", " 18\n", " 21\n", - " 18305\n", - " 0.066868\n", - " 0.810926\n", - " 0.082458\n", + " 18340\n", + " 0.066995\n", + " 0.804946\n", + " 0.083230\n", " 12.0\n", " \n", " \n", " 19\n", " 22\n", - " 14763\n", - " 0.053929\n", - " 0.864855\n", - " 0.062356\n", - " 16.0\n", + " 15235\n", + " 0.055653\n", + " 0.860599\n", + " 0.064668\n", + " 15.0\n", " \n", " \n", " 20\n", " 23\n", - " 11270\n", - " 0.041169\n", - " 0.906024\n", - " 0.045439\n", - " 22.0\n", + " 11811\n", + " 0.043145\n", + " 0.903744\n", + " 0.047741\n", + " 21.0\n", " \n", " \n", " 21\n", " 24\n", - " 8441\n", - " 0.030835\n", - " 0.936858\n", - " 0.032913\n", + " 8574\n", + " 0.031321\n", + " 0.935065\n", + " 0.033496\n", " 30.0\n", " \n", " \n", " 22\n", " 25\n", - " 5969\n", - " 0.021805\n", - " 0.958663\n", - " 0.022745\n", - " 44.0\n", + " 6222\n", + " 0.022729\n", + " 0.957794\n", + " 0.023730\n", + " 42.0\n", " \n", " \n", " 23\n", " 26\n", - " 4157\n", - " 0.015185\n", - " 0.973848\n", - " 0.015593\n", - " 64.0\n", + " 4346\n", + " 0.015876\n", + " 0.973669\n", + " 0.016305\n", + " 61.0\n", " \n", " \n", " 24\n", " 27\n", - " 2874\n", - " 0.010499\n", - " 0.984347\n", - " 0.010666\n", - " 94.0\n", + " 2908\n", + " 0.010623\n", + " 0.984292\n", + " 0.010792\n", + " 93.0\n", " \n", " \n", " 25\n", " 28\n", - " 1797\n", - " 0.006564\n", - " 0.990911\n", - " 0.006625\n", + " 1799\n", + " 0.006572\n", + " 0.990864\n", + " 0.006632\n", " 151.0\n", " \n", " \n", " 26\n", " 29\n", - " 1087\n", - " 0.003971\n", - " 0.994882\n", - " 0.003991\n", + " 1084\n", + " 0.003960\n", + " 0.994824\n", + " 0.003980\n", " 251.0\n", " \n", " \n", " 27\n", " 30\n", - " 649\n", - " 0.002371\n", - " 0.997253\n", - " 0.002377\n", - " 421.0\n", + " 611\n", + " 0.002232\n", + " 0.997056\n", + " 0.002239\n", + " 447.0\n", " \n", " \n", " 28\n", " 31\n", - " 367\n", - " 0.001341\n", - " 0.998594\n", - " 0.001343\n", - " 745.0\n", + " 377\n", + " 0.001377\n", + " 0.998433\n", + " 0.001379\n", + " 725.0\n", " \n", " \n", " 29\n", " 32\n", - " 199\n", - " 0.000727\n", - " 0.999321\n", - " 0.000727\n", - " 1375.0\n", + " 211\n", + " 0.000771\n", + " 0.999204\n", + " 0.000771\n", + " 1296.0\n", " \n", " \n", " 30\n", " 33\n", - " 101\n", - " 0.000369\n", - " 0.999689\n", - " 0.000369\n", - " 2710.0\n", + " 98\n", + " 0.000358\n", + " 0.999562\n", + " 0.000358\n", + " 2792.0\n", " \n", " \n", " 31\n", " 34\n", - " 47\n", - " 0.000172\n", - " 0.999861\n", - " 0.000172\n", - " 5824.0\n", + " 53\n", + " 0.000194\n", + " 0.999755\n", + " 0.000194\n", + " 5164.0\n", " \n", " \n", " 32\n", " 35\n", - " 20\n", - " 0.000073\n", - " 0.999934\n", - " 0.000073\n", - " 13687.0\n", + " 22\n", + " 0.000080\n", + " 0.999836\n", + " 0.000080\n", + " 12441.0\n", " \n", " \n", " 33\n", " 36\n", - " 13\n", - " 0.000047\n", - " 0.999982\n", - " 0.000047\n", - " 21057.0\n", + " 23\n", + " 0.000084\n", + " 0.999920\n", + " 0.000084\n", + " 11901.0\n", " \n", " \n", " 34\n", " 37\n", - " 3\n", - " 0.000011\n", - " 0.999993\n", - " 0.000011\n", - " 91249.0\n", + " 11\n", + " 0.000040\n", + " 0.999960\n", + " 0.000040\n", + " 24885.0\n", " \n", " \n", " 35\n", " 38\n", - " 2\n", - " 0.000007\n", + " 5\n", + " 0.000018\n", + " 0.999978\n", + " 0.000018\n", + " 54749.0\n", + " \n", + " \n", + " 36\n", + " 39\n", + " 5\n", + " 0.000018\n", + " 0.999996\n", + " 0.000018\n", + " 54750.0\n", + " \n", + " \n", + " 37\n", + " 40\n", + " 0\n", + " 0.000000\n", + " 0.999996\n", + " 0.000000\n", + " inf\n", + " \n", + " \n", + " 38\n", + " 41\n", + " 1\n", + " 0.000004\n", " 1.000000\n", - " 0.000007\n", - " 136875.0\n", + " 0.000004\n", + " 273750.0\n", " \n", " \n", "\n", @@ -4931,42 +4958,45 @@ ], "text/plain": [ " beds freq pct c_pct prob_delay 1_in_n_delay\n", - "0 3 1 0.000004 0.000004 1.000000 1.0\n", - "1 4 22 0.000080 0.000084 0.956522 1.0\n", - "2 5 75 0.000274 0.000358 0.765306 1.0\n", - "3 6 207 0.000756 0.001114 0.678689 1.0\n", - "4 7 542 0.001980 0.003094 0.639906 2.0\n", - "5 8 1273 0.004650 0.007744 0.600472 2.0\n", - "6 9 2493 0.009107 0.016851 0.540429 2.0\n", - "7 10 4420 0.016146 0.032997 0.489317 2.0\n", - "8 11 7231 0.026415 0.059412 0.444602 2.0\n", - "9 12 10638 0.038860 0.098272 0.395435 3.0\n", - "10 13 14429 0.052709 0.150981 0.349108 3.0\n", - "11 14 18782 0.068610 0.219591 0.312445 3.0\n", - "12 15 22341 0.081611 0.301202 0.270951 4.0\n", - "13 16 24598 0.089856 0.391058 0.229776 4.0\n", - "14 17 25954 0.094809 0.485867 0.195134 5.0\n", - "15 18 25739 0.094024 0.579890 0.162141 6.0\n", - "16 19 23537 0.085980 0.665870 0.129124 8.0\n", - "17 20 21404 0.078188 0.744058 0.105083 10.0\n", - "18 21 18305 0.066868 0.810926 0.082458 12.0\n", - "19 22 14763 0.053929 0.864855 0.062356 16.0\n", - "20 23 11270 0.041169 0.906024 0.045439 22.0\n", - "21 24 8441 0.030835 0.936858 0.032913 30.0\n", - "22 25 5969 0.021805 0.958663 0.022745 44.0\n", - "23 26 4157 0.015185 0.973848 0.015593 64.0\n", - "24 27 2874 0.010499 0.984347 0.010666 94.0\n", - "25 28 1797 0.006564 0.990911 0.006625 151.0\n", - "26 29 1087 0.003971 0.994882 0.003991 251.0\n", - "27 30 649 0.002371 0.997253 0.002377 421.0\n", - "28 31 367 0.001341 0.998594 0.001343 745.0\n", - "29 32 199 0.000727 0.999321 0.000727 1375.0\n", - "30 33 101 0.000369 0.999689 0.000369 2710.0\n", - "31 34 47 0.000172 0.999861 0.000172 5824.0\n", - "32 35 20 0.000073 0.999934 0.000073 13687.0\n", - "33 36 13 0.000047 0.999982 0.000047 21057.0\n", - "34 37 3 0.000011 0.999993 0.000011 91249.0\n", - "35 38 2 0.000007 1.000000 0.000007 136875.0" + "0 3 2 0.000007 0.000007 1.000000 1.0\n", + "1 4 18 0.000066 0.000073 0.900000 1.0\n", + "2 5 43 0.000157 0.000230 0.682540 1.0\n", + "3 6 177 0.000647 0.000877 0.737500 1.0\n", + "4 7 521 0.001903 0.002780 0.684625 1.0\n", + "5 8 1217 0.004446 0.007226 0.615268 2.0\n", + "6 9 2456 0.008972 0.016197 0.553902 2.0\n", + "7 10 4343 0.015865 0.032062 0.494816 2.0\n", + "8 11 7056 0.025775 0.057837 0.445651 2.0\n", + "9 12 10420 0.038064 0.095901 0.396907 3.0\n", + "10 13 14455 0.052804 0.148705 0.355090 3.0\n", + "11 14 18318 0.066915 0.215620 0.310338 3.0\n", + "12 15 21899 0.079996 0.295616 0.270609 4.0\n", + "13 16 24413 0.089180 0.384796 0.231759 4.0\n", + "14 17 25441 0.092935 0.477732 0.194534 5.0\n", + "15 18 25539 0.093293 0.571025 0.163378 6.0\n", + "16 19 24105 0.088055 0.659079 0.133603 7.0\n", + "17 20 21591 0.078871 0.737951 0.106879 9.0\n", + "18 21 18340 0.066995 0.804946 0.083230 12.0\n", + "19 22 15235 0.055653 0.860599 0.064668 15.0\n", + "20 23 11811 0.043145 0.903744 0.047741 21.0\n", + "21 24 8574 0.031321 0.935065 0.033496 30.0\n", + "22 25 6222 0.022729 0.957794 0.023730 42.0\n", + "23 26 4346 0.015876 0.973669 0.016305 61.0\n", + "24 27 2908 0.010623 0.984292 0.010792 93.0\n", + "25 28 1799 0.006572 0.990864 0.006632 151.0\n", + "26 29 1084 0.003960 0.994824 0.003980 251.0\n", + "27 30 611 0.002232 0.997056 0.002239 447.0\n", + "28 31 377 0.001377 0.998433 0.001379 725.0\n", + "29 32 211 0.000771 0.999204 0.000771 1296.0\n", + "30 33 98 0.000358 0.999562 0.000358 2792.0\n", + "31 34 53 0.000194 0.999755 0.000194 5164.0\n", + "32 35 22 0.000080 0.999836 0.000080 12441.0\n", + "33 36 23 0.000084 0.999920 0.000084 11901.0\n", + "34 37 11 0.000040 0.999960 0.000040 24885.0\n", + "35 38 5 0.000018 0.999978 0.000018 54749.0\n", + "36 39 5 0.000018 0.999996 0.000018 54750.0\n", + "37 40 0 0.000000 0.999996 0.000000 inf\n", + "38 41 1 0.000004 1.000000 0.000004 273750.0" ] }, "metadata": {}, @@ -5001,7 +5031,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "0.06235586304772043 16.0\n" + "0.06466770519846003 15.0\n" ] } ], @@ -5022,7 +5052,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "0.015593174563282334 64.0\n" + "0.01630512264483646 61.0\n" ] } ], @@ -5461,10 +5491,10 @@ " 0\n", " 0\n", " 22\n", - " 0.062\n", - " 0.062\n", - " 16\n", - " 16\n", + " 0.065\n", + " 0.065\n", + " 15\n", + " 15\n", " \n", " \n", " 1\n", @@ -5473,8 +5503,8 @@ " 26\n", " 0.016\n", " 0.016\n", - " 64\n", - " 64\n", + " 61\n", + " 61\n", " \n", " \n", " 2\n", @@ -5482,8 +5512,8 @@ " 12\n", " 0\n", " 0.019\n", - " 0.109\n", - " 52\n", + " 0.110\n", + " 53\n", " 9\n", " \n", " \n", @@ -5491,60 +5521,60 @@ " 11\n", " 11\n", " 4\n", - " 0.042\n", - " 0.082\n", + " 0.043\n", + " 0.090\n", " 24\n", - " 12\n", + " 11\n", " \n", " \n", " 4\n", " 11\n", " 10\n", " 5\n", - " 0.035\n", - " 0.083\n", + " 0.036\n", + " 0.091\n", " 28\n", - " 12\n", + " 11\n", " \n", " \n", " 5\n", " 10\n", " 10\n", " 6\n", - " 0.039\n", - " 0.061\n", + " 0.041\n", + " 0.066\n", " 25\n", - " 17\n", + " 15\n", " \n", " \n", " 6\n", " 10\n", " 9\n", " 7\n", - " 0.037\n", - " 0.061\n", - " 27\n", - " 16\n", + " 0.038\n", + " 0.066\n", + " 26\n", + " 15\n", " \n", " \n", " 7\n", " 9\n", " 9\n", " 8\n", - " 0.039\n", - " 0.049\n", - " 26\n", - " 20\n", + " 0.041\n", + " 0.053\n", + " 24\n", + " 19\n", " \n", " \n", " 8\n", " 9\n", " 8\n", " 9\n", - " 0.038\n", - " 0.049\n", - " 26\n", - " 20\n", + " 0.040\n", + " 0.053\n", + " 25\n", + " 19\n", " \n", " \n", "\n", @@ -5552,26 +5582,26 @@ ], "text/plain": [ " dedicated_acute dedicated_rehab pooled pdelay_acute pdelay_rehab \\\n", - "0 0 0 22 0.062 0.062 \n", + "0 0 0 22 0.065 0.065 \n", "1 0 0 26 0.016 0.016 \n", - "2 14 12 0 0.019 0.109 \n", - "3 11 11 4 0.042 0.082 \n", - "4 11 10 5 0.035 0.083 \n", - "5 10 10 6 0.039 0.061 \n", - "6 10 9 7 0.037 0.061 \n", - "7 9 9 8 0.039 0.049 \n", - "8 9 8 9 0.038 0.049 \n", + "2 14 12 0 0.019 0.110 \n", + "3 11 11 4 0.043 0.090 \n", + "4 11 10 5 0.036 0.091 \n", + "5 10 10 6 0.041 0.066 \n", + "6 10 9 7 0.038 0.066 \n", + "7 9 9 8 0.041 0.053 \n", + "8 9 8 9 0.040 0.053 \n", "\n", " 1_in_n_delay_acute 1_in_n_delay_rehab \n", - "0 16 16 \n", - "1 64 64 \n", - "2 52 9 \n", - "3 24 12 \n", - "4 28 12 \n", - "5 25 17 \n", - "6 27 16 \n", - "7 26 20 \n", - "8 26 20 " + "0 15 15 \n", + "1 61 61 \n", + "2 53 9 \n", + "3 24 11 \n", + "4 28 11 \n", + "5 25 15 \n", + "6 26 15 \n", + "7 24 19 \n", + "8 25 19 " ] }, "metadata": {}, @@ -5611,7 +5641,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Notebook run time: 0m 15s\n" + "Notebook run time: 0m 14s\n" ] } ], diff --git a/notebooks/generate_exp_results.ipynb b/notebooks/generate_exp_results.ipynb index 780d571..6fb2168 100644 --- a/notebooks/generate_exp_results.ipynb +++ b/notebooks/generate_exp_results.ipynb @@ -93,31 +93,31 @@ " 0\n", " 1095\n", " 8\n", - " 13\n", + " 16\n", " \n", " \n", " 1\n", " 1096\n", " 7\n", - " 14\n", + " 16\n", " \n", " \n", " 2\n", " 1097\n", - " 8\n", - " 14\n", + " 5\n", + " 16\n", " \n", " \n", " 3\n", " 1098\n", - " 8\n", - " 14\n", + " 3\n", + " 15\n", " \n", " \n", " 4\n", " 1099\n", - " 8\n", - " 14\n", + " 6\n", + " 15\n", " \n", " \n", "\n", @@ -125,11 +125,11 @@ ], "text/plain": [ " time asu_occupancy rehab_occupancy\n", - "0 1095 8 13\n", - "1 1096 7 14\n", - "2 1097 8 14\n", - "3 1098 8 14\n", - "4 1099 8 14" + "0 1095 8 16\n", + "1 1096 7 16\n", + "2 1097 5 16\n", + "3 1098 3 15\n", + "4 1099 6 15" ] }, "metadata": {}, @@ -203,37 +203,37 @@ " \n", " 1\n", " 2\n", - " 12\n", - " 0.006575\n", + " 14\n", " 0.007671\n", - " 0.857143\n", + " 0.008767\n", + " 0.875000\n", " 1.0\n", " \n", " \n", " 2\n", " 3\n", - " 57\n", - " 0.031233\n", - " 0.038904\n", - " 0.802817\n", + " 72\n", + " 0.039452\n", + " 0.048219\n", + " 0.818182\n", " 1.0\n", " \n", " \n", " 3\n", " 4\n", - " 104\n", - " 0.056986\n", - " 0.095890\n", - " 0.594286\n", + " 101\n", + " 0.055342\n", + " 0.103562\n", + " 0.534392\n", " 2.0\n", " \n", " \n", " 4\n", " 5\n", - " 162\n", - " 0.088767\n", - " 0.184658\n", - " 0.480712\n", + " 185\n", + " 0.101370\n", + " 0.204932\n", + " 0.494652\n", " 2.0\n", " \n", " \n", @@ -243,10 +243,10 @@ "text/plain": [ " beds freq pct c_pct prob_delay 1_in_n_delay\n", "0 1 2 0.001096 0.001096 1.000000 1.0\n", - "1 2 12 0.006575 0.007671 0.857143 1.0\n", - "2 3 57 0.031233 0.038904 0.802817 1.0\n", - "3 4 104 0.056986 0.095890 0.594286 2.0\n", - "4 5 162 0.088767 0.184658 0.480712 2.0" + "1 2 14 0.007671 0.008767 0.875000 1.0\n", + "2 3 72 0.039452 0.048219 0.818182 1.0\n", + "3 4 101 0.055342 0.103562 0.534392 2.0\n", + "4 5 185 0.101370 0.204932 0.494652 2.0" ] }, "metadata": {}, @@ -284,47 +284,47 @@ " \n", " \n", " 0\n", - " 2\n", " 1\n", - " 0.000548\n", - " 0.000548\n", + " 7\n", + " 0.003836\n", + " 0.003836\n", " 1.000000\n", " 1.0\n", " \n", " \n", " 1\n", - " 3\n", - " 8\n", - " 0.004384\n", - " 0.004932\n", - " 0.888889\n", - " 1.0\n", + " 2\n", + " 5\n", + " 0.002740\n", + " 0.006575\n", + " 0.416667\n", + " 2.0\n", " \n", " \n", " 2\n", - " 4\n", - " 35\n", - " 0.019178\n", - " 0.024110\n", - " 0.795455\n", + " 3\n", + " 26\n", + " 0.014247\n", + " 0.020822\n", + " 0.684211\n", " 1.0\n", " \n", " \n", " 3\n", - " 5\n", - " 47\n", - " 0.025753\n", - " 0.049863\n", - " 0.516484\n", + " 4\n", + " 64\n", + " 0.035068\n", + " 0.055890\n", + " 0.627451\n", " 2.0\n", " \n", " \n", " 4\n", - " 6\n", - " 129\n", - " 0.070685\n", - " 0.120548\n", - " 0.586364\n", + " 5\n", + " 113\n", + " 0.061918\n", + " 0.117808\n", + " 0.525581\n", " 2.0\n", " \n", " \n", @@ -333,11 +333,11 @@ ], "text/plain": [ " beds freq pct c_pct prob_delay 1_in_n_delay\n", - "0 2 1 0.000548 0.000548 1.000000 1.0\n", - "1 3 8 0.004384 0.004932 0.888889 1.0\n", - "2 4 35 0.019178 0.024110 0.795455 1.0\n", - "3 5 47 0.025753 0.049863 0.516484 2.0\n", - "4 6 129 0.070685 0.120548 0.586364 2.0" + "0 1 7 0.003836 0.003836 1.000000 1.0\n", + "1 2 5 0.002740 0.006575 0.416667 2.0\n", + "2 3 26 0.014247 0.020822 0.684211 1.0\n", + "3 4 64 0.035068 0.055890 0.627451 2.0\n", + "4 5 113 0.061918 0.117808 0.525581 2.0" ] }, "metadata": {}, diff --git a/notebooks/logs.ipynb b/notebooks/logs.ipynb index c457789..38ad03a 100644 --- a/notebooks/logs.ipynb +++ b/notebooks/logs.ipynb @@ -88,8 +88,8 @@ " \u001b[32m'other'\u001b[0m: \u001b[1;35mDiscrete\u001b[0m\u001b[1m(\u001b[0m\u001b[33mvalues\u001b[0m=\u001b[1m[\u001b[0m\u001b[32m'esd'\u001b[0m, \u001b[32m'other'\u001b[0m\u001b[1m]\u001b[0m, \u001b[33mfreq\u001b[0m=\u001b[1m[\u001b[0m\u001b[1;36m0.13\u001b[0m, \u001b[1;36m0.88\u001b[0m\u001b[1m]\u001b[0m\u001b[1m)\u001b[0m, \n", " \u001b[32m'stroke'\u001b[0m: \u001b[1;35mDiscrete\u001b[0m\u001b[1m(\u001b[0m\u001b[33mvalues\u001b[0m=\u001b[1m[\u001b[0m\u001b[32m'esd'\u001b[0m, \u001b[32m'other'\u001b[0m\u001b[1m]\u001b[0m, \u001b[33mfreq\u001b[0m=\u001b[1m[\u001b[0m\u001b[1;36m0.4\u001b[0m, \u001b[1;36m0.6\u001b[0m\u001b[1m]\u001b[0m\u001b[1m)\u001b[0m, \n", " \u001b[32m'tia'\u001b[0m: \u001b[1;35mDiscrete\u001b[0m\u001b[1m(\u001b[0m\u001b[33mvalues\u001b[0m=\u001b[1m[\u001b[0m\u001b[32m'other'\u001b[0m\u001b[1m]\u001b[0m, \u001b[33mfreq\u001b[0m=\u001b[1m[\u001b[0m\u001b[1;36m1.0\u001b[0m\u001b[1m]\u001b[0m\u001b[1m)\u001b[0m\u001b[1m}\u001b[0m\u001b[1m}\u001b[0m\u001b[1m}\u001b[0m, \n", - " \u001b[32m'env'\u001b[0m: \u001b[1m<\u001b[0m\u001b[1;95msimpy.core.Environment\u001b[0m\u001b[39m object at \u001b[0m\u001b[1;36m0x7a6b97a856a0\u001b[0m\u001b[39m>,\u001b[0m \n", - "\u001b[39m \u001b[0m\u001b[32m'param'\u001b[0m\u001b[39m: \u001b[0m, \n", + " \u001b[32m'env'\u001b[0m: \u001b[1m<\u001b[0m\u001b[1;95msimpy.core.Environment\u001b[0m\u001b[39m object at \u001b[0m\u001b[1;36m0x73560a6756a0\u001b[0m\u001b[39m>,\u001b[0m \n", + "\u001b[39m \u001b[0m\u001b[32m'param'\u001b[0m\u001b[39m: \u001b[0m, \n", " \u001b[32m'patients'\u001b[0m: \u001b[1m[\u001b[0m\u001b[1m]\u001b[0m, \n", " \u001b[32m'rehab_occupancy'\u001b[0m: \u001b[1;36m0\u001b[0m, \n", " \u001b[32m'run_number'\u001b[0m: \u001b[1;36m0\u001b[0m\u001b[1m}\u001b[0m \n" @@ -204,7 +204,7 @@ " \u001b[32m'rehab_routing_tia'\u001b[0m: \u001b[1m{\u001b[0m \u001b[32m'class_name'\u001b[0m: \u001b[32m'DiscreteEmpirical'\u001b[0m, \n", " \u001b[32m'params'\u001b[0m: \u001b[1m{\u001b[0m \u001b[32m'freq'\u001b[0m: \u001b[1m[\u001b[0m\u001b[1;36m1.0\u001b[0m\u001b[1m]\u001b[0m, \n", " \u001b[32m'values'\u001b[0m: \u001b[1m[\u001b[0m \u001b[32m'other'\u001b[0m\u001b[1m]\u001b[0m\u001b[1m}\u001b[0m\u001b[1m}\u001b[0m\u001b[1m}\u001b[0m, \n", - " \u001b[32m'logger'\u001b[0m: \u001b[1m<\u001b[0m\u001b[1;95msimulation.logging.SimLogger\u001b[0m\u001b[39m object at \u001b[0m\u001b[1;36m0x7a6b97d0b0e0\u001b[0m\u001b[1m>\u001b[0m, \n", + " \u001b[32m'logger'\u001b[0m: \u001b[1m<\u001b[0m\u001b[1;95msimulation.logging.SimLogger\u001b[0m\u001b[39m object at \u001b[0m\u001b[1;36m0x73560a8eb0e0\u001b[0m\u001b[1m>\u001b[0m, \n", " \u001b[32m'number_of_runs'\u001b[0m: \u001b[1;36m150\u001b[0m, \n", " \u001b[32m'warm_up_period'\u001b[0m: \u001b[1;36m15\u001b[0m\u001b[1m}\u001b[0m \n" ] @@ -232,588 +232,588 @@ "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m3.952\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m1.836\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m3.952\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" + "\u001b[1;36m1.836\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m3.952\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.359\u001b[0m \n" + "\u001b[1;36m1.836\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.007\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m4.635\u001b[0m: Patient \u001b[1;36m2\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m1.974\u001b[0m: Patient \u001b[1;36m2\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m4.635\u001b[0m: Patient \u001b[1;36m2\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m1.974\u001b[0m: Patient \u001b[1;36m2\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: esd \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m4.635\u001b[0m: Patient \u001b[1;36m2\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.146\u001b[0m \n" + "\u001b[1;36m1.974\u001b[0m: Patient \u001b[1;36m2\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m31.512\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m4.868\u001b[0m: Patient \u001b[1;36m3\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m2.570\u001b[0m: Patient \u001b[1;36m3\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m4.868\u001b[0m: Patient \u001b[1;36m3\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m2.570\u001b[0m: Patient \u001b[1;36m3\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: esd \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m4.868\u001b[0m: Patient \u001b[1;36m3\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.029\u001b[0m \n" + "\u001b[1;36m2.570\u001b[0m: Patient \u001b[1;36m3\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.130\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m4.946\u001b[0m: Patient \u001b[1;36m4\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m3.388\u001b[0m: Patient \u001b[1;36m4\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m4.946\u001b[0m: Patient \u001b[1;36m4\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m3.388\u001b[0m: Patient \u001b[1;36m4\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m4.946\u001b[0m: Patient \u001b[1;36m4\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.923\u001b[0m \n" + "\u001b[1;36m3.388\u001b[0m: Patient \u001b[1;36m4\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m4.097\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m5.509\u001b[0m: Patient \u001b[1;36m5\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m3.792\u001b[0m: Patient \u001b[1;36m5\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m5.509\u001b[0m: Patient \u001b[1;36m5\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m3.792\u001b[0m: Patient \u001b[1;36m5\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m5.509\u001b[0m: Patient \u001b[1;36m5\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.946\u001b[0m \n" + "\u001b[1;36m3.792\u001b[0m: Patient \u001b[1;36m5\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.597\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m5.923\u001b[0m: Patient \u001b[1;36m6\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m4.958\u001b[0m: Patient \u001b[1;36m6\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m5.923\u001b[0m: Patient \u001b[1;36m6\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m4.958\u001b[0m: Patient \u001b[1;36m6\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m5.923\u001b[0m: Patient \u001b[1;36m6\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.286\u001b[0m \n" + "\u001b[1;36m4.958\u001b[0m: Patient \u001b[1;36m6\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.714\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m6.371\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m5.984\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m6.371\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" + "\u001b[1;36m5.984\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m6.371\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m4.517\u001b[0m \n" + "\u001b[1;36m5.984\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.934\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m6.642\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m6.445\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m6.642\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m6.445\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m6.642\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m4.448\u001b[0m \n" + "\u001b[1;36m6.445\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m19.183\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m6.907\u001b[0m: Patient \u001b[1;36m9\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m6.652\u001b[0m: Patient \u001b[1;36m9\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m6.907\u001b[0m: Patient \u001b[1;36m9\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m6.652\u001b[0m: Patient \u001b[1;36m9\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m6.907\u001b[0m: Patient \u001b[1;36m9\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.626\u001b[0m \n" + "\u001b[1;36m6.652\u001b[0m: Patient \u001b[1;36m9\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.329\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m7.311\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m7.044\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m7.311\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" + "\u001b[1;36m7.044\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m7.311\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m15.766\u001b[0m \n" + "\u001b[1;36m7.044\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m7.705\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m7.469\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m7.452\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m7.469\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m7.452\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m7.469\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.139\u001b[0m \n" + "\u001b[1;36m7.452\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.258\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.067\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m8.593\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.067\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" + "\u001b[1;36m8.593\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.067\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.097\u001b[0m \n" + "\u001b[1;36m8.593\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m13.352\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.115\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m9.668\u001b[0m: Patient \u001b[1;36m13\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.115\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: esd \n" + "\u001b[1;36m9.668\u001b[0m: Patient \u001b[1;36m13\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: esd \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.115\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m4.978\u001b[0m \n" + "\u001b[1;36m9.668\u001b[0m: Patient \u001b[1;36m13\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.429\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.146\u001b[0m: Patient \u001b[1;36m13\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m9.961\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.146\u001b[0m: Patient \u001b[1;36m13\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m9.961\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.146\u001b[0m: Patient \u001b[1;36m13\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.444\u001b[0m \n" + "\u001b[1;36m9.961\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.821\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.344\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m9.970\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.344\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m9.970\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.344\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m20.820\u001b[0m \n" + "\u001b[1;36m9.970\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m4.992\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.832\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m10.476\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.832\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m10.476\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m9.832\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.312\u001b[0m \n" + "\u001b[1;36m10.476\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m5.733\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.163\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m11.511\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.163\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" + "\u001b[1;36m11.511\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.163\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m72.573\u001b[0m \n" + "\u001b[1;36m11.511\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.189\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.164\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m11.857\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.164\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m11.857\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.164\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m4.549\u001b[0m \n" + "\u001b[1;36m11.857\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.989\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.227\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m12.144\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.227\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m12.144\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.227\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m5.184\u001b[0m \n" + "\u001b[1;36m12.144\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.491\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.440\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m12.700\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.440\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m12.700\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.440\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.021\u001b[0m \n" + "\u001b[1;36m12.700\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m18.910\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.581\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m12.782\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.581\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" + "\u001b[1;36m12.782\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.581\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.627\u001b[0m \n" + "\u001b[1;36m12.782\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m27.797\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.864\u001b[0m: Patient \u001b[1;36m20\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m13.471\u001b[0m: Patient \u001b[1;36m20\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.864\u001b[0m: Patient \u001b[1;36m20\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-rehab: other \n" + "\u001b[1;36m13.471\u001b[0m: Patient \u001b[1;36m20\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.864\u001b[0m: Patient \u001b[1;36m20\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m8.403\u001b[0m \n" + "\u001b[1;36m13.471\u001b[0m: Patient \u001b[1;36m20\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.761\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.888\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m13.921\u001b[0m: Patient \u001b[1;36m21\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.888\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: esd \n" + "\u001b[1;36m13.921\u001b[0m: Patient \u001b[1;36m21\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m10.888\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m12.702\u001b[0m \n" + "\u001b[1;36m13.921\u001b[0m: Patient \u001b[1;36m21\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m6.463\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m11.021\u001b[0m: Patient \u001b[1;36m21\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m14.261\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m11.021\u001b[0m: Patient \u001b[1;36m21\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m14.261\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m11.021\u001b[0m: Patient \u001b[1;36m21\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.765\u001b[0m \n" + "\u001b[1;36m14.261\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m11.640\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m11.649\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m14.374\u001b[0m: Patient \u001b[1;36m23\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m11.649\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-rehab: other \n" + "\u001b[1;36m14.374\u001b[0m: Patient \u001b[1;36m23\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m11.649\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m8.100\u001b[0m \n" + "\u001b[1;36m14.374\u001b[0m: Patient \u001b[1;36m23\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.125\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m13.341\u001b[0m: Patient \u001b[1;36m23\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m14.604\u001b[0m: Patient \u001b[1;36m24\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m13.341\u001b[0m: Patient \u001b[1;36m23\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m14.604\u001b[0m: Patient \u001b[1;36m24\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m13.341\u001b[0m: Patient \u001b[1;36m23\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m7.131\u001b[0m \n" + "\u001b[1;36m14.604\u001b[0m: Patient \u001b[1;36m24\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.643\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m14.208\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m14.748\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m14.208\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: esd \n" + "\u001b[1;36m14.748\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m14.208\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m13.151\u001b[0m \n" + "\u001b[1;36m14.748\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m17.002\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m14.408\u001b[0m: Patient \u001b[1;36m24\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m14.962\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m14.408\u001b[0m: Patient \u001b[1;36m24\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m14.962\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m14.408\u001b[0m: Patient \u001b[1;36m24\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.846\u001b[0m \n" + "\u001b[1;36m14.962\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m17.096\u001b[0m \n" ] }, { @@ -841,1491 +841,1071 @@ "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m15.571\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m15.575\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m15.571\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m15.575\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m15.571\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m17.022\u001b[0m \n" + "\u001b[1;36m15.575\u001b[0m: Patient \u001b[1;36m1\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m9.067\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m15.589\u001b[0m: Patient \u001b[1;36m2\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m16.305\u001b[0m: Patient \u001b[1;36m2\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m15.589\u001b[0m: Patient \u001b[1;36m2\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m16.305\u001b[0m: Patient \u001b[1;36m2\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m15.589\u001b[0m: Patient \u001b[1;36m2\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m5.836\u001b[0m \n" + "\u001b[1;36m16.305\u001b[0m: Patient \u001b[1;36m2\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m7.992\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m17.953\u001b[0m: Patient \u001b[1;36m3\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m16.344\u001b[0m: Patient \u001b[1;36m3\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m17.953\u001b[0m: Patient \u001b[1;36m3\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m16.344\u001b[0m: Patient \u001b[1;36m3\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: esd \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m17.953\u001b[0m: Patient \u001b[1;36m3\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m20.251\u001b[0m \n" + "\u001b[1;36m16.344\u001b[0m: Patient \u001b[1;36m3\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m8.934\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m19.171\u001b[0m: Patient \u001b[1;36m4\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m17.393\u001b[0m: Patient \u001b[1;36m4\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m19.171\u001b[0m: Patient \u001b[1;36m4\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m17.393\u001b[0m: Patient \u001b[1;36m4\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m19.171\u001b[0m: Patient \u001b[1;36m4\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m8.514\u001b[0m \n" + "\u001b[1;36m17.393\u001b[0m: Patient \u001b[1;36m4\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.182\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m19.332\u001b[0m: Patient \u001b[1;36m5\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m19.112\u001b[0m: Patient \u001b[1;36m5\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m19.332\u001b[0m: Patient \u001b[1;36m5\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m19.112\u001b[0m: Patient \u001b[1;36m5\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m19.332\u001b[0m: Patient \u001b[1;36m5\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.294\u001b[0m \n" + "\u001b[1;36m19.112\u001b[0m: Patient \u001b[1;36m5\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m4.792\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m19.335\u001b[0m: Patient \u001b[1;36m6\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m19.926\u001b[0m: Patient \u001b[1;36m6\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m19.335\u001b[0m: Patient \u001b[1;36m6\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m19.926\u001b[0m: Patient \u001b[1;36m6\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m19.335\u001b[0m: Patient \u001b[1;36m6\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.244\u001b[0m \n" + "\u001b[1;36m19.926\u001b[0m: Patient \u001b[1;36m6\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.403\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m21.132\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m20.721\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m21.132\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m20.721\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m21.132\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.261\u001b[0m \n" + "\u001b[1;36m20.721\u001b[0m: Patient \u001b[1;36m7\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m4.662\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m22.305\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m21.850\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m22.305\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m21.850\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: rehab \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m22.305\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.150\u001b[0m \n" + "\u001b[1;36m21.850\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.690\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m22.357\u001b[0m: Patient \u001b[1;36m9\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m21.945\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m22.357\u001b[0m: Patient \u001b[1;36m9\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m21.945\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m22.357\u001b[0m: Patient \u001b[1;36m9\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m19.862\u001b[0m \n" + "\u001b[1;36m21.945\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m57.854\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m23.260\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m22.650\u001b[0m: Patient \u001b[1;36m9\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m23.260\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" + "\u001b[1;36m22.650\u001b[0m: Patient \u001b[1;36m9\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: esd \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m23.260\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m6.230\u001b[0m \n" + "\u001b[1;36m22.650\u001b[0m: Patient \u001b[1;36m9\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.327\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m23.680\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m22.881\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m23.680\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m22.881\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m23.680\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m8.540\u001b[0m \n" + "\u001b[1;36m22.881\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m8.521\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m24.497\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m23.232\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m24.497\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" + "\u001b[1;36m23.232\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m24.497\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m25.030\u001b[0m \n" + "\u001b[1;36m23.232\u001b[0m: Patient \u001b[1;36m11\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m6.847\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m25.780\u001b[0m: Patient \u001b[1;36m13\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m23.265\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m25.780\u001b[0m: Patient \u001b[1;36m13\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m23.265\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m25.780\u001b[0m: Patient \u001b[1;36m13\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.969\u001b[0m \n" + "\u001b[1;36m23.265\u001b[0m: Patient \u001b[1;36m12\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.668\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.044\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m23.540\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.044\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: esd \n" + "\u001b[1;36m23.540\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-rehab: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.044\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m11.455\u001b[0m \n" + "\u001b[1;36m23.540\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m8.140\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.815\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m24.034\u001b[0m: Patient \u001b[1;36m13\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.815\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: esd \n" + "\u001b[1;36m24.034\u001b[0m: Patient \u001b[1;36m13\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.815\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.819\u001b[0m \n" + "\u001b[1;36m24.034\u001b[0m: Patient \u001b[1;36m13\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.320\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.935\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m24.887\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.935\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" + "\u001b[1;36m24.887\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.935\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.593\u001b[0m \n" + "\u001b[1;36m24.887\u001b[0m: Patient \u001b[1;36m14\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m7.381\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.942\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m25.628\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.942\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: esd \n" + "\u001b[1;36m25.628\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.942\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m4.915\u001b[0m \n" + "\u001b[1;36m25.628\u001b[0m: Patient \u001b[1;36m8\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m20.442\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.988\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m26.491\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.988\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m26.491\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m26.988\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.668\u001b[0m \n" + "\u001b[1;36m26.491\u001b[0m: Patient \u001b[1;36m15\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.913\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m27.528\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m27.156\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m27.528\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" + "\u001b[1;36m27.156\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m27.528\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m13.826\u001b[0m \n" + "\u001b[1;36m27.156\u001b[0m: Patient \u001b[1;36m16\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.611\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m27.935\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m27.165\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m27.935\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: esd \n" + "\u001b[1;36m27.165\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m27.935\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m8.185\u001b[0m \n" + "\u001b[1;36m27.165\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m10.474\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m28.679\u001b[0m: Patient \u001b[1;36m20\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m27.200\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m28.679\u001b[0m: Patient \u001b[1;36m20\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m27.200\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: rehab \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m28.679\u001b[0m: Patient \u001b[1;36m20\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m4.248\u001b[0m \n" + "\u001b[1;36m27.200\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.272\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.004\u001b[0m: Patient \u001b[1;36m21\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m27.438\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.004\u001b[0m: Patient \u001b[1;36m21\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m27.438\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.004\u001b[0m: Patient \u001b[1;36m21\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.510\u001b[0m \n" + "\u001b[1;36m27.438\u001b[0m: Patient \u001b[1;36m19\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m22.218\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.406\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m28.472\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.406\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" + "\u001b[1;36m28.472\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-rehab: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.406\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m6.987\u001b[0m \n" + "\u001b[1;36m28.472\u001b[0m: Patient \u001b[1;36m18\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m12.227\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.490\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m28.573\u001b[0m: Patient \u001b[1;36m20\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.490\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: esd \n" + "\u001b[1;36m28.573\u001b[0m: Patient \u001b[1;36m20\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.490\u001b[0m: Patient \u001b[1;36m10\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m75.543\u001b[0m \n" + "\u001b[1;36m28.573\u001b[0m: Patient \u001b[1;36m20\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.315\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.884\u001b[0m: Patient \u001b[1;36m23\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m29.643\u001b[0m: Patient \u001b[1;36m21\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.884\u001b[0m: Patient \u001b[1;36m23\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m29.643\u001b[0m: Patient \u001b[1;36m21\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: esd \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.884\u001b[0m: Patient \u001b[1;36m23\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.903\u001b[0m \n" + "\u001b[1;36m29.643\u001b[0m: Patient \u001b[1;36m21\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.740\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.911\u001b[0m: Patient \u001b[1;36m24\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m29.924\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.911\u001b[0m: Patient \u001b[1;36m24\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m29.924\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m29.911\u001b[0m: Patient \u001b[1;36m24\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m8.592\u001b[0m \n" + "\u001b[1;36m29.924\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m5.570\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m30.200\u001b[0m: Patient \u001b[1;36m25\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m30.341\u001b[0m: Patient \u001b[1;36m23\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m30.200\u001b[0m: Patient \u001b[1;36m25\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m30.341\u001b[0m: Patient \u001b[1;36m23\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m30.200\u001b[0m: Patient \u001b[1;36m25\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.908\u001b[0m \n" + "\u001b[1;36m30.341\u001b[0m: Patient \u001b[1;36m23\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.819\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m31.428\u001b[0m: Patient \u001b[1;36m26\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m30.350\u001b[0m: Patient \u001b[1;36m24\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m31.428\u001b[0m: Patient \u001b[1;36m26\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: rehab \n" + "\u001b[1;36m30.350\u001b[0m: Patient \u001b[1;36m24\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m31.428\u001b[0m: Patient \u001b[1;36m26\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.587\u001b[0m \n" + "\u001b[1;36m30.350\u001b[0m: Patient \u001b[1;36m24\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.364\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m32.814\u001b[0m: Patient \u001b[1;36m27\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m30.680\u001b[0m: Patient \u001b[1;36m25\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m32.814\u001b[0m: Patient \u001b[1;36m27\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m30.680\u001b[0m: Patient \u001b[1;36m25\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m32.814\u001b[0m: Patient \u001b[1;36m27\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m6.870\u001b[0m \n" + "\u001b[1;36m30.680\u001b[0m: Patient \u001b[1;36m25\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m5.272\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m32.884\u001b[0m: Patient \u001b[1;36m28\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m31.743\u001b[0m: Patient \u001b[1;36m26\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m32.884\u001b[0m: Patient \u001b[1;36m28\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-rehab: other \n" + "\u001b[1;36m31.743\u001b[0m: Patient \u001b[1;36m26\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: rehab \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m32.884\u001b[0m: Patient \u001b[1;36m28\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m60.723\u001b[0m \n" + "\u001b[1;36m31.743\u001b[0m: Patient \u001b[1;36m26\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m6.138\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m33.097\u001b[0m: Patient \u001b[1;36m29\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m32.085\u001b[0m: Patient \u001b[1;36m27\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m33.097\u001b[0m: Patient \u001b[1;36m29\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m32.085\u001b[0m: Patient \u001b[1;36m27\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m33.097\u001b[0m: Patient \u001b[1;36m29\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.270\u001b[0m \n" + "\u001b[1;36m32.085\u001b[0m: Patient \u001b[1;36m27\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m5.326\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m34.015\u001b[0m: Patient \u001b[1;36m26\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m33.475\u001b[0m: Patient \u001b[1;36m28\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m34.015\u001b[0m: Patient \u001b[1;36m26\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-rehab: other \n" + "\u001b[1;36m33.475\u001b[0m: Patient \u001b[1;36m28\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m34.015\u001b[0m: Patient \u001b[1;36m26\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m13.694\u001b[0m \n" + "\u001b[1;36m33.475\u001b[0m: Patient \u001b[1;36m28\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.993\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m34.534\u001b[0m: Patient \u001b[1;36m30\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m37.411\u001b[0m: Patient \u001b[1;36m27\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m34.534\u001b[0m: Patient \u001b[1;36m30\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m37.411\u001b[0m: Patient \u001b[1;36m27\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: esd \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m34.534\u001b[0m: Patient \u001b[1;36m30\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m4.013\u001b[0m \n" + "\u001b[1;36m37.411\u001b[0m: Patient \u001b[1;36m27\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m21.042\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m36.102\u001b[0m: Patient \u001b[1;36m31\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m37.638\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m36.102\u001b[0m: Patient \u001b[1;36m31\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m37.638\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m36.102\u001b[0m: Patient \u001b[1;36m31\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m24.260\u001b[0m \n" + "\u001b[1;36m37.638\u001b[0m: Patient \u001b[1;36m17\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m22.310\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m36.393\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m37.881\u001b[0m: Patient \u001b[1;36m26\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m36.393\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" + "\u001b[1;36m37.881\u001b[0m: Patient \u001b[1;36m26\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-rehab: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m36.393\u001b[0m: Patient \u001b[1;36m22\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m19.051\u001b[0m \n" + "\u001b[1;36m37.881\u001b[0m: Patient \u001b[1;36m26\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m118.211\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m36.433\u001b[0m: Patient \u001b[1;36m32\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m38.220\u001b[0m: Patient \u001b[1;36m29\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m36.433\u001b[0m: Patient \u001b[1;36m32\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m38.220\u001b[0m: Patient \u001b[1;36m29\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m36.433\u001b[0m: Patient \u001b[1;36m32\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.052\u001b[0m \n" + "\u001b[1;36m38.220\u001b[0m: Patient \u001b[1;36m29\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.916\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m36.493\u001b[0m: Patient \u001b[1;36m33\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m39.150\u001b[0m: Patient \u001b[1;36m30\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m36.493\u001b[0m: Patient \u001b[1;36m33\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m39.150\u001b[0m: Patient \u001b[1;36m30\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: esd \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m36.493\u001b[0m: Patient \u001b[1;36m33\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m19.224\u001b[0m \n" + "\u001b[1;36m39.150\u001b[0m: Patient \u001b[1;36m30\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m16.195\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m37.456\u001b[0m: Patient \u001b[1;36m34\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m39.412\u001b[0m: Patient \u001b[1;36m31\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m37.456\u001b[0m: Patient \u001b[1;36m34\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m39.412\u001b[0m: Patient \u001b[1;36m31\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m37.456\u001b[0m: Patient \u001b[1;36m34\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m7.962\u001b[0m \n" + "\u001b[1;36m39.412\u001b[0m: Patient \u001b[1;36m31\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.613\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m38.034\u001b[0m: Patient \u001b[1;36m35\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m39.788\u001b[0m: Patient \u001b[1;36m32\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m38.034\u001b[0m: Patient \u001b[1;36m35\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m39.788\u001b[0m: Patient \u001b[1;36m32\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: esd \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m38.034\u001b[0m: Patient \u001b[1;36m35\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.243\u001b[0m \n" + "\u001b[1;36m39.788\u001b[0m: Patient \u001b[1;36m32\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m26.878\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m38.348\u001b[0m: Patient \u001b[1;36m36\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m40.023\u001b[0m: Patient \u001b[1;36m33\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m38.348\u001b[0m: Patient \u001b[1;36m36\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" + "\u001b[1;36m40.023\u001b[0m: Patient \u001b[1;36m33\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m38.348\u001b[0m: Patient \u001b[1;36m36\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m12.273\u001b[0m \n" + "\u001b[1;36m40.023\u001b[0m: Patient \u001b[1;36m33\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.265\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m39.617\u001b[0m: Patient \u001b[1;36m37\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m40.100\u001b[0m: Patient \u001b[1;36m34\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m39.617\u001b[0m: Patient \u001b[1;36m37\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" + "\u001b[1;36m40.100\u001b[0m: Patient \u001b[1;36m34\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m39.617\u001b[0m: Patient \u001b[1;36m37\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m8.563\u001b[0m \n" + "\u001b[1;36m40.100\u001b[0m: Patient \u001b[1;36m34\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m5.739\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m40.085\u001b[0m: Patient \u001b[1;36m38\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m41.177\u001b[0m: Patient \u001b[1;36m35\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m40.085\u001b[0m: Patient \u001b[1;36m38\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" + "\u001b[1;36m41.177\u001b[0m: Patient \u001b[1;36m35\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m40.085\u001b[0m: Patient \u001b[1;36m38\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.374\u001b[0m \n" + "\u001b[1;36m41.177\u001b[0m: Patient \u001b[1;36m35\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.195\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m40.221\u001b[0m: Patient \u001b[1;36m39\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m42.937\u001b[0m: Patient \u001b[1;36m36\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m40.221\u001b[0m: Patient \u001b[1;36m39\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m42.937\u001b[0m: Patient \u001b[1;36m36\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m40.221\u001b[0m: Patient \u001b[1;36m39\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.006\u001b[0m \n" + "\u001b[1;36m42.937\u001b[0m: Patient \u001b[1;36m36\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m6.028\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m40.904\u001b[0m: Patient \u001b[1;36m40\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m46.714\u001b[0m: Patient \u001b[1;36m37\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m40.904\u001b[0m: Patient \u001b[1;36m40\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m46.714\u001b[0m: Patient \u001b[1;36m37\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m40.904\u001b[0m: Patient \u001b[1;36m40\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m22.662\u001b[0m \n" + "\u001b[1;36m46.714\u001b[0m: Patient \u001b[1;36m37\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.221\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m41.230\u001b[0m: Patient \u001b[1;36m41\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m46.767\u001b[0m: Patient \u001b[1;36m38\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m41.230\u001b[0m: Patient \u001b[1;36m41\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m46.767\u001b[0m: Patient \u001b[1;36m38\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m41.230\u001b[0m: Patient \u001b[1;36m41\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.914\u001b[0m \n" + "\u001b[1;36m46.767\u001b[0m: Patient \u001b[1;36m38\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m7.771\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m41.459\u001b[0m: Patient \u001b[1;36m38\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m47.236\u001b[0m: Patient \u001b[1;36m39\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m41.459\u001b[0m: Patient \u001b[1;36m38\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: esd \n" + "\u001b[1;36m47.236\u001b[0m: Patient \u001b[1;36m39\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m41.459\u001b[0m: Patient \u001b[1;36m38\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m18.808\u001b[0m \n" + "\u001b[1;36m47.236\u001b[0m: Patient \u001b[1;36m39\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.514\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m41.478\u001b[0m: Patient \u001b[1;36m42\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at rehab. \n" + "\u001b[1;36m47.902\u001b[0m: Patient \u001b[1;36m40\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m41.478\u001b[0m: Patient \u001b[1;36m42\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-rehab: other \n" + "\u001b[1;36m47.902\u001b[0m: Patient \u001b[1;36m40\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m41.478\u001b[0m: Patient \u001b[1;36m42\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m6.542\u001b[0m \n" + "\u001b[1;36m47.902\u001b[0m: Patient \u001b[1;36m40\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m5.220\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m41.763\u001b[0m: Patient \u001b[1;36m43\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m49.022\u001b[0m: Patient \u001b[1;36m41\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m41.763\u001b[0m: Patient \u001b[1;36m43\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: esd \n" + "\u001b[1;36m49.022\u001b[0m: Patient \u001b[1;36m41\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m41.763\u001b[0m: Patient \u001b[1;36m43\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.483\u001b[0m \n" + "\u001b[1;36m49.022\u001b[0m: Patient \u001b[1;36m41\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.885\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m42.784\u001b[0m: Patient \u001b[1;36m44\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m49.181\u001b[0m: Patient \u001b[1;36m42\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m42.784\u001b[0m: Patient \u001b[1;36m44\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m49.181\u001b[0m: Patient \u001b[1;36m42\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m42.784\u001b[0m: Patient \u001b[1;36m44\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.828\u001b[0m \n" + "\u001b[1;36m49.181\u001b[0m: Patient \u001b[1;36m42\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m9.292\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m43.243\u001b[0m: Patient \u001b[1;36m45\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m49.838\u001b[0m: Patient \u001b[1;36m43\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m43.243\u001b[0m: Patient \u001b[1;36m45\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m49.838\u001b[0m: Patient \u001b[1;36m43\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m43.243\u001b[0m: Patient \u001b[1;36m45\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.136\u001b[0m \n" + "\u001b[1;36m49.838\u001b[0m: Patient \u001b[1;36m43\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m7.459\u001b[0m \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m45.264\u001b[0m: Patient \u001b[1;36m46\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m arrive at ASU. \n" + "\u001b[1;36m53.122\u001b[0m: Patient \u001b[1;36m40\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m45.264\u001b[0m: Patient \u001b[1;36m46\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m post-ASU: other \n" + "\u001b[1;36m53.122\u001b[0m: Patient \u001b[1;36m40\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: esd \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[1;36m45.264\u001b[0m: Patient \u001b[1;36m46\u001b[0m \u001b[1m(\u001b[0mtia\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.267\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m45.922\u001b[0m: Patient \u001b[1;36m47\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at rehab. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m45.922\u001b[0m: Patient \u001b[1;36m47\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-rehab: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m45.922\u001b[0m: Patient \u001b[1;36m47\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m27.789\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m46.096\u001b[0m: Patient \u001b[1;36m48\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m46.096\u001b[0m: Patient \u001b[1;36m48\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m46.096\u001b[0m: Patient \u001b[1;36m48\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m9.104\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m46.285\u001b[0m: Patient \u001b[1;36m49\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m46.285\u001b[0m: Patient \u001b[1;36m49\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m46.285\u001b[0m: Patient \u001b[1;36m49\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.034\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m46.634\u001b[0m: Patient \u001b[1;36m50\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m46.634\u001b[0m: Patient \u001b[1;36m50\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m46.634\u001b[0m: Patient \u001b[1;36m50\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m12.043\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m47.097\u001b[0m: Patient \u001b[1;36m51\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m47.097\u001b[0m: Patient \u001b[1;36m51\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m47.097\u001b[0m: Patient \u001b[1;36m51\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m8.175\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m48.179\u001b[0m: Patient \u001b[1;36m37\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m48.179\u001b[0m: Patient \u001b[1;36m37\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m48.179\u001b[0m: Patient \u001b[1;36m37\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m12.860\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m48.916\u001b[0m: Patient \u001b[1;36m52\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m48.916\u001b[0m: Patient \u001b[1;36m52\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m48.916\u001b[0m: Patient \u001b[1;36m52\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.062\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m49.597\u001b[0m: Patient \u001b[1;36m53\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m49.597\u001b[0m: Patient \u001b[1;36m53\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m49.597\u001b[0m: Patient \u001b[1;36m53\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.952\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m50.429\u001b[0m: Patient \u001b[1;36m54\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m50.429\u001b[0m: Patient \u001b[1;36m54\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m50.429\u001b[0m: Patient \u001b[1;36m54\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m2.426\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m50.621\u001b[0m: Patient \u001b[1;36m36\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at rehab. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m50.621\u001b[0m: Patient \u001b[1;36m36\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-rehab: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m50.621\u001b[0m: Patient \u001b[1;36m36\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m20.802\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m50.992\u001b[0m: Patient \u001b[1;36m55\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m50.992\u001b[0m: Patient \u001b[1;36m55\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: rehab \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m50.992\u001b[0m: Patient \u001b[1;36m55\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m7.385\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m51.220\u001b[0m: Patient \u001b[1;36m56\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m51.220\u001b[0m: Patient \u001b[1;36m56\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m51.220\u001b[0m: Patient \u001b[1;36m56\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m0.913\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m52.180\u001b[0m: Patient \u001b[1;36m57\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m52.180\u001b[0m: Patient \u001b[1;36m57\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-ASU: rehab \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m52.180\u001b[0m: Patient \u001b[1;36m57\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.372\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m52.441\u001b[0m: Patient \u001b[1;36m58\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m52.441\u001b[0m: Patient \u001b[1;36m58\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: esd \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m52.441\u001b[0m: Patient \u001b[1;36m58\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.935\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m52.544\u001b[0m: Patient \u001b[1;36m59\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m52.544\u001b[0m: Patient \u001b[1;36m59\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m52.544\u001b[0m: Patient \u001b[1;36m59\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m3.531\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m52.946\u001b[0m: Patient \u001b[1;36m60\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m52.946\u001b[0m: Patient \u001b[1;36m60\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m52.946\u001b[0m: Patient \u001b[1;36m60\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m10.057\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m53.210\u001b[0m: Patient \u001b[1;36m61\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m53.210\u001b[0m: Patient \u001b[1;36m61\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m post-ASU: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m53.210\u001b[0m: Patient \u001b[1;36m61\u001b[0m \u001b[1m(\u001b[0mother\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m1.259\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m53.552\u001b[0m: Patient \u001b[1;36m57\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m arrive at rehab. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m53.552\u001b[0m: Patient \u001b[1;36m57\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m post-rehab: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m53.552\u001b[0m: Patient \u001b[1;36m57\u001b[0m \u001b[1m(\u001b[0mneuro\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m49.465\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m54.155\u001b[0m: Patient \u001b[1;36m62\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m54.155\u001b[0m: Patient \u001b[1;36m62\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m54.155\u001b[0m: Patient \u001b[1;36m62\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m5.558\u001b[0m \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m54.435\u001b[0m: Patient \u001b[1;36m63\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m arrive at ASU. \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m54.435\u001b[0m: Patient \u001b[1;36m63\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m post-ASU: other \n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1;36m54.435\u001b[0m: Patient \u001b[1;36m63\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on ASU: \u001b[1;36m4.576\u001b[0m \n" + "\u001b[1;36m53.122\u001b[0m: Patient \u001b[1;36m40\u001b[0m \u001b[1m(\u001b[0mstroke\u001b[1m)\u001b[0m LOS on rehab unit: \u001b[1;36m26.316\u001b[0m \n" ] } ], diff --git a/outputs/figure1_asu.png b/outputs/figure1_asu.png index 67c56badc68087fee6a2d2a9e3b333597c3eb2e4..f32b4cf755827065b9f54baa11a3f8800e61aa02 100644 GIT binary patch literal 29195 zcmeFaXHb;e)-{TV0xFV36a+*zq97niGAL2W8A*+bNRphItdbNYDM5*nGc8%50R;g` zO{OI^G)NAO5}M4n9?%`md(PQ!eRXfuy;b|i))Km(u+|J?jydMqFVs}z$xhInARr(h zyK`GcgMfe#NkDL9mE<`1$*A7mDERA$qlUZ`K>_N*ECInqf;%#|wBWFX1X4JSc3GL^ zO_EDxC5z5d5m$Vr%CqtpDF(~PE(*Q7lHdKL?et4Z^IPF>FJ7X!d`u=oM*X2$xSQ5* zN7O$ZQ9FK2U7s>t`?3G^Z~M73M1;)Qy)Dd9Ee0KqNgjxW(vBS0d@q!T%bXU?9YsY& zYGR^`1V>125)e{6As~`cct=u4-`(P%5B=-sFSw5Q#mN2fPYM!&BYuLtlat^6^hFAo z`{5N1es-~!hytS)6Z6{l_lr>6gwOtdn~MZb)u?a6rHx=Jrw{IXcqME)@t-a!rA&Y& zb9NIJ{`GL+cYZO9|2)V)EAqP`{bM6H3I1=q2Cas5 z1Yv5w{8fzlqp(=26x=#Xd^kJu|Kw|;&noaRV;eLwBOzrPlZDDsBZ!t#`WQaSzocG$qxbr5t}?rzrq%VBOJlW|LwuqjM%!g2 zg6ZX#K@2c@b{F_cEYt6cGZsQnHy_f|EC(KaOn&A380GJqU9%J;6!M+y!nW)_G@iVe6B4mn-I++p}en2SeE% z=DQ_$S_U!r6=}Gx&wKUV09MPX4R8HKq{;*=G4(w6y7ROJouHb1{@i>{4h>l0BucVh z2K1Dm&gu!>kCrx|RKRdM97=`MIKAY3qOR43TSe z?F>yA&9<+CSBpD-&_Rr3-O;2qZ{uT7-Lrnm05iZ-CfE|KFAim@B#2nl2awe`3hnQ# z^dXETwe#+F;V%#!80Zs0LK1|a3LCxl6+c0XtxMKhI~;4cZYjR${4c*D=>=_dWA;o0 z9Ho3X4Jvdr%{Y7f{J07>T&#!Gv^iqr;nw1EP6VVvb@cS~xsj1)Mh9f&<*oL1HggOs zig3ateh1!T3v9_Y{zU$=2-Wu1vnV=Dc|y=xP6x1N_u^a6T~5dZMETOFhCe z+6;3dzAw^9?y$DQBJ(V@*+1;NED4+P-W6#t-~Y&LaO`=&O$myxwLVFf=p2i)7-7fh zY^er?O}pdB-@ryat&_c&1LwiJ%3s(c@$(KuS47_bQR1)H?Pj}o4$m7n5k|~3pNmO| zwHyky<@Z7j(RJsRiZ&%O`RF8}+IdNFs|EB#7kxWLnI`zy+T>_22hv9<0g7^0@j3;H@&dUKE$O;t=jB z%12pi%V8$3A92{rlq=P>mUBwuDPwJkKBO^^cCOSxFv62^?A3AOuc0Ca`p;i-Rx#zL zC)umic^J1Q(tX{%ul=&-wk?-}ddoKbs#Cenl5?$9ztcbW z09fm>KoDyJ2fN;ME-W*881PQ7a@8ywa=zi6ArcuNML1UDhSPIL6wk$*jP7X(Skfaj zGUYAskss=`|4j2&p5hG)9d6>|+MQjPm5VALwlApebb0FFo|T=&yI=iYv_LR4okio3%Z zllnexY``HioJji5pTGIwK}syY#kiZN&e7MeUiD_Fv-qK9BJM$&H&7hvr|Ie@fcdId|Mv5!1!q2P+7?pf0O%|zY zdwc%jzCgTR*1fme4~A-t6fmb zao>88El$Aw$Kw$CVPVA<{-pfP=j(C=*tNzN>QKC{1IXmPwjh68$$Axxy zAwpEO=fl$=D{W(4?ffUpgIh1nkAl7bi4mEZ!H-Uyr^7m5-`N_HFw&jwqV~hXWkLoU zIm)&KEZ6TbwCfcqoQy$qec3oYShyl8U_*;2H#?1e<4a&*}pS7PAj^R;? z7crh}NzB|R;4HPmGb+EW&|;Yw;_%*3jIF++*O#MZx4$^-*z%CVH5Rv>v_8Oolb@)F zdCX~so)4xSJf*B0e_2IAYs4MT!MXT_Kk#%$4s2vl;m)1!;LAxm}vfj&HPQPfE-$=layW_kbBnmF}SiYHHAe2fUY9r}bqXgcrJ5-wC|hw_S6 zov7QOl(NqXCu_(;0k2t<#MQ!o0}JB6ic9Y0NhHLXQemV6Pj5r8K#U4LoBo@CMfc~4 znY=(&R@T`hGWth56E$AjTE%i?#mlHTLDeXBUDO*vR$;xu!othgkl^5+@MLM_X~pYA z7sH8(>~h7Pym8e$!=ZBqD=>ELOx?UEivs+9tOjQE-JSZ%oYnK0NoNLv`j{*lhiT|A zhy*z{R5zx&cJ9RuvdA5bdx&yu{%6V&UQ+JSvQs1SS!{%c-D9NGz7V4JizSHR|Jp+D zjunT`gb%vVFTrZAzu#urGMd#GpsGTcs*)}2y=Rv*P7|a}|L|%DAd1-1>w15N6ekT< z3yi8tEP5^jB-@G4mX(#gdinBYO|iOpdN#12fCZ5T4iLr5U+1x4-F)FUT4Q*@S*7!7 zN$Y#Mf+KxXL<*DK62^|Nk3ZVNp~Cv7xQrHIbz>K{*E3rxQl+zdQcJc2nW8!~^SKae zr?I7LhUTdZ1NoYnp*1@{6i27wJ<5U>-^Ux+^@<)gULZl(#vcYrGGKQ)Eq~yU^7nGW zbp}-~*4CpnBlxQ#RaJ`7*KWb7sXY09`=4jDYAG zsE$sGlVSyyQ#Vg7OPvc^zJz3cY^6d9+=K*j6Ox~y_vHO6b-~L4@AHLONp4=e2)<^( zOmSGzar-5caM#h-l}$wg4DtjNL67}!9%2wAMZhH_i7m-cEOawMDX?xdg#X;^pJn{V zK>nZivj}R;Y)_`uP?>d2Rfc(2N{)JJK#q3ql*eg8s3`fy2K-r$=}+D#rvevsnt4ab zBDb*=o0WBiQ?E#-FIN{YPJ9sNe!K?EL@E>ezp@E@zHQ|Dn|jrOO5JnhH)itqIyza% z`}!o8kPW-|k`n&4^SpZVHy*1uQ?d4D42V~52C!7!w2~ai>w0ZwH9UsW)5zF-+)i6& z?njFyGf;Ju0GQE^1YkyeKe^v|h4k+zdKNxX+f0d$ss}^W(k6>LkIDyKmuWy&R(GHWu#q72+Fx)DasHK()?4pgztd3 zWem!>8w<&lFyeYd?P8C!Gh_R200ms=buO38(Ur$L9YYHzdhKa5s3>a2+#usOYi8#( ztdV1x5H)W?;d(z9Au)--bEOE*cM8Gj90+y0g zFN;*wpq6lzvJ+Y9!44&ZH4u|67l zO57eX-;_{zrLk*ob~;3OtjGbvqd(5kdDfJMZwl_y&fb@!C!L+0T{FGd$*giT(M`v~ zLO$b)zRcVYgbJN-_j+on|4G{U!Fk)&1lpfwc5}8TxGKiXVS|Oj9jgr3E4%N(?64jF zm{-O1qOQ%B%5?n#ik9RO{kqkn0)1r+qvl)jj&60BV{mQP$1p;C?{481OZ%HDsrv2Go|(^j zgH?E4@ve-guSN|Jg?Eahgi;JHV<(5Av-hQF+E~d9yD4%4rXB)oxCyZv2EtO@$kT~u z8Hi``rl{T?)w1qd*WGsk)?2w&Lq2n;ShhX4o{F9O_wa$*JX@E9VBzY1jWje+<186&LyhLH)Y3ki*=cw?GjC3~(C40KtC&9n9eV zcRk`(KtlhK1R_N4k)J$=|MfFiS-AAq{&*^)ixd=q0?DT!K^zdMv~_Bbv)?yxQ~=I? z6LNN`i-!f`0Wbl0#Jc?|0Ov=TpE!O!K}m^KjxSS7vKhc)M#egm>*>TE^YyVFj#c@Hh(*9xD?TEWYD#5bG$kZZYu@dHj9!HH6=(GM67765#iHiPnM)TfE`nFOsUN`)wu=IyP-H`%FT=Ep(;unQ zy#w5wcHPOIlHFX}5n|!Td*fE(KR(~%Op<8(y9*d>-^VvU0wut-#45H!S4U$$0}q7} zC)MI5{VMZ#&iN-YJ)TFd%G~U}2|WEt$t4S@ruYr4KoA`z*1E^~O;FbJ92g9idKp;& zknvn)E|)9QfaqrFu~>1pCx7$(-L1HhE!|q4!I}wr0k3zVj250Tr&F^Kg z4f4M?We7Kq<-X`oa+?kcVBtEyk%1`b2cbK4mP^R8$P+63?YefB&g{Ih;1M;u%#dJ_ z)r6o5zfxWap1?5DQ9GP1F1aMmTtAPfsr#EXDKMyQsHPbx7};;;ts=8kF8Z4Xa21>{ zc*UwP6A?J~XfvGD1#T_NBJu|CseXcQ67J|gWCMukW$bb?a700$0?Sruk1?XQJKE@D zD%e`unKPMzz?d^XOu|8z@Ervu*xQEC=gXL(l)&xCQaOBIi7D+eSb?!)A`P>^uyI#y zgkhlNctr+Uf__qwSvnqb8tXA;^Y|nqV;e3^3|&$f*5+QQHixm&TU(=$pmc zS3W4%O^w60;3c|z_P66Mhs|Ut#K0c5id^jCH@A)(JKpUO{R+-6C z@}^nLWOZlJchB}%-b z-44*+y~)#8`ZneTEJw#B4Em3Nr6$yP{v_=wFqI<~vfWUHcN?ly1TNKiY}mynCang* z;(42@UC_euYz3u{?E>`$tK~tRU-&nVJ$scw$W9H#Kp#ZIk)haXL{Zsv3Zf%U8t_BK zRDPx~6L2>n$ksS7u_McRpD`(~9IKVf}Jc`4AF$k8vg%m)9RcLYX+zy(}7s3%WD&l&tJdwEdfDjXQer(8YvMg|e5 z&gYaYo=G>gv?8Og>7~r|<+327ILxl!{e$w0vo810TmfP%}RZgfjJX$6G_?InWSwe1;oDoGXEN_|1N7-%VB{Y^YsnfzbA-|+efh@(@UQ-($Y5Gx&HQ>h=~5m zbce2~3*76lQhuTfl7_B^UYKZlov1^dQoF%c!Bp+e%U=Q3FAVYpwEPeSA?Q|J90lp? z#;O}T5{0sHX~HSQboY!f_Hzmvnf~#>P)b_sy5R=`I>i@3s2kvwcmh{7FX3ElvA4lT zH&~^dVFg!AfN8`SyVz$jO5B2Aq+}{3@HxrtFf`Q72sa=UlDBzb%9xZ{XQh}vCfnnA z4Do38JOltfEy8#MK}0xUPS-$0AZD`d52P=fD<54?3TMV+OKC#PMWOgp>PpE6J%x}n z2%Gft&q;8r!nV2Su@^yHu1{SShSS-jS~zlK?1ia3wfj!ETWGodG9(fvC@~_!%9x2D zTDJy@o-<&-oa0<{+vE20T-tHkZ6nreEi2+$0CUcXj2$y_Y4*45TUIgXuXu?m-Ik;i zo6^qr#8W3YuIp7+xj2`a+f{YPW&RJ+@q(Ls|Dfs(tJQAi`*Ze}We&45S1OZd zNf<|A$Q-)c$9p)JjTre()C!a4(;wXTAF2lq{t)`C4?1fjMzeXRW4UAeNjmMI7_KJz z>IBqaxd7sz@TC?etn!7uw1PZ`w;Um^qi0jyo%eEFF}rscJzn+#xc^vhns=+^>s0Kz z6qD}91e32HX15?jHk$4~bxkkbzZGr%(35!a>t+I7c`$m2FVJdjFeH}W`DvqA&-XNh z+<$!cOc*>NGrKR}`86FHk&b@EjpneurX3i)2H4tb2`>6P)jPwQWqFS0M=EgUUX_!I z&eq$ix^+W<25VVjrA^2Ti7U@l+%Jq3POgp4H_Xj0j<%4JqSf`RDznbYiE1_DKoXNP zpiFO^A}4$r8rEd-`8j2c=8K@9?(v3TXHBKGm%=w}F=<2dyeWF{O`R$m9P{O^ zJ(gt>e3qCXhH!+=v2@GTI(s~m#&N}t%jAuabB#xW z{eN$<$}`0*cn)o0Grclb4dFbZPantz&t$WSTJ>f{)UY}FIqf}@&2ed8JMXygwMKhw zsix-|648-}c#s)oH_drzHsm}a$8BYSY3^0e3#Hh|tje_|-7SO3WZ&${>4L#W*o4i- zICkB=8CFTAd@tQn+guAO%sPWemhJv65vPsYWf3{LDs3CC5U+ge(sE$2!X;$DGZ`5; z+2%L587SdbDp$_-@lMdw)o6)htkO`zRWGYrUkfP+b9!y7720qqfN~zseHxZ4cKI#8BZkro||^|0CB@ z{HvbwQmt~BxKsIhCS&L8qm9|C=UMyk#_g)N8zR=8jxf1!H^Cj%gCM#%v#PW^&%ar} zcu5mq6tL<$B^njgHiVV}SQWW=tqbn<8pC z{LaI+R(QgOw5+#UUKG6?dQMUrWrG_q_0Amh*@vp80tGpS3Kia6JMWSkuCtbSs^imN z%O$lz3nI67R()`{K1^YzM<+)2O5n1)Jk!?*2t|LL`i%$LMLnQtv$m#G$BN$&Fe~qM z+lno&uf*ox`BUBnxF5!3ElmQ&7Ecxc{5$2f0I2R34%VFwImS^6lA-oq8y5o0=(05P7l!M_p)K>V=PCNBdQ^xBJp0T#hACQswVc!RUY0$Gl3W@Q0@hMYrB zK;}5Yaht3A7FZXRwbTmticNic|Aoh$^F?v<>m_5`a5CiE_?7qnC zyXPbb&h%&0$}2SS`V2`|!51$fkGbxG{re+(gUoFSnjKqPaX9d9x!v8}{7aLhOcdtD|VNUE_P)dVR)=Z z{9EkQ$=l4H2Ot;ZbbrX^!fgSfqu&CM01!$!ZoWg#^1y7|6?;x$jjCNz8F9i2xl>}c ze?>L2aIb3@00{eKub}eEUCDZ+ynr~_A<6c7*}Kd+kglBm9eyh8cX)ibUYC#(XHPT# z8A+_gN~VMM*vQZ;hN}8Fey<43-S--Num!8XyQQ(m3MXi&$#krHYN0gI5{A4mVENr2 z)irwy+{6Wte2kir@l4;Am?N}BJWoZ zjK=#<&00Z3$PYd`;AxbY9mA){8-GG$Ogva;SYyPs{V+o#vM+7L6kJVt8J{v36b@bGy*Nj*40a&s(_ z5=5;mkQH*OK&Ab5G} zt`LNHH|4-PB!hQo93Ih`IN)myQ`|WdyT!}3U2&c7orhEe%tykARli!wIWdAL387x{ zvs9YkyO}RR5iHF>iCv5d&x*2==xQ+S=!^V~{&&ih4_U-%V| zKKtPT@F=;rNoNh}YK1eB$}up9W}* z)9rz%;K)(L_1$D--eup@lr=s5PAT>+Uai7Q>?kE{hxP*uJM^pchsrImR4}HKffRpKOP7(jf^B}5*9aHyOrAT% zeYJ`wg^wvnPI2j_FB*I0f`0CQ4^m>(n4EI{wfN?M^2=_F^xvNH8;9q<_Ody!yR*Y< zAe&ry2^FY)D@t%{i!*KJv50&9?ahZi{O4^G`AJt!Izk=IOUO+miJKdEP+cOsP(!T9 zeY?*f&1AT)e$(4>YK>V6*2#8y!DwNqD`=?M@H@Q{1JNtob#bk-^*{-5(HPVPH+G<6 zl+-F=OAGePfAX*{FQkK4?k`K#mwN7dTB{7aJ__s=vJ z3)t9AUo(!FT2X)g#P8sB>BAc!I_P(?@0r8AZMk*RdPK9zJ%ct;*w+752DiwhDAJ&O zvDZZPa@MA=^Kim6pF%=Gifr%|P-y1w-AmmfQ|xW~zFQ*ZmcY?48zy1%S5@dSuETBn z$f-yLXyzhF2r|fWsczn|e#qm?Z_e(k-ccMLiE-E%U^>a%N}4zoW$kU8PoZf->&)4N z|D5k4+uS^x)=ho}h z_TAv>{BY~}f_xo4Qm?@|fTLTQ5&xyqVnJ3sgi!>5Ql7icfI^2|7>J!_0ZumHmVwN7 z(x}8yxPGL)65_0vP!7#mRCDXALQsiEHrqGo#XQX$@IrICs;cX|k%1+8Nj#RW)3$Fp-K7sTcTHltr=Yx6%N5VfvU^-Cw|;+nzPZai zWHn*F%YDR7sk&@Rz549K!@BQcI8nUo#n5*YS2Qb$e6(+zN$n)T$tyNhiMFF6KyY$i z64k$2oYYD+;v2T+%w7GpY=T}nX{C&#@n@CuQ@gs?>wA31Z;JToCD}9}`?dT=61U8y zUvgJ)7_QlP_3=oNp6jrEl^&cSf=m4py9q`&1DThh9QQ_z_44J}r^Nejd7Acix3#v* zVnMmaXO_sWl^4l_tIE~XN|nn~hEI&IF1%wt@8F#V3!7H24u$nQrNNwkyn_Yv^|fkU zdB#j}h0w5wHqAjMN{9?AaOStwy6t(}ZD*qd`PI2Mu&tiSuJd(6K6hVDRj;;@&OmvL zZ>pek*?W;+#6Eg`X;)jd#NypIe81IUEfswSUJ-!q^x8bv0(F!=vXX6nAaJt)@dgd) zXVG7HkNE*cpxAo%;j?v|d z9gqDO1PILr#Ip+4XgAMf3QUss9^!b|+Z?@ zwR{DOBZp;C)r8Cba_Y8pIq17n>!hd;?B0(&6 zD)`L6mkuZnlh}SkpGQEAY6cM18hKNIyN_1dufzah6|IPqPPT`%4nkRTlr*sE!25{m3PVVfqX5{oB-_z!Q0HZNtMdO%YGX$h?$2bs z0Qw`t0mqSR;J%&HHmFpZ1EGksm+ z|2+|l(ZJ;G_T6mB#Nqh-CF=H!b~i=oCL|!@jTRnl;*2D-W_L^bmN9gH`v{3lc+1sq zf+de9MFec^s+JJju3p9S#QE+%)!V71^!tXgU6WkzO)tCy81-hu7gP3wygB92b^QXs zs1W~2<^u?3cXm;irS8tcp4HiC?!L-d@ygsO<>U&!`oa$u5(X=iW)N=;Qf39An>8@Q za*#5IsanNA28!FGVzS;bR1Ndgt6dyIl(o-gPqm{5i^%SRCf)mI-!3s6Y?ounn( z;oD*HDMo{-59}$q-*dz3$G{C54t*J)%5e=N_3u=icWdP8jpLK~6ry@-89melcPfJZ zE8GPf>5xe$Q9JBS-ia>L5rc5ym>Xht_|kDWPoc)ALPTcWcK6E$s5FU*s_ksIY%N3d%|;MA zjWP%h6`e8%YuQ-`zkTumV3D8nhpMT2P&ZWr(DEYLj{*Ioz|+2gJ<>miWyr?wkVVk=4`PCd$R#{u#NwNZ5%G^+69DX5Kn6Q=>$oOusW z1`!Bd2Zy4i%6Tr(#rTL17GM8rLdSn)#Z&+o5B*i_?vGaPQdb;oba##@n#)LkvNcAq z{T9&pQE)-tnE12zJI&(+WM@GkA=;LfIZe;00~;C|t}-(}Wx&XV@Sa;33S5>`fM=>E z6?pG%Z7%7uz1Ky+D)AT(Wk-rrpec6H{9yZu+1yUa!qY#0mVxw#EQJU9!)(gBT+nkc zBM6FImP>(Uj8jA3dInyFgXK@(qJ(8?pV(%-!WeV19u%(>VD{*7!!M8&d zp$^5v01DGNVFIl1J!BL#TwvzuIS?qMuJvGyotDRv0sXT3Np6ikI_vGkwuRddkq{5J z&_~Fx==4E;n|I^-eQ0fM4$$_NSYd#)8lXcrDSZ*R-6g2S{Kj7nPArZOg0dfN;y!V^ z{+oE_gElt6!Th{6z7VMpGSo1?__n_EPe@p!4kA5}G6#@!-ZcICabWESVHzvNjJ(rB zYtb`pob3~HHdfeH_A++lgIiVQDpT%T>Mg5*meN=etGAbbbFyzJw;Bq_(XS8#+AAK- z!ea=rF^(CxY2S^JO+JazbZb#-<95_qA_2cF9&q4@?k=0k_( z&9~PVYowl+I_?e+5BYOoLGif&OIP3ih>UuC`yS=_SAbItuDzD^rHIBFDa z5?d7n*>7Nt-rGeKRIE3?eD-+%LGV(6N1z_utV1uWCn)C28`s8?tCpC&?Cj;&m)UYK zUgVG3AbdXJ++_U->t)h^A*#0IK_jwPF-WFbse$br*xO@IixpykPB-dQ^)h3})P^Em z=sun%SF-zM1qVOUSTsZ>KE2w*r;pm2?#gEM8eJT}0qF3XQo(Ah&sTOxUxAtlzCa`m z8o(qIp*ycw6}76}*IpJ3l~}yCL>E}^JsWQ`DEijLje7Coh2?|c2vr3Ija0c1u{;VW z;raVRN^SO#WyU64O|-bc`|bLibASOfj7*8d3(f$hX?WfnowwavoyWZU4hROPSr3Xr z7&nJM4@i4oAxXjs7G%@1V*x&)%Bj?Y)YoxgC@DwIdO~|{^~&NNR-Sd$BKIc_jmbU4 zp^l{w&p`kCUlk^aX7oAH%xa+_?_&F-t89ehdWj4Jeq0{FFHVe>0eW+}Xwc z(gOUGy8dsHb2k`USlyTiv)bKSW7I{xsOS1HM%d8Ql>49|sAl>ikUe~n1Xw0S{4Yqt z4-cr##zuBl)`p1|Vf(va9Al~@3DFY8v7P996WGo^q!3vD9se9qhX6B73>~Y#NMQ+q zBM`I?gmKe6|NQdFe^~_AGZ<)#zM6#1PJ~IWE3ej_*r`?TrTyS$jCIg5IWN~tmmy{ zSe(|+Sqj0SU)`LO=GC4_LO`YZ@hTgD=iw}nWRa=P0K~adByl&G)fT?c<}tX{4>2V} zpScV^^W^7ef|rX}I!+_7%8_a$H$OrXM|?Tgh!2M1m=0%Fi%s8(1X#~|sw#tl?wFPQSbrLS)(Guh@juK|)T?d2#E(O6iy=?%YS@yoPlnI#P+mTqX5#d ze!heREbpMitLH#MqXMSZO4sB7i7`P5jr)F`LuU>6I{)uv-3+q65V*octf_@F9<$!w zxJU=upiyAm=okNQX2;xTcz*66xh>5p(2Me5B9IV}yR z{^y1s!MXH8`I^ zv)r4vQ^*;Vw5zKuIY4B>pND4A8|iIx3^!9_!ab4eMtwE;85)|JUL8X<(!^`ClD7j- zGgV+J?{;09`~J`@gifFv9}f*Iao$a{L|>>lJ1p$-cr?cYSED&pZi^SURZ@ES2=!C& zU?;K)2_9ruGHRxs2-$v4s_h0j&dF9Qk;wwU2PEt9jyiX|1s}eHW%;>+A@tb2DFX$% z0V7isyO+k}f1~FXF8o8yJxgVpb?b^$0s|&i;6Zzxs4d1*JI7Gi_m093g@(q)SU*87 zE*0s3%MZtQ;D*E@=XmM_J>=oE+_024bA5bMUy&BC=X$fP&te)Bqpz^%JZwaAv$E#g zd40LY(U}m;RIhdfgz!$igHf&VmY(@^;J#yz`BR@n#%$xzB9=;y6Di$Tl+$nsDK}bLSSc$Wwp*@xs$nc@y2kqClGtf zuU2)Z7qPnhm87$0-2~`|-|Bu*|L^c8G(`sLlHtF&kI7q=k+Y^S6Fkj>5D*H?8SItd zYb$39Zm_9A9kSRs{_8zHuD=TwT+t3bIq{+*ks{&>RX!W)5I_Cn#3Tjgn)_)e+F+is zAw^vlI#CIt%1M{f6{0jsE#;StP)ClC$bLwY(@LN1q?LaA z_He|$i9y6}>e=t6c#$5g84999yGj-;I`FkIxAsP)Kt9t zS9+Jr6riaFDkv8U9DuA}kxvB#MqfWQ5;#x>z=@oTxKCLOKl&(m>sM$5bj2>S)I}nP zTLjZzj^$koC^|R>1BiE_5*}z~!YHMf|9a@i&r5@f-t#5JiJzelh~aXmQ!ONZ`XmUs zk_K6!v|NTlaM3v|JR7iDE7&hEq-sTtM1tR9V;NTui(^!`S4z6 zBDw?xHG9*8qe#G-F~D5l16c6SWge+3M2DxIfOAR$z}X%y@Gz?9K|!xr4tvIzkZ!vJ zb)Hbz2ldm>GeKOSjfcotGA0&3sl!wPjs&p=XPTITi(^bYE*>Zv4+^(9bP^{B-QdKK z8se{5f$Nh)XCd9>!FyP3oMS#iczA*dI6FkT0ZIo@UWjv}`TY6w2ed=XH9g)5CMs&` zzO*~kJwwWnkW0Wal1Dym=~h`6O6CuO_4o0;x?Ud-ce>wBAG+CKgYG+lP;+pQ+$`D`zePOYR=n1vVfzkHGcbDMxWt6eu-B7A`7+Fe4~>JvKE;D?^P*V%xTzk4Sl z|IqxKw~htFshEl!CI z`OJ3IQR*Tu^a+^&xg|5xKtX)lS8P<|0Wbprlss|l6SWxp8L{fQpDsv(Fw^>dBMJ{8 z&BF585(W%|sEhgf!ob!V+SsesD#;NgY>7cu;NXPJ;YrXPzOfaX7}Nh+z{8HiEow}A zoZx)fkWK3f+j%+(LK6RvS6S865+)+0TBaJnK}W1$zyF9Wf<98r;p7KbJIW4@L$R6x zoAwih0?FB)%smMbnP_OQzG!@x5EVsY^b)QYK^t~(Kkhm!_zK$@!p)n|(n-97P9#dE z?VXbT<>D(_)K51d$=b0#;Y*4Q+Y1ZJ?q&_AaXdsHIQ1gqht%y2cx@CLt(#Tat(z~c zrIs31xioJQnhPsLU&~%WiFWWFE2Q`mK~NXRlJb}sny`tmslnB3tDxd`KKT-RnVqMh zNvF3(@@R_v@*WTah`7L~u=A%ZJnKT`*e5?U$v>VoUMD_T2{Up5jr?{6kL50X~NzduGm@q@+i z&4$t(1eg!H2@hidoiZ?h1zM7uD-~%^73of_vyze6Vn~ni$wq_dH35x>+l{>|sM=Mp z7OBkS_<;Jpu!5Mg(~qqL4LD&%9Sba&(>p(UOBART8W+dc*4wc9KoNCW+2|clhm+V< z>}^31e!4-$M*~j&>Fw1TO<<&TwUh`Kv>r?wEVY{64EfIT{b}1_e3Wwube-?dUy=(R zt>5$%2FDO-S2|hLYEsbh5=OX$hGRvrPGCL^9H(?kfN>_xIk+)f=EXSI6AMR7_cK7+ zd4HiE{5!fW?idLAP?pgRdhx>E2RXB2es%ZCZDX}puU|XQ=a-*-&K-Ho`sh3RiAMb@ zmwem64>Kvj{5Hcv+BsTRO+t;mH)T=#cSAwlJG;M!+rOqs5vK|X#y2`o;>-+OX8=W0 z3bc#o(;$L|6oKlQr{1dCZ?AZHf4p~-U3Xoq0qAXws_^D5ZRud;VBhPFyBB1eb9B<5 zZQD*KYF;*B%-nR@|DY-xd^=8J_pXP}UbCw}d<7SB`9Xs2`m2}1d%Jx%$Yw?jM!mQ5 zac=t?O_DigNtxQKB~(inWP@(oa=t}Gumo%ZhVJnwvx-k}e(EaOOKD=wzH&2N>#y%W z;gKkt#@8br*^es}A^c~b;JyxTS*@=Y#Z@YDGTLNH2Zk+_odHcI?$Gne6^_#zs8aa% z@wt)ABzE0u5tGma(VEVl?_PxZh^DpjuYTr~Z@b%AT7!P8;jcU*PBY=QWjuYk^B5og7P#cKOS9WX#&PZ+?__9YcZ;mx zryqWE280}g$oo;(M0tt#X<0o!F&3dEzS-;=y*C!I^(`ApN=exdUpy$g!>1Iw=&yU2uZPd}&^!9avp%``iCOK6 zAAVb0G8;@V6ucL~WAlBcIo(&2E7`P~fA*qXyzz^w+NovV*`3`Zp>8zQR!RGZ9_de4 zdEWjyl@6SfrTk8f#1_lNV@Ce-2r@8EA$Y{E+zy>o3`Q${zC<$HlV!ONp9jSIzixrE zLNKXA^e$bmK(P)a9{QO*Mc#CxFvbY^#B(XMfnv$f>>NKXoCi@+o+rBgykaSA z>Gft_)BMV47Z7yL?S|dR-b?V&EME^%(u9;>Wj@a1obzXEe&lgge%$xEAvw5F5fBzv z0CdfUG%4KO^<=o-{5}NFH=t>k}=L_o+Y!gbfhl6Djc}|`CUgY7C!x$zRNjV`VW~MZLEq`;FPuMl9VtIeXc}Zwu^?giztMF-h z!IA2yiNbRCHjAa#eXSKND7GZ;h^xbHm8Q7?u2cN!4mmNSYtb}Er(cyBECq`)XP!iD z`$j7r?Y%hOBS5=Hr&~P_HDjy0Onnb-=1k0$bg7Qqp=3Xv27G zw(u5obT-Q~T8-o-=4f#tsv#LdlIi{{hlOC_@-C~dWwl_X=3uT%({=@}wJXVN0`G_F zfeupFyk}apx6=`qUsZmA8|jTU zaIt4;?65npo2>;4#<;6`QD2^)oOYj4jgdDCzCVSend32kCOY-0%2xaqT(@BJGtDrV zwe8!`owE40@m9Zlqv1mB2Y2BnU2y7NU3tHGdu4|hsjbVJ!-`KHf^L{Px5_rSIeYc( zo_MDFrjae|TpHW>aFN3&1FO~XF_v9;5lfYOb@d#}n&O*0^`qlX-~Fd6AIqz}$(BW& zZZ0${ZtZi6ohd`q*!#pAP37_RrR@^zZnm_zvlrNxRXoCg}keT$+gULIi-Pkid&Nl1vw2cyqHYh7=+G?UaShG40PYINu@-!LiF4^Z;1U1f6 ztugGjgDq}q=Sio-!p^z}pbM0MR_$9*B8#RQAp6jD^S5hOCO^4#-ccDh#da0qS90JM zdgAMyBQ=@!E=fc9bIITIQX{>SET#kF_CL%=8!9#z-Vqx#&9Xt3<;3nx+`vnUGCkvQ zE$>@sKI$~UN;@TDY{u3y+W|ItQ*E}>B&~`uh(^@GY-^ioHea3|y@r(D1!HwdPJw8g z`wHE(U1+{{$TasG6z%ifY+`U~VBtk_29dnxp0nol8H;+DXFMD;1Cv`iErANLg}19k zZm1^&7=hi}vU;e^Jw3W}!gdR(*VkH!LH5pr0n*C+TV`bQJvzEN6>XaPkF*ifY#k1+ z8wo@AL<0G6K&$$}r?hHpxY#is|FB|jvn+6}J8P*jWjuoTys+p3IEcal?Q9cjB6;-3 z12193;(~;3uyt~_iN|bMRG4?gN}YJsa6;{>@ce%Drb+RI=%KYJiRR{U5CT?(i(C4N zY8*6s>cpZMFeEyXnN4&C#)DhOBYNh`JuLmU&F)Wk$n;N)I49+7PIP>zibaGhPVQy* zIV^12BN!KXWsX)!rhw7Tu_cOcQOh;!Qx3a$wAWH-MzQadq4z!Ectw$ZpR)FmcDub^ zPyNCNbKMzF-7qGO4tsw4YTHNjCA{9?MvU-B@gHyXS@g=%w8Usn%QFF;RiMDV&x%W| z4C?zH{N+q%QHy&QLQyubEo^UFMczdJn^e`@6%kh*!nMX{QL!Q(6)?9N`9^+}NquUo zQTU{hUXgqL4i!w^Y0t&hL%e5~67N9HE$>n%YFRhG0M-e`f zT<~#Jv6Ya`a_unjvQX7RMMWC3DAsw87rQ#r=aZAwue{XUXY5^+6XRU%=4R~7D6@*H zVw(O?<#7!M;&9&3Hq+7~Y#fM{V)dhuI>z4BtzJIM4iBT|A$1fz?(w4cd8fS-;}>Q{ z7jf-OkbcbTl#2?&e!=V}ERTD7Ej}|zV#Az?wZmJ*EK(#kn09GkGET@kd5YWkwZ(2` z7{0h>7+?Q7PqB8MLp*81v9tgYKli1U31~y*-cuvR`oI48(J%OX0XDQ*Hn1{4x^z^u z8}Xv(TP))?&@!!c+}IUxR^ryK>>YBpY^p6-X|Dt|172Tnx?=(rp<6e<(>zyOyO(hi zwd=c$T^ar?*o*wMXbHC^8_gUo#5+0=iSO3$_=bfU_Va*qMsg^;z8!6L7y5zQY3^<< z4HK@8Uinl8l;FE%wzVFl3i#6@M&HXXg!)}mg=Nl8Y*k7n0))NK#R=5OuQRy2U%5(j zf}xa0X>+UZS7htw*Sa@Zk-kkz&b4R28DgwWisap@T$v28=@&`}WTDao%)6&2=}UrJ zvAgOfzI-%Sxci-`Vl1qo~piVWa*C)WuwP zJ+y%eE*FSZjRlr)Ge4FqtLDGOX;;V73CG}tVonOhkP8=yf{~hOH`VCem6(v3VD3&n zRq^o@2d*f)J;F$OtoR<^MehEXm4*zrCbMBhw?Tng!5#wzmEmHKeS7zkz4~hY5?6Y> zBIbJ_$cJqaM)A;JZk`2hg*Df3?fzHKVngng?uzvb3C`ZdTrBcP02<>iXk?`#bAorb z`Kn-rsbIg`vV6WlLF>kfi_NsMBrb0}Uh=J|YGZ3|{pJy0N6r~=_G(S0lf)D5iWyI5 zb2sD03#g>#x#2BZSKTIeA;OWRZ0yoffhlc&bN#>z9GD*%czyiC_~hz)$BNrvNK!e5 zU&zPZwV=vL0?uHOvx}b>aPH?F?e-~Rz(BK( zQ57^?Z}HQ%`1<`=q9vMNMJT9IFJ>>MaZ=K-SkWK;oUxbV`5#!(qWX4S`5!k zEzH2y+P68rgbWmo<3f>-Zjg(VAGW&^Jdu+A+| zdDiTXE+s|xkjujpjC%4C*QYnr_60i!+ADVZ>3@7f(V_x3w>oORIE}cB`pGPgCdFo| zo;Tb=>AT_|Vib?^70{sC-OO0kP)Tp9PQ!0;jGlYTlgT23AF(f`C9pJI!qWw_n9S@^hi)2e|N|ez7iqfgccwC|6se+-jxb1y(?h5+C zd3bgVUo#jT8g4Dw67Ldg5>{P5e^1Z&ba|6UsK&ralszu~)!z0Klh@zfxtbb1YrHZU z7h}iv&TVWkNo;|<{-U*gtAz_~($ULy%Omi*gPVPi#mQwP0_3j(|2-d_>b z@nvt3uVA;uTBRw>80dTOv=s?^t_<&2e8?HLV_`|1s^F*)vjhni34|Y-au}LU{6U+5 zAeR`(^I2oaZ(`aDT&muEG+H52Zsgz{&u3$2HsZ9%R64gyHrIxF;`s!^3 zX$`V|daoh4t-=wtJsjuhI90(m02}E$GUt2MOAcwOgIG=dB+5bcx;@B1t%soX_@Elo z@wV4&VV-5v@01dXWsV1y3f}K+!Ll#U?RI8OTrZBz6%{bg>ZeKHXwVeL>@A>AAh*Us z3m(m}SAv6vYih&MrwRxoZMLH&eI$yjf(kA)Uen_?W)!*aQg0{rC8m$w?T2_n3;9Fc zm2{@bf`O9OUYF_CICLb1@|&8Eeva~s*`jB3SE5F?IXRAUws-Yu?lR6UMhu)l3`9Sk zy4}Tza#Fm>`G49w@3*Fwt&am@6p${*L+BvQh#b*?QX@s0h=LFT5<~=~BfSS~C`wc5 z0!oW?L?SJOa1;^(EV zeL|t;I31TEvIMF@?l31+jlS~uvzCf$i@W9J84|QKm(_YjIeWH>Tx3kRjOj{!mEq-2 z>%gRq+?3euGmj6j!?gwGnx7K`Y6UNqQ5+DP(7nJr)B9^%wph4BH|L6dPN?}o+56ft zqo(+09|x7ZR8MEjEV=bzarR$rKA_wfPIik|6cKsv3jG(f-wWoS$h5MsckCI_EJtq? zZ4qCpk&5veVJ6RqmACc#E-LQgBV8oEFAi0@A3!6B+XPO_#uDE6xsML<^DZc#QPrll zbo?7uWpsksD7|AhQINXb;cr1Y;6Jy&$R1_b%yu92g$_rlnCJ3xdiWIUOK+;e6V~TV z(x+q`xiwrQCbM!SisZVBqZo0T8m(7^!%#a(Vp(4R?%X+2V zC+BjT$W88JVu($v+>{;%Pyoh)-YBL~5NpW1-pCZbHND>_CjIz1p-w};eP~nmcE~&7 zA~YH4E;#ns^G69$IK9Rj0VkG!b68$BEv3V)BfZAzf-=vB_@n9@FK>t0va%_|+1ZXt zMzj1ZqRqMZLL$S$ghhXuSYpyVSXkNlVE+_&^x>meZLOwbJikoQcmnj_-ajQK`q|i# zxj9Hs>_37(3)sXo_}|_?C05;7*(%M=l^^K+Qk7iwh6+mKZV`oz^1tOO-FA z9`v680H+AsX#7HdKVjmx=_vN*q5rmlg-u%tHnB;gIs5)Lu_G&f1eyvzr34y6T4A+6kEM8ZWTL%tXqb z+I4oLym|Zq)jxAO<)Jy9dN-F>TuWAJPwtDul#A()JYJiRb6?eT#g!N2``flYL?k%m zPhy>a2-G^F%MgFj$RQfFD?ipT3l>cVI#2%;KP6^IR;vt#(!I?;bMe6@a`+`zDd#MS zF#gq>Z;ZeA{!pHh2NJ{?JMDzjJcDJm_@zHXx^tROj_)&%6kF`ma}L#oI$u3Z(QChI z+`_g~_!>nMT^Jp^(CeeLN@+-uX7Y%>Y$s@+E)+j)GSMXRl5~-O^(-( zpI_Zt5kAe8=JP7r9hF2r63}sewZf*>?2mSDe(u!7lu)Cv08cqDyMfIH5h3u_i>fo_ z)QRMi7k#M($CYhukTmg=OSVJjX8U^7Pv1`1T_1(4B@)IvRwR^VSO*EFcV}lTs4+}x zYfrD=+D7OsbB2^{$|FZgYd(#X=Xe@^XYfcesj}5)OlDo@YEr?u69oegS_|wN+tw_Y zax)7k9p9T_$8tQad7a2BNrJ{5YXSAuDt@=%#oIS8?ksm&6_2`H%lt7|!gw9Qx7Tnt zIx=`teyufT%A)EPYbfr!WnWXIWj|@KH~6#NcZV%UVQ5{}j^EcRw<4W-zo(1)->bgW z?MQHV+ZrMl$cQy+M|Lso$(P{ije1j;-KfGiQy6Bg?`_~4&2?%%Nj2-^%FA@w1uB)s zH3N;ooa(?+mb#e7z*?p_%18Xph>SeRC{}yQ8AyIpKSmw~_hDX3wPAGkH1& zB~YngtDKY{pLDaO2CQNOt(c_n+Q2Bpc(eX{>9%i{v7KhfRGs)Gd9!&dLcnqp?x-6u zPqZPxD?eQ9eCw#q314=KKr1KVO|K83%^4-o{G#<-*=khvJ+wZ_M!|kmHI=hlTZ-Ad ze>t^P)`Ys?*jIhstWy0=Ozn-QxBGBFJ2v%&5zW&+c~VNME_oc@;E=$=_ulbwFCf8Z z1gp?pNa;gim}H8S5;44N8SP`<|q?tk(%v1J;LTGN`5q5aoqz9GJc#%dL(h?a3KUGPyDwp2Qu;Iou|DrEPy6 z6Hrq&S)1*it!~Z%A%l5}5Ba$GuM8gk@{Aw$KeC+%o9(Ak2o}uZ0KQ->u4Hc_*W4?w zH{o?cb*OBfHjkc4Kkt#u@sL0fn;p#Zn8+5oXagQ9zCALAi?q8RmY`A^Bg2TT(}Zsq z)cfr*%rb;RU0VlV;!7cEEyQ^vI*(cQ?9DCXyt1(x(?7a}r;cHZ7yNlewH56dhMft6 zK3Ob_r&h%^Laz=u5&!P6SblG)32rRKFE|XDxA81ZdX6hcG-!T@TeKB2bb{p_>b;rS zDP)X)muX-Zug(o!7ej7R&-r_^X{l^J-(4MyK5rbZ4h*fK64J<_NbWtKgn39{Nm{q{ zMBprJA~0BJ6*xx62*{$-VKA1MV{FBTDxW2S~Ca9rFS%b^y zTm{JBDIF!-<)mSNrrdWP=0DUQb*tAk>GaCb#-WO4dwWU>B^@L*oUJ`ER2c`HX0^{J zW>Gu|IHcGx)M#E1!HtzT9k2FwWbka1jX7=O_5;tuz>u>eE4`JG&+%Hyu!*KwWmXox zFA7QOtMl;Kgo6*eeh>pN`;8zFlKV}!+5$xIF};&7B;O@UAzW}K%wPcsWNB_wM9rB* zm8w4PU5XVGgy=DYUbS~JGW=1;8xc`E)2Z;7+OTKvE_X~+&C0y*tMdgsSg^Dm?s$&# z#Gt?1oPA1_-V4&rSHw|zXDeac_(n)NT$Y>mAm{PEouXm}2x*U4?s0wnFvwj>d7$jp z;~JlX>z4UtG4M}*t(TjoiE5034Egr2xheSDMZOTN-We#c zF!KS+tde9j3>32wLmwD^wsw0?frGq8!S7a1cAPao|@{a0%{c z7sRC&hz9$Gb7xDNGtyFfQH#rqKGf&D(|;HGWXIHAU4?}@T~l)#+eU3x&^$u)klA-l zc;wr|AJ+rh?-94a6ETz z)ETFuwhQnOOeM5b8`u{pkq})8S)&Uze8?-uv@=+;og$vWy^>{1YrilIEMF6Y7xzs- z&odP{o}rC1Vok#$PS8Su?^{Em#JiF!TAn4tLMJ!%JSZR}+<)aBIz$Sf3M@bsv*>hI z>4_#717GU;B*Y^I(KGS6fw7O^hxk=gY<~z zcIxn32v$o2n$`e?WLg}yZ`zx=QC-H6>>S`r%n^`jJc#-_P`h6Ni|S1=9+T2F1&Q*y zx+wsE8`W+^DjHQppsX?nE0Z15K-}(?39lW4IC_pW1r*wvLP>HCscMFs_Yi$aQIF^& zn^|kRtFU!0Skp+#$!Y62DlyA2Xi-~I>;W6`kkbKUIh;14W1*{2n^fT?QZE{Gm7Oxk zfl7JbKa-KNrIPsS)u;BWgjk4LW-M7$miwNF_RFWeT+{I_V^_w#(ce_V1xtgA1q=!= z#lCgf#D#v!d=W8Ot!TB~tz7#$CU|8(UqJm%+>Y!ej~L8A{%-$%Um)z&x4L_lphuW< z2lN#P+_`_NsjtvXrWm;+oaQtXjf+@P9`AJ86{`NkAiiRntKrdWQgX#}RqitHkCOiE$ff9gzrTFku&=dH z!@KXFZD6PIJEE&j$a8;$pUkJAuv4g*D?3hB>hn zGuk4xEM~wG)Xok7x9ZztM_3y<>q;gu3pR7WZ9bCGcpuYfJaaUYH|zmk3t0V|T+ul( zG5`t$+ehQW$xlNM0j#YLkn&T3%1b{{yGj~1fyuip@|$@_kMf0howEu!{tJ!qalkBz z1AF}@Yfl-#i+H2=`foP~K==^%ntw$9;rgn0z)RKAz>xnJ=9dA|~95eeMx$YN}8Rlh>_*8P70mMuu) literal 28453 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 diff --git a/outputs/figure1_rehab.png b/outputs/figure1_rehab.png index e65094b0af64b8db19b9383c684c4c971edad716..14d0f7c214d693d650dd6a43bf677d19742fd9fb 100644 GIT binary patch literal 30585 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%0A5)&JMsw| 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 literal 28614 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 U6XMVU{+N#oWo&6wcHZgEpU#pi9smFU diff --git a/outputs/figure3_asu.png b/outputs/figure3_asu.png index b1cd782f8050cf3f0526fa077a5fd2c5a5cb3156..61cd0b057fdec31605878999181e9411e1681871 100644 GIT binary patch literal 24375 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 diff --git a/outputs/figure3_rehab.png b/outputs/figure3_rehab.png index b6d893e60639cb4792602a04337731d69dea579e..b3ae054c569bd5914e20a579f37977e752def455 100644 GIT binary patch literal 25118 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 C#f5nQ literal 25962 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

vgyv|z({0V7Zu_r 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 WxxOpD2rf_2^Eq_*>nh@j?0*5NLuc>+ diff --git a/outputs/logs/log_example.log b/outputs/logs/log_example.log index 6d0c486..0cb79e9 100644 --- a/outputs/logs/log_example.log +++ b/outputs/logs/log_example.log @@ -29,8 +29,8 @@ 'other': Discrete(values=['esd', 'other'], freq=[0.13, 0.88]), 'stroke': Discrete(values=['esd', 'other'], freq=[0.4, 0.6]), 'tia': Discrete(values=['other'], freq=[1.0])}}}, - 'env': , - 'param': , + 'env': , + 'param': , 'patients': [], 'rehab_occupancy': 0, 'run_number': 0} @@ -133,7 +133,7 @@ Parameters: 'rehab_routing_tia': { 'class_name': 'DiscreteEmpirical', 'params': { 'freq': [1.0], 'values': [ 'other']}}}, - 'logger': , + 'logger': , 'number_of_runs': 150, 'warm_up_period': 15} Logger: @@ -143,303 +143,243 @@ Logger: 'log_to_file': True, 'logger': , 'sanitise': False} -3.952: Patient 1 (stroke) arrive at ASU. -3.952: Patient 1 (stroke) post-ASU: rehab -3.952: Patient 1 (stroke) LOS on ASU: 3.359 -4.635: Patient 2 (other) arrive at ASU. -4.635: Patient 2 (other) post-ASU: other -4.635: Patient 2 (other) LOS on ASU: 3.146 -4.868: Patient 3 (stroke) arrive at ASU. -4.868: Patient 3 (stroke) post-ASU: other -4.868: Patient 3 (stroke) LOS on ASU: 3.029 -4.946: Patient 4 (other) arrive at ASU. -4.946: Patient 4 (other) post-ASU: other -4.946: Patient 4 (other) LOS on ASU: 1.923 -5.509: Patient 5 (neuro) arrive at ASU. -5.509: Patient 5 (neuro) post-ASU: other -5.509: Patient 5 (neuro) LOS on ASU: 1.946 -5.923: Patient 6 (neuro) arrive at ASU. -5.923: Patient 6 (neuro) post-ASU: other -5.923: Patient 6 (neuro) LOS on ASU: 2.286 -6.371: Patient 7 (stroke) arrive at ASU. -6.371: Patient 7 (stroke) post-ASU: rehab -6.371: Patient 7 (stroke) LOS on ASU: 4.517 -6.642: Patient 8 (stroke) arrive at ASU. -6.642: Patient 8 (stroke) post-ASU: other -6.642: Patient 8 (stroke) LOS on ASU: 4.448 -6.907: Patient 9 (stroke) arrive at ASU. -6.907: Patient 9 (stroke) post-ASU: other -6.907: Patient 9 (stroke) LOS on ASU: 3.626 -7.311: Patient 1 (stroke) arrive at rehab. -7.311: Patient 1 (stroke) post-rehab: other -7.311: Patient 1 (stroke) LOS on rehab unit: 15.766 -7.469: Patient 10 (tia) arrive at ASU. -7.469: Patient 10 (tia) post-ASU: other -7.469: Patient 10 (tia) LOS on ASU: 1.139 -9.067: Patient 11 (stroke) arrive at ASU. -9.067: Patient 11 (stroke) post-ASU: rehab -9.067: Patient 11 (stroke) LOS on ASU: 1.097 -9.115: Patient 12 (other) arrive at ASU. -9.115: Patient 12 (other) post-ASU: esd -9.115: Patient 12 (other) LOS on ASU: 4.978 -9.146: Patient 13 (stroke) arrive at ASU. -9.146: Patient 13 (stroke) post-ASU: other -9.146: Patient 13 (stroke) LOS on ASU: 2.444 -9.344: Patient 14 (other) arrive at ASU. -9.344: Patient 14 (other) post-ASU: other -9.344: Patient 14 (other) LOS on ASU: 20.820 -9.832: Patient 15 (other) arrive at ASU. -9.832: Patient 15 (other) post-ASU: other -9.832: Patient 15 (other) LOS on ASU: 0.312 -10.163: Patient 11 (stroke) arrive at rehab. -10.163: Patient 11 (stroke) post-rehab: other -10.163: Patient 11 (stroke) LOS on rehab unit: 72.573 -10.164: Patient 16 (neuro) arrive at ASU. -10.164: Patient 16 (neuro) post-ASU: other -10.164: Patient 16 (neuro) LOS on ASU: 4.549 -10.227: Patient 17 (stroke) arrive at ASU. -10.227: Patient 17 (stroke) post-ASU: other -10.227: Patient 17 (stroke) LOS on ASU: 5.184 -10.440: Patient 18 (other) arrive at ASU. -10.440: Patient 18 (other) post-ASU: other -10.440: Patient 18 (other) LOS on ASU: 3.021 -10.581: Patient 19 (stroke) arrive at ASU. -10.581: Patient 19 (stroke) post-ASU: rehab -10.581: Patient 19 (stroke) LOS on ASU: 3.627 -10.864: Patient 20 (neuro) arrive at rehab. -10.864: Patient 20 (neuro) post-rehab: other -10.864: Patient 20 (neuro) LOS on rehab unit: 8.403 -10.888: Patient 7 (stroke) arrive at rehab. -10.888: Patient 7 (stroke) post-rehab: esd -10.888: Patient 7 (stroke) LOS on rehab unit: 12.702 -11.021: Patient 21 (tia) arrive at ASU. -11.021: Patient 21 (tia) post-ASU: other -11.021: Patient 21 (tia) LOS on ASU: 1.765 -11.649: Patient 22 (other) arrive at rehab. -11.649: Patient 22 (other) post-rehab: other -11.649: Patient 22 (other) LOS on rehab unit: 8.100 -13.341: Patient 23 (stroke) arrive at ASU. -13.341: Patient 23 (stroke) post-ASU: other -13.341: Patient 23 (stroke) LOS on ASU: 7.131 -14.208: Patient 19 (stroke) arrive at rehab. -14.208: Patient 19 (stroke) post-rehab: esd -14.208: Patient 19 (stroke) LOS on rehab unit: 13.151 -14.408: Patient 24 (tia) arrive at ASU. -14.408: Patient 24 (tia) post-ASU: other -14.408: Patient 24 (tia) LOS on ASU: 3.846 +1.836: Patient 1 (stroke) arrive at ASU. +1.836: Patient 1 (stroke) post-ASU: other +1.836: Patient 1 (stroke) LOS on ASU: 3.007 +1.974: Patient 2 (stroke) arrive at ASU. +1.974: Patient 2 (stroke) post-ASU: esd +1.974: Patient 2 (stroke) LOS on ASU: 31.512 +2.570: Patient 3 (other) arrive at ASU. +2.570: Patient 3 (other) post-ASU: esd +2.570: Patient 3 (other) LOS on ASU: 2.130 +3.388: Patient 4 (stroke) arrive at ASU. +3.388: Patient 4 (stroke) post-ASU: other +3.388: Patient 4 (stroke) LOS on ASU: 4.097 +3.792: Patient 5 (other) arrive at ASU. +3.792: Patient 5 (other) post-ASU: other +3.792: Patient 5 (other) LOS on ASU: 0.597 +4.958: Patient 6 (other) arrive at ASU. +4.958: Patient 6 (other) post-ASU: other +4.958: Patient 6 (other) LOS on ASU: 0.714 +5.984: Patient 7 (stroke) arrive at ASU. +5.984: Patient 7 (stroke) post-ASU: other +5.984: Patient 7 (stroke) LOS on ASU: 0.934 +6.445: Patient 8 (stroke) arrive at ASU. +6.445: Patient 8 (stroke) post-ASU: rehab +6.445: Patient 8 (stroke) LOS on ASU: 19.183 +6.652: Patient 9 (other) arrive at ASU. +6.652: Patient 9 (other) post-ASU: other +6.652: Patient 9 (other) LOS on ASU: 2.329 +7.044: Patient 10 (stroke) arrive at ASU. +7.044: Patient 10 (stroke) post-ASU: rehab +7.044: Patient 10 (stroke) LOS on ASU: 7.705 +7.452: Patient 11 (stroke) arrive at ASU. +7.452: Patient 11 (stroke) post-ASU: other +7.452: Patient 11 (stroke) LOS on ASU: 3.258 +8.593: Patient 12 (stroke) arrive at ASU. +8.593: Patient 12 (stroke) post-ASU: rehab +8.593: Patient 12 (stroke) LOS on ASU: 13.352 +9.668: Patient 13 (stroke) arrive at ASU. +9.668: Patient 13 (stroke) post-ASU: esd +9.668: Patient 13 (stroke) LOS on ASU: 3.429 +9.961: Patient 14 (stroke) arrive at ASU. +9.961: Patient 14 (stroke) post-ASU: rehab +9.961: Patient 14 (stroke) LOS on ASU: 2.821 +9.970: Patient 15 (stroke) arrive at ASU. +9.970: Patient 15 (stroke) post-ASU: rehab +9.970: Patient 15 (stroke) LOS on ASU: 4.992 +10.476: Patient 16 (stroke) arrive at ASU. +10.476: Patient 16 (stroke) post-ASU: other +10.476: Patient 16 (stroke) LOS on ASU: 5.733 +11.511: Patient 17 (stroke) arrive at ASU. +11.511: Patient 17 (stroke) post-ASU: rehab +11.511: Patient 17 (stroke) LOS on ASU: 1.189 +11.857: Patient 18 (neuro) arrive at ASU. +11.857: Patient 18 (neuro) post-ASU: other +11.857: Patient 18 (neuro) LOS on ASU: 2.989 +12.144: Patient 19 (stroke) arrive at ASU. +12.144: Patient 19 (stroke) post-ASU: other +12.144: Patient 19 (stroke) LOS on ASU: 0.491 +12.700: Patient 17 (stroke) arrive at rehab. +12.700: Patient 17 (stroke) post-rehab: other +12.700: Patient 17 (stroke) LOS on rehab unit: 18.910 +12.782: Patient 14 (stroke) arrive at rehab. +12.782: Patient 14 (stroke) post-rehab: other +12.782: Patient 14 (stroke) LOS on rehab unit: 27.797 +13.471: Patient 20 (tia) arrive at ASU. +13.471: Patient 20 (tia) post-ASU: other +13.471: Patient 20 (tia) LOS on ASU: 0.761 +13.921: Patient 21 (stroke) arrive at ASU. +13.921: Patient 21 (stroke) post-ASU: other +13.921: Patient 21 (stroke) LOS on ASU: 6.463 +14.261: Patient 22 (stroke) arrive at ASU. +14.261: Patient 22 (stroke) post-ASU: other +14.261: Patient 22 (stroke) LOS on ASU: 11.640 +14.374: Patient 23 (tia) arrive at ASU. +14.374: Patient 23 (tia) post-ASU: other +14.374: Patient 23 (tia) LOS on ASU: 1.125 +14.604: Patient 24 (neuro) arrive at ASU. +14.604: Patient 24 (neuro) post-ASU: other +14.604: Patient 24 (neuro) LOS on ASU: 0.643 +14.748: Patient 10 (stroke) arrive at rehab. +14.748: Patient 10 (stroke) post-rehab: other +14.748: Patient 10 (stroke) LOS on rehab unit: 17.002 +14.962: Patient 15 (stroke) arrive at rehab. +14.962: Patient 15 (stroke) post-rehab: other +14.962: Patient 15 (stroke) LOS on rehab unit: 17.096 15.000: ────────── 15.000: Warm up complete. 15.000: ────────── -15.571: Patient 1 (stroke) arrive at ASU. -15.571: Patient 1 (stroke) post-ASU: other -15.571: Patient 1 (stroke) LOS on ASU: 17.022 -15.589: Patient 2 (stroke) arrive at ASU. -15.589: Patient 2 (stroke) post-ASU: other -15.589: Patient 2 (stroke) LOS on ASU: 5.836 -17.953: Patient 3 (neuro) arrive at ASU. -17.953: Patient 3 (neuro) post-ASU: other -17.953: Patient 3 (neuro) LOS on ASU: 20.251 -19.171: Patient 4 (other) arrive at ASU. -19.171: Patient 4 (other) post-ASU: other -19.171: Patient 4 (other) LOS on ASU: 8.514 -19.332: Patient 5 (tia) arrive at ASU. -19.332: Patient 5 (tia) post-ASU: other -19.332: Patient 5 (tia) LOS on ASU: 0.294 -19.335: Patient 6 (neuro) arrive at ASU. -19.335: Patient 6 (neuro) post-ASU: other -19.335: Patient 6 (neuro) LOS on ASU: 0.244 -21.132: Patient 7 (neuro) arrive at ASU. -21.132: Patient 7 (neuro) post-ASU: other -21.132: Patient 7 (neuro) LOS on ASU: 3.261 -22.305: Patient 8 (stroke) arrive at ASU. -22.305: Patient 8 (stroke) post-ASU: other -22.305: Patient 8 (stroke) LOS on ASU: 1.150 -22.357: Patient 9 (neuro) arrive at ASU. -22.357: Patient 9 (neuro) post-ASU: other -22.357: Patient 9 (neuro) LOS on ASU: 19.862 -23.260: Patient 10 (stroke) arrive at ASU. -23.260: Patient 10 (stroke) post-ASU: rehab -23.260: Patient 10 (stroke) LOS on ASU: 6.230 -23.680: Patient 11 (stroke) arrive at ASU. -23.680: Patient 11 (stroke) post-ASU: other -23.680: Patient 11 (stroke) LOS on ASU: 8.540 -24.497: Patient 12 (stroke) arrive at rehab. -24.497: Patient 12 (stroke) post-rehab: other -24.497: Patient 12 (stroke) LOS on rehab unit: 25.030 -25.780: Patient 13 (neuro) arrive at ASU. -25.780: Patient 13 (neuro) post-ASU: other -25.780: Patient 13 (neuro) LOS on ASU: 0.969 -26.044: Patient 14 (stroke) arrive at ASU. -26.044: Patient 14 (stroke) post-ASU: esd -26.044: Patient 14 (stroke) LOS on ASU: 11.455 -26.815: Patient 15 (other) arrive at ASU. -26.815: Patient 15 (other) post-ASU: esd -26.815: Patient 15 (other) LOS on ASU: 0.819 -26.935: Patient 16 (stroke) arrive at ASU. -26.935: Patient 16 (stroke) post-ASU: rehab -26.935: Patient 16 (stroke) LOS on ASU: 0.593 -26.942: Patient 17 (stroke) arrive at ASU. -26.942: Patient 17 (stroke) post-ASU: esd -26.942: Patient 17 (stroke) LOS on ASU: 4.915 -26.988: Patient 18 (other) arrive at ASU. -26.988: Patient 18 (other) post-ASU: other -26.988: Patient 18 (other) LOS on ASU: 0.668 -27.528: Patient 16 (stroke) arrive at rehab. -27.528: Patient 16 (stroke) post-rehab: other -27.528: Patient 16 (stroke) LOS on rehab unit: 13.826 -27.935: Patient 19 (stroke) arrive at ASU. -27.935: Patient 19 (stroke) post-ASU: esd -27.935: Patient 19 (stroke) LOS on ASU: 8.185 -28.679: Patient 20 (stroke) arrive at ASU. -28.679: Patient 20 (stroke) post-ASU: other -28.679: Patient 20 (stroke) LOS on ASU: 4.248 -29.004: Patient 21 (neuro) arrive at ASU. -29.004: Patient 21 (neuro) post-ASU: other -29.004: Patient 21 (neuro) LOS on ASU: 0.510 -29.406: Patient 22 (stroke) arrive at ASU. -29.406: Patient 22 (stroke) post-ASU: rehab -29.406: Patient 22 (stroke) LOS on ASU: 6.987 -29.490: Patient 10 (stroke) arrive at rehab. -29.490: Patient 10 (stroke) post-rehab: esd -29.490: Patient 10 (stroke) LOS on rehab unit: 75.543 -29.884: Patient 23 (neuro) arrive at ASU. -29.884: Patient 23 (neuro) post-ASU: other -29.884: Patient 23 (neuro) LOS on ASU: 3.903 -29.911: Patient 24 (neuro) arrive at ASU. -29.911: Patient 24 (neuro) post-ASU: other -29.911: Patient 24 (neuro) LOS on ASU: 8.592 -30.200: Patient 25 (other) arrive at ASU. -30.200: Patient 25 (other) post-ASU: other -30.200: Patient 25 (other) LOS on ASU: 1.908 -31.428: Patient 26 (neuro) arrive at ASU. -31.428: Patient 26 (neuro) post-ASU: rehab -31.428: Patient 26 (neuro) LOS on ASU: 2.587 -32.814: Patient 27 (stroke) arrive at ASU. -32.814: Patient 27 (stroke) post-ASU: other -32.814: Patient 27 (stroke) LOS on ASU: 6.870 -32.884: Patient 28 (other) arrive at rehab. -32.884: Patient 28 (other) post-rehab: other -32.884: Patient 28 (other) LOS on rehab unit: 60.723 -33.097: Patient 29 (stroke) arrive at ASU. -33.097: Patient 29 (stroke) post-ASU: other -33.097: Patient 29 (stroke) LOS on ASU: 1.270 -34.015: Patient 26 (neuro) arrive at rehab. -34.015: Patient 26 (neuro) post-rehab: other -34.015: Patient 26 (neuro) LOS on rehab unit: 13.694 -34.534: Patient 30 (neuro) arrive at ASU. -34.534: Patient 30 (neuro) post-ASU: other -34.534: Patient 30 (neuro) LOS on ASU: 4.013 -36.102: Patient 31 (stroke) arrive at ASU. -36.102: Patient 31 (stroke) post-ASU: other -36.102: Patient 31 (stroke) LOS on ASU: 24.260 -36.393: Patient 22 (stroke) arrive at rehab. -36.393: Patient 22 (stroke) post-rehab: other -36.393: Patient 22 (stroke) LOS on rehab unit: 19.051 -36.433: Patient 32 (neuro) arrive at ASU. -36.433: Patient 32 (neuro) post-ASU: other -36.433: Patient 32 (neuro) LOS on ASU: 3.052 -36.493: Patient 33 (stroke) arrive at ASU. -36.493: Patient 33 (stroke) post-ASU: other -36.493: Patient 33 (stroke) LOS on ASU: 19.224 -37.456: Patient 34 (other) arrive at ASU. -37.456: Patient 34 (other) post-ASU: other -37.456: Patient 34 (other) LOS on ASU: 7.962 -38.034: Patient 35 (other) arrive at ASU. -38.034: Patient 35 (other) post-ASU: other -38.034: Patient 35 (other) LOS on ASU: 3.243 -38.348: Patient 36 (stroke) arrive at ASU. -38.348: Patient 36 (stroke) post-ASU: rehab -38.348: Patient 36 (stroke) LOS on ASU: 12.273 -39.617: Patient 37 (stroke) arrive at ASU. -39.617: Patient 37 (stroke) post-ASU: rehab -39.617: Patient 37 (stroke) LOS on ASU: 8.563 -40.085: Patient 38 (stroke) arrive at ASU. -40.085: Patient 38 (stroke) post-ASU: rehab -40.085: Patient 38 (stroke) LOS on ASU: 1.374 -40.221: Patient 39 (other) arrive at ASU. -40.221: Patient 39 (other) post-ASU: other -40.221: Patient 39 (other) LOS on ASU: 2.006 -40.904: Patient 40 (stroke) arrive at ASU. -40.904: Patient 40 (stroke) post-ASU: other -40.904: Patient 40 (stroke) LOS on ASU: 22.662 -41.230: Patient 41 (other) arrive at ASU. -41.230: Patient 41 (other) post-ASU: other -41.230: Patient 41 (other) LOS on ASU: 1.914 -41.459: Patient 38 (stroke) arrive at rehab. -41.459: Patient 38 (stroke) post-rehab: esd -41.459: Patient 38 (stroke) LOS on rehab unit: 18.808 -41.478: Patient 42 (other) arrive at rehab. -41.478: Patient 42 (other) post-rehab: other -41.478: Patient 42 (other) LOS on rehab unit: 6.542 -41.763: Patient 43 (neuro) arrive at ASU. -41.763: Patient 43 (neuro) post-ASU: esd -41.763: Patient 43 (neuro) LOS on ASU: 0.483 -42.784: Patient 44 (neuro) arrive at ASU. -42.784: Patient 44 (neuro) post-ASU: other -42.784: Patient 44 (neuro) LOS on ASU: 3.828 -43.243: Patient 45 (stroke) arrive at ASU. -43.243: Patient 45 (stroke) post-ASU: other -43.243: Patient 45 (stroke) LOS on ASU: 3.136 -45.264: Patient 46 (tia) arrive at ASU. -45.264: Patient 46 (tia) post-ASU: other -45.264: Patient 46 (tia) LOS on ASU: 1.267 -45.922: Patient 47 (other) arrive at rehab. -45.922: Patient 47 (other) post-rehab: other -45.922: Patient 47 (other) LOS on rehab unit: 27.789 -46.096: Patient 48 (stroke) arrive at ASU. -46.096: Patient 48 (stroke) post-ASU: rehab -46.096: Patient 48 (stroke) LOS on ASU: 9.104 -46.285: Patient 49 (other) arrive at ASU. -46.285: Patient 49 (other) post-ASU: other -46.285: Patient 49 (other) LOS on ASU: 2.034 -46.634: Patient 50 (other) arrive at ASU. -46.634: Patient 50 (other) post-ASU: other -46.634: Patient 50 (other) LOS on ASU: 12.043 -47.097: Patient 51 (stroke) arrive at ASU. -47.097: Patient 51 (stroke) post-ASU: other -47.097: Patient 51 (stroke) LOS on ASU: 8.175 -48.179: Patient 37 (stroke) arrive at rehab. -48.179: Patient 37 (stroke) post-rehab: other -48.179: Patient 37 (stroke) LOS on rehab unit: 12.860 -48.916: Patient 52 (neuro) arrive at ASU. -48.916: Patient 52 (neuro) post-ASU: other -48.916: Patient 52 (neuro) LOS on ASU: 2.062 -49.597: Patient 53 (stroke) arrive at ASU. -49.597: Patient 53 (stroke) post-ASU: other -49.597: Patient 53 (stroke) LOS on ASU: 2.952 -50.429: Patient 54 (stroke) arrive at ASU. -50.429: Patient 54 (stroke) post-ASU: other -50.429: Patient 54 (stroke) LOS on ASU: 2.426 -50.621: Patient 36 (stroke) arrive at rehab. -50.621: Patient 36 (stroke) post-rehab: other -50.621: Patient 36 (stroke) LOS on rehab unit: 20.802 -50.992: Patient 55 (stroke) arrive at ASU. -50.992: Patient 55 (stroke) post-ASU: rehab -50.992: Patient 55 (stroke) LOS on ASU: 7.385 -51.220: Patient 56 (other) arrive at ASU. -51.220: Patient 56 (other) post-ASU: other -51.220: Patient 56 (other) LOS on ASU: 0.913 -52.180: Patient 57 (neuro) arrive at ASU. -52.180: Patient 57 (neuro) post-ASU: rehab -52.180: Patient 57 (neuro) LOS on ASU: 1.372 -52.441: Patient 58 (stroke) arrive at ASU. -52.441: Patient 58 (stroke) post-ASU: esd -52.441: Patient 58 (stroke) LOS on ASU: 1.935 -52.544: Patient 59 (stroke) arrive at ASU. -52.544: Patient 59 (stroke) post-ASU: other -52.544: Patient 59 (stroke) LOS on ASU: 3.531 -52.946: Patient 60 (stroke) arrive at ASU. -52.946: Patient 60 (stroke) post-ASU: other -52.946: Patient 60 (stroke) LOS on ASU: 10.057 -53.210: Patient 61 (other) arrive at ASU. -53.210: Patient 61 (other) post-ASU: other -53.210: Patient 61 (other) LOS on ASU: 1.259 -53.552: Patient 57 (neuro) arrive at rehab. -53.552: Patient 57 (neuro) post-rehab: other -53.552: Patient 57 (neuro) LOS on rehab unit: 49.465 -54.155: Patient 62 (stroke) arrive at ASU. -54.155: Patient 62 (stroke) post-ASU: other -54.155: Patient 62 (stroke) LOS on ASU: 5.558 -54.435: Patient 63 (stroke) arrive at ASU. -54.435: Patient 63 (stroke) post-ASU: other -54.435: Patient 63 (stroke) LOS on ASU: 4.576 +15.575: Patient 1 (other) arrive at ASU. +15.575: Patient 1 (other) post-ASU: other +15.575: Patient 1 (other) LOS on ASU: 9.067 +16.305: Patient 2 (stroke) arrive at ASU. +16.305: Patient 2 (stroke) post-ASU: other +16.305: Patient 2 (stroke) LOS on ASU: 7.992 +16.344: Patient 3 (stroke) arrive at rehab. +16.344: Patient 3 (stroke) post-rehab: esd +16.344: Patient 3 (stroke) LOS on rehab unit: 8.934 +17.393: Patient 4 (stroke) arrive at ASU. +17.393: Patient 4 (stroke) post-ASU: other +17.393: Patient 4 (stroke) LOS on ASU: 1.182 +19.112: Patient 5 (neuro) arrive at ASU. +19.112: Patient 5 (neuro) post-ASU: other +19.112: Patient 5 (neuro) LOS on ASU: 4.792 +19.926: Patient 6 (neuro) arrive at ASU. +19.926: Patient 6 (neuro) post-ASU: other +19.926: Patient 6 (neuro) LOS on ASU: 0.403 +20.721: Patient 7 (neuro) arrive at ASU. +20.721: Patient 7 (neuro) post-ASU: other +20.721: Patient 7 (neuro) LOS on ASU: 4.662 +21.850: Patient 8 (other) arrive at ASU. +21.850: Patient 8 (other) post-ASU: rehab +21.850: Patient 8 (other) LOS on ASU: 1.690 +21.945: Patient 12 (stroke) arrive at rehab. +21.945: Patient 12 (stroke) post-rehab: other +21.945: Patient 12 (stroke) LOS on rehab unit: 57.854 +22.650: Patient 9 (stroke) arrive at ASU. +22.650: Patient 9 (stroke) post-ASU: esd +22.650: Patient 9 (stroke) LOS on ASU: 3.327 +22.881: Patient 10 (stroke) arrive at ASU. +22.881: Patient 10 (stroke) post-ASU: other +22.881: Patient 10 (stroke) LOS on ASU: 8.521 +23.232: Patient 11 (stroke) arrive at ASU. +23.232: Patient 11 (stroke) post-ASU: other +23.232: Patient 11 (stroke) LOS on ASU: 6.847 +23.265: Patient 12 (stroke) arrive at ASU. +23.265: Patient 12 (stroke) post-ASU: other +23.265: Patient 12 (stroke) LOS on ASU: 3.668 +23.540: Patient 8 (other) arrive at rehab. +23.540: Patient 8 (other) post-rehab: other +23.540: Patient 8 (other) LOS on rehab unit: 8.140 +24.034: Patient 13 (stroke) arrive at ASU. +24.034: Patient 13 (stroke) post-ASU: other +24.034: Patient 13 (stroke) LOS on ASU: 3.320 +24.887: Patient 14 (other) arrive at ASU. +24.887: Patient 14 (other) post-ASU: other +24.887: Patient 14 (other) LOS on ASU: 7.381 +25.628: Patient 8 (stroke) arrive at rehab. +25.628: Patient 8 (stroke) post-rehab: other +25.628: Patient 8 (stroke) LOS on rehab unit: 20.442 +26.491: Patient 15 (tia) arrive at ASU. +26.491: Patient 15 (tia) post-ASU: other +26.491: Patient 15 (tia) LOS on ASU: 0.913 +27.156: Patient 16 (tia) arrive at ASU. +27.156: Patient 16 (tia) post-ASU: other +27.156: Patient 16 (tia) LOS on ASU: 0.611 +27.165: Patient 17 (stroke) arrive at ASU. +27.165: Patient 17 (stroke) post-ASU: rehab +27.165: Patient 17 (stroke) LOS on ASU: 10.474 +27.200: Patient 18 (neuro) arrive at ASU. +27.200: Patient 18 (neuro) post-ASU: rehab +27.200: Patient 18 (neuro) LOS on ASU: 1.272 +27.438: Patient 19 (neuro) arrive at ASU. +27.438: Patient 19 (neuro) post-ASU: other +27.438: Patient 19 (neuro) LOS on ASU: 22.218 +28.472: Patient 18 (neuro) arrive at rehab. +28.472: Patient 18 (neuro) post-rehab: other +28.472: Patient 18 (neuro) LOS on rehab unit: 12.227 +28.573: Patient 20 (tia) arrive at ASU. +28.573: Patient 20 (tia) post-ASU: other +28.573: Patient 20 (tia) LOS on ASU: 1.315 +29.643: Patient 21 (stroke) arrive at ASU. +29.643: Patient 21 (stroke) post-ASU: esd +29.643: Patient 21 (stroke) LOS on ASU: 0.740 +29.924: Patient 22 (stroke) arrive at ASU. +29.924: Patient 22 (stroke) post-ASU: other +29.924: Patient 22 (stroke) LOS on ASU: 5.570 +30.341: Patient 23 (tia) arrive at ASU. +30.341: Patient 23 (tia) post-ASU: other +30.341: Patient 23 (tia) LOS on ASU: 1.819 +30.350: Patient 24 (stroke) arrive at ASU. +30.350: Patient 24 (stroke) post-ASU: other +30.350: Patient 24 (stroke) LOS on ASU: 1.364 +30.680: Patient 25 (neuro) arrive at ASU. +30.680: Patient 25 (neuro) post-ASU: other +30.680: Patient 25 (neuro) LOS on ASU: 5.272 +31.743: Patient 26 (neuro) arrive at ASU. +31.743: Patient 26 (neuro) post-ASU: rehab +31.743: Patient 26 (neuro) LOS on ASU: 6.138 +32.085: Patient 27 (stroke) arrive at ASU. +32.085: Patient 27 (stroke) post-ASU: rehab +32.085: Patient 27 (stroke) LOS on ASU: 5.326 +33.475: Patient 28 (stroke) arrive at ASU. +33.475: Patient 28 (stroke) post-ASU: other +33.475: Patient 28 (stroke) LOS on ASU: 3.993 +37.411: Patient 27 (stroke) arrive at rehab. +37.411: Patient 27 (stroke) post-rehab: esd +37.411: Patient 27 (stroke) LOS on rehab unit: 21.042 +37.638: Patient 17 (stroke) arrive at rehab. +37.638: Patient 17 (stroke) post-rehab: other +37.638: Patient 17 (stroke) LOS on rehab unit: 22.310 +37.881: Patient 26 (neuro) arrive at rehab. +37.881: Patient 26 (neuro) post-rehab: other +37.881: Patient 26 (neuro) LOS on rehab unit: 118.211 +38.220: Patient 29 (other) arrive at ASU. +38.220: Patient 29 (other) post-ASU: other +38.220: Patient 29 (other) LOS on ASU: 3.916 +39.150: Patient 30 (stroke) arrive at ASU. +39.150: Patient 30 (stroke) post-ASU: esd +39.150: Patient 30 (stroke) LOS on ASU: 16.195 +39.412: Patient 31 (stroke) arrive at ASU. +39.412: Patient 31 (stroke) post-ASU: other +39.412: Patient 31 (stroke) LOS on ASU: 2.613 +39.788: Patient 32 (stroke) arrive at ASU. +39.788: Patient 32 (stroke) post-ASU: esd +39.788: Patient 32 (stroke) LOS on ASU: 26.878 +40.023: Patient 33 (neuro) arrive at ASU. +40.023: Patient 33 (neuro) post-ASU: other +40.023: Patient 33 (neuro) LOS on ASU: 2.265 +40.100: Patient 34 (other) arrive at ASU. +40.100: Patient 34 (other) post-ASU: other +40.100: Patient 34 (other) LOS on ASU: 5.739 +41.177: Patient 35 (stroke) arrive at ASU. +41.177: Patient 35 (stroke) post-ASU: other +41.177: Patient 35 (stroke) LOS on ASU: 3.195 +42.937: Patient 36 (stroke) arrive at ASU. +42.937: Patient 36 (stroke) post-ASU: other +42.937: Patient 36 (stroke) LOS on ASU: 6.028 +46.714: Patient 37 (neuro) arrive at ASU. +46.714: Patient 37 (neuro) post-ASU: other +46.714: Patient 37 (neuro) LOS on ASU: 3.221 +46.767: Patient 38 (neuro) arrive at ASU. +46.767: Patient 38 (neuro) post-ASU: other +46.767: Patient 38 (neuro) LOS on ASU: 7.771 +47.236: Patient 39 (stroke) arrive at ASU. +47.236: Patient 39 (stroke) post-ASU: other +47.236: Patient 39 (stroke) LOS on ASU: 2.514 +47.902: Patient 40 (stroke) arrive at ASU. +47.902: Patient 40 (stroke) post-ASU: rehab +47.902: Patient 40 (stroke) LOS on ASU: 5.220 +49.022: Patient 41 (other) arrive at ASU. +49.022: Patient 41 (other) post-ASU: other +49.022: Patient 41 (other) LOS on ASU: 1.885 +49.181: Patient 42 (stroke) arrive at ASU. +49.181: Patient 42 (stroke) post-ASU: other +49.181: Patient 42 (stroke) LOS on ASU: 9.292 +49.838: Patient 43 (stroke) arrive at ASU. +49.838: Patient 43 (stroke) post-ASU: other +49.838: Patient 43 (stroke) LOS on ASU: 7.459 +53.122: Patient 40 (stroke) arrive at rehab. +53.122: Patient 40 (stroke) post-rehab: esd +53.122: Patient 40 (stroke) LOS on rehab unit: 26.316 diff --git a/outputs/suptable1.csv b/outputs/suptable1.csv index 01a33a1..868de76 100644 --- a/outputs/suptable1.csv +++ b/outputs/suptable1.csv @@ -1,12 +1,12 @@ unit,beds,prob_delay_current,1_in_n_delay_current,prob_delay_no_complex_neuro,1_in_n_delay_no_complex_neuro asu,10,0.13,8.0,0.08,13.0 -asu,11,0.09,12.0,0.05,20.0 -asu,12,0.06,18.0,0.03,36.0 -asu,13,0.03,29.0,0.02,66.0 -asu,14,0.02,52.0,0.01,128.0 -asu,15,0.01,96.0,0.0,284.0 -rehab,12,0.11,9.0,0.05,19.0 -rehab,13,0.08,13.0,0.03,33.0 -rehab,14,0.05,20.0,0.02,61.0 -rehab,15,0.03,34.0,0.01,119.0 -rehab,16,0.02,56.0,0.0,231.0 +asu,11,0.08,12.0,0.05,21.0 +asu,12,0.06,18.0,0.03,37.0 +asu,13,0.03,31.0,0.01,67.0 +asu,14,0.02,53.0,0.01,139.0 +asu,15,0.01,97.0,0.0,290.0 +rehab,12,0.11,9.0,0.06,18.0 +rehab,13,0.08,13.0,0.03,30.0 +rehab,14,0.05,19.0,0.02,54.0 +rehab,15,0.03,30.0,0.01,105.0 +rehab,16,0.02,51.0,0.01,193.0 diff --git a/outputs/table2.csv b/outputs/table2.csv index b91626e..1211d1b 100644 --- a/outputs/table2.csv +++ b/outputs/table2.csv @@ -1,13 +1,13 @@ unit,beds,prob_delay_current,1_in_n_delay_current,prob_delay_5%,1_in_n_delay_5% asu,9,0.18,6.0,, asu,10,0.13,8.0,0.15,7.0 -asu,11,0.09,12.0,0.1,10.0 -asu,12,0.06,18.0,0.07,14.0 -asu,13,0.03,29.0,0.04,23.0 -asu,14,0.02,52.0,0.03,39.0 +asu,11,0.08,12.0,0.1,10.0 +asu,12,0.06,18.0,0.07,15.0 +asu,13,0.03,31.0,0.04,23.0 +asu,14,0.02,53.0,0.03,39.0 rehab,10,0.2,5.0,, rehab,12,0.11,9.0,0.13,8.0 rehab,13,0.08,13.0,0.09,11.0 -rehab,14,0.05,20.0,0.06,16.0 -rehab,15,0.03,34.0,0.04,26.0 -rehab,16,0.02,56.0,0.02,40.0 +rehab,14,0.05,19.0,0.06,16.0 +rehab,15,0.03,30.0,0.04,24.0 +rehab,16,0.02,51.0,0.03,37.0 diff --git a/outputs/table3.csv b/outputs/table3.csv index 65c6bfc..641f05d 100644 --- a/outputs/table3.csv +++ b/outputs/table3.csv @@ -1,10 +1,10 @@ dedicated_acute,dedicated_rehab,pooled,pdelay_acute,pdelay_rehab,1_in_n_delay_acute,1_in_n_delay_rehab -0,0,22,0.062,0.062,16,16 -0,0,26,0.016,0.016,64,64 -14,12,0,0.019,0.109,52,9 -11,11,4,0.042,0.082,24,12 -11,10,5,0.035,0.083,28,12 -10,10,6,0.039,0.061,25,17 -10,9,7,0.037,0.061,27,16 -9,9,8,0.039,0.049,26,20 -9,8,9,0.038,0.049,26,20 +0,0,22,0.065,0.065,15,15 +0,0,26,0.016,0.016,61,61 +14,12,0,0.019,0.11,53,9 +11,11,4,0.043,0.09,24,11 +11,10,5,0.036,0.091,28,11 +10,10,6,0.041,0.066,25,15 +10,9,7,0.038,0.066,26,15 +9,9,8,0.041,0.053,24,19 +9,8,9,0.04,0.053,25,19 diff --git a/requirements.txt b/requirements.txt index 7d3dc9f..71b6283 100644 --- a/requirements.txt +++ b/requirements.txt @@ -14,5 +14,5 @@ pytest==8.3.4 pytest-xdist==3.6.1 rich==13.9.4 simpy==4.1.1 -sim-tools==0.9.1 +sim-tools==0.10.0 -e .[dev] \ No newline at end of file diff --git a/tests/exp_results/asu_occupancy.csv b/tests/exp_results/asu_occupancy.csv index ed78367..c559484 100644 --- a/tests/exp_results/asu_occupancy.csv +++ b/tests/exp_results/asu_occupancy.csv @@ -1,22 +1,20 @@ beds,freq,pct,c_pct,prob_delay,1_in_n_delay 1,2,0.001095890410958904,0.001095890410958904,1.0,1.0 -2,12,0.006575342465753425,0.0076712328767123295,0.8571428571428571,1.0 -3,57,0.03123287671232877,0.0389041095890411,0.8028169014084506,1.0 -4,104,0.05698630136986301,0.0958904109589041,0.5942857142857143,2.0 -5,162,0.08876712328767124,0.18465753424657533,0.4807121661721069,2.0 -6,258,0.14136986301369864,0.32602739726027397,0.4336134453781513,2.0 -7,279,0.15287671232876712,0.47890410958904106,0.31922196796338675,3.0 -8,264,0.14465753424657535,0.6235616438356164,0.2319859402460457,4.0 -9,235,0.12876712328767123,0.7523287671232877,0.17115804806991988,6.0 -10,159,0.08712328767123288,0.8394520547945206,0.10378590078328982,10.0 -11,114,0.06246575342465754,0.9019178082191781,0.0692588092345079,14.0 -12,87,0.04767123287671233,0.9495890410958905,0.050201961915753025,20.0 -13,36,0.019726027397260273,0.9693150684931507,0.020350480497456188,49.0 -14,27,0.014794520547945205,0.9841095890410959,0.015033407572383074,67.0 -15,14,0.007671232876712329,0.9917808219178083,0.007734806629834254,129.0 -16,6,0.0032876712328767125,0.995068493150685,0.003303964757709251,303.0 -17,5,0.0027397260273972603,0.9978082191780823,0.002745744096650192,364.0 -18,1,0.000547945205479452,0.9983561643835617,0.000548847420417124,1822.0 -19,0,0.0,0.9983561643835617,0.0,inf -20,2,0.001095890410958904,0.9994520547945206,0.0010964912280701754,912.0 -21,1,0.000547945205479452,1.0,0.000547945205479452,1825.0 +2,14,0.007671232876712329,0.008767123287671232,0.875,1.0 +3,72,0.03945205479452055,0.04821917808219178,0.8181818181818181,1.0 +4,101,0.055342465753424656,0.10356164383561645,0.5343915343915343,2.0 +5,185,0.10136986301369863,0.20493150684931508,0.4946524064171123,2.0 +6,244,0.1336986301369863,0.3386301369863014,0.3948220064724919,3.0 +7,277,0.15178082191780823,0.49041095890410963,0.3094972067039106,3.0 +8,271,0.14849315068493152,0.6389041095890411,0.2324185248713551,4.0 +9,236,0.1293150684931507,0.7682191780821918,0.1683309557774608,6.0 +10,168,0.09205479452054795,0.8602739726027397,0.1070063694267516,9.0 +11,109,0.059726027397260274,0.92,0.06491959499702203,15.0 +12,66,0.03616438356164384,0.9561643835616439,0.03782234957020057,26.0 +13,33,0.01808219178082192,0.9742465753424658,0.01856017997750281,54.0 +14,17,0.009315068493150684,0.9835616438356165,0.009470752089136489,106.0 +15,15,0.00821917808219178,0.9917808219178083,0.008287292817679558,121.0 +16,8,0.004383561643835616,0.9961643835616438,0.0044004400440044,227.0 +17,6,0.0032876712328767125,0.9994520547945206,0.0032894736842105266,304.0 +18,0,0.0,0.9994520547945206,0.0,inf +19,1,0.000547945205479452,1.0,0.000547945205479452,1825.0 diff --git a/tests/exp_results/audit_list.csv b/tests/exp_results/audit_list.csv index 404f695..277c0a2 100644 --- a/tests/exp_results/audit_list.csv +++ b/tests/exp_results/audit_list.csv @@ -1,1826 +1,1826 @@ time,asu_occupancy,rehab_occupancy -1095,8,13 -1096,7,14 -1097,8,14 -1098,8,14 -1099,8,14 -1100,10,15 -1101,10,15 -1102,5,14 -1103,3,13 -1104,2,13 -1105,1,13 -1106,4,13 -1107,3,13 -1108,6,13 -1109,4,11 -1110,4,10 -1111,8,8 -1112,9,7 -1113,8,7 -1114,7,8 -1115,7,8 -1116,7,8 -1117,7,8 -1118,7,8 -1119,8,7 -1120,7,7 -1121,7,8 -1122,9,8 -1123,9,8 -1124,10,8 -1125,14,8 -1126,16,8 -1127,12,9 -1128,12,10 -1129,12,11 -1130,9,11 -1131,7,12 -1132,8,11 -1133,9,11 -1134,10,9 -1135,11,9 -1136,9,8 -1137,9,8 -1138,7,7 -1139,10,7 -1140,8,7 -1141,4,9 -1142,4,9 -1143,8,9 -1144,8,9 -1145,8,10 -1146,9,10 -1147,6,11 -1148,6,10 -1149,5,10 -1150,4,10 -1151,5,10 -1152,6,10 -1153,7,10 -1154,9,9 -1155,8,9 -1156,9,9 -1157,9,9 -1158,12,9 -1159,12,10 -1160,13,10 -1161,15,9 -1162,12,9 -1163,13,10 -1164,15,11 -1165,12,11 -1166,16,11 -1167,15,12 -1168,16,11 -1169,15,11 -1170,13,11 -1171,14,11 -1172,11,11 -1173,13,11 -1174,13,10 -1175,13,10 -1176,11,9 -1177,9,11 -1178,10,11 -1179,10,11 -1180,12,11 -1181,13,11 -1182,12,11 -1183,13,12 -1184,12,13 -1185,15,13 -1186,13,13 -1187,11,14 -1188,13,14 -1189,14,12 -1190,16,11 -1191,17,11 -1192,17,12 -1193,17,13 -1194,14,13 -1195,9,13 -1196,10,12 -1197,8,11 -1198,9,11 -1199,9,9 -1200,8,7 -1201,8,7 -1202,7,7 -1203,7,6 -1204,7,7 -1205,10,7 -1206,9,7 -1207,9,9 -1208,7,10 -1209,7,11 -1210,6,10 -1211,7,11 -1212,8,11 -1213,9,10 -1214,11,10 -1215,12,9 -1216,11,10 -1217,8,12 -1218,8,11 -1219,7,11 -1220,8,10 -1221,8,10 -1222,7,7 -1223,9,8 -1224,7,7 -1225,5,7 -1226,6,6 -1227,8,5 -1228,6,5 -1229,8,6 -1230,8,5 -1231,10,5 -1232,8,6 -1233,6,7 -1234,5,7 -1235,6,8 -1236,5,9 -1237,4,9 -1238,4,8 -1239,3,9 -1240,4,9 -1241,6,9 -1242,6,9 -1243,4,9 -1244,4,9 -1245,6,9 -1246,7,10 -1247,8,10 -1248,9,11 -1249,9,11 -1250,10,8 -1251,9,8 -1252,8,8 -1253,7,8 -1254,7,8 -1255,3,8 -1256,4,8 -1257,6,8 -1258,6,7 +1095,8,16 +1096,7,16 +1097,5,16 +1098,3,15 +1099,6,15 +1100,6,13 +1101,5,12 +1102,7,12 +1103,7,13 +1104,7,12 +1105,8,12 +1106,7,13 +1107,8,13 +1108,10,11 +1109,12,11 +1110,13,11 +1111,12,11 +1112,10,11 +1113,7,12 +1114,9,14 +1115,9,14 +1116,10,14 +1117,7,15 +1118,6,15 +1119,7,15 +1120,8,13 +1121,9,13 +1122,8,12 +1123,12,13 +1124,11,14 +1125,12,14 +1126,9,15 +1127,4,16 +1128,3,16 +1129,2,16 +1130,5,16 +1131,6,14 +1132,6,13 +1133,7,13 +1134,8,13 +1135,7,12 +1136,7,13 +1137,7,13 +1138,6,11 +1139,4,11 +1140,3,11 +1141,3,11 +1142,3,10 +1143,4,10 +1144,3,10 +1145,5,9 +1146,5,9 +1147,6,9 +1148,3,9 +1149,2,10 +1150,4,11 +1151,4,11 +1152,4,11 +1153,3,10 +1154,4,9 +1155,5,7 +1156,6,7 +1157,8,7 +1158,8,7 +1159,7,7 +1160,6,7 +1161,5,7 +1162,3,7 +1163,3,8 +1164,4,8 +1165,8,7 +1166,10,7 +1167,9,7 +1168,7,8 +1169,6,9 +1170,5,9 +1171,5,8 +1172,5,8 +1173,5,8 +1174,7,8 +1175,6,8 +1176,6,8 +1177,8,6 +1178,6,8 +1179,7,8 +1180,7,8 +1181,6,9 +1182,7,10 +1183,6,10 +1184,6,11 +1185,2,12 +1186,4,12 +1187,4,12 +1188,2,12 +1189,4,12 +1190,3,12 +1191,4,11 +1192,6,10 +1193,7,10 +1194,7,10 +1195,6,11 +1196,9,10 +1197,7,11 +1198,10,12 +1199,9,13 +1200,8,12 +1201,11,11 +1202,7,13 +1203,8,13 +1204,10,13 +1205,10,13 +1206,11,14 +1207,13,14 +1208,9,14 +1209,8,14 +1210,8,14 +1211,8,15 +1212,9,15 +1213,7,16 +1214,8,17 +1215,5,17 +1216,8,17 +1217,6,17 +1218,3,16 +1219,4,16 +1220,7,14 +1221,5,14 +1222,3,13 +1223,2,14 +1224,3,13 +1225,4,13 +1226,5,12 +1227,5,11 +1228,4,10 +1229,6,10 +1230,7,9 +1231,5,9 +1232,7,9 +1233,7,9 +1234,9,9 +1235,7,10 +1236,7,10 +1237,6,10 +1238,5,9 +1239,6,8 +1240,5,6 +1241,9,6 +1242,7,6 +1243,6,6 +1244,8,6 +1245,6,6 +1246,4,5 +1247,5,5 +1248,6,5 +1249,8,5 +1250,10,5 +1251,10,4 +1252,9,4 +1253,9,5 +1254,8,6 +1255,6,6 +1256,4,6 +1257,7,6 +1258,6,6 1259,7,6 -1260,7,6 -1261,10,6 -1262,9,7 -1263,9,7 -1264,9,7 -1265,9,5 -1266,10,5 -1267,10,5 -1268,8,6 -1269,8,6 -1270,10,6 -1271,9,6 -1272,11,6 -1273,9,7 -1274,9,7 -1275,11,8 -1276,11,9 -1277,7,12 -1278,7,11 -1279,9,11 -1280,7,12 -1281,6,13 -1282,7,12 -1283,9,11 -1284,9,11 -1285,7,11 -1286,7,14 -1287,5,13 -1288,3,13 -1289,4,13 -1290,9,14 -1291,10,14 -1292,10,15 -1293,7,16 -1294,6,18 -1295,7,18 -1296,6,19 -1297,7,18 -1298,10,18 -1299,9,18 -1300,7,17 -1301,6,16 -1302,8,14 -1303,6,14 -1304,7,13 -1305,6,13 -1306,8,13 -1307,5,13 -1308,5,13 -1309,9,12 -1310,9,12 -1311,5,12 -1312,5,12 -1313,5,11 -1314,5,12 -1315,6,10 -1316,6,10 -1317,6,11 -1318,5,10 -1319,6,10 -1320,8,10 -1321,6,10 -1322,5,10 -1323,4,10 -1324,4,10 -1325,4,10 -1326,3,10 -1327,3,10 -1328,2,10 -1329,3,11 -1330,2,12 -1331,3,11 -1332,4,9 -1333,5,10 -1334,6,10 -1335,8,9 -1336,7,9 -1337,8,9 -1338,6,10 -1339,7,10 -1340,5,9 -1341,5,8 +1260,7,7 +1261,6,7 +1262,7,6 +1263,9,5 +1264,8,4 +1265,6,4 +1266,8,4 +1267,8,4 +1268,7,3 +1269,11,3 +1270,12,4 +1271,10,5 +1272,12,5 +1273,13,5 +1274,9,6 +1275,7,5 +1276,6,5 +1277,8,6 +1278,8,7 +1279,7,7 +1280,5,6 +1281,4,6 +1282,5,6 +1283,5,6 +1284,8,5 +1285,6,5 +1286,7,5 +1287,7,5 +1288,6,5 +1289,5,5 +1290,5,5 +1291,8,4 +1292,6,5 +1293,6,5 +1294,6,4 +1295,6,4 +1296,5,5 +1297,5,4 +1298,4,5 +1299,3,5 +1300,5,5 +1301,4,5 +1302,5,4 +1303,6,4 +1304,6,4 +1305,6,4 +1306,8,3 +1307,7,3 +1308,7,3 +1309,9,3 +1310,8,3 +1311,10,5 +1312,10,5 +1313,9,5 +1314,11,5 +1315,13,5 +1316,12,5 +1317,15,5 +1318,13,3 +1319,9,4 +1320,9,5 +1321,8,7 +1322,10,7 +1323,11,7 +1324,10,7 +1325,7,10 +1326,5,12 +1327,4,12 +1328,8,12 +1329,6,11 +1330,10,11 +1331,8,11 +1332,11,9 +1333,9,7 +1334,10,7 +1335,11,7 +1336,11,6 +1337,8,6 +1338,7,6 +1339,6,8 +1340,8,7 +1341,8,7 1342,5,9 -1343,6,9 +1343,5,9 1344,5,9 -1345,6,9 -1346,4,10 -1347,5,10 -1348,6,10 -1349,5,9 +1345,7,10 +1346,10,10 +1347,11,10 +1348,8,9 +1349,6,9 1350,5,7 -1351,3,8 -1352,3,8 -1353,5,7 -1354,5,8 -1355,7,7 -1356,8,6 -1357,7,6 -1358,7,6 -1359,7,6 -1360,4,4 -1361,6,4 -1362,6,4 -1363,5,4 -1364,6,4 -1365,8,4 -1366,12,3 -1367,10,4 -1368,11,4 -1369,11,5 -1370,8,5 -1371,8,5 +1351,4,7 +1352,5,7 +1353,3,8 +1354,4,7 +1355,5,7 +1356,7,7 +1357,7,7 +1358,5,8 +1359,5,8 +1360,5,7 +1361,6,7 +1362,8,7 +1363,6,7 +1364,8,7 +1365,9,6 +1366,10,6 +1367,10,6 +1368,9,6 +1369,10,5 +1370,10,4 +1371,7,6 1372,7,6 -1373,6,7 -1374,7,7 -1375,7,7 -1376,6,8 -1377,5,8 -1378,4,8 -1379,5,8 -1380,4,8 -1381,3,8 -1382,3,8 -1383,3,8 -1384,6,7 -1385,6,7 -1386,8,7 -1387,9,6 -1388,12,6 +1373,5,6 +1374,4,6 +1375,4,6 +1376,5,5 +1377,5,5 +1378,6,5 +1379,8,5 +1380,10,6 +1381,10,7 +1382,10,8 +1383,9,9 +1384,8,9 +1385,8,9 +1386,7,9 +1387,8,7 +1388,9,7 1389,11,7 -1390,11,7 -1391,8,7 -1392,9,7 -1393,8,7 -1394,9,7 -1395,11,6 -1396,11,5 -1397,9,6 -1398,7,7 -1399,8,7 -1400,9,8 -1401,5,11 -1402,5,11 -1403,4,11 -1404,8,11 -1405,6,12 -1406,5,10 -1407,7,10 -1408,10,11 -1409,10,11 -1410,7,12 -1411,7,12 -1412,7,11 -1413,8,13 -1414,6,12 -1415,5,13 -1416,4,12 -1417,4,12 -1418,6,12 -1419,3,12 -1420,5,12 -1421,6,11 -1422,7,11 -1423,10,11 -1424,10,11 -1425,8,11 -1426,9,11 -1427,12,11 -1428,10,12 -1429,5,13 -1430,5,14 -1431,5,14 -1432,5,13 -1433,6,13 -1434,9,13 -1435,7,15 -1436,6,16 -1437,7,16 -1438,6,15 -1439,7,15 -1440,6,16 -1441,6,15 -1442,9,15 -1443,6,13 -1444,11,13 -1445,7,12 +1390,13,7 +1391,9,7 +1392,6,7 +1393,6,8 +1394,7,8 +1395,7,6 +1396,6,7 +1397,9,5 +1398,7,5 +1399,11,5 +1400,13,4 +1401,12,3 +1402,10,3 +1403,11,3 +1404,11,3 +1405,9,4 +1406,9,3 +1407,9,3 +1408,8,4 +1409,6,4 +1410,8,4 +1411,10,3 +1412,8,2 +1413,8,1 +1414,11,1 +1415,10,1 +1416,9,1 +1417,7,2 +1418,5,2 +1419,5,1 +1420,7,1 +1421,8,1 +1422,7,2 +1423,8,3 +1424,9,3 +1425,8,4 +1426,9,4 +1427,9,4 +1428,8,7 +1429,8,6 +1430,8,7 +1431,8,7 +1432,8,9 +1433,9,9 +1434,7,11 +1435,10,12 +1436,12,12 +1437,10,14 +1438,10,15 +1439,9,16 +1440,10,15 +1441,9,14 +1442,10,15 +1443,10,14 +1444,9,13 +1445,10,13 1446,9,12 -1447,6,14 -1448,7,15 -1449,5,15 -1450,5,15 -1451,4,16 -1452,7,16 -1453,8,16 -1454,10,16 -1455,12,15 -1456,11,16 -1457,11,16 -1458,8,14 -1459,7,14 -1460,6,14 -1461,6,13 -1462,6,13 -1463,5,12 -1464,6,12 -1465,5,13 -1466,8,13 -1467,8,12 -1468,10,13 -1469,12,13 -1470,11,14 -1471,11,14 -1472,10,13 -1473,10,13 -1474,9,11 -1475,10,10 -1476,8,9 -1477,10,8 -1478,9,8 -1479,9,8 -1480,9,8 -1481,9,9 -1482,11,9 -1483,11,9 -1484,9,9 -1485,8,9 -1486,7,11 -1487,5,11 -1488,10,10 -1489,11,10 -1490,10,11 -1491,12,11 -1492,11,11 -1493,8,11 -1494,12,11 -1495,12,11 -1496,12,11 -1497,8,11 -1498,7,11 -1499,6,12 -1500,7,11 -1501,6,10 -1502,6,9 +1447,8,11 +1448,9,11 +1449,7,11 +1450,7,13 +1451,9,13 +1452,7,12 +1453,10,12 +1454,10,12 +1455,7,11 +1456,6,10 +1457,6,9 +1458,8,9 +1459,7,8 +1460,5,9 +1461,3,10 +1462,4,10 +1463,2,10 +1464,3,9 +1465,4,9 +1466,5,10 +1467,3,10 +1468,3,10 +1469,3,10 +1470,7,10 +1471,6,11 +1472,4,11 +1473,8,11 +1474,9,9 +1475,9,9 +1476,10,10 +1477,7,9 +1478,6,10 +1479,5,10 +1480,6,11 +1481,5,11 +1482,5,11 +1483,4,10 +1484,4,10 +1485,3,10 +1486,4,10 +1487,6,9 +1488,8,9 +1489,8,9 +1490,8,8 +1491,7,8 +1492,7,8 +1493,7,8 +1494,9,6 +1495,10,7 +1496,8,8 +1497,4,9 +1498,5,9 +1499,6,8 +1500,7,8 +1501,6,8 +1502,5,8 1503,7,9 -1504,7,10 -1505,10,9 -1506,8,9 -1507,8,9 -1508,9,9 -1509,5,10 -1510,4,11 -1511,4,11 -1512,4,10 -1513,3,10 -1514,4,10 -1515,5,12 -1516,8,12 -1517,9,12 -1518,10,11 -1519,10,11 -1520,11,11 -1521,11,9 -1522,5,10 -1523,4,12 -1524,6,12 -1525,6,13 -1526,4,15 -1527,3,14 -1528,3,14 -1529,3,13 -1530,4,11 -1531,6,10 -1532,6,9 -1533,7,10 -1534,7,10 -1535,8,9 -1536,10,9 -1537,8,8 -1538,7,9 -1539,6,9 -1540,8,8 -1541,8,8 -1542,13,8 -1543,13,8 -1544,8,8 -1545,11,9 -1546,12,8 -1547,20,8 -1548,21,8 -1549,17,10 -1550,18,7 -1551,15,7 -1552,14,7 -1553,14,7 -1554,14,8 -1555,15,8 -1556,14,8 -1557,17,8 -1558,12,8 -1559,11,8 -1560,14,8 -1561,14,7 -1562,14,7 -1563,9,7 -1564,10,8 -1565,9,8 -1566,7,9 -1567,6,8 -1568,8,8 -1569,9,7 +1504,5,8 +1505,7,9 +1506,10,11 +1507,10,9 +1508,10,9 +1509,7,10 +1510,8,10 +1511,9,10 +1512,9,10 +1513,11,10 +1514,11,10 +1515,10,10 +1516,10,11 +1517,8,13 +1518,7,13 +1519,8,13 +1520,8,15 +1521,11,15 +1522,11,14 +1523,11,14 +1524,15,14 +1525,12,15 +1526,10,15 +1527,11,15 +1528,9,15 +1529,8,14 +1530,15,12 +1531,13,11 +1532,13,10 +1533,12,10 +1534,14,11 +1535,11,11 +1536,9,11 +1537,8,10 +1538,4,12 +1539,4,13 +1540,5,13 +1541,4,10 +1542,5,9 +1543,7,8 +1544,7,8 +1545,8,8 +1546,8,8 +1547,7,9 +1548,6,9 +1549,7,9 +1550,9,9 +1551,10,9 +1552,11,9 +1553,8,10 +1554,9,11 +1555,8,11 +1556,7,9 +1557,7,7 +1558,7,7 +1559,5,7 +1560,7,7 +1561,8,6 +1562,10,7 +1563,8,9 +1564,6,10 +1565,7,10 +1566,8,10 +1567,7,9 +1568,8,9 +1569,7,9 1570,6,8 -1571,5,9 -1572,7,8 -1573,8,8 -1574,9,7 -1575,8,6 -1576,8,7 -1577,6,9 -1578,6,10 -1579,5,9 -1580,7,9 -1581,10,9 -1582,9,10 -1583,8,8 -1584,7,8 -1585,8,8 -1586,7,8 -1587,8,8 -1588,8,7 -1589,8,8 -1590,7,9 -1591,8,8 -1592,7,8 -1593,4,9 -1594,5,10 -1595,6,10 -1596,5,10 -1597,7,10 -1598,6,9 -1599,6,9 -1600,6,8 -1601,6,8 -1602,5,9 -1603,7,7 +1571,5,8 +1572,5,8 +1573,11,8 +1574,8,9 +1575,6,8 +1576,8,6 +1577,9,6 +1578,8,7 +1579,7,7 +1580,7,7 +1581,7,7 +1582,8,6 +1583,7,6 +1584,7,5 +1585,12,5 +1586,10,5 +1587,14,5 +1588,12,5 +1589,13,5 +1590,13,5 +1591,13,5 +1592,14,4 +1593,11,4 +1594,10,4 +1595,11,4 +1596,11,5 +1597,10,4 +1598,11,4 +1599,11,5 +1600,11,5 +1601,10,5 +1602,7,6 +1603,6,6 1604,6,6 -1605,4,7 -1606,6,6 -1607,5,4 -1608,4,5 -1609,7,5 -1610,6,5 -1611,6,5 -1612,8,5 -1613,9,4 -1614,9,4 -1615,7,5 -1616,6,6 -1617,5,7 -1618,8,7 -1619,8,7 -1620,8,8 -1621,7,9 -1622,7,10 -1623,9,10 -1624,10,10 -1625,11,10 -1626,8,10 -1627,8,9 -1628,9,9 -1629,11,9 -1630,12,9 -1631,8,9 -1632,8,9 -1633,9,8 -1634,9,8 -1635,11,8 -1636,12,8 -1637,11,7 -1638,11,6 -1639,11,7 -1640,13,7 -1641,9,7 -1642,9,7 -1643,9,7 -1644,6,7 -1645,7,6 -1646,9,6 -1647,9,6 -1648,9,5 -1649,7,7 -1650,8,7 -1651,11,7 -1652,9,7 -1653,6,7 -1654,6,6 -1655,6,6 -1656,4,7 -1657,4,7 -1658,5,7 -1659,5,6 -1660,4,7 -1661,6,8 -1662,5,8 -1663,6,6 -1664,6,7 -1665,5,5 -1666,5,4 -1667,8,4 -1668,10,4 -1669,11,4 -1670,9,4 -1671,5,4 -1672,6,4 -1673,6,4 -1674,7,5 -1675,5,5 -1676,6,5 -1677,5,5 -1678,3,4 -1679,3,4 -1680,5,4 -1681,5,4 -1682,6,6 -1683,5,7 -1684,7,6 -1685,9,6 -1686,8,8 -1687,9,8 -1688,10,8 -1689,8,9 -1690,4,9 -1691,10,9 -1692,7,9 -1693,7,9 -1694,5,9 -1695,4,9 -1696,3,10 -1697,3,10 -1698,4,9 -1699,3,10 -1700,5,10 -1701,5,9 -1702,6,8 -1703,7,7 -1704,5,8 -1705,5,8 -1706,4,7 -1707,5,7 -1708,5,8 -1709,6,8 -1710,7,8 -1711,7,8 -1712,8,8 -1713,7,8 -1714,8,8 -1715,6,10 -1716,7,9 -1717,8,9 -1718,8,10 +1605,7,7 +1606,8,8 +1607,7,8 +1608,7,7 +1609,9,7 +1610,9,6 +1611,6,7 +1612,6,8 +1613,5,8 +1614,6,7 +1615,1,10 +1616,3,9 +1617,3,9 +1618,3,10 +1619,3,10 +1620,5,12 +1621,4,12 +1622,3,12 +1623,4,14 +1624,4,14 +1625,5,12 +1626,4,12 +1627,3,10 +1628,5,10 +1629,8,9 +1630,7,9 +1631,8,10 +1632,6,11 +1633,6,11 +1634,5,11 +1635,4,10 +1636,7,10 +1637,9,10 +1638,11,10 +1639,10,11 +1640,9,12 +1641,9,10 +1642,10,9 +1643,10,8 +1644,8,9 +1645,8,9 +1646,5,9 +1647,7,9 +1648,9,10 +1649,10,10 +1650,8,10 +1651,7,9 +1652,9,8 +1653,5,10 +1654,4,11 +1655,5,11 +1656,4,12 +1657,4,12 +1658,5,11 +1659,4,10 +1660,6,10 +1661,4,10 +1662,5,10 +1663,8,10 +1664,8,10 +1665,8,7 +1666,10,7 +1667,12,7 +1668,12,7 +1669,11,9 +1670,11,9 +1671,5,8 +1672,5,9 +1673,6,8 +1674,6,8 +1675,8,7 +1676,8,7 +1677,8,9 +1678,5,9 +1679,8,10 +1680,10,10 +1681,8,9 +1682,9,9 +1683,7,10 +1684,11,10 +1685,14,9 +1686,14,9 +1687,9,11 +1688,7,11 +1689,6,10 +1690,5,10 +1691,7,10 +1692,6,10 +1693,5,10 +1694,6,9 +1695,8,9 +1696,10,9 +1697,10,9 +1698,8,8 +1699,8,8 +1700,7,8 +1701,12,8 +1702,14,7 +1703,15,7 +1704,15,7 +1705,16,6 +1706,15,7 +1707,15,7 +1708,12,6 +1709,12,6 +1710,9,7 +1711,8,8 +1712,6,9 +1713,6,9 +1714,7,9 +1715,6,11 +1716,4,11 +1717,5,11 +1718,6,11 1719,6,11 1720,7,11 -1721,10,12 -1722,11,10 -1723,12,10 -1724,10,9 -1725,8,9 -1726,9,10 -1727,6,10 -1728,6,10 -1729,7,10 +1721,6,10 +1722,5,8 +1723,5,8 +1724,5,7 +1725,7,7 +1726,5,9 +1727,6,9 +1728,7,10 +1729,8,11 1730,7,10 -1731,7,10 -1732,8,9 -1733,11,9 -1734,11,9 -1735,9,10 -1736,9,10 -1737,9,10 -1738,8,11 +1731,8,12 +1732,9,12 +1733,9,10 +1734,11,11 +1735,12,11 +1736,13,11 +1737,11,12 +1738,10,12 1739,10,11 -1740,13,10 -1741,14,10 -1742,15,10 +1740,10,11 +1741,13,12 +1742,12,11 1743,11,12 -1744,10,12 -1745,14,12 -1746,12,12 -1747,12,12 -1748,12,12 +1744,8,12 +1745,9,12 +1746,8,12 +1747,8,13 +1748,7,13 1749,10,12 -1750,11,11 -1751,9,11 -1752,7,11 -1753,6,12 -1754,6,11 -1755,7,13 -1756,10,13 -1757,11,13 -1758,9,13 -1759,8,13 -1760,9,13 -1761,7,13 -1762,9,13 -1763,9,13 -1764,7,13 -1765,6,13 -1766,5,13 -1767,4,13 -1768,5,13 -1769,5,11 -1770,4,10 -1771,4,9 -1772,4,8 -1773,6,8 -1774,6,7 -1775,5,7 -1776,8,7 -1777,5,8 -1778,3,8 -1779,5,9 -1780,6,9 -1781,7,7 -1782,6,7 -1783,6,7 -1784,5,8 -1785,5,7 -1786,8,7 -1787,7,7 -1788,8,7 -1789,7,7 -1790,10,6 -1791,7,6 -1792,7,6 -1793,8,6 -1794,8,6 -1795,9,6 -1796,10,6 -1797,9,6 -1798,9,6 -1799,10,6 -1800,7,6 -1801,8,6 -1802,7,6 -1803,6,6 -1804,1,7 -1805,3,7 -1806,3,7 -1807,4,6 -1808,7,6 -1809,8,6 -1810,8,6 -1811,8,7 -1812,8,8 -1813,7,9 -1814,9,10 -1815,7,10 -1816,10,10 -1817,10,10 -1818,9,10 -1819,8,9 -1820,6,9 -1821,5,10 -1822,5,10 -1823,4,10 -1824,6,10 -1825,7,10 -1826,7,10 -1827,6,10 -1828,7,10 -1829,6,9 -1830,8,9 -1831,7,9 -1832,8,8 -1833,7,8 -1834,9,7 -1835,7,7 -1836,9,8 -1837,9,10 -1838,9,11 -1839,6,12 -1840,7,11 -1841,6,11 -1842,3,10 -1843,5,8 -1844,6,8 -1845,6,8 -1846,8,8 -1847,3,7 -1848,5,7 -1849,6,8 -1850,6,8 -1851,4,8 -1852,3,8 -1853,5,7 -1854,5,8 -1855,8,8 -1856,9,8 -1857,12,8 -1858,12,8 -1859,8,9 -1860,8,9 -1861,9,9 -1862,6,11 -1863,5,11 -1864,4,11 -1865,4,10 -1866,4,10 -1867,4,10 -1868,6,9 -1869,6,8 -1870,8,9 -1871,6,8 -1872,7,10 -1873,9,9 -1874,11,8 -1875,12,8 -1876,10,9 -1877,9,9 -1878,9,10 -1879,11,10 -1880,11,10 -1881,7,10 -1882,7,11 -1883,9,11 -1884,9,12 -1885,9,12 -1886,10,12 -1887,12,12 -1888,10,11 -1889,10,9 -1890,13,9 -1891,12,10 -1892,10,9 -1893,8,10 -1894,7,10 -1895,8,10 -1896,7,10 -1897,5,10 -1898,4,10 -1899,4,10 -1900,4,10 -1901,3,8 -1902,3,8 -1903,3,8 -1904,3,9 -1905,3,8 -1906,2,7 -1907,3,7 -1908,5,7 -1909,4,7 -1910,3,8 -1911,7,8 -1912,8,8 -1913,7,8 -1914,6,8 -1915,5,10 -1916,8,9 -1917,6,8 -1918,11,8 -1919,10,7 -1920,11,7 -1921,10,7 -1922,9,6 -1923,13,6 -1924,10,6 -1925,7,6 -1926,9,6 -1927,9,7 -1928,7,8 -1929,10,8 -1930,10,8 -1931,7,8 -1932,5,8 -1933,5,8 -1934,7,8 -1935,7,8 -1936,7,9 -1937,10,9 -1938,7,9 -1939,7,9 -1940,6,9 -1941,6,9 -1942,7,10 -1943,7,10 -1944,8,9 -1945,6,10 -1946,6,10 -1947,7,11 -1948,8,11 -1949,8,11 -1950,10,11 -1951,8,12 -1952,8,13 -1953,6,13 -1954,8,13 -1955,7,13 -1956,6,13 -1957,5,14 -1958,8,14 -1959,7,13 -1960,7,14 -1961,7,12 -1962,9,12 -1963,9,11 -1964,9,10 -1965,6,11 -1966,4,12 -1967,5,13 -1968,5,11 -1969,5,10 -1970,4,11 -1971,5,12 -1972,5,12 -1973,3,12 -1974,4,13 -1975,5,13 -1976,9,13 -1977,8,13 -1978,6,13 -1979,6,13 -1980,7,13 -1981,8,13 -1982,7,13 -1983,8,13 -1984,8,13 -1985,6,12 -1986,4,12 -1987,7,12 -1988,7,10 -1989,7,10 -1990,5,10 -1991,3,9 -1992,5,9 -1993,6,7 -1994,6,7 -1995,7,7 -1996,9,7 -1997,8,8 -1998,8,8 -1999,12,8 -2000,10,8 -2001,10,8 +1750,10,12 +1751,10,12 +1752,9,11 +1753,8,10 +1754,8,10 +1755,6,10 +1756,9,10 +1757,7,10 +1758,9,10 +1759,9,10 +1760,9,10 +1761,9,9 +1762,9,9 +1763,10,9 +1764,11,9 +1765,10,9 +1766,12,9 +1767,12,9 +1768,11,9 +1769,10,9 +1770,11,10 +1771,10,10 +1772,10,9 +1773,10,9 +1774,9,9 +1775,9,7 +1776,7,7 +1777,8,7 +1778,9,6 +1779,12,6 +1780,9,6 +1781,10,6 +1782,8,5 +1783,7,5 +1784,13,6 +1785,12,8 +1786,12,10 +1787,10,11 +1788,9,11 +1789,9,10 +1790,7,9 +1791,9,9 +1792,9,9 +1793,11,9 +1794,11,9 +1795,10,8 +1796,8,8 +1797,11,8 +1798,8,7 +1799,9,7 +1800,11,8 +1801,13,9 +1802,10,11 +1803,9,11 +1804,10,11 +1805,10,11 +1806,12,12 +1807,13,11 +1808,13,10 +1809,11,9 +1810,10,10 +1811,10,11 +1812,10,10 +1813,11,10 +1814,11,10 +1815,12,10 +1816,14,10 +1817,14,10 +1818,12,10 +1819,10,10 +1820,11,10 +1821,14,10 +1822,17,10 +1823,16,11 +1824,15,11 +1825,16,11 +1826,17,11 +1827,12,11 +1828,10,12 +1829,10,13 +1830,10,13 +1831,7,13 +1832,8,13 +1833,10,14 +1834,9,13 +1835,11,13 +1836,11,14 +1837,9,13 +1838,8,13 +1839,9,12 +1840,10,12 +1841,10,12 +1842,10,13 +1843,8,12 +1844,8,13 +1845,9,13 +1846,11,13 +1847,10,13 +1848,6,14 +1849,6,14 +1850,8,14 +1851,8,13 +1852,7,13 +1853,7,12 +1854,9,12 +1855,7,12 +1856,8,12 +1857,9,13 +1858,11,14 +1859,10,14 +1860,10,14 +1861,7,17 +1862,8,17 +1863,7,16 +1864,7,16 +1865,6,17 +1866,8,17 +1867,6,17 +1868,5,16 +1869,6,17 +1870,9,17 +1871,11,17 +1872,11,15 +1873,14,16 +1874,11,15 +1875,9,16 +1876,11,16 +1877,9,17 +1878,9,17 +1879,10,17 +1880,10,16 +1881,10,17 +1882,9,16 +1883,9,16 +1884,10,16 +1885,7,18 +1886,6,18 +1887,4,19 +1888,4,19 +1889,6,19 +1890,9,19 +1891,7,20 +1892,8,20 +1893,7,19 +1894,6,20 +1895,8,19 +1896,8,20 +1897,9,22 +1898,8,22 +1899,8,22 +1900,5,21 +1901,6,19 +1902,6,20 +1903,6,20 +1904,5,20 +1905,5,21 +1906,6,20 +1907,5,19 +1908,6,20 +1909,6,19 +1910,7,19 +1911,5,19 +1912,6,19 +1913,5,19 +1914,5,18 +1915,6,17 +1916,4,16 +1917,2,17 +1918,2,16 +1919,4,15 +1920,5,15 +1921,6,14 +1922,5,13 +1923,5,12 +1924,4,12 +1925,2,11 +1926,3,11 +1927,6,10 +1928,6,10 +1929,5,10 +1930,4,10 +1931,8,8 +1932,7,9 +1933,8,8 +1934,7,7 +1935,8,7 +1936,6,7 +1937,7,6 +1938,12,6 +1939,12,6 +1940,13,6 +1941,15,7 +1942,16,7 +1943,16,7 +1944,15,8 +1945,16,8 +1946,17,8 +1947,15,7 +1948,12,6 +1949,12,6 +1950,13,6 +1951,12,5 +1952,11,6 +1953,8,6 +1954,13,6 +1955,12,6 +1956,9,7 +1957,9,7 +1958,9,7 +1959,9,7 +1960,9,7 +1961,7,7 +1962,8,7 +1963,6,7 +1964,6,6 +1965,8,6 +1966,7,6 +1967,7,4 +1968,8,3 +1969,8,3 +1970,6,4 +1971,8,4 +1972,8,4 +1973,9,4 +1974,10,4 +1975,11,4 +1976,10,4 +1977,9,5 +1978,6,4 +1979,6,6 +1980,7,5 +1981,6,6 +1982,7,6 +1983,6,6 +1984,6,5 +1985,6,6 +1986,10,6 +1987,9,7 +1988,8,7 +1989,7,7 +1990,8,7 +1991,7,7 +1992,6,7 +1993,6,8 +1994,7,9 +1995,7,10 +1996,7,10 +1997,7,10 +1998,9,11 +1999,8,9 +2000,9,8 +2001,10,7 2002,7,7 2003,7,5 -2004,9,5 -2005,9,5 -2006,9,6 +2004,6,5 +2005,8,5 +2006,10,5 2007,9,6 -2008,10,6 -2009,11,6 -2010,11,6 -2011,12,7 -2012,8,7 -2013,6,6 -2014,6,7 -2015,4,7 -2016,5,7 -2017,4,7 -2018,5,6 -2019,5,6 -2020,5,6 -2021,5,6 -2022,5,6 -2023,6,7 -2024,12,7 -2025,11,7 -2026,11,7 -2027,10,7 -2028,12,8 -2029,12,8 -2030,13,8 -2031,12,8 -2032,11,8 -2033,13,7 -2034,13,7 -2035,10,8 -2036,8,8 -2037,9,8 -2038,10,9 -2039,11,10 -2040,10,10 -2041,9,10 -2042,10,10 -2043,10,10 -2044,10,9 -2045,8,8 -2046,10,8 -2047,9,9 -2048,9,9 -2049,8,9 -2050,8,8 -2051,6,8 -2052,6,8 -2053,5,8 -2054,7,8 -2055,6,7 -2056,4,8 -2057,6,9 -2058,6,9 -2059,4,9 -2060,5,9 -2061,6,9 -2062,5,10 -2063,4,11 -2064,5,11 -2065,5,11 -2066,7,12 -2067,7,13 -2068,7,13 -2069,7,13 -2070,9,13 -2071,11,12 -2072,11,11 -2073,8,12 -2074,6,12 -2075,8,12 -2076,10,11 -2077,7,11 -2078,8,12 -2079,7,12 -2080,6,12 -2081,8,12 -2082,10,11 -2083,11,11 -2084,12,10 -2085,14,9 -2086,12,8 -2087,10,6 -2088,9,6 -2089,12,7 -2090,7,9 -2091,7,9 -2092,3,9 -2093,4,9 -2094,4,9 -2095,6,9 -2096,6,8 -2097,8,8 -2098,8,9 -2099,7,9 -2100,3,9 -2101,4,8 -2102,6,9 -2103,9,9 -2104,7,9 -2105,9,9 -2106,9,9 -2107,11,10 -2108,10,11 -2109,12,11 -2110,12,11 -2111,12,12 -2112,12,11 -2113,10,11 -2114,9,12 -2115,6,9 -2116,7,9 -2117,8,9 -2118,8,8 -2119,6,9 -2120,6,9 -2121,5,9 -2122,6,9 -2123,7,10 -2124,6,10 -2125,6,11 -2126,2,11 -2127,3,11 -2128,6,11 -2129,6,10 -2130,8,11 -2131,9,10 -2132,7,9 -2133,7,8 -2134,4,6 -2135,4,6 -2136,4,6 -2137,7,5 -2138,8,5 -2139,11,4 -2140,8,5 -2141,7,6 -2142,11,6 -2143,9,6 -2144,10,7 -2145,10,8 -2146,13,8 -2147,11,10 -2148,13,10 -2149,12,9 -2150,10,10 -2151,9,11 -2152,7,11 -2153,9,13 -2154,8,13 -2155,5,12 -2156,2,12 -2157,2,12 -2158,3,11 -2159,4,10 -2160,5,10 -2161,7,11 -2162,9,11 -2163,7,10 -2164,6,10 -2165,7,10 +2008,9,5 +2009,10,4 +2010,10,6 +2011,10,6 +2012,9,7 +2013,7,7 +2014,6,6 +2015,4,6 +2016,7,7 +2017,9,7 +2018,11,7 +2019,14,7 +2020,13,8 +2021,11,9 +2022,12,10 +2023,7,11 +2024,10,11 +2025,8,11 +2026,7,11 +2027,9,11 +2028,11,11 +2029,13,12 +2030,14,12 +2031,13,11 +2032,14,12 +2033,14,11 +2034,12,11 +2035,11,11 +2036,11,11 +2037,9,11 +2038,9,11 +2039,7,11 +2040,7,11 +2041,8,11 +2042,8,11 +2043,9,11 +2044,6,10 +2045,9,8 +2046,8,8 +2047,5,9 +2048,6,9 +2049,6,9 +2050,6,9 +2051,5,8 +2052,6,9 +2053,7,8 +2054,7,7 +2055,9,7 +2056,9,8 +2057,8,8 +2058,8,8 +2059,9,7 +2060,8,7 +2061,8,7 +2062,6,8 +2063,10,9 +2064,8,9 +2065,6,9 +2066,6,9 +2067,6,9 +2068,7,8 +2069,7,8 +2070,6,6 +2071,8,5 +2072,9,5 +2073,8,3 +2074,9,3 +2075,9,3 +2076,10,3 +2077,9,3 +2078,6,3 +2079,7,2 +2080,6,3 +2081,7,4 +2082,8,4 +2083,10,4 +2084,6,5 +2085,7,6 +2086,8,6 +2087,6,6 +2088,7,5 +2089,7,5 +2090,8,5 +2091,4,5 +2092,3,7 +2093,4,7 +2094,3,7 +2095,8,6 +2096,6,5 +2097,8,4 +2098,8,4 +2099,7,4 +2100,8,4 +2101,7,4 +2102,7,4 +2103,5,4 +2104,7,4 +2105,9,4 +2106,6,5 +2107,8,5 +2108,6,5 +2109,3,5 +2110,5,5 +2111,4,6 +2112,6,6 +2113,7,6 +2114,8,7 +2115,8,7 +2116,7,7 +2117,8,6 +2118,10,6 +2119,9,7 +2120,7,8 +2121,8,7 +2122,8,7 +2123,11,7 +2124,6,7 +2125,8,7 +2126,4,7 +2127,4,7 +2128,2,7 +2129,3,6 +2130,3,6 +2131,3,7 +2132,3,7 +2133,3,7 +2134,3,7 +2135,5,7 +2136,4,7 +2137,6,8 +2138,5,9 +2139,4,9 +2140,6,9 +2141,4,9 +2142,6,9 +2143,4,10 +2144,6,10 +2145,6,10 +2146,5,10 +2147,5,10 +2148,7,10 +2149,8,10 +2150,9,9 +2151,7,9 +2152,9,9 +2153,8,9 +2154,7,9 +2155,5,10 +2156,5,10 +2157,7,10 +2158,6,9 +2159,8,9 +2160,9,9 +2161,10,9 +2162,11,9 +2163,10,9 +2164,9,9 +2165,8,9 2166,8,10 -2167,8,10 -2168,8,10 -2169,7,11 -2170,7,10 -2171,5,10 -2172,5,9 -2173,4,9 -2174,5,9 -2175,4,10 -2176,4,10 -2177,7,8 -2178,7,8 -2179,6,8 -2180,6,8 -2181,8,9 -2182,10,7 -2183,8,8 -2184,8,8 -2185,6,8 -2186,6,7 -2187,7,7 -2188,6,8 -2189,6,9 -2190,7,9 -2191,5,9 -2192,5,8 -2193,6,8 -2194,6,9 -2195,7,8 -2196,7,8 -2197,6,8 -2198,5,8 -2199,6,8 -2200,7,8 -2201,8,8 -2202,8,8 -2203,7,8 -2204,7,8 -2205,8,7 -2206,8,7 -2207,7,7 -2208,9,7 -2209,9,7 -2210,10,6 -2211,8,7 -2212,9,8 -2213,8,7 -2214,8,7 -2215,6,7 -2216,3,8 -2217,5,8 -2218,4,7 -2219,8,7 -2220,9,8 -2221,11,8 -2222,8,7 -2223,6,8 -2224,8,8 -2225,8,8 -2226,5,9 -2227,8,9 -2228,6,10 -2229,7,11 -2230,6,11 -2231,8,10 -2232,8,9 -2233,6,9 -2234,6,7 -2235,5,8 -2236,8,8 -2237,9,9 -2238,10,8 -2239,11,8 -2240,9,9 -2241,8,9 -2242,10,9 -2243,12,9 -2244,12,9 -2245,10,10 -2246,10,10 -2247,8,9 -2248,8,9 -2249,6,10 -2250,9,8 -2251,7,9 -2252,6,9 -2253,8,10 -2254,8,10 -2255,8,10 -2256,11,11 -2257,7,11 -2258,7,11 -2259,8,11 -2260,8,10 -2261,9,10 -2262,8,9 -2263,5,10 -2264,5,10 -2265,5,12 -2266,5,12 -2267,7,13 -2268,8,13 -2269,10,13 -2270,8,12 -2271,8,12 -2272,7,12 -2273,7,11 -2274,4,11 -2275,4,11 -2276,3,10 -2277,3,9 -2278,5,8 -2279,3,9 -2280,4,8 -2281,5,8 -2282,4,7 -2283,6,7 -2284,8,7 -2285,9,7 -2286,10,7 -2287,8,7 -2288,6,8 -2289,6,8 -2290,8,7 -2291,10,7 -2292,10,6 -2293,11,4 -2294,10,4 -2295,8,4 -2296,10,3 -2297,9,4 -2298,11,2 -2299,11,4 -2300,13,3 -2301,12,5 -2302,10,4 -2303,7,5 -2304,9,6 -2305,9,6 -2306,9,8 -2307,10,8 -2308,8,9 -2309,9,8 -2310,10,7 +2167,10,10 +2168,9,10 +2169,11,9 +2170,11,10 +2171,15,10 +2172,12,11 +2173,8,12 +2174,8,13 +2175,11,13 +2176,11,13 +2177,11,13 +2178,11,12 +2179,11,11 +2180,9,9 +2181,7,9 +2182,7,9 +2183,9,8 +2184,9,9 +2185,7,9 +2186,7,7 +2187,8,7 +2188,5,7 +2189,6,6 +2190,8,6 +2191,5,6 +2192,6,6 +2193,5,6 +2194,3,6 +2195,7,6 +2196,9,8 +2197,9,8 +2198,8,7 +2199,6,6 +2200,7,6 +2201,8,7 +2202,10,7 +2203,9,8 +2204,10,8 +2205,8,9 +2206,8,9 +2207,10,9 +2208,10,9 +2209,10,9 +2210,6,9 +2211,10,8 +2212,9,9 +2213,10,9 +2214,10,7 +2215,8,9 +2216,8,8 +2217,6,8 +2218,9,8 +2219,10,8 +2220,9,9 +2221,12,8 +2222,11,8 +2223,9,8 +2224,7,8 +2225,5,8 +2226,6,8 +2227,7,7 +2228,5,7 +2229,5,8 +2230,5,8 +2231,5,7 +2232,4,6 +2233,4,6 +2234,5,6 +2235,7,6 +2236,8,6 +2237,10,7 +2238,8,8 +2239,9,9 +2240,9,8 +2241,8,8 +2242,9,8 +2243,8,8 +2244,7,8 +2245,8,10 +2246,8,10 +2247,7,9 +2248,6,9 +2249,5,9 +2250,6,9 +2251,5,8 +2252,6,8 +2253,3,8 +2254,3,8 +2255,3,8 +2256,3,8 +2257,3,9 +2258,3,11 +2259,6,10 +2260,8,11 +2261,7,12 +2262,5,13 +2263,6,12 +2264,8,12 +2265,8,12 +2266,10,12 +2267,10,12 +2268,10,11 +2269,12,9 +2270,10,9 +2271,9,10 +2272,7,10 +2273,6,10 +2274,9,10 +2275,10,8 +2276,7,7 +2277,5,6 +2278,3,6 +2279,7,5 +2280,6,5 +2281,9,4 +2282,8,5 +2283,7,6 +2284,9,6 +2285,8,7 +2286,8,6 +2287,8,6 +2288,8,6 +2289,6,7 +2290,3,7 +2291,3,7 +2292,4,8 +2293,5,7 +2294,4,6 +2295,3,6 +2296,6,6 +2297,5,6 +2298,6,5 +2299,6,4 +2300,7,4 +2301,5,4 +2302,5,4 +2303,6,4 +2304,6,4 +2305,6,5 +2306,5,4 +2307,9,4 +2308,9,5 +2309,12,5 +2310,12,6 2311,9,7 -2312,8,7 -2313,9,7 -2314,10,7 -2315,8,6 -2316,6,7 -2317,9,8 -2318,7,8 -2319,9,7 -2320,10,7 -2321,8,7 -2322,6,7 -2323,4,7 -2324,2,7 -2325,3,7 -2326,3,8 -2327,3,8 -2328,2,8 -2329,4,8 -2330,4,8 -2331,7,7 -2332,10,7 -2333,10,7 -2334,9,7 -2335,7,7 -2336,7,7 -2337,7,6 -2338,4,6 -2339,2,7 -2340,3,6 -2341,3,6 -2342,6,6 -2343,7,6 -2344,7,6 -2345,3,4 -2346,5,3 -2347,6,3 -2348,6,3 -2349,7,3 -2350,7,3 -2351,6,5 -2352,4,5 -2353,6,5 -2354,6,4 -2355,4,6 -2356,4,6 -2357,6,6 -2358,5,6 -2359,5,6 -2360,5,6 -2361,8,6 -2362,8,4 -2363,6,5 -2364,8,5 -2365,10,5 -2366,9,5 -2367,8,6 -2368,9,6 -2369,9,6 -2370,11,7 -2371,8,8 -2372,4,10 -2373,4,10 -2374,5,12 -2375,4,11 -2376,4,10 -2377,6,10 -2378,6,9 -2379,7,8 -2380,8,7 -2381,9,8 -2382,7,7 -2383,8,7 +2312,9,7 +2313,10,8 +2314,10,9 +2315,10,10 +2316,11,10 +2317,11,10 +2318,11,10 +2319,11,10 +2320,8,10 +2321,7,12 +2322,7,13 +2323,7,13 +2324,11,14 +2325,11,14 +2326,13,14 +2327,10,14 +2328,9,14 +2329,7,14 +2330,5,14 +2331,7,14 +2332,9,11 +2333,8,11 +2334,8,12 +2335,7,10 +2336,6,12 +2337,6,12 +2338,6,12 +2339,6,12 +2340,7,12 +2341,5,12 +2342,5,14 +2343,5,13 +2344,7,12 +2345,8,12 +2346,7,12 +2347,5,10 +2348,4,8 +2349,6,8 +2350,7,8 +2351,5,9 +2352,5,9 +2353,6,9 +2354,5,11 +2355,7,10 +2356,6,10 +2357,6,10 +2358,7,10 +2359,9,9 +2360,7,9 +2361,4,9 +2362,4,9 +2363,5,9 +2364,6,8 +2365,7,8 +2366,4,7 +2367,6,6 +2368,4,7 +2369,4,7 +2370,3,7 +2371,6,7 +2372,4,7 +2373,3,9 +2374,4,9 +2375,3,10 +2376,5,10 +2377,5,10 +2378,7,10 +2379,9,7 +2380,9,7 +2381,6,7 +2382,5,6 +2383,4,7 2384,6,7 -2385,8,7 -2386,11,7 -2387,12,6 -2388,13,6 -2389,11,6 -2390,12,7 -2391,11,7 -2392,12,7 -2393,16,7 -2394,14,8 -2395,14,8 -2396,12,9 -2397,10,10 -2398,11,10 -2399,13,10 -2400,15,10 -2401,15,11 -2402,15,11 -2403,14,10 -2404,14,11 -2405,14,12 -2406,10,12 -2407,9,13 -2408,9,13 -2409,9,13 -2410,9,13 -2411,8,13 -2412,8,14 -2413,6,11 -2414,6,12 -2415,7,12 -2416,6,12 -2417,8,12 -2418,7,11 -2419,7,10 -2420,7,10 -2421,7,10 -2422,6,9 -2423,6,9 -2424,9,9 +2385,6,7 +2386,5,8 +2387,5,8 +2388,6,8 +2389,5,8 +2390,7,8 +2391,7,8 +2392,9,8 +2393,9,7 +2394,8,8 +2395,7,9 +2396,6,9 +2397,9,9 +2398,12,10 +2399,9,12 +2400,6,12 +2401,6,12 +2402,9,12 +2403,6,12 +2404,3,12 +2405,3,11 +2406,4,12 +2407,6,10 +2408,3,10 +2409,4,10 +2410,4,10 +2411,3,11 +2412,3,11 +2413,3,9 +2414,6,9 +2415,5,10 +2416,5,9 +2417,6,8 +2418,6,8 +2419,7,9 +2420,7,8 +2421,8,7 +2422,13,7 +2423,10,8 +2424,8,9 2425,8,9 -2426,8,9 -2427,8,10 -2428,9,11 -2429,6,12 -2430,4,11 -2431,2,11 -2432,3,11 -2433,5,11 -2434,7,11 -2435,9,10 -2436,8,10 -2437,7,10 -2438,7,11 -2439,8,12 -2440,8,12 -2441,6,12 -2442,6,12 -2443,6,12 -2444,7,13 -2445,6,14 -2446,6,13 -2447,6,12 -2448,9,11 -2449,7,12 -2450,9,14 -2451,12,14 -2452,13,15 -2453,11,16 -2454,11,17 -2455,11,17 -2456,10,17 -2457,9,16 -2458,10,16 -2459,11,17 -2460,10,15 -2461,11,15 -2462,11,16 -2463,10,16 -2464,9,17 -2465,8,17 -2466,8,18 -2467,6,17 -2468,6,17 -2469,7,16 -2470,6,16 -2471,8,17 -2472,6,17 -2473,7,18 -2474,11,16 -2475,10,14 -2476,10,15 -2477,9,14 -2478,8,16 -2479,7,16 -2480,8,16 -2481,5,17 -2482,4,18 -2483,3,18 -2484,3,17 -2485,6,17 -2486,6,17 -2487,7,16 -2488,7,16 -2489,6,15 -2490,7,15 -2491,8,17 -2492,8,18 -2493,6,20 -2494,2,21 -2495,4,21 -2496,5,21 -2497,7,21 -2498,7,20 -2499,9,19 -2500,6,19 -2501,7,16 -2502,10,16 -2503,9,15 -2504,9,16 -2505,6,15 -2506,5,15 -2507,7,14 -2508,9,14 -2509,9,15 -2510,9,16 -2511,8,18 -2512,8,18 -2513,5,19 -2514,7,20 -2515,6,19 -2516,7,19 -2517,5,21 -2518,4,20 -2519,7,19 -2520,6,17 -2521,7,17 -2522,8,17 -2523,10,16 -2524,8,13 -2525,10,12 -2526,11,13 -2527,14,11 -2528,15,13 -2529,12,13 -2530,12,12 -2531,12,13 -2532,12,13 -2533,10,12 -2534,11,12 -2535,11,10 -2536,10,10 -2537,9,10 -2538,9,10 -2539,9,10 -2540,6,10 -2541,5,10 -2542,5,10 -2543,4,11 -2544,3,13 -2545,6,11 -2546,6,11 -2547,9,10 -2548,8,11 -2549,7,11 -2550,6,9 -2551,6,9 -2552,7,9 -2553,7,8 -2554,6,8 -2555,9,8 -2556,11,7 -2557,12,7 -2558,12,8 -2559,9,8 -2560,8,8 -2561,9,8 -2562,10,8 -2563,10,8 -2564,8,8 -2565,7,8 -2566,5,9 -2567,8,10 -2568,10,10 -2569,9,9 -2570,9,9 -2571,8,9 -2572,8,10 -2573,6,10 -2574,7,10 -2575,5,10 -2576,5,9 -2577,6,9 -2578,5,9 -2579,5,8 -2580,7,9 -2581,6,9 -2582,6,9 -2583,6,8 -2584,8,8 -2585,7,9 -2586,7,8 -2587,7,8 -2588,8,8 -2589,9,8 -2590,7,9 -2591,9,9 -2592,8,9 -2593,6,9 -2594,7,8 -2595,7,7 -2596,7,7 -2597,7,7 -2598,8,7 -2599,9,7 -2600,9,7 -2601,10,7 -2602,8,9 -2603,8,9 -2604,7,9 -2605,6,10 -2606,6,10 -2607,6,11 -2608,5,10 -2609,6,10 -2610,7,10 -2611,5,9 -2612,4,9 -2613,5,8 -2614,7,8 -2615,6,8 -2616,6,8 -2617,7,8 -2618,5,8 -2619,5,8 -2620,7,8 -2621,7,8 -2622,10,7 -2623,12,8 -2624,10,8 -2625,10,8 -2626,10,8 -2627,11,8 -2628,10,9 -2629,9,9 -2630,9,8 -2631,9,8 -2632,10,8 -2633,9,8 -2634,8,9 -2635,10,9 -2636,9,9 -2637,8,10 -2638,7,11 -2639,9,11 -2640,6,14 -2641,5,14 +2426,9,8 +2427,9,7 +2428,7,8 +2429,7,8 +2430,9,7 +2431,9,7 +2432,8,7 +2433,11,8 +2434,9,9 +2435,9,8 +2436,11,8 +2437,10,8 +2438,8,8 +2439,6,8 +2440,6,7 +2441,7,7 +2442,8,7 +2443,9,7 +2444,7,9 +2445,9,9 +2446,8,9 +2447,9,9 +2448,13,9 +2449,13,10 +2450,9,12 +2451,8,13 +2452,8,14 +2453,7,13 +2454,8,13 +2455,7,14 +2456,7,14 +2457,8,13 +2458,8,12 +2459,10,12 +2460,9,11 +2461,11,10 +2462,11,11 +2463,9,11 +2464,8,11 +2465,8,11 +2466,8,11 +2467,7,11 +2468,9,10 +2469,8,10 +2470,7,10 +2471,7,10 +2472,6,11 +2473,5,11 +2474,6,10 +2475,6,9 +2476,6,8 +2477,8,6 +2478,5,6 +2479,3,5 +2480,3,5 +2481,4,5 +2482,5,5 +2483,6,5 +2484,9,5 +2485,10,5 +2486,9,5 +2487,13,5 +2488,17,5 +2489,11,8 +2490,10,7 +2491,10,7 +2492,7,9 +2493,10,10 +2494,11,11 +2495,9,10 +2496,9,10 +2497,12,8 +2498,9,9 +2499,9,9 +2500,9,8 +2501,12,8 +2502,12,9 +2503,10,11 +2504,7,13 +2505,5,13 +2506,5,13 +2507,9,13 +2508,8,13 +2509,8,14 +2510,9,14 +2511,9,12 +2512,8,12 +2513,8,11 +2514,7,11 +2515,7,11 +2516,7,12 +2517,5,12 +2518,6,10 +2519,6,10 +2520,7,10 +2521,7,9 +2522,7,10 +2523,7,10 +2524,8,10 +2525,7,10 +2526,8,10 +2527,8,9 +2528,8,8 +2529,9,8 +2530,9,8 +2531,8,8 +2532,5,7 +2533,4,7 +2534,6,7 +2535,6,6 +2536,7,5 +2537,7,5 +2538,6,7 +2539,5,9 +2540,3,9 +2541,4,9 +2542,3,10 +2543,6,10 +2544,8,10 +2545,9,9 +2546,8,8 +2547,8,8 +2548,9,6 +2549,7,6 +2550,9,6 +2551,8,7 +2552,8,7 +2553,10,8 +2554,10,9 +2555,8,11 +2556,9,11 +2557,9,11 +2558,7,11 +2559,3,12 +2560,6,10 +2561,6,11 +2562,6,11 +2563,7,12 +2564,5,12 +2565,6,12 +2566,6,12 +2567,5,13 +2568,4,12 +2569,3,11 +2570,4,9 +2571,5,10 +2572,9,10 +2573,10,11 +2574,8,11 +2575,8,12 +2576,9,12 +2577,11,12 +2578,12,13 +2579,12,12 +2580,11,14 +2581,12,14 +2582,10,13 +2583,11,13 +2584,8,14 +2585,12,13 +2586,10,12 +2587,9,11 +2588,10,11 +2589,9,10 +2590,10,9 +2591,8,9 +2592,9,9 +2593,4,10 +2594,8,10 +2595,7,9 +2596,10,8 +2597,9,7 +2598,8,6 +2599,11,6 +2600,10,6 +2601,9,6 +2602,8,6 +2603,7,6 +2604,8,5 +2605,8,5 +2606,6,5 +2607,6,5 +2608,12,5 +2609,13,4 +2610,10,4 +2611,9,6 +2612,10,8 +2613,9,8 +2614,8,7 +2615,7,8 +2616,7,8 +2617,8,9 +2618,11,9 +2619,8,10 +2620,7,11 +2621,7,10 +2622,5,9 +2623,5,9 +2624,6,9 +2625,4,12 +2626,4,12 +2627,3,12 +2628,5,11 +2629,5,11 +2630,7,11 +2631,4,11 +2632,5,10 +2633,6,10 +2634,6,10 +2635,6,10 +2636,7,10 +2637,6,11 +2638,5,11 +2639,5,11 +2640,4,12 +2641,6,12 2642,7,12 -2643,6,12 -2644,4,12 -2645,4,11 -2646,5,11 -2647,10,11 -2648,14,13 -2649,14,11 -2650,11,12 -2651,9,13 -2652,7,14 -2653,7,14 -2654,5,14 -2655,6,13 -2656,4,12 -2657,6,12 -2658,10,11 -2659,7,11 -2660,9,11 -2661,7,10 -2662,6,10 -2663,9,10 -2664,11,8 -2665,15,8 -2666,15,7 -2667,12,6 -2668,12,6 -2669,12,5 -2670,10,4 -2671,9,6 -2672,7,6 -2673,9,7 -2674,11,7 -2675,10,8 -2676,11,9 -2677,12,8 -2678,12,8 -2679,9,8 -2680,9,9 -2681,9,8 -2682,10,8 -2683,12,8 -2684,12,8 -2685,11,8 -2686,8,9 -2687,10,8 -2688,11,8 -2689,9,8 -2690,11,7 -2691,13,8 -2692,11,8 -2693,9,8 -2694,8,8 -2695,9,8 -2696,9,7 -2697,9,7 -2698,8,8 -2699,8,7 -2700,6,8 -2701,6,8 -2702,8,8 -2703,7,8 -2704,8,6 -2705,8,6 -2706,6,6 -2707,8,6 -2708,8,6 -2709,8,6 -2710,7,5 -2711,7,5 -2712,6,4 -2713,6,5 -2714,6,7 -2715,7,7 -2716,8,7 -2717,6,8 -2718,8,8 -2719,7,8 -2720,6,8 -2721,8,6 -2722,8,6 -2723,6,6 -2724,8,6 -2725,7,6 -2726,5,6 -2727,8,6 -2728,8,5 -2729,10,5 -2730,11,5 -2731,12,5 -2732,11,7 -2733,10,7 -2734,7,8 -2735,7,8 -2736,6,8 -2737,7,7 -2738,5,8 -2739,7,8 -2740,11,8 -2741,10,8 -2742,8,7 -2743,9,7 -2744,9,7 -2745,9,7 -2746,8,7 -2747,6,8 -2748,7,8 -2749,7,8 -2750,6,8 -2751,9,9 -2752,6,8 -2753,8,8 -2754,9,8 -2755,9,8 -2756,10,8 -2757,13,8 -2758,11,8 -2759,9,7 -2760,13,5 -2761,9,6 -2762,9,7 -2763,10,8 -2764,12,8 -2765,11,8 -2766,10,8 -2767,10,8 -2768,10,8 -2769,10,7 -2770,13,7 -2771,11,7 -2772,10,7 -2773,10,7 -2774,11,7 -2775,13,7 -2776,14,6 -2777,12,6 -2778,9,8 -2779,9,7 -2780,8,8 -2781,7,9 -2782,8,10 -2783,9,9 -2784,9,9 -2785,9,9 -2786,9,9 -2787,5,10 -2788,6,10 -2789,8,9 -2790,10,9 -2791,11,9 -2792,13,9 -2793,10,9 -2794,9,10 -2795,7,9 -2796,4,9 -2797,4,11 -2798,6,11 -2799,7,9 -2800,7,9 -2801,8,9 -2802,6,9 -2803,9,8 -2804,12,8 -2805,12,8 -2806,12,8 -2807,12,9 -2808,11,10 -2809,11,9 -2810,11,11 -2811,10,13 -2812,9,13 -2813,10,12 -2814,9,11 -2815,12,11 -2816,10,12 -2817,9,12 -2818,11,10 -2819,11,11 -2820,9,11 -2821,5,10 -2822,5,10 -2823,8,10 -2824,7,11 -2825,8,10 -2826,7,9 -2827,10,8 -2828,12,7 -2829,10,8 -2830,11,8 -2831,11,7 -2832,11,7 -2833,9,6 -2834,7,9 -2835,7,8 -2836,9,7 -2837,10,7 -2838,11,7 -2839,11,8 -2840,9,8 -2841,6,9 -2842,7,9 -2843,7,10 -2844,6,11 -2845,5,9 -2846,6,9 -2847,7,11 -2848,6,13 -2849,6,13 -2850,6,13 -2851,7,13 -2852,5,13 -2853,6,12 -2854,8,11 -2855,8,11 -2856,8,11 -2857,8,12 -2858,8,10 -2859,9,10 -2860,7,10 -2861,7,11 -2862,8,10 -2863,9,11 +2643,9,12 +2644,8,11 +2645,10,11 +2646,8,8 +2647,5,8 +2648,7,8 +2649,5,8 +2650,7,8 +2651,9,8 +2652,9,9 +2653,10,7 +2654,11,7 +2655,11,7 +2656,7,6 +2657,11,6 +2658,8,5 +2659,7,5 +2660,9,5 +2661,8,5 +2662,8,5 +2663,6,7 +2664,5,7 +2665,6,8 +2666,5,8 +2667,5,8 +2668,6,8 +2669,5,8 +2670,4,8 +2671,5,8 +2672,6,9 +2673,6,8 +2674,5,8 +2675,6,8 +2676,6,7 +2677,6,7 +2678,6,7 +2679,5,8 +2680,2,7 +2681,6,7 +2682,9,7 +2683,9,7 +2684,9,7 +2685,7,7 +2686,9,7 +2687,10,7 +2688,10,7 +2689,11,5 +2690,8,6 +2691,9,6 +2692,10,6 +2693,10,7 +2694,7,8 +2695,7,9 +2696,9,10 +2697,9,10 +2698,6,10 +2699,5,10 +2700,6,10 +2701,9,10 +2702,11,10 +2703,11,10 +2704,11,10 +2705,9,10 +2706,8,10 +2707,8,8 +2708,9,8 +2709,8,7 +2710,6,7 +2711,8,7 +2712,7,5 +2713,8,5 +2714,11,5 +2715,9,5 +2716,11,5 +2717,11,6 +2718,12,6 +2719,10,6 +2720,10,6 +2721,9,6 +2722,7,7 +2723,8,6 +2724,9,7 +2725,12,7 +2726,12,6 +2727,15,7 +2728,16,8 +2729,17,9 +2730,17,9 +2731,15,9 +2732,12,10 +2733,14,10 +2734,15,12 +2735,19,13 +2736,16,14 +2737,12,15 +2738,9,16 +2739,7,16 +2740,8,16 +2741,8,15 +2742,6,15 +2743,6,14 +2744,7,14 +2745,9,14 +2746,9,14 +2747,10,14 +2748,6,15 +2749,7,14 +2750,8,14 +2751,6,12 +2752,7,11 +2753,7,10 +2754,8,10 +2755,10,8 +2756,11,8 +2757,11,8 +2758,9,8 +2759,11,7 +2760,10,6 +2761,12,6 +2762,13,6 +2763,12,7 +2764,9,7 +2765,9,6 +2766,9,6 +2767,9,6 +2768,10,6 +2769,12,7 +2770,11,8 +2771,11,9 +2772,14,8 +2773,10,9 +2774,12,9 +2775,11,10 +2776,12,10 +2777,9,10 +2778,11,10 +2779,12,10 +2780,12,12 +2781,8,13 +2782,8,12 +2783,9,13 +2784,8,14 +2785,7,12 +2786,10,12 +2787,8,12 +2788,7,12 +2789,4,11 +2790,4,12 +2791,5,12 +2792,5,12 +2793,5,11 +2794,7,11 +2795,7,11 +2796,7,12 +2797,7,12 +2798,8,12 +2799,7,12 +2800,7,13 +2801,9,13 +2802,6,14 +2803,4,14 +2804,8,14 +2805,8,14 +2806,5,15 +2807,3,16 +2808,4,16 +2809,6,17 +2810,6,16 +2811,7,16 +2812,7,16 +2813,8,17 +2814,7,16 +2815,8,15 +2816,7,15 +2817,5,14 +2818,6,13 +2819,8,13 +2820,7,13 +2821,9,13 +2822,7,13 +2823,7,14 +2824,6,14 +2825,5,13 +2826,5,13 +2827,3,12 +2828,7,12 +2829,6,12 +2830,7,11 +2831,7,12 +2832,9,9 +2833,6,8 +2834,7,7 +2835,5,7 +2836,9,6 +2837,9,6 +2838,6,7 +2839,9,7 +2840,8,7 +2841,9,7 +2842,10,8 +2843,10,9 +2844,9,8 +2845,7,8 +2846,5,9 +2847,6,9 +2848,4,8 +2849,7,8 +2850,9,7 +2851,10,7 +2852,13,7 +2853,11,6 +2854,11,7 +2855,12,9 +2856,10,9 +2857,7,10 +2858,7,10 +2859,7,9 +2860,7,9 +2861,4,9 +2862,5,9 +2863,6,10 2864,7,9 -2865,10,9 -2866,8,9 -2867,5,10 -2868,6,9 -2869,7,9 -2870,7,10 -2871,4,11 -2872,6,12 -2873,6,12 -2874,8,12 -2875,7,14 -2876,7,14 -2877,9,13 -2878,8,14 -2879,9,13 -2880,11,12 -2881,12,12 -2882,11,10 -2883,12,10 -2884,12,9 -2885,13,8 -2886,9,8 -2887,8,9 -2888,10,9 -2889,9,8 -2890,11,8 -2891,12,8 -2892,10,9 -2893,10,9 +2865,6,10 +2866,6,10 +2867,5,9 +2868,5,8 +2869,5,8 +2870,5,8 +2871,6,8 +2872,8,7 +2873,9,7 +2874,10,7 +2875,8,7 +2876,9,8 +2877,9,9 +2878,6,9 +2879,6,9 +2880,5,10 +2881,5,10 +2882,4,11 +2883,4,10 +2884,5,10 +2885,6,8 +2886,6,9 +2887,7,8 +2888,8,8 +2889,8,8 +2890,12,9 +2891,12,9 +2892,13,9 +2893,14,10 2894,10,9 -2895,10,8 -2896,9,8 +2895,7,9 +2896,5,9 2897,8,9 -2898,9,9 -2899,9,9 -2900,11,9 -2901,12,7 -2902,12,6 -2903,11,6 -2904,14,6 -2905,14,6 -2906,14,6 -2907,20,7 -2908,16,7 -2909,13,9 -2910,13,9 -2911,14,9 -2912,13,10 -2913,13,10 -2914,12,10 -2915,12,12 -2916,12,11 -2917,9,11 -2918,9,11 -2919,8,11 +2898,5,9 +2899,5,8 +2900,5,8 +2901,3,9 +2902,3,8 +2903,2,8 +2904,3,7 +2905,3,7 +2906,5,7 +2907,4,7 +2908,5,9 +2909,7,11 +2910,7,12 +2911,4,13 +2912,4,13 +2913,5,13 +2914,2,13 +2915,1,13 +2916,4,12 +2917,2,12 +2918,3,11 +2919,6,11 diff --git a/tests/exp_results/rehab_occupancy.csv b/tests/exp_results/rehab_occupancy.csv index 7fb668d..7d88729 100644 --- a/tests/exp_results/rehab_occupancy.csv +++ b/tests/exp_results/rehab_occupancy.csv @@ -1,21 +1,23 @@ beds,freq,pct,c_pct,prob_delay,1_in_n_delay -2,1,0.000547945205479452,0.000547945205479452,1.0,1.0 -3,8,0.004383561643835616,0.004931506849315068,0.8888888888888888,1.0 -4,35,0.019178082191780823,0.02410958904109589,0.7954545454545454,1.0 -5,47,0.025753424657534246,0.04986301369863014,0.5164835164835164,2.0 -6,129,0.07068493150684932,0.12054794520547946,0.5863636363636364,2.0 -7,229,0.12547945205479452,0.24602739726027398,0.5100222717149221,2.0 -8,331,0.18136986301369862,0.4273972602739726,0.4243589743589743,2.0 -9,263,0.1441095890410959,0.5715068493150686,0.2521572387344199,4.0 -10,236,0.1293150684931507,0.7008219178082192,0.18451915559030493,5.0 -11,183,0.10027397260273972,0.801095890410959,0.12517099863201092,8.0 -12,116,0.06356164383561644,0.8646575342465754,0.07351077313054498,14.0 -13,107,0.05863013698630137,0.9232876712328768,0.06350148367952523,16.0 -14,41,0.022465753424657533,0.9457534246575343,0.023754345307068363,42.0 -15,23,0.012602739726027398,0.9583561643835617,0.013150371640937677,76.0 -16,29,0.01589041095890411,0.9742465753424658,0.016310461192350956,61.0 -17,19,0.010410958904109589,0.9846575342465754,0.010573177518085697,95.0 -18,12,0.006575342465753425,0.9912328767123288,0.006633499170812604,151.0 -19,7,0.0038356164383561643,0.995068493150685,0.0038546255506607926,259.0 -20,4,0.002191780821917808,0.9972602739726029,0.0021978021978021974,455.0 -21,5,0.0027397260273972603,1.0000000000000002,0.00273972602739726,365.0 +1,7,0.0038356164383561643,0.0038356164383561643,1.0,1.0 +2,5,0.0027397260273972603,0.006575342465753425,0.41666666666666663,2.0 +3,26,0.014246575342465753,0.020821917808219178,0.6842105263157895,1.0 +4,64,0.03506849315068493,0.05589041095890411,0.6274509803921569,2.0 +5,113,0.06191780821917808,0.1178082191780822,0.5255813953488372,2.0 +6,153,0.08383561643835616,0.20164383561643834,0.4157608695652174,2.0 +7,235,0.12876712328767123,0.33041095890410954,0.3897180762852405,3.0 +8,203,0.11123287671232877,0.44164383561643833,0.2518610421836229,4.0 +9,242,0.1326027397260274,0.5742465753424657,0.23091603053435117,4.0 +10,227,0.12438356164383561,0.6986301369863013,0.17803921568627454,6.0 +11,153,0.08383561643835616,0.7824657534246574,0.10714285714285715,9.0 +12,135,0.07397260273972603,0.8564383561643835,0.08637236084452976,12.0 +13,87,0.04767123287671233,0.9041095890410958,0.05272727272727273,19.0 +14,65,0.03561643835616438,0.9397260273972602,0.037900874635568516,26.0 +15,28,0.015342465753424657,0.9550684931506849,0.016064257028112452,62.0 +16,32,0.017534246575342465,0.9726027397260273,0.018028169014084508,55.0 +17,20,0.010958904109589041,0.9835616438356163,0.011142061281337049,90.0 +18,3,0.0016438356164383563,0.9852054794520546,0.0016685205784204675,599.0 +19,13,0.007123287671232876,0.9923287671232874,0.007178354500276092,139.0 +20,9,0.004931506849315068,0.9972602739726025,0.004945054945054946,202.0 +21,2,0.001095890410958904,0.9983561643835615,0.0010976948408342481,911.0 +22,3,0.0016438356164383563,0.9999999999999998,0.0016438356164383567,608.0 From ec61d50f79aa7a860ca0bc145b31ca87f1250535 Mon Sep 17 00:00:00 2001 From: amyheather Date: Thu, 7 Aug 2025 13:32:28 +0100 Subject: [PATCH 5/9] feat(inputs): add data dictionary (adapted from old but JSON-style) --- inputs/data_dictionary.md | 59 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 inputs/data_dictionary.md diff --git a/inputs/data_dictionary.md b/inputs/data_dictionary.md new file mode 100644 index 0000000..2748567 --- /dev/null +++ b/inputs/data_dictionary.md @@ -0,0 +1,59 @@ +# Data Dictionary: `parameters` JSON + +## Top-level key: `simulation_parameters` + +Type: `object` + +Description: Maps parameter names (str) to a specification describing how to sample from a statistical distribution for this metric in the simulation. + +## Structure summary + +Each item under `simulation_parameters` is itself an object with: + +* `class_name`: The name of the distribution class to use. +* `params`: An object containing parameters required by that distribution. + +## Parameter specification table + +| Field | Data type | Description | Example/Allowed values | +| - | - | - | - | +| Parameter name | str (object key) | Description name for the parameter: `__` | `asu_arrival_stroke`, `rehab_los_other`, `asu_routing_tia` | +| `class_name` | str | Statistical distribution for the parameter | `Exponential`, `Lognormal`, `DiscreteEmpricial` | +| `params ` | Object | Dictionary of parameters required to instantiate the distribution | See subsequent rows per distribution type | + +## Distribution-specific `params` field + +| `class_name` | Parameter key(s) | Data type | Description | Example values | +| - | - | - | - | - | +| `Exponential` | mean | float | Mean of exponential distribution | `1.2`, `9.3` | +| `Lognormal` | mean, stdev | float | Mean and standard deviation of lognormal distribution | `mean: 7.4`, `stdev: 8.61` | +| `DiscreteEmpirical` | values, freq | list (str/float) | Possible discrete values; corresponding probabilities or frequencies | `values: ["rehab", "esd", "other"]`, `freq: [0.24, 0.13, 0.63]` | + +## Glossary + +### Unit + +* `asu`: Acute Stroke Unit +* `rehab`: Rehabilitation Unit + +### Metric + +* `arrival`: Interarrival time (days between admissions) +* `los`: Length of stay (days in unit) +* `routing`: Probabilities of routing/discharge + +### Type + +For `iat`/`los`: + +* `stroke`: Stroke patients +* `tia`: Transient ischaemic attack patients +* `neuro`: Complex neurological patients +* `other`: Other patient types +* `stroke_noesd`, `stroke_esd`: Stroke patients split by whether they were transferred to early supported discharge (ESD). + +For `routing`: + +* `[diagnosis]_rehab`: Probability of transferring to rehabilitation unit +* `[diagnosis]_esd`: Probability of early supported discharge (ESD). +* `[diagnosis]_other`: Probability of other discharge pathways \ No newline at end of file From 067851cc87925f9ff9447ab22d816dae7c42dcb2 Mon Sep 17 00:00:00 2001 From: amyheather Date: Thu, 14 Aug 2025 14:03:43 +0100 Subject: [PATCH 6/9] build(env): add pytest-cov and genbadge --- environment.yaml | 2 ++ requirements.txt | 2 ++ 2 files changed, 4 insertions(+) diff --git a/environment.yaml b/environment.yaml index 6ee8ca8..99af64c 100644 --- a/environment.yaml +++ b/environment.yaml @@ -14,11 +14,13 @@ dependencies: - plotly_express=0.4.1 - pylint=3.3.4 - pytest=8.3.4 + - pytest-cov=6.2.1 - pytest-xdist=3.6.1 - python=3.13.1 - rich=13.9.4 - simpy=4.1.1 - pip: + - genbadge==1.1.2 - kaleido==1.0.0 - sim-tools==0.10.0 - -e .[dev] diff --git a/requirements.txt b/requirements.txt index 71b6283..d12ed1c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,4 @@ +genbadge==1.1.2 ipykernel==6.29.5 jinja2==3.1.5 joblib==1.4.2 @@ -11,6 +12,7 @@ pip==25.0 plotly_express==0.4.1 pylint==3.3.4 pytest==8.3.4 +pytest-cov==6.2.1 pytest-xdist==3.6.1 rich==13.9.4 simpy==4.1.1 From 26c41d7d2d309d10c433e30e7d09fe12b37056ea Mon Sep 17 00:00:00 2001 From: amyheather Date: Thu, 14 Aug 2025 14:04:24 +0100 Subject: [PATCH 7/9] docs(contributing): improved contributing and add code of conduct (#20) --- CODE_OF_CONDUCT.md | 128 ++++++++++++++++++++++++++++++++++++++++ CONTRIBUTING.md | 143 ++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 263 insertions(+), 8 deletions(-) create mode 100644 CODE_OF_CONDUCT.md diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..4455894 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,128 @@ + +# Contributor Covenant Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, caste, color, religion, or sexual +identity and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +- Demonstrating empathy and kindness toward other people +- Being respectful of differing opinions, viewpoints, and experiences +- Giving and gracefully accepting constructive feedback +- Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +- Focusing on what is best not just for us as individuals, but for the overall + community + +Examples of unacceptable behavior include: + +- The use of sexualized language or imagery, and sexual attention or advances of + any kind +- Trolling, insulting or derogatory comments, and personal or political attacks +- Public or private harassment +- Publishing others' private information, such as a physical or email address, + without their explicit permission +- Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, and will communicate reasons for moderation +decisions when appropriate. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official email address, +posting via an official social media account, or acting as an appointed +representative at an online or offline event. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to the community leaders responsible for enforcement at +[INSERT CONTACT METHOD]. +All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the +reporter of any incident. + +## Enforcement Guidelines + +Community leaders will follow these Community Impact Guidelines in determining +the consequences for any action they deem in violation of this Code of Conduct: + +### 1. Correction + +**Community Impact**: Use of inappropriate language or other behavior deemed +unprofessional or unwelcome in the community. + +**Consequence**: A private, written warning from community leaders, providing +clarity around the nature of the violation and an explanation of why the +behavior was inappropriate. A public apology may be requested. + +### 2. Warning + +**Community Impact**: A violation through a single incident or series of +actions. + +**Consequence**: A warning with consequences for continued behavior. No +interaction with the people involved, including unsolicited interaction with +those enforcing the Code of Conduct, for a specified period of time. This +includes avoiding interactions in community spaces as well as external channels +like social media. Violating these terms may lead to a temporary or permanent +ban. + +### 3. Temporary Ban + +**Community Impact**: A serious violation of community standards, including +sustained inappropriate behavior. + +**Consequence**: A temporary ban from any sort of interaction or public +communication with the community for a specified period of time. No public or +private interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, is allowed during this period. +Violating these terms may lead to a permanent ban. + +### 4. Permanent Ban + +**Community Impact**: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behavior, harassment of an +individual, or aggression toward or disparagement of classes of individuals. + +**Consequence**: A permanent ban from any sort of public interaction within the +community. + +## Attribution + +This Code of Conduct is adapted from the +[Contributor Covenant](https://www.contributor-covenant.org/), version 2.1, +available at +. + +Community Impact Guidelines were inspired by +[Mozilla's code of conduct enforcement ladder](https://github.com/mozilla/inclusion). + +For answers to common questions about this code of conduct, see the FAQ at +. Translations are available at +. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3c5dc47..6e69202 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,16 +1,143 @@ # Contributing -🎉 Thank you for checking out our project! 🎉 +Thank you for your interest in contributing! 🤗 -This file contains guidelines on how to get in touch with us and potentially contribute towards this repository. +This file covers: -## Email +* 🐞 Workflow for bug reports, feature requests and documentation improvements +* 🚀 Workflow for code contributions (bug fixes, enhancements) +* 🛠️ Development and testing +* 📦 Updating the package +* 🤝 Code of conduct -You can contact the researchers on this project using the provided email addresses in `CITATION.cff`. +
-## Suggesting changes +## 🐞 Workflow for bug reports, feature requests and documentation improvements -If you spot an issue, you are welcome to raise this either by: +Before opening an issue, please search [existing issues](https://github.com/pythonhealthdatascience/pydesrap_stroke/issues) to avoid duplicates. If an issue exists, you can add a comment with additional details and/or upvote (👍) the issue. If there is not an existing issue, please open one and provide as much detail as possible. -* Using **GitHub Issues**. -* **Forking** the repository, make your changes and submit a pull request for review. \ No newline at end of file +* **For feature requests or documentation improvements**, please describe your suggestion clearly. +* **For bugs**, include: + * Steps to reproduce. + * Expected and actual behaviour. + * Environment details (operating system, python version, dependencies). + * Relevant files (e.g. problematic `.qmd` files). + +### Handling bug reports (for maintainers): + +* Confirm reproducibility by following the reported steps. +* Label the issue appropriately (e.g. `bug`). +* Request additional information if necessary. +* Link related issues or pull requests. +* Once resolved, close the issue with a brief summary of the fix. + +
+ +## 🚀 Workflow for code contributions (bug fixes, enhancements) + +1. Fork the repository and clone your fork. + +2. Create a new branch for your feature or fix: + +```{.bash} +git checkout -b my-feature +``` + +3. Make your changes and commit them with clear, descriptive messages using the [conventional commits standard](https://www.conventionalcommits.org/en/v1.0.0/). + +4. Push your branch to your fork: + +```{.bash} +git push origin my-feature +``` + +5. Open a pull request against the main branch. Describe your changes and reference any related issues. + +
+ +## 🛠️ Development and testing + +### Dependencies + +Set up the Python environment using `conda` (recommended): + +``` +conda env create --file environment.yaml +conda activate +``` + +There is also a `requirements.txt` file which can be used to set up the environment with `virtualenv`, but this won't fetch a specific version of Python - so please note the version listed in `environment.yaml`. + +
+ +### Docstrings + +We follow the [numpydoc](https://numpydoc.readthedocs.io/en/latest/format.html) style for docstrings. + +
+ +### Tests + +Run all tests (with coverage): + +```{.bash} +pytest --cov +``` + +Run tests in parallel: + +```{.bash} +pytest -n auto +``` + +Run an individual test file: + +```{.bash} +pytest tests/testfile.py +``` + +Run a specific test: + +```{.bash} +pytest tests/testfile.py::testname +``` + +
+ +### Linting + +Lint all files: + +```{.bash} +bash lint.sh +``` + +Lint a specific `.py` file: + +```{.bash} +pylint simulation/model.py +``` + +Lint a specific `.ipynb` file: + +```{.bash} +nbqa pylint notebooks/analysis.ipynb +``` + +
+ +## 📦 Updating the package + +If you are a maintainer and need to publish a new release: + +1. Update the `CHANGELOG.md`. + +2. Update the version number in `simulation/__init__.py` and `CITATION.cff`, and update the date in `CITATION.cff`. + +3. Create a release on GitHub, which will automatically archive to Zenodo. + +
+ +## 🤝 Code of conduct + +Please be respectful and considerate. See the [code of conduct](https://github.com/pythonhealthdatascience/pydesrap_stroke/blob/main/CODE_OF_CONDUCT.md) for details. \ No newline at end of file From bb67ac5929ce25019041d48a97480ded5f51941e Mon Sep 17 00:00:00 2001 From: amyheather Date: Thu, 14 Aug 2025 14:04:42 +0100 Subject: [PATCH 8/9] ci(tests): add choice of OS + coverage --- .github/workflows/tests.yaml | 126 ++++++++++++++++++++--------------- 1 file changed, 71 insertions(+), 55 deletions(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 8c40d97..ed94595 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -1,42 +1,47 @@ -# This file runs the tests in `tests/` -# They will run in parallel, and run on three operating systems: -# Ubuntu, Windows and Mac. - name: tests on: push: branches: [main] workflow_dispatch: + inputs: + operating_systems: + description: 'Operating systems to test on' + type: choice + default: 'all' + options: + - all + - ubuntu-latest + - windows-latest + - macos-latest jobs: - - # Run tests on Ubuntu - tests-on-ubuntu: + # Generate matrix based on input + setup-matrix: runs-on: ubuntu-latest + outputs: + matrix: ${{ steps.set-matrix.outputs.matrix }} steps: - - - name: Check out repository - uses: actions/checkout@v4 - - - name: Install python and dependencies - uses: actions/setup-python@v4 - with: - python-version: '3.13' - cache: 'pip' - - run: pip install -r requirements.txt - - - name: Run tests - run: pytest - - - name: List the environment variables - run: env - - # Run tests on Windows - tests-on-windows: - runs-on: windows-latest + - name: Set matrix + id: set-matrix + run: | + if [[ "${{ inputs.operating_systems }}" == "all" || "${{ github.event_name }}" == "push" ]]; then + echo 'matrix=["ubuntu-latest", "windows-latest", "macos-latest"]' >> $GITHUB_OUTPUT + else + echo 'matrix=["${{ inputs.operating_systems }}"]' >> $GITHUB_OUTPUT + fi + + # Run tests using matrix strategy + tests: + permissions: + contents: write + needs: setup-matrix + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: ${{ fromJSON(needs.setup-matrix.outputs.matrix) }} + steps: - - name: Check out repository uses: actions/checkout@v4 @@ -45,31 +50,42 @@ jobs: with: python-version: '3.13' cache: 'pip' - - run: python -m pip install -r requirements.txt - - - name: Run tests - run: pytest - - - name: List the environment variables - run: env - - # Run tests on Mac - tests-on-macos: - runs-on: macos-latest - steps: - - - name: Check out repository - uses: actions/checkout@v4 - - - name: Install python and dependencies - uses: actions/setup-python@v4 + + - name: Install requirements (Windows) + if: runner.os == 'Windows' + run: python -m pip install -r requirements.txt + + - name: Install requirements (Unix) + if: runner.os != 'Windows' + run: pip install -r requirements.txt + + - name: Run tests (with coverage for linux) + run: | + if [ "${{ matrix.os }}" = "ubuntu-latest" ]; then + pytest --cov --cov-report=xml + else + pytest + fi + shell: bash + + - name: Generate coverage badge (for-the-badge style) + if: matrix.os == 'ubuntu-latest' + run: genbadge coverage -i coverage.xml -o images/coverage-badge.svg + + - name: Upload coverage badge + if: matrix.os == 'ubuntu-latest' + uses: actions/upload-artifact@v4 with: - python-version: '3.13' - cache: 'pip' - - run: pip install -r requirements.txt - - - name: Run tests - run: pytest - - - name: List the environment variables - run: env \ No newline at end of file + name: coverage-badge + path: images/coverage-badge.svg + + - name: Commit coverage badge + if: matrix.os == 'ubuntu-latest' + run: | + git config --local user.email "github-actions[bot]@users.noreply.github.com" + git config --local user.name "github-actions[bot]" + git add images/coverage-badge.svg + git commit -m "ci(tests): update coverage badge" || echo "No changes to commit" + git push + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file From 1987cebea3800710aff50697997bf4d02f75d1de Mon Sep 17 00:00:00 2001 From: amyheather Date: Thu, 14 Aug 2025 14:05:04 +0100 Subject: [PATCH 9/9] docs(readme): add coverage badge, correct intro sentence, simplify installation, and add community section --- README.md | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 8678e45..eb1064b 100644 --- a/README.md +++ b/README.md @@ -7,10 +7,11 @@ [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.15574906.svg)](https://doi.org/10.5281/zenodo.15574906) [![Tests](https://github.com/pythonhealthdatascience/pydesrap_stroke/actions/workflows/tests.yaml/badge.svg)](https://github.com/pythonhealthdatascience/pydesrap_stroke/actions/workflows/tests.yaml) [![Linting](https://github.com/pythonhealthdatascience/pydesrap_stroke/actions/workflows/lint.yaml/badge.svg)](https://github.com/pythonhealthdatascience/pydesrap_stroke/actions/workflows/lint.yaml) +[![Coverage](https://github.com/pythonhealthdatascience/pydesrap_stroke/raw/main/images/coverage-badge.svg)](https://github.com/pythonhealthdatascience/pydesrap_stroke/actions/workflows/tests.yaml) -This repository applies the [Python DES RAP Template](https://github.com/pythonhealthdatascience/pydesrap_mms) to a real-life example: +This repository provides a reproducible analytical pipeline (RAP) that implements a real-life stroke service capacity planning model in python. It serves as a practical example, fully reproducible and aligned with RAP principles, based on the following study: > Monks T, Worthington D, Allen M, Pitt M, Stein K, James MA. A modelling tool for capacity planning in acute and community stroke services. BMC Health Serv Res. 2016 Sep 29;16(1):530. doi: [10.1186/s12913-016-1789-4](https://doi.org/10.1186/s12913-016-1789-4). PMID: 27688152; PMCID: PMC5043535. @@ -29,16 +30,14 @@ git clone https://github.com/pythonhealthdatascience/pydesrap_stroke.git cd pydesrap_stroke ``` -Use the provided `environment.yaml` file to set up a Python environment with `conda`: +Set up the Python environment using `conda` (recommended): ``` conda env create --file environment.yaml conda activate ``` -The provided `environment.yaml` file is a snapshot of the environment used when creating the repository, including specific package versions. You can update this file if necessary, but be sure to test that everything continues to work as expected after any updates. Also note that some dependencies are not required for modelling, but instead served other purposes, like running `.ipynb` files and linting. - -As an alternative, a `requirements.txt` file is provided which can be used to set up the environment with `virtualenv`. This is used by GitHub actions, which run much faster with a virtual environment than a conda environment. However, we recommend locally installing the environment using conda, as it will also manage the Python version for you. If using `virtualenv`, it won't fetch a specific version of Python - so please note the version listed in `environment.yaml`. +There is also a `requirements.txt` file which can be used to set up the environment with `virtualenv`, but this won't fetch a specific version of Python - so please note the version listed in `environment.yaml`.
@@ -114,6 +113,12 @@ The other notebooks generate results for tests and illustrate other functionalit
+## Community + +Curious about contributing? Check out the [contributing guidelines](CONTRIBUTING.md) to learn how you can help. + +
+ ## Citation For this applied example, please cite either: