From e6e8d7d21c50e39092d337d37acb354a33a533d2 Mon Sep 17 00:00:00 2001 From: Ram Ganapathy Date: Wed, 31 Jan 2024 11:31:10 -0800 Subject: [PATCH] sdtm.oak SDTM spec, Algorithms Documentation and template r code for cm domain (#30) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * All about metadata Vignette * CM domain pseudocode * Update Description file * Algorithms Article * styler updates * styler updates * review comments & pipeline failures * description file update * pipeline failures * address pipeline failure * lint errors. * Fix lintr link error * Updates * add cm test data * Styler update * lint issue * #17 fix typo, add info, add cm SDTM example * Automatic renv profile update. * Automatic renv profile update. --------- Co-authored-by: Adam Foryś Co-authored-by: edgar-manukyan Co-authored-by: edgar-manukyan --- .github/CONTRIBUTING.md | 138 +------- DESCRIPTION | 22 +- _pkgdown.yml | 6 +- inst/cm_domain/cm_raw_data.csv | 15 + inst/cm_domain/cm_sdtm.csv | 7 + inst/cm_domain/cm_sdtm_oak_ct.csv | 35 ++ inst/cm_domain/cm_sdtm_oak_spec.csv | 49 +++ inst/cm_domain/create_cm_template.R | 233 +++++++++++++ man/sdtm.oak-package.Rd | 12 +- renv.lock | 4 +- renv/profiles/4.2/renv.lock | 4 +- renv/profiles/4.3/renv.lock | 4 +- staged_dependencies.yaml | 1 - vignettes/articles/algo_sub_algo_combo.jpg | Bin 0 -> 97016 bytes vignettes/articles/algorithms.Rmd | 214 ++++++++++++ vignettes/articles/reusable_algorithms.jpg | Bin 0 -> 173421 bytes vignettes/articles/study_sdtm_spec.Rmd | 361 +++++++++++++++++++++ 17 files changed, 955 insertions(+), 150 deletions(-) create mode 100644 inst/cm_domain/cm_raw_data.csv create mode 100644 inst/cm_domain/cm_sdtm.csv create mode 100644 inst/cm_domain/cm_sdtm_oak_ct.csv create mode 100644 inst/cm_domain/cm_sdtm_oak_spec.csv create mode 100644 inst/cm_domain/create_cm_template.R create mode 100644 vignettes/articles/algo_sub_algo_combo.jpg create mode 100644 vignettes/articles/algorithms.Rmd create mode 100644 vignettes/articles/reusable_algorithms.jpg create mode 100644 vignettes/articles/study_sdtm_spec.Rmd diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 38a9bb2d..ed286ceb 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -1,19 +1,17 @@ # Contribution to {sdtm.oak} -This outlines how to propose a change to the {sdtm.oak} package. For more detailed info -about contributing to {sdtm.oak}, and other [pharmaverse -packages](https://pharmaverse.org/), please see the [development process -guide](https://pharmaverse.github.io/sdtm.oak/CONTRIBUTING.html) -as well as other Developer Guides in the Articles section of the [{admiral} -website](https://pharmaverse.github.io/admiral/index.html) +This outlines how to propose a change to the sdtm.oak package. For more detailed info about contributing to {sdtm.oak}, and other [pharmaverse packages](https://pharmaverse.org/), please see the [Contribution Guide](https://pharmaverse.github.io/admiral/CONTRIBUTING.html) as well as other Developer Guides in the Articles section of the [{admiraldev} website](https://pharmaverse.github.io/admiraldev/). + +Please note that we try to align to best practices used in other R packages' development processes - so veteran developers should be familiar with our processes. However, we do deviate slightly from some best practices and we advise all new contributors to review our package documentation accordingly. + # Basics - * For each new contribution, the user creates an issue on the issue tab on [GitHub](https://github.com/pharmaverse/oak/issues) to put it in our backlog. + * For each new contribution, the user creates an issue on the issue tab on [GitHub](https://github.com/pharmaverse/sdtm.oak/issues) to put it in our backlog. The issues can range from bug identification and/or fixes, enhancements to functions, documentation, tests or new features. * We advise you to contact us when an -[issue](https://github.com/pharmaverse/oak/issues) is created via +[issue](https://github.com/pharmaverse/sdtm.oak/issues) is created via [Slack](https://oakgarden.slack.com) (If you don't have access, use this [link](https://join.slack.com/t/oakgarden/shared_invite/zt-204sf8w5c-Vxl71cI~WAYhsMLbHGxeMw) to join). We can discuss details or align expectations if you are not familiar @@ -21,126 +19,4 @@ with the `{sdtm.oak}` philosophy and programming strategy. The team will try to review the issues within the next backlog meeting and give some initial feedback. Since we are not a 100% fully resourced software development team it might be that some issues will take longer to respond to depending on the amount -of overall issues. - - * Familiarize yourself with our [programming strategy](https://pharmaverse.github.io/admiraldev/articles/programming_strategy.html), guidance for [GitHub usage](https://pharmaverse.github.io/admiraldev/articles/git_usage.html) and [unit testing](https://pharmaverse.github.io/admiraldev/articles/unit_test_guidance.html). - - * All newly [created issues](https://github.com/pharmaverse/oak/issues) will be -reviewed within the next backlog meeting and the creator will receive an -initial feedback via a comment. Someone from the core development team will -then triage new issues by assigning the appropriate labels (such as “user -request” so we can easily identify new requests). - - * Issues are meant to be taken on by users from the Pharma programming -community. - -# Contribution Model - - -## Type 1 Contribution with Code: - - * First, the user creates an issue or comments on an existing issue to notify -that they’d like to contribute code. - * Follow our development process step-by-step guide. - * We advise to contact an `{sdtm.oak}` core development team directly via [Slack](https://app.slack.com/client/T028PB489D3/C02M8KN8269) before submitting code for complex functionality. - - -## Type 2 Contribution without Code: - - * User creates an issue and ideally contacts an `{sdtm.oak}` team member via [Slack](https://oakgarden.slack.com). - * The `{sdtm.oak}` core development team will contact the issue creator as soon -as possible to discuss further details. - - -See [Contribution to {admiral}](https://pharmaverse.github.io/admiral/articles/contribution_model.html) for additional details. - -# Containers guideline - -This guideline will walk you through the process of setting up and using the Oak image in both GitHub Codespaces and Visual Studio Code's devcontainer functionality. - -## Use GitHub Codespaces - -1. **Prerequisites** : - -* Have a GitHub account. -* The repository you want to open in Codespaces must be under your account or you must have appropriate permissions. - -2. **Open the Repository** : - -* Navigate to the desired GitHub repository on GitHub's website. - -3. **Start Codespaces** : - -* Click on the "Code" button (it has a green color most of the times). -* In the dropdown, you'll find an option named "Open with Codespaces". Click on it. - -4. **Choose or Create a Codespace** : - -* If you've already created a Codespace for this repository, you'll see it listed. You can click on it to open. -* If not, click on the "+ New codespace" button. - -5. **Configure the Environment (If needed)** : - -* Depending on the repository, you might have a `.devcontainer` folder which will define the environment. GitHub Codespaces will use the settings defined here to set up the environment. -* If you need to customize or install additional tools, you can do so once the Codespace is launched. - -6. **Use Codespaces** : - -* Once your environment is set up, you'll have an instance of Visual Studio Code running in your browser, connected to the repository. -* You can now edit, run, and debug your code just like you would in a local environment. - -7. **Close the Codespace** : - -* When you're done, you can close the browser tab/window. -* Remember, you'll be billed (if you're on a paid plan) for the time your Codespace is running, so it's a good idea to stop or delete it if you're not using it. You can do this from the Codespaces tab in your GitHub repository. - -## Use Visual Code devcontainer - -1. **Prerequisites** : - -* Have a Docker and VS Code installed -* linux/arm64 is supported only for R 4.3 - -2. **Install devcontainer extension** : - -* In the left sidebar, click on the extensions icon (it looks like square blocks or a Lego piece). -* In the search bar, type "Dev Containers" to search for the extension. -* From the search results, locate the "Dev Containers" extension provided by Microsoft and click the 'Install' button. - -3. **Open in Container** : - -* In VS Code, use the command palette (`Ctrl+Shift+P` or `Cmd+Shift+P` on macOS) and run the "Dev Containers: Rebuild and Reopen in Container" command. VS Code will then set up the devcontainer using the Oak image. - -4. **Using the Devcontainer** : - -* Once the environment is set up, you can start coding in VS Code as if you were in a local environment, but with the capabilities and tools provided by the Oak image. - -## Use docker run - -1. **Prerequisites** : - -* Have a docker installed - -2. **Example command** : - -``` -docker run --rm -d \ - --name oak-dev \ - -p 127.0.0.1:8888:8787 \ - -e ROOT=true -e DISABLE_AUTH=true \ - -v "$(pwd):/home/rstudio/oak" \ - ghcr.io/pharmaverse/sdtm.oak-4.3:latest -``` - -This command is used to start a new container from a Docker image. Here's a breakdown of the parameters used: - -* docker run: This is the basic command to start a new container from a Docker image. -* --rm: This option ensures that the container is removed automatically when it's stopped. This is useful if you don’t want to keep the container around once you're done with it, helping to save storage space. -* -d: This option runs the container in detached mode, which means the container runs in the background and doesn't attach to your command line session. -* --name oak-dev: This assigns the name oak-dev to the container. Naming your containers makes them easier to identify and manage. -* -p 127.0.0.1:8888:8787: This maps port 8787 inside the container to port 8888 on the host machine, and binds it to the localhost IP (127.0.0.1). The format is -p ::. This means any traffic directed at port 8888 on your host machine will be forwarded to port 8787 in the container. -* -e ROOT=true -e DISABLE_AUTH=true: These are environment variables being passed into the container. -e denotes that an environment variable is being set. In this case, two environment variables are being set: - * ROOT=true: This likely grants root permissions inside the container. - * DISABLE_AUTH=true: This likely disables authentication when opening RStudio. -* -v "$(pwd):/home/rstudio/oak": This maps a volume (essentially a directory) from the host machine into the container. The $(pwd) is a command that returns the current directory you're in on the host machine. This current directory is then mapped to /home/rstudio/oak inside the container. This is useful for sharing files between your host machine and the container. -* ghcr.io/pharmaverse/sdtm.oak-4.3:latest: This is the name of the Docker image that the container will be created from. It's pulled from the GitHub Container Registry (ghcr.io) and the image belongs to the pharmaverse repository. The image name is sdtm.oak-4.3 and the tag being used is latest. There are image for three versions available. +of overall issues. \ No newline at end of file diff --git a/DESCRIPTION b/DESCRIPTION index 60c5e227..bd5e53b6 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -3,17 +3,23 @@ Type: Package Title: SDTM Data Transformation Engine Version: 0.0.0.9001 Authors@R: c( - person("Omar", "Garcia", email = "ogcalderon@cdisc.org", role = c("aut", "cre")), - person("Rammprasad", "Ganapathy", role = "aut"), + person("Rammprasad", "Ganapathy", role = c("aut", "cre"), + email = "ganapathy.rammprasad@gene.com"), + person("Adam", "Forys", role = "aut"), + person("Edgar", "Manukyan", role = "aut"), + person("Rosemary", "Li", role = "aut"), + person("Preetesh", "Parikh", role = "aut"), + person("Lisa", "Houterloot", role = "aut"), + person("Yogesh", "Gupta", role = "aut"), + person("Omar", "Garcia", email = "ogcalderon@cdisc.org", role = "aut"), person("Ramiro", "Magno", email = "rmagno@pattern.institute", role = "aut", comment = c(ORCID = "0000-0001-5226-3441")), person("Pattern Institute", role = c("cph", "fnd")), person("F. Hoffmann-La Roche AG", role = c("cph", "fnd")), person("Pfizer Inc", role = c("cph", "fnd")) ) -Description: An EDC and Data Standard agnostic SDTM data transformation engine - that automates the transformation of raw clinical data in ODM format to SDTM - based on standard mapping algorithms. +Maintainer: Rammprasad Ganapathy +Description: An EDC and Data Standard-agnostic SDTM data transformation engine designed for SDTM programming in R. Powered by metadata sdtm.oak can automate the conversion of raw clinical data to SDTM through standardized mapping algorithms. SDTM is one of the required standards for data submission to FDA (U.S.) and PMDA (Japan). SDTM standards are implemented in accordance with the SDTM Implemetation guide as defined by CDISC Language: en-US License: Apache License (>= 2) BugReports: https://github.com/pharmaverse/sdtm.oak/issues @@ -26,9 +32,9 @@ Depends: R (>= 4.2) Imports: admiraldev, dplyr (>= 1.0.0), - purrr (>= 1.0.0), - rlang (>= 1.0.0), - stringr, + purrr (>= 0.3.3), + rlang (>= 0.4.4), + stringr (>= 1.4.0), tibble Suggests: knitr, diff --git a/_pkgdown.yml b/_pkgdown.yml index d71acfb9..d0716d79 100644 --- a/_pkgdown.yml +++ b/_pkgdown.yml @@ -1,4 +1,8 @@ -url: ~ +url: https://pharmaverse.github.io/sdtm.oak + template: bootstrap: 5 + bootswatch: flatly +navbar: + title: "sdtm.oak" diff --git a/inst/cm_domain/cm_raw_data.csv b/inst/cm_domain/cm_raw_data.csv new file mode 100644 index 00000000..5ffc75bf --- /dev/null +++ b/inst/cm_domain/cm_raw_data.csv @@ -0,0 +1,15 @@ +PATNUM,SUBJSTAT,SITENM,INSTANCE,INSTRN,FOLDER,FOLDERL,FOLDERSQ,FORM,FORML,DATAPGID,PGREPNUM,RECORDDT,RECORDID,RECPOS,RECSTAT,MDNUM,MDNUM_RAW,MDREC,MDRAW,MDIND,MDBDR,MDBDTU,MDBTM,MDBTMU,MDPRIOR,MDEDR,MDEDT,MDETM,MDETMU,MDONG,DOS,DOSU,DOSUV,MDFORM,MDRTE,MDFRQ,MDPROPH,TERMID,SRCLN,RAVRFID,CMMODIFY,CMDRG,CMDRGCD,CMDECOD,CMPNCD,SPLIT,OMIT,ACTTYP,ACTTEXT,CMDICT,CMCLAS,CMCLASCD,CMATC4,CMATC4CD,CMATC3,CMATC3CD,CMATC2,CMATC2CD,CMATC1,CMATC1CD,CLASSNUM +375,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,56379253,0,,111885785,1,N,1,1,No,BABY ASPIRIN,,,1,,1,1,,,,0,1,10,mg,MG,Tablet,PO (Oral),QD (Every Day),0,109576058,20,5652739,BABY ASPIRIN,BABY ASPIRIN,2701701,ACETYLSALICYLIC ACID,2701001,,,,,"WHODRUG GLOBAL B3 MARCH 1, 2021",OTHER AGENTS FOR LOCAL ORAL TREATMENT,A01AD,OTHER AGENTS FOR LOCAL ORAL TREATMENT,A01AD,STOMATOLOGICAL PREPARATIONS,A01A,STOMATOLOGICAL PREPARATIONS,A01,ALIMENTARY TRACT AND METABOLISM,A,1 +375,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,56379253,0,,111969387,2,N,2,2,No,CORTISPORIN,NAUSEA,15-Sep-20,0,,1,0,,,,0,1,50,g,G,Pill,PO (Oral),,0,105820348,28,5533807,CORTISPORIN (UNITED STATES),CORTICOSTEROIDS AND ANTIINFECTIVES IN COMBINATION,90104001001,CORTICOSTEROIDS AND ANTIINFECTIVES IN COMBINATION,90104001001,,,COUNTRY,APPLY SITE COUNTRY TO TERM,"WHODRUG GLOBAL B3 MARCH 1, 2021",CORTICOSTEROIDS AND ANTIINFECTIVES IN COMBINATION,S03CA,CORTICOSTEROIDS AND ANTIINFECTIVES IN COMBINATION,S03CA,CORTICOSTEROIDS AND ANTIINFECTIVES IN COMBINATION,S03C,OPHTHALMOLOGICAL AND OTOLOGICAL PREPARATIONS,S03,SENSORY ORGANS,S,1 +376,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,56407664,0,,111939965,1,N,1,1,No,ASPIRIN,ANEMIA,17-Feb-21,0,8:00,0,0,17-Feb-21,2/17/21,,0,0,,,,,,,0,80619660,8,4297014,ASPIRIN,ASPIRIN [ACETYLSALICYLIC ACID],2701004,ACETYLSALICYLIC ACID,2701001,,,,,"WHODRUG GLOBAL B3 MARCH 1, 2021",OTHER AGENTS FOR LOCAL ORAL TREATMENT,A01AD,OTHER AGENTS FOR LOCAL ORAL TREATMENT,A01AD,STOMATOLOGICAL PREPARATIONS,A01A,STOMATOLOGICAL PREPARATIONS,A01,ALIMENTARY TRACT AND METABOLISM,A,1 +377,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,56408736,0,,111942855,1,N,1,1,No,DIPHENHYDRAMINE HCL,NAUSEA,4-Oct-20,0,9:00,0,0,,,,0,1,50,mg,MG,Capsule,PO (Oral),BID (Twice a Day),0,79751919,3,4240092,DIPHENHYDRAMINE HCL,DIPHENHYDRAMINE HCL,402246,DIPHENHYDRAMINE HYDROCHLORIDE,402001,,,,,"WHODRUG GLOBAL B3 MARCH 1, 2021",AMINOALKYL ETHERS,R06AA,AMINOALKYL ETHERS,R06AA,ANTIHISTAMINES FOR SYSTEMIC USE,R06A,ANTIHISTAMINES FOR SYSTEMIC USE,R06,RESPIRATORY SYSTEM,R,1 +377,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,56408736,0,,129972536,2,N,2,2,No,PARCETEMOL,PYREXIA,20-Jan-20,0,10:00,0,0,20-Jan-20,1/20/20,10:00,0,0,,mg,MG,Capsule,PO (Oral),BID (Twice a Day),1,129972536,2,,,,,,,,,,,,,,,,,,,,,, +377,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,56408736,0,,129972541,3,N,3,3,No,VOMIKIND,VOMITINGS,UN UNK 2019,1,,1,0,UN UNK 2019,6/15/19,,1,0,,Tablet,TABLET,,PO (Oral),PRN (As Needed),1,129972541,3,,,,,,,,,,,,,,,,,,,,,, +377,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,56408736,0,,129972568,4,N,5,5,No,ZENFLOX OZ,DIARHHEA,20 UNK 2019,0,10:00,0,0,20 UNK 2019,6/15/19,,1,0,,mL,ML,Injection,IM (Intramuscular),PRN (As Needed),1,129972568,4,,,,,,,,,,,,,,,,,,,,,, +378,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,63059916,0,,126472439,4,N,4,4,No,AMITRYPTYLINE,COLD,UN UNK 2020,0,,1,1,UN UNK 2020,6/15/20,,1,0,12,g,G,Inhalant,IA (Intra-arterial),QD (Every Day),0,81845879,6,4382628,AMITRIPTYLINE,AMITRIPTYLINE,2201001,AMITRIPTYLINE,2201001,,,SPELLING UPDATE,AMITRIPTYLINE,"WHODRUG GLOBAL B3 MARCH 1, 2021",DRUGS FOR URINARY FREQUENCY AND INCONTINENCE,G04BD,DRUGS FOR URINARY FREQUENCY AND INCONTINENCE,G04BD,UROLOGICALS,G04B,UROLOGICALS,G04,GENITO URINARY SYSTEM AND SEX HORMONES,G,1 +378,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,63059916,0,,126472436,1,N,1,1,No,BENADRYL,FEVER,26-Jan-20,0,9:00,0,0,26-Jan-20,1/26/20,7:00,0,0,100,mg,MG,Capsule,PO (Oral),BID (Twice a Day),1,95547017,4,5211852,BENADRYL (UNITED STATES),BENADRYL [DIPHENHYDRAMINE HYDROCHLORIDE],402002,DIPHENHYDRAMINE HYDROCHLORIDE,402001,,,COUNTRY,APPLY SITE COUNTRY TO TERM,"WHODRUG GLOBAL B3 MARCH 1, 2021",AMINOALKYL ETHERS,R06AA,AMINOALKYL ETHERS,R06AA,ANTIHISTAMINES FOR SYSTEMIC USE,R06A,ANTIHISTAMINES FOR SYSTEMIC USE,R06,RESPIRATORY SYSTEM,R,1 +378,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,63059916,0,,126472437,2,N,2,2,Yes,DIPHENHYDRAMINE HYDROCHLORIDE,LEG PAIN,28-Jan-20,1,,1,1,1-Feb-20,2/1/20,,1,1,100,Capsule,CAPSULE,Capsule,Unknown,QD (Every Day),0,94095723,13,5084095,DIPHENHYDRAMINE HYDROCHLORIDE,DIPHENHYDRAMINE HYDROCHLORIDE,402001,DIPHENHYDRAMINE HYDROCHLORIDE,402001,,,,,"WHODRUG GLOBAL B3 MARCH 1, 2021",AMINOALKYL ETHERS,R06AA,AMINOALKYL ETHERS,R06AA,ANTIHISTAMINES FOR SYSTEMIC USE,R06A,ANTIHISTAMINES FOR SYSTEMIC USE,R06,RESPIRATORY SYSTEM,R,1 +378,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,63059916,0,,126472438,3,N,3,3,Yes,TETRACYCLINE,FEVER,12-Feb-20,0,12:12,0,1,18-Feb-20,2/18/20,,0,0,10,mg,MG,Capsule,DE (Transdermal),BID (Twice a Day),1,84246445,6,4537684,TETRACYCLINE,TETRACYCLINE,1701001,TETRACYCLINE,1701001,,,,,"WHODRUG GLOBAL B3 MARCH 1, 2021",ANTIBIOTICS,S01AA,ANTIBIOTICS,S01AA,ANTIINFECTIVES,S01A,OPHTHALMOLOGICALS,S01,SENSORY ORGANS,S,1 +379,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,63059986,0,,126472565,3,N,1,1,No,BENADRYL,COLD,10 UNK 2020,0,,0,0,20 UNK 2020,6/15/20,,0,0,12,IU,IU,Lotion,IJ (Intra-articular), , ,84734661,12,4567194,BENADRYL (UNITED STATES),BENADRYL [DIPHENHYDRAMINE HYDROCHLORIDE],402002,DIPHENHYDRAMINE HYDROCHLORIDE,402001,,,COUNTRY,APPLY SITE COUNTRY TO TERM,"WHODRUG GLOBAL B3 MARCH 1, 2021",AMINOALKYL ETHERS,R06AA,AMINOALKYL ETHERS,R06AA,ANTIHISTAMINES FOR SYSTEMIC USE,R06A,ANTIHISTAMINES FOR SYSTEMIC USE,R06,RESPIRATORY SYSTEM,R,1 +379,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,63059986,0,,126472563,1,N,2,2,No,SOMINEX,COLD,,1,,1,0,,,,1,1,,mL,ML,Liquid,EP (Epidural),PRN (As Needed),0,82746644,5,4580551,SOMINEX (UNITED STATES),SOMINEX [DIPHENHYDRAMINE HYDROCHLORIDE],402060,DIPHENHYDRAMINE HYDROCHLORIDE,402001,,,COUNTRY,APPLY SITE COUNTRY TO TERM,"WHODRUG GLOBAL B3 MARCH 1, 2021",AMINOALKYL ETHERS,R06AA,AMINOALKYL ETHERS,R06AA,ANTIHISTAMINES FOR SYSTEMIC USE,R06A,ANTIHISTAMINES FOR SYSTEMIC USE,R06,RESPIRATORY SYSTEM,R,1 +379,Randomized,TEST SITE,Concomitant Medications,0,MD,Concomitant Medications,15,MD1,Concomitant Medications,63059986,0,,126472564,2,N,3,3,No,ZQUILL,PAIN,,1,,1,0,17-Feb-20,2/17/20,,1,0,5,%,%,Aerosol,OP (Ophthalmic),Q2H (Every 2 Hours),0,99707553,22,5330876,ZZZQUIL,ZZZQUIL,402326,DIPHENHYDRAMINE HYDROCHLORIDE,402001,,,SPELLING UPDATE,ZZZQUIL,"WHODRUG GLOBAL B3 MARCH 1, 2021",AMINOALKYL ETHERS,R06AA,AMINOALKYL ETHERS,R06AA,ANTIHISTAMINES FOR SYSTEMIC USE,R06A,ANTIHISTAMINES FOR SYSTEMIC USE,R06,RESPIRATORY SYSTEM,R,1 \ No newline at end of file diff --git a/inst/cm_domain/cm_sdtm.csv b/inst/cm_domain/cm_sdtm.csv new file mode 100644 index 00000000..6fe047db --- /dev/null +++ b/inst/cm_domain/cm_sdtm.csv @@ -0,0 +1,7 @@ +STUDYID,DOMAIN,USUBJID,CMSEQ,CMGRPID,CMREFID,CMSPID,CMTRT,CMMODIFY,CMDECOD,CMCAT,CMPRESP,CMOCCUR,CMINDC,CMDOSE,CMDOSTXT,CMDOSU,CMDOSFRM,CMDOSFRQ,CMROUTE,VISITNUM,VISIT,VISITDY,EPOCH,CMDTC,CMSTDTC,CMENDTC,CMDY,CMSTDY,CMENDY,CMSTRTPT,CMSTTPT,CMENRTPT,CMENTPT,CMPROPH,CMDRG,CMDRGCD,CMPNCD +LPSTUDY,CM,LPSTUDY-375,1,NA,NA,/F:VACHX-D:56379540-R:1,TETANUS,NA,NA,VACCINATION HISTORY,Y,Y,NA,NA,NA,NA,NA,NA,NA,1,Screening,-8,SCREENING,2020-09-01,2019-02-02,NA,-27,-604,NA,NA,NA,NA,NA,NA,NA,NA,NA +LPSTUDY,CM,LPSTUDY-375,2,NA,NA,/F:VACHX-D:56379540-R:2,COVID-19,NA,NA,VACCINATION HISTORY,Y,Y,NA,NA,NA,NA,NA,NA,NA,1,Screening,-8,SCREENING,2020-09-01,2020-08-31,NA,-27,-28,NA,NA,NA,NA,NA,NA,NA,NA,NA +LPSTUDY,CM,LPSTUDY-375,3,NA,NA,/F:VACHX-D:56379540-R:3,FLU,NA,NA,VACCINATION HISTORY,NA,NA,NA,NA,NA,NA,NA,NA,NA,1,Screening,-8,SCREENING,2020-09-01,NA,NA,-27,NA,NA,BEFORE,SCREENING,NA,NA,NA,NA,NA,NA +LPSTUDY,CM,LPSTUDY-375,4,1,5652739,/F:MD1-D:56379253-R:1,BABY ASPIRIN,NA,ACETYLSALICYLIC ACID,NA,NA,NA,NA,10,NA,mg,TABLET,QD,ORAL,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,BEFORE,SCREENING,ONGOING,DATE OF LAST ASSESSMENT,NA,BABY ASPIRIN,00002701701,00002701001 +LPSTUDY,CM,LPSTUDY-375,5,2,5533807,/F:MD1-D:56379253-R:2,CORTISPORIN,CORTISPORIN (UNITED STATES),CORTICOSTEROIDS AND ANTIINFECTIVES IN COMBINATION,NA,NA,NA,NAUSEA,50,NA,g,PILL,NA,ORAL,NA,NA,NA,SCREENING,NA,2020-09-15,NA,NA,-13,NA,NA,NA,ONGOING,DATE OF LAST ASSESSMENT,NA,CORTICOSTEROIDS AND ANTIINFECTIVES IN COMBINATION,90104001001,90104001001 +LPSTUDY,CM,LPSTUDY-378,1,3,4537684,/F:MD1-D:63059916-R:3,TETRACYCLINE,NA,TETRACYCLINE,NA,NA,NA,FEVER,10,NA,mg,CAPSULE,BID,TRANSDERMAL,NA,NA,NA,TREATMENT,NA,2020-02-12T12:12,2020-02-18,NA,18,24,BEFORE,SCREENING,NA,NA,Y,TETRACYCLINE,00001701001,00001701001 diff --git a/inst/cm_domain/cm_sdtm_oak_ct.csv b/inst/cm_domain/cm_sdtm_oak_ct.csv new file mode 100644 index 00000000..bf231e7e --- /dev/null +++ b/inst/cm_domain/cm_sdtm_oak_ct.csv @@ -0,0 +1,35 @@ +codelist_code,term_code,CodedData,term_value,collected_value,term_preferred_term,term_synonyms,raw_codelist +C71113,C25473,QD,QD,QD (Every Day),Daily,/day; Daily; Per Day,FREQ_CV1 +C71113,C64496,BID,BID,BID (Twice a Day),Twice Daily,BD; Twice per day,FREQ_CV1 +C71113,C64499,PRN,PRN,PRN (As Needed),As Needed,As needed,FREQ_CV1 +C71113,C64516,Q2H,Q2H,Q2H (Every 2 Hours),Every Two Hours,Every 2 hours,FREQ_CV1 +C71113,C64530,QID,QID,QID (4 Times a Day),Four Times Daily,4 times per day,FREQ_CV1 +C66726,C25158,CAPSULE,CAPSULE,Capsule,Capsule Dosage Form,cap,FRM_CV1 +C66726,C25394,PILL,PILL,Pill,Pill Dosage Form,NA,FRM_CV1 +C66726,C29167,LOTION,LOTION,Lotion,Lotion Dosage Form,NA,FRM_CV1 +C66726,C42887,AEROSOL,AEROSOL,Aerosol,Aerosol Dosage Form,aer,FRM_CV1 +C66726,C42944,INHALANT,INHALANT,Inhalant,Inhalant Dosage Form,NA,FRM_CV1 +C66726,C42946,INJECTION,INJECTION,Injection,Injectable Dosage Form,NA,FRM_CV1 +C66726,C42953,LIQUID,LIQUID,Liquid,Liquid Dosage Form,NA,FRM_CV1 +C66726,C42998,TABLET,TABLET,Tablet,Tablet Dosage Form,tab,FRM_CV1 +C66742,C49488,Y,Y,Yes,Yes,Yes,NY_CV1 +C66729,C28161,INTRAMUSCULAR,INTRAMUSCULAR,IM (Intramuscular),Intramuscular Route of Administration,NA,ROUTE_CV1 +C66729,C38210,EPIDURAL,EPIDURAL,EP (Epidural),Epidural Route of Administration,NA,ROUTE_CV1 +C66729,C38222,INTRA-ARTERIAL,INTRA-ARTERIAL,IA (Intra-arterial),Intraarterial Route of Administration,NA,ROUTE_CV1 +C66729,C38223,INTRA-ARTICULAR,INTRA-ARTICULAR,IJ (Intra-articular),Intraarticular Route of Administration,NA,ROUTE_CV1 +C66729,C38287,OPHTHALMIC,OPHTHALMIC,OP (Ophthalmic),Ophthalmic Route of Administration,NA,ROUTE_CV1 +C66729,C38288,ORAL,ORAL,PO (Oral),Oral Route of Administration,Intraoral Route of Administration; PO,ROUTE_CV1 +C66729,C38305,TRANSDERMAL,TRANSDERMAL,DE (Transdermal),Transdermal Route of Administration,NA,ROUTE_CV1 +C66729,C38311,UNKNOWN,UNKNOWN,Unknown,Unknown Route of Administration,NA,ROUTE_CV1 +C71620,C25613,%,%,%,Percentage,Percentage,UNIT_CV1 +C71620,C28253,MG,mg,mg,Milligram,Milligram,UNIT_CV1 +C71620,C28254,ML,mL,mL,Milliliter,cm3; Milliliter,UNIT_CV1 +C71620,C48155,G,g,g,Gram,Gram,UNIT_CV1 +C71620,C48480,CAPSULE,CAPSULE,Capsule,Capsule Dosing Unit,cap; Capsule Dosing Unit,UNIT_CV1 +C71620,C48542,TABLET,TABLET,Tablet,Tablet Dosing Unit,tab; Tablet Dosing Unit,UNIT_CV1 +C71620,C48579,IU,IU,IU,International Unit,IE; International Unit,UNIT_CV1 +C71620,C28254,ML,mL,mL,Milliliter,cm3; Milliliter,UNIT_CV5 +C66728,C25629,BEFORE,BEFORE,Prior,Prior,,NA +C66728,C53279,ONGOING,ONGOING,Continue,Continue,Continuous,NA +C66734,C49568,CM,CM,Concomitant Medication Domain,Concomitant Medication Domain,Concomitant/Prior Medications,NA +,,,,,,, \ No newline at end of file diff --git a/inst/cm_domain/cm_sdtm_oak_spec.csv b/inst/cm_domain/cm_sdtm_oak_spec.csv new file mode 100644 index 00000000..ce635d9d --- /dev/null +++ b/inst/cm_domain/cm_sdtm_oak_spec.csv @@ -0,0 +1,49 @@ +study_number,raw_source_model,raw_dataset,raw_dataset_ordinal,raw_dataset_label,raw_variable,raw_variable_label,raw_variable_ordinal,raw_variable_type,raw_data_format,raw_codelist,study_specific,annotation_ordinal,mapping_is_dataset,annotation_text,target_sdtm_domain,target_sdtm_variable,target_sdtm_variable_role,target_sdtm_variable_codelist_code,target_sdtm_variable_controlled_terms_or_format,target_sdtm_variable_ordinal,origin,mapping_algorithm,entity_sub_algorithm,target_hardcoded_value,target_term_value,target_term_code,condition_ordinal,condition_group_ordinal,condition_left_raw_dataset,condition_left_raw_variable,condition_left_sdtm_domain,condition_left_sdtm_variable,condition_operator,condition_right_text_value,condition_right_sdtm_domain,condition_right_sdtm_variable,condition_right_raw_dataset,condition_right_raw_variable,condition_next_logical_operator,merge_type,merge_left,merge_right,merge_condition,unduplicate_keys,groupby_keys,target_resource_raw_dataset,target_resource_raw_variable +lp_study,e-CRF,MD1,27,Concomitant Medications,,,,,,,FALSE,1,TRUE,CM = 'Concomitant/Prior Medications',CM,DOMAIN,Identifier Variable,C66734,,,Assigned,DATASET_LEVEL,HARDCODE_CT,,CM,C49568,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,,,,,,,FALSE,1,TRUE,CM = 'Concomitant/Prior Medications',CM,DOMAIN,Identifier Variable,C66734,,,Assigned,DATASET_LEVEL,REMOVE_DUP,,CM,C49568,,,,,,,,,,,,,,,,,,"MD1.PATNUM,MD1.MDNUM,MD1.MDRAW,MD1.RAVRFID",,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDREC,Were there any medications taken protocol specific?,1,DropDownList,$3 ,NY_CV1,FALSE,1,FALSE,NOT SUBMITTED,,,,,,,CRF,NOTSUBMITTED,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDNUM,MD number,2,Text,3,,FALSE,2,FALSE,CM.CMGRPID,CM,CMGRPID,Identifier Variable,,,6,CRF,ASSIGN_NO_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDRAW,Medication,3,LongText,$200 ,,FALSE,1,FALSE,CM.CMTRT,CM,CMTRT,Topic Variable,,,10,CRF,ASSIGN_NO_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDIND,Indication,4,LongText,$100 ,,FALSE,1,FALSE,CM.CMINDC,CM,CMINDC,Record Qualifier,,,19,CRF,ASSIGN_NO_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDBDR,Start date,5,DateTime,dd- MMM- yyyy,,FALSE,1,FALSE,CM.CMSTDTC,CM,CMSTDTC,Timing Variable,,ISO 8601,39,CRF,ASSIGN_NO_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDBDTU,Start date unknown,6,CheckBox,1,,FALSE,1,FALSE,NOT SUBMITTED,,,,,,,CRF,NOTSUBMITTED,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDBTM,Start time,7,DateTime,HH nn,,FALSE,1,FALSE,CM.CMSTDTC,CM,CMSTDTC,Timing Variable,,ISO 8601,39,CRF,ASSIGN_NO_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDBTMU,Start time unknown,8,CheckBox,1,,FALSE,1,FALSE,NOT SUBMITTED,,,,,,,CRF,NOTSUBMITTED,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDPRIOR,Select if taken prior to study,9,CheckBox,1,,FALSE,1,FALSE,If checked then CM.CMSTRTPT = 'BEFORE',CM,CMSTRTPT,Timing Variable,C66728,(STENRF),50,CRF,IF_THEN_ELSE,HARDCODE_CT,,BEFORE,C25629,1.1,0,MD1,MDPRIOR,,,Checked,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDPRIOR,Select if taken prior to study,9,CheckBox,1,,FALSE,2,FALSE,CM.CMSTTPT = 'SCREENING',CM,CMSTTPT,Timing Variable,,,51,CRF,IF_THEN_ELSE,HARDCODE_NO_CT,SCREENING,,,2.1,0,MD1,MDPRIOR,,,Checked,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDPRIOR,Select if taken prior to study,9,CheckBox,1,,FALSE,3,FALSE,Else NOT SUBMITTED,,,,,,,CRF,IF_THEN_ELSE,NOTSUBMITTED,,,,3.1,0,MD1,MDPRIOR,,,Not_checked,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDEDR,End date,10,DateTime,dd- MMM- yyyy,,FALSE,1,FALSE,CM.CMENDTC,CM,CMENDTC,Timing Variable,,ISO 8601,40,CRF,ASSIGN_NO_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDETM,End time,11,DateTime,HH nn,,FALSE,1,FALSE,CM.CMENDTC,CM,CMENDTC,Timing Variable,,ISO 8601,40,CRF,ASSIGN_NO_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDETMU,End time unknown,12,CheckBox,1,,FALSE,1,FALSE,NOT SUBMITTED,,,,,,,CRF,NOTSUBMITTED,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDONG,Select if ongoing,13,CheckBox,1,,FALSE,1,FALSE,If checked then CM.CMENRTPT = 'ONGOING',CM,CMENRTPT,Timing Variable,C66728,(STENRF),52,CRF,IF_THEN_ELSE,HARDCODE_CT,,ONGOING,C53279,1.1,0,MD1,MDONG,,,Checked,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDONG,Select if ongoing,13,CheckBox,1,,FALSE,2,FALSE,CM.CMENTPT = 'DATE OF LAST ASSESSMENT',CM,CMENTPT,Timing Variable,,,53,CRF,IF_THEN_ELSE,HARDCODE_NO_CT,DATE OF LAST ASSESSMENT,,,2.1,0,MD1,MDONG,,,Checked,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDONG,Select if ongoing,13,CheckBox,1,,FALSE,3,FALSE,Else NOT SUBMITTED,,,,,,,CRF,IF_THEN_ELSE,NOTSUBMITTED,,,,3.1,0,MD1,MDONG,,,Not_checked,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,DOS,Dose,14,Text,8.3,,FALSE,1,FALSE,If numeric then CM.CMDOSE,CM,CMDOSE,Record Qualifier,,,22,CRF,IF_THEN_ELSE,ASSIGN_NO_CT,,,,1.1,0,MD1,DOS,,,is_numeric,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,DOS,Dose,14,Text,8.3,,FALSE,2,FALSE,Else CM.CMDOSTXT,CM,CMDOSTXT,Record Qualifier,,,23,CRF,IF_THEN_ELSE,ASSIGN_NO_CT,,,,2.1,0,MD1,DOS,,,is_character,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,DOSU,Dose unit,15,SearchList,$30 ,UNIT_CV1,FALSE,1,FALSE,CM.CMDOSU,CM,CMDOSU,Variable Qualifier,C71620,(UNIT),24,CRF,ASSIGN_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDFORM,Dose form,16,SearchList,$80 ,FRM_CV1,FALSE,1,FALSE,CM.CMDOSFRM,CM,CMDOSFRM,Variable Qualifier,C66726,(FRM),25,CRF,ASSIGN_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDRTE,Route,17,DropDownList,$25 ,ROUTE_CV1,FALSE,1,FALSE,CM.CMROUTE,CM,CMROUTE,Variable Qualifier,C66729,(ROUTE),29,CRF,ASSIGN_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDFRQ,Dose Frequency,18,SearchList,$25 ,FREQ_CV1,FALSE,1,FALSE,CM.CMDOSFRQ,CM,CMDOSFRQ,Variable Qualifier,C71113,(FREQ),26,CRF,ASSIGN_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDPROPH,Given for prophylaxis?,19,CheckBox,1,,FALSE,1,FALSE,If checked then CMPROPH = 'Y' in SUPPCM,CM,CMPROPH,Supplemental Record Qualifier,C66742,(NY),106,CRF,IF_THEN_ELSE,HARDCODE_CT,,Y,C49488,1.1,0,MD1,MDPROPH,,,Checked,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,27,Concomitant Medications,MDPROPH,Given for prophylaxis?,19,CheckBox,1,,FALSE,2,FALSE,Else NOT SUBMITTED,,,,,,,CRF,IF_THEN_ELSE,NOTSUBMITTED,,,,2.1,0,MD1,MDPROPH,,,Not_checked,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,28,Concomitant Medications,TERMID,TERM_REC_ID,1,Text,$15 ,,FALSE,1,FALSE,NOT SUBMITTED,,,,,,,CRF,NOTSUBMITTED,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,28,Concomitant Medications,SRCLN,SOURCE_LINE_NUMBER,2,Text,3,,FALSE,1,FALSE,NOT SUBMITTED,,,,,,,CRF,NOTSUBMITTED,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,28,Concomitant Medications,RAVRFID,RAVE_REFERENCE_ID,3,Text,15,,FALSE,1,FALSE,NOT SUBMITTED,,,,,,,CRF,NOTSUBMITTED,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,28,Concomitant Medications,MDRAW,Medication,4,LongText,$200 ,,FALSE,1,FALSE,NOT SUBMITTED,,,,,,,CRF,NOTSUBMITTED,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,28,Concomitant Medications,CMMODIFY,Corrected Term,5,LongText,"$1,500 ",,FALSE,1,FALSE,If different to CM.CMTRT then CM.CMMODIFY,CM,CMMODIFY,Synonym Qualifier,,,11,CRF,IF_THEN_ELSE,ASSIGN_NO_CT,,,,1.1,0,MD1,CMMODIFY,,,Different_to,,CM,CMTRT,,,,,,,,,,, +lp_study,e-CRF,MD1,28,Concomitant Medications,CMMODIFY,Corrected Term,5,LongText,"$1,500 ",,FALSE,2,FALSE,"If [CM.CMMODIFY] is over 200 characters, split CM.CMMODIFY into CMMODIFn in SUPPCM to the nearest semicolon, where n is 1 to N number of 200-character segments.",CM,CMMODIFY,Synonym Qualifier,,,11,CRF,OTHER,,,,,,,,CMMODIFY,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,28,Concomitant Medications,CMDRG,WHODrug Drug Name,6,LongText,"$1,500 ",,FALSE,1,FALSE,CMDRG in SUPPCM,CM,CMDRG,Supplemental Variable Qualifier,,WHO DD,109,CRF,ASSIGN_NO_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,28,Concomitant Medications,CMDRG,WHODrug Drug Name,6,LongText,"$1,500 ",,FALSE,2,FALSE,"If [MD1C.CMDRG] is over 200 characters, split CMDRG in SUPPCM into CMDRGn in SUPPCM to the nearest semicolon, where n is 1 to N number of 200-character segments.",CM,CMDRG,Supplemental Variable Qualifier,,WHO DD,109,CRF,OTHER,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,28,Concomitant Medications,CMDRGCD,WHODrug Drug Name Code,7,Text,$30 ,,FALSE,1,FALSE,CMDRGCD in SUPPCM,CM,CMDRGCD,Supplemental Variable Qualifier,,WHO DD,111,CRF,ASSIGN_NO_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,28,Concomitant Medications,CMDECOD,WHODrug Preferred Name,8,LongText,"$1,500 ",,FALSE,1,FALSE,CM.CMDECOD,CM,CMDECOD,Synonym Qualifier,,*,12,CRF,ASSIGN_NO_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,28,Concomitant Medications,CMDECOD,WHODrug Preferred Name,8,LongText,"$1,500 ",,FALSE,2,FALSE,"If [MD1C.CMDECOD] is over 200 characters, split CM.CMDECOD into CMDECODn in SUPPCM to the nearest semicolon, where n is 1 to N number of 200-character segments.",CM,CMDECOD,Synonym Qualifier,,*,12,CRF,OTHER,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,MD1,28,Concomitant Medications,CMPNCD,WHODrug Preferred Name Code,9,Text,$30 ,,FALSE,1,FALSE,CMPNCD in SUPPCM,CM,CMPNCD,Supplemental Variable Qualifier,,WHO DD,112,CRF,ASSIGN_NO_CT,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,,,,,,,,,,,,,Unique identifier for a study.,CM,STUDYID,Identifier Variable,,,1,Protocol,,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,,,,,,,,,,,,,"Set to USUBJID in SDTM.DM domain. Set to Subject Identifier (SDTM.DM.SUBJID) used for the first trial the subject participated in involving the product. Taken directly from SDTM IG 3.1.2, p29: ""Unique subject identifier must be unique for each trial participant (subject) across all trials in the submission. This means that no two (or more) subjects across all trials in the submission, may have the same USUBJID. Additionally the same person who participates in multiple clinical trials (when this is known) must be assigned the same USUBJID value in all trials."" Practical guidance for SMTs to follow in order to ensure we are aligned with the latest regulatory guidance: 1) When we have a planned study design which anticipates enrolling subjects who have participated in a previous study for the same indication, we must add a CRF page to the subsequent study to collect the study id,and subject id from the original study. These data will be used to construct the USUBJID variable in the subsequent study, in order to provide a unique subject identifier across studies for the same study participant. 2) When we discover that we have two or more studies in a submission that may have subjects who have participated in more than one study, we must provide a common value in USUBJID to provide a unique subject identifier across studies. Since this was not planned we must manually construct a dataset to link the IDs of patients in multiple studies. Post-processing is required to amend the study data with this information.",CM,USUBJID,Identifier Variable,,,3,Derived,,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,,,,,,,,,,,,,Sequence Number given to ensure uniqueness of subject records within a domain. May be any valid number.,CM,CMSEQ,Identifier Variable,,,5,Derived,,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,,,,,,,,,,,,,Sponsor-defined reference number. Examples: a number pre-printed on the CRF as an explicit line identifier or record identifier defined in the sponsor's operational database. Example: line number on a concomitant medication page.,CM,CMSPID,Identifier Variable,,,8,Derived,,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,,,,,,,,,,,,,"1. Clinical encounter number. 2. Numeric version of VISIT, used for sorting.",CM,VISITNUM,Timing Variable,,,34,Derived,,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,,,,,,,,,,,,,1. Protocol-defined description of clinical encounter. 2. May be used in addition to VISITNUM and/or VISITDY.,CM,VISIT,Timing Variable,,,35,Derived,,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,,,,,,,,,,,,,"Epoch associated with the start date/time of the observation, or the date/time of collection if start date/time is not collected.",CM,EPOCH,Timing Variable,C99079,(EPOCH),37,Derived,,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,,,,,,,,,,,,,"Taken directly from SDTM IG 3.1.2, p41: --DY = (date portion of --DTC) - (date portion of SDTM.DM.RFSTDTC) + 1 if --DTC is on or after SDTM.DM.RFSTDTC; --DY = (date portion of --DTC) - (date portion of SDTM.DM.RFSTDTC) if --DTC precedes SDTM.DM.RFSTDTC.",CM,CMSTDY,Timing Variable,,,42,Derived,,,,,,,,,,,,,,,,,,,,,,,,,, +lp_study,e-CRF,,,,,,,,,,,,,"Taken directly from SDTM IG 3.1.2, p41: --DY = (date portion of --DTC) - (date portion of SDTM.DM.RFSTDTC) + 1 if --DTC is on or after SDTM.DM.RFSTDTC; --DY = (date portion of --DTC) - (date portion of SDTM.DM.RFSTDTC) if --DTC precedes SDTM.DM.RFSTDTC.",CM,CMENDY,Timing Variable,,,43,Derived,,,,,,,,,,,,,,,,,,,,,,,,,, \ No newline at end of file diff --git a/inst/cm_domain/create_cm_template.R b/inst/cm_domain/create_cm_template.R new file mode 100644 index 00000000..346f5909 --- /dev/null +++ b/inst/cm_domain/create_cm_template.R @@ -0,0 +1,233 @@ +# Name: CM domain +# +# Label: R program to create CM Domain +# +# Input raw data: +# study_sdtm_spec +# study_controlled_terminology +# study_raw_datasets +# +# + +library(sdtm.oak) +library(dplyr) + +# Read Specification + +sdtm_spec <- read_(filename = "~/inst/cm_domain/cm_sdtm_oak_spec.csv") + +study_ct <- read_study_ct(filename = "~/inst/cm_domain/cm_sdtm_oak_ct.csv") + +# Read in raw data + +cm_raw_data <- read_raw_data_csv(filename = "~/inst/cm_domain/cm_raw_data.csv") |> + # Derive oak_id_vars + derive_oak_id_vars() + +# Create CM domain. The first step in creating CM domain is to create the topic variable + +cm <- cm_daw_data |> + # Derive topic variable + assign_no_ct( + raw_dataset = MD1, # This is added for pseudocode. Not required as pipe will send it + raw_variable = MDRAW, + target_sdtm_var = CMTRT + ) |> + # Derive qualifier CMDOSU + # Use merge and add the qualifier to the topic variable + assign_ct( + raw_dataset = MD1, + raw_variable = DOSU, + target_sdtm_var = CMDOSU, + study_ct = study_ct, + target_sdtm_variable_codelist_code = "C71620", + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + # Derive qualifier CMDOSFRM and merge it with the target dataset + assign_ct( + raw_dataset = MD1, + raw_variable = MDFORM, + target_sdtm_var = CMDOSFRM, + target_sdtm_variable_codelist_code = "C66726", + study_ct = study_ct, + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + # DERIVE CMROUTE + assign_ct( + raw_dataset = MD1, + raw_variable = MDFORM, + target_sdtm_var = MDRTE, + target_sdtm_variable_codelist_code = "C66729", + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + # DERIVE CMDOSFRQ + assign_ct( + raw_dataset = MD1, + raw_variable = MDFRQ, + target_sdtm_var = CMDOSFRQ, + target_sdtm_variable_codelist_code = "C71113", + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + # DERIVE CMINDC + assign_no_ct( + raw_dataset = MD1, + raw_variable = MDIND, + target_sdtm_var = CMINDC, + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + # Derive qualifier CMDOSE. Annotation text = If numeric then CM.CMDOSE + if_then_else( + raw_dataset = MD1, + raw_variable = DOS, + condition_left_raw_dataset = MD1, + condition_left_raw_variable = DOS, + condition_operator = "is_numeric", + sub_algorithm = assign_no_ct, # pass the function as the argument + target_sdtm_var = CMDOSE, + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + # Derive qualifier CMDOSTXT. Annotation text = If character then CM.CMDOSTXT + if_then_else( + raw_dataset = MD1, + raw_variable = DOS, + condition_left_raw_dataset = MD1, + condition_left_raw_variable = DOS, + condition_operator = "is_character", + sub_algorithm = assign_no_ct, + target_sdtm_var = CMDOSETXT, + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + # Derive qualifier CMMODIFY Annotation text = If different to CM.CMTRT then CM.CMMODIFY + if_then_else( + raw_dataset = MD1, + raw_variable = CMMODIFY, + condition_left_raw_dataset = MD1, + condition_left_raw_variable = CMMODIFY, + condition_operator = "diffferent_to", + condition_right_sdtm_variable_domain = CM, + condition_right_sdtm_variable = CMTRT, + sub_algorithm = assign_no_ct, + target_sdtm_var = CMDOSETXT, + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + # Derive CMDECOD + assign_no_ct( + raw_dataset = MD1, + raw_variable = CMDECOD, + target_sdtm_var = CMDECOD + ) |> + # Derive CMSTDTC. This function calls create_iso8601 + assign_no_ct( + raw_dataset = MD1, + raw_variable = c("MDBD", "MDBTM"), + target_sdtm_var = CMSTDTC, + .format = c("ddmmmyyyy", "HHMM") + ) |> + # Derive CMENDTC. This function calls create_iso8601 + assign_no_ct( + raw_dataset = MD1, + raw_variable = c("MDED", "MDETM"), + target_sdtm_var = CMENDTC, + .format = c("ddmmmyyyy", "HHMM") + ) |> + # Derive qualifier CMSTRTPT Annotation text = If checked then CM.CMSTRTPT = 'BEFORE' + if_then_else( + raw_dataset = MD1, + raw_variable = MDPRIOR, + condition_left_raw_dataset = MD1, + condition_left_raw_variable = MDPRIOR, + condition_operator = "if_checked", + sub_algorithm = assign_ct, + target_sdtm_variable_codelist_code = "C66728", + target_sdtm_var = CMSTRTPT, + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + # Derive qualifier CMSTRTPT Annotation text = If checked then CM.CMSTTPT = 'SCREENING' + if_then_else( + raw_dataset = MD1, + raw_variable = MDPRIOR, + condition_left_raw_dataset = MD1, + condition_left_raw_variable = MDPRIOR, + condition_operator = "if_checked", + sub_algorithm = hardcode_no_ct, + target_hardcoded_value = "SCREENING", + target_sdtm_var = CM.CMSTTPT, + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + # Derive qualifier CMENRTPT Annotation text = If checked then CM.CMENRTPT = 'ONGOING' + if_then_else( + raw_dataset = MD1, + raw_variable = MDONG, + condition_left_raw_dataset = MD1, + condition_left_raw_variable = MDONG, + condition_operator = "if_checked", + sub_algorithm = hardcode_ct, + target_hardcoded_value = "ONGOING", + target_sdtm_variable_codelist_code = "C66728", + target_sdtm_var = CMENRTPT, + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + # Derive qualifier CMENTPT Annotation text = If checked then CM.CMENTPT = 'DATE OF LAST ASSESSMENT' + if_then_else( + raw_dataset = MD1, + raw_variable = MDONG, + condition_left_raw_dataset = MD1, + condition_left_raw_variable = MDONG, + condition_operator = "if_checked", + sub_algorithm = hardcode_no_ct, + target_hardcoded_value = "DATE OF LAST ASSESSMENT", + target_sdtm_var = CMENTPT, + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + # Derive CMGRPID + assign_no_ct( + raw_dataset = MD1, + raw_variable = MDNUM, + target_sdtm_var = CMGRPID, + merge_to_topic_by = c(oak_id_vars, + topic_var_source = MDRAW + ) + ) |> + dplyr::mutate( + STUDYID = "test_study", + DOMAIN = "CM", + CMCAT = "GENERAL CONMED" + ) |> + derive_usubjid() |> + derive_sequence(keys = c(USUBJID, CMTRT)) |> + derive_visit_visitnum() |> + calculate_study_day( + dm_domain = dm, + study_day_var = "RFSTDTS", + var_in = CMSTDTC, + target_var = CMSTDY, + merge_key = "USUBJID" + ) |> + derive_study_day( + var_in = CMENDTC, + target_var = CMENDY + ) diff --git a/man/sdtm.oak-package.Rd b/man/sdtm.oak-package.Rd index fc04b354..20606fa4 100644 --- a/man/sdtm.oak-package.Rd +++ b/man/sdtm.oak-package.Rd @@ -6,7 +6,7 @@ \alias{sdtm.oak-package} \title{sdtm.oak: SDTM Data Transformation Engine} \description{ -An EDC and Data Standard agnostic SDTM data transformation engine that automates the transformation of raw clinical data in ODM format to SDTM based on standard mapping algorithms. +An EDC and Data Standard-agnostic SDTM data transformation engine designed for SDTM programming in R. Powered by metadata sdtm.oak can automate the conversion of raw clinical data to SDTM through standardized mapping algorithms. SDTM is one of the required standards for data submission to FDA (U.S.) and PMDA (Japan). SDTM standards are implemented in accordance with the SDTM Implemetation guide as defined by CDISC \url{https://www.cdisc.org/standards/foundational/sdtmig} } \seealso{ Useful links: @@ -18,11 +18,17 @@ Useful links: } \author{ -\strong{Maintainer}: Omar Garcia \email{ogcalderon@cdisc.org} +\strong{Maintainer}: Rammprasad Ganapathy \email{ganapathy.rammprasad@gene.com} Authors: \itemize{ - \item Rammprasad Ganapathy + \item Adam Forys + \item Edgar Manukyan + \item Rosemary Li + \item Preetesh Parikh + \item Lisa Houterloot + \item Yogesh Gupta + \item Omar Garcia \email{ogcalderon@cdisc.org} \item Ramiro Magno \email{rmagno@pattern.institute} (\href{https://orcid.org/0000-0001-5226-3441}{ORCID}) } diff --git a/renv.lock b/renv.lock index 77ba5c8d..20b69f01 100644 --- a/renv.lock +++ b/renv.lock @@ -41,7 +41,7 @@ }, "R.oo": { "Package": "R.oo", - "Version": "1.25.0", + "Version": "1.26.0", "Source": "Repository", "Repository": "RSPM", "Requirements": [ @@ -50,7 +50,7 @@ "methods", "utils" ], - "Hash": "a0900a114f4f0194cf4aa8cd4a700681" + "Hash": "4fed809e53ddb5407b3da3d0f572e591" }, "R.utils": { "Package": "R.utils", diff --git a/renv/profiles/4.2/renv.lock b/renv/profiles/4.2/renv.lock index e59b2625..a85cc2fe 100644 --- a/renv/profiles/4.2/renv.lock +++ b/renv/profiles/4.2/renv.lock @@ -41,7 +41,7 @@ }, "R.oo": { "Package": "R.oo", - "Version": "1.25.0", + "Version": "1.26.0", "Source": "Repository", "Repository": "RSPM", "Requirements": [ @@ -50,7 +50,7 @@ "methods", "utils" ], - "Hash": "a0900a114f4f0194cf4aa8cd4a700681" + "Hash": "4fed809e53ddb5407b3da3d0f572e591" }, "R.utils": { "Package": "R.utils", diff --git a/renv/profiles/4.3/renv.lock b/renv/profiles/4.3/renv.lock index 77ba5c8d..20b69f01 100644 --- a/renv/profiles/4.3/renv.lock +++ b/renv/profiles/4.3/renv.lock @@ -41,7 +41,7 @@ }, "R.oo": { "Package": "R.oo", - "Version": "1.25.0", + "Version": "1.26.0", "Source": "Repository", "Repository": "RSPM", "Requirements": [ @@ -50,7 +50,7 @@ "methods", "utils" ], - "Hash": "a0900a114f4f0194cf4aa8cd4a700681" + "Hash": "4fed809e53ddb5407b3da3d0f572e591" }, "R.utils": { "Package": "R.utils", diff --git a/staged_dependencies.yaml b/staged_dependencies.yaml index 72a49b08..a1406e69 100644 --- a/staged_dependencies.yaml +++ b/staged_dependencies.yaml @@ -8,4 +8,3 @@ downstream_repos: current_repo: repo: pharmaverse/sdtm.oak host: https://github.com - \ No newline at end of file diff --git a/vignettes/articles/algo_sub_algo_combo.jpg b/vignettes/articles/algo_sub_algo_combo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ff9246da420c1bcc83d5bd7653eec04dc7f1eec7 GIT binary patch literal 97016 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

kxk#w!s>I*q7gjOMOo6*_+70u3y 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 + %\VignetteIndexEntry{Algorithms} + %\VignetteEncoding{UTF-8} + %\VignetteEngine{knitr::rmarkdown} +editor_options: + markdown: + wrap: 72 +--- + +## Core Concept + +SDTM mappings are defined as algorithms that transform the collected +(eCRF, eDT) source data into the target SDTM data model. Mapping +algorithms are the backbone of the sdtm.oak - SDTM data transformation +engine. + +**Key Points:** + +- Algorithms can be re-used across multiple SDTM domains. + +- Algorithms are pre-specified for data collection standards in MDR + (if applicable) + +- Programming language agnostic - this concept does not rely on a + specific programming language for implementation. The OAK team + implemented them as R functions. + +Here is an example of reusing an algorithm across multiple domains, +variables, and also to a non-standard + +![](reusable_algorithms.jpg){width="600px"} + +## List of Algorithms + +```{r echo = FALSE, results = "asis"} +library(knitr) +algorithms <- data.frame( + `Algorithm Name` = c( + "ASSIGN_NO_CT", + "ASSIGN_CT", + "AE_AEREL", + "HARDCODE_CT", + "HARDCODE_NO_CT", + "DATASET_LEVEL", + "NOTSUBMITTED", + "IF_THEN_ELSE", + "MERGE", + "RELREC", + "MULTIPLE_RESPONSES", + "SPLIT_TO_SUPPQUAL", + "REMOVE_DUP", + "GROUP_BY" + ), + `Description` = c( + paste( + "One-to-one mapping between the raw source and a target", + "SDTM variable that has no controlled terminology restrictions.", + "Just a simple assignment", + "statement. This algorithm will also handle the concatenation of", + "multiple items into a target SDTM variable." + ), + paste( + "One-to-one mapping between the raw source and a target ", + "SDTM variable that is subject to controlled terminology restrictions.", + "A simple assign statement and applying controlled terminology.", + "This will be used only if the SDTM variable has an associated", + "controlled terminology." + ), + paste( + "Algorithm that is currently unique to AE.AEREL,", + "particularly when more than one drug is used in the study.
If any collected study drug", + "causalities are 'Yes' then AE.AEREL is Y.
If all collected study", + "drug causalities are 'NA' then AE.AEREL is NA.
If no study drug", + "causalities are 'Yes' but there is at least one causality of 'No'", + "then AE.AEREL is N.
Individual study drug causality responses are", + "stored in AERELn in SUPPAE." + ), + paste( + "Mapping a hardcoded value to a target SDTM variable that is subject to terminology restrictions.", + "This will be used only if the SDTM variable has an associated", + "controlled terminology." + ), + paste( + "Mapping a hardcoded value to a target SDTM variable that has no terminology restrictions." + ), + paste( + "Indicates a dataset-level mapping. These mappings will", + "be applied to all SDTM records created from that source.", + "Also called a eCRF-level mappings in eCRF and dataset-level", + "mappings in eDT" + ), + paste( + "Instruction that `sdtm.oak` should not map the collected item to SDTM at all." + ), + paste( + "Represents the If then else statement. This can be an if statement", + "with no else or with the else condition. This algorithm will be", + "used for the annotations where a condition has to be evaluated", + "before a mapping is performed. A sub-algorithm is required. If the", + "condition resolves to `TRUE`, the sub-algorithm will be executed." + ), + paste( + "To indicate a join condition with a secondary source or multiple sources.", + "Merges are expressed at the domain level only", + "(not at data point or variable level).", + "This is a sub-algorithm and can only be used with algorithm DATASET_LEVEL." + ), + paste( + "Associate two domains based on the variables in each domain and how those are related.", + "Specifies the name of two domains that are related via RELREC." + ), + paste( + "Consolidate the responses from more than one source variable into one target variable.", + "Used when multiple responses may be given for a single SDTM column.", + "`sdtm.oak` will populate all target variable(s) after determining the number of responses provided." + ), + paste( + "Consolidates the responses from more than one", + "source variable into more than one target variable", + "(always a suppqual/non-standard variable).", + "There is no 'parent' target variable that is populated with 'MULTIPLE'." + ), + paste( + "Sub-algorithm at the domain level that indicates some source records may", + "be removed during the `sdtm.oak` mapping process if determined to be duplicate records." + ), + paste( + "Sub-algorithm used at the domain level to group source records", + "before mapping to SDTM. This is used in the event we need to collapse data", + "collected across multiple rows into one row in SDTM but it is not a simple", + "un-duplication effort. For example, the way infusion study drug", + "administration data requires us to create 1 SDTM record in EC from 1 or more source", + "records in the mixed log form. When there is more than one source record,", + "we need to take the earliest collected infusion start date (for ECSTDTC) and", + "the latest collected infusion end date within an eCRF instance." + ) + ), + `Example` = c( + paste( + "MH.MHTERM
", + "VS.VSDTC
", + "MH.MHTERM = [LNGCAHX1.HSTYP] || ' ' || 'NON-METASTATIC LUNG CANCER'
", + "CM.CMINDC = [MD9.MDCIND] || ' ' || [MD9.MDCINDSP]" + ), + paste("VS.VSPOS
", "VS.VSLAT"), + paste("For AE.AEREL and AERELn in SUPPAE"), + paste( + "MH.MHPRESP = 'Y'
", + "VS.VSTEST = 'Systolic Blood Pressure'
", + "VS.VSORRESU = 'mmHg'
" + ), + paste( + "FA.FASCAT = 'COVID-19 PROBABLE CASE'
", + "CM.CMTRT = 'FLUIDS'" + ), + paste( + "VS = 'Vital Signs'
", + "MH.MHCAT = 'PROSTATE CANCER HISTORY'
" + ), + paste(""), + paste( + "If 'Ongoing' then MH.MHENRTPT = 'ONGOING'
Else MH.MHENRTPT = 'BEFORE'

", + "If [HX1.STATUS] is present then MH.MHENTPT = 'FIRST DOSE OF STUDY DRUG'

", + "If checked then MH.MHSTTPT = 'SCREENING'
Else NOT SUBMITTED

", + "VS.VSMETHOD when VS.VSTESTCD = 'TEMP'", + "(Though the annotation text does not have the If condition,", + "we need to map VSMETHOD only if the VSTESTCD is TEMP. The IF_THEN_ELSE will be", + "used as the Algorithm for such cases even the 'If' condition is not explicitly", + "defined in the annotation text)" + ), + paste("AE = 'Adverse Events' on the early phase SAE eCRF"), + paste("BE record related to BS record via RELREC"), + paste( + "AE.AERELNST/ AERELNSn IN SUPPAE

", + "DM.RACE, if only one value is selected.
", + "DM.RACE = MULTIPLE, if more than one value is selected.
", + "RACEn in SUPPDM where n = 1 to N selected values" + ), + paste( + "If both Filipino and Samoan are checked,", + "CRACE1 will be 'FILIPINO' and CRACE2 will be 'SAMOAN'.
", + "If only Chinese is checked, CRACE1 will be 'CHINESE'." + ), + paste("AE = 'Adverse Events' on early phase SAE form"), + paste("EC = 'Exposure as Collected'") + ), + stringsAsFactors = TRUE +) +knitr::kable(algorithms) +``` + +## Sub-algorithms + +sdtm.oak supports two levels for defining algorithms. For example, there +are some SDTM mappings where a certain action has to be taken only when +a condition is met. In such cases, the primary algorithm checks for the +condition, and the sub-algorithm executes the mappings when the +condition is met. + +Currently, sub-algorithms must be provided for these main algorithms. + +- IF_THEN_ELSE +- DATASET_LEVEL + +Algorithms can be interchangeably used as algorithms and as +sub-algorithms as seen below (not an exhaustive list) + +![](algo_sub_algo_combo.jpg){width="650px"} + +The permutation & combination of algorithms & sub-algorithms creates +endless possibilities to accommodate different types of mappings. diff --git a/vignettes/articles/reusable_algorithms.jpg b/vignettes/articles/reusable_algorithms.jpg new file mode 100644 index 0000000000000000000000000000000000000000..71c8962b72db260535b73b51d8d8f96afb0f927e GIT binary patch literal 173421 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 &0_k`I&;Sn1Gx^xJ>6@bZ=$kJ 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�I zC|a;6T`-tdg|#dCz?Fh^!A!E@6E+k9prvh&quD*MWYTr^7)j+NAxpEY!mKbD%V{gw zUt%Qp?cVV1Eg@d#{fdUpm>$0u4|MoIe`jz1i+78KLK-iGafdAiyY@|iE(9aX|BK#s zqSr543PR}*2nw`pR`PZ^f%PU)z>jePdT2#u3vh)MS@$`-;4xzPJ=A+9=Cr8Lqf+KJ zmgm}Q&^PSB=y*ag%>6A0J)tE`v!xWz&xNOzUrhcYEEVM#dHeOO_uaa>Z3EbaJQ(c4 zFAmn0br^*M>UW3NNl0z87(>4Y_ih~WhcK~CL@6q&F<$#gIOIeY79 zUJg7)MC66$g^?!$OWaz6o|So@4a46UO1CaP%G-S%13FkE2UEBSTrUsJ3%O#E;_y;} zePQXnFn50)=hc6^0n? z3MFeE6Ww|puu+FbdlI|ZV^OS@@T%NT=1Ze1ny(YE>~o^3HpAIVH*IB=+nN0>l4`f)dm^Z}Zczz?E^9)IwABUP-lJwT8R7 zZ^&)PZoKNU=!b7~R`AJOw~fhx0k^rA!r@94UIBmF4Qg#gNaewkxcJ)qJ%IV4#(H}W zAkM!EH(8{rzJ08UYLY(3v5062V{Bt}fWbW=YQs3*gfE3gGcJ&RwS!~qH7TC?@C9?V z{b&tkeCFE4t1Wt_Z_Z{f*#}?Ra$9Wp`EmZ|jLkuO+BNU*$YgpB_Ng%wa=2cMsev>$ zL(c=$?EdHlBh_^tJ)u+pcrnO}xla4KIK#wSw`cTPU&w0!8JioTb&7r&RJ zPV1m74|{lRe9F&*duX+x1z>Q?1KP6$Y_)1Q(6yx7*in3l)cLJ&gy+Y80te6G(4Gx! z!`tqPWybAMhsM_=j6}?;VVGP^@v`WmxSROCM+}HIK}@6Z^pOLIs4#>GK3MZXr(i%U zF9o1VvRkiNH8w`r>DiIgbu_NnJ~MssUUyBxXX6sfb5_fRhd)be)+x!1<9S4>E^xJK zH+s_i56FBXxnoY$uROqhqCz}-+J0)9@^WlbpufK|Ui@a>H=Z6Drv3ENU9A`p!;PWI z=*HG1A&0QSTIUhUz?_zlO9H>HC`aM>NeVBUJ)LskK_WJyYV3yMWh?tW(bk0HCf~Pp z9O04)E;kfEA&1~wWMI%mMA73a{(zjIxa5Z~yw^Hs`Hk2+GwL#mT_q-xY|4CQaiMW< zzDga1UkP`7j=jXpzh?%F_Ph#I+eMTU^b`d}MiQ4lD0@ngpEuMs5~s?)Bc0Z4jzNVJ z6~Q&f<=xA-Byi$#J}0zpuo{<8GRa3NA`1|1njeWRW@!|YN6)E|QQ)NH4jAOw_*PX` zf37rv)k!9)!aZ!8)O&YWr3G2Qb-*1T^o)cM?`<7}E7?+R5io)@ZBk_Xo@Z!UP{F{< zz>5CDbTQ2b_tb1`reh67oZvb25}gkvB8)Tik|n@MiaKC0#WkPS9OHjh=0Fop2sZ8=iQv2uYPiNI6+ zl5#x1FQ0O$*Jv`!lby37jJj-G8$eG`7<`!gXUVlGnGlVZ zkc)IE@O&K`Ma^fSS(PC#v0_M&aS6;(m!7LE=V?Yd)29J;t(-lz1%r}ZHG(Ue zKoCq)-?=$=$)-2!1$FN&W_*E_8GQocfPD#NM?LlAL4Mt7^CLi6;dNV`0czzHRVy;n zQZXKzo(c|fC!fC*pceCJT=X+)crG8fy8GqWLv)6_k>GWKIc-@?emY!RFyz&rL@2Lq#hI)fON)p z?YI2_0h1sR^HR4(A?gnZ&ots$w(vuMOqiefp4eoilE;xhQr#<=Z_(>vSoP}I9q`cV zMP?F}5J}?>n}>9PIcT~RJ1-Jj&!JQYHX4_*+)zwWG5|cJccYYH2e)@-Y*MR&^XHyx z{cs21@00n-Ol)u zNu4B-C~?0zk>c*t`VtmHHTT(mMJAx;vx7We%WIroSVP5Rs}5;NQDp8l51%73(DLsx z#u#XnbiZ=>?iJU;kG40QZu{PP%yKuR>r<-SlneAz&r6{B69qlqDnrTanw2I&q8O*T z2rMIe98bw2>9t2m=X32eR|HnFUV>iAb#mX?+gYg7FyQ>MhR*R_k8#l8n+zH6ovZtnQ=tLwIRGzvPrso2{Z zVEiv)+N&DuiC$DdNnN@tYfj6k1kcR$yZcg^>LED=2oL`gOpoue-T7VgKc&-20|2tn z3SN8BOE$OcW{HBUT+@P z&?cZno}FNZt|sAZjvU>q9Wki8ufHn%FvDq==Ww|W;f}x9?3gR6DKFMd7T8(GIP_$? zdVhG8qSPiXaRr_7qw2DBr)`fTSzGyxX#e>^P>2_kT;HYIp|#-^uL`n`>7hUEMGeIL~$*W}*xii2~Dl}9GN zqw2WUw_Z>!5G-S@OkD&v;!IkUWNm_JLkzP<(odZ$2AYkJE$dDX-PPHiGE4Y2BcnE) zQ7C0(Z$1?8;$$UHv9M{%#aVNIySdvy-4@0;(d$G~Co7QlH_S>98m+^%Xiy-}48=@= zwSNRRcZ;g3fO3Ly;;=jqc#iU z42jRWF5O>Q>bBg~HIFoNsM9RRm+ZmkLQgokL}O5Gmzvdy)NXq@64!d$0zClVQW%F& zcF&#ZVeOhN2o&85Z|`>v7F}AJPGUOqXsWh>RrtcA(^p_0xL=W4D1a zpPS}!_@JU5pT)@`+|Ha|T@`qU@KLi5T$9}5>M02guEpZ>#Is2hOi93|{4VNfD20IS%!^a0r^t4_e zjg=2ZNm9b|;rk|x?>`nsd?#%T0GCxc_YLvSGE4v}YtX0vefq6LvhCAqV5xRbvq5W9 zUIdebFSUxmjqP9f+#Hc2?&afVGm@rb8)VD({9ll!G`^j#+LGzCM3Y;aL@ zePd@V)?1xZe$ihGruEI$l0By4r)*9SaNVKRk+3xGUtbuibwBoO(EPR7C>n$WSe^B# z9OnD82v&`HcF`IEOe#cFqcg#+tEwV1^kfw}58+92B9xT1=Ph%7}|+qrq|ld zzhCP1>P8sJ8%per?^jjT4o~R8_O*il4yuf$SdbpHAz4Y&NRjOJiB2_(7-gDsx!ikqx9Kd?;MC4SiZZw~{zs zE>M#Z-flb7J|W-*wUKMSDbN^y+*sZ!wEi1q&DJ~%xSvRhg%hd111z*eVkwhF9AmJN z_+Rt>b|i zX|FUC-1BWL?fd;)nY*6Id$j)GS+;=>rZG)<6hyg-B-`%Jx|DAOmp8b3`fuz_%nrd& zGG}VCy~{TmmFp!lY}34LCaE~Rhr3g6sUzfEdX9z?RTgn#f}sYl8eTA|9TJaq%BoH5KKR}G{Om@ortRMw&`15?G_O!{FF!(anTC3K<*&S6FNxJL35@0Ap zu#{+e-CGc|%+kj%Fsw@AMR~N$dpopQG=%j8n{T0Yfz$eQin^}>tbFS`hE`WqyX7;SbyvssrtkX{ zb?X%!E9yjJ#xld+-V8Rog!-vR&ZiVpAJNX%P!<*xm@O$vH^*~$UBS-dnP#8gOH_4T zOy@``iiGK^;Pa(|h%T`~)+G}fBwbHc3p-{*+obB~x^y_WWJVD$8L zDT!pecRFVGL(8_*Wj3&OHR_)f%RcRnpPMa6Q<<8wE30{tU|iEujg9_TnJ%Rh5Le?S z#1>t)yNxAUrVPkSv##na~>Ox_W?Of&O_tGG= zOOjDcWv*0T=u$v~vt$C+LVNtLMfcxdUSJ*#NErqF`GH_&;q;xRg$VKy ziTcE}#{6$_de0TDg9f`fw5Hm`L`fbgC)4(4C1WmK?K}3BOQ~Nledn?%&(#Nw2FK3v z1w1a9(6~k55NXfg{}tVQ>v>(Bz^Rt5&cXK*UU8KR67!rPPskV{3O8|_+8%U!R+6Nc zSSzY)6YXC95jQvKFUWg!$V&HS+_4TWr7fNXkr)Yw8|tW&6k+&YIB6@vDZ!j{tCRGi z?1Ferj9vJA?Steqw{uf}A;Pu2pXa@nV_dZ+1+^TiqmvVVOF3G`{hzQ-dtYMcA=a}ARTYq<4HZ`=_v+Y#r+RI2(>(Jo! z)H_H?V>zYW#wN-UxB`k3)5fR}<#xdw8fJnWMrJX;)2K^B7v5y0ZU`sKC3-(Ug4vRr zfUI_WV0wHSba+iq3W#?F#B|0FHVjz2{}wd>YJ?Nth0&3;9Y!+S40wC!1%2h*Xfq_D z|2z0EfI$aPY=CM%9Jy+!@t*NFV$kx4@-*0BSKYkE@A>&Sm0?cKp|&p1e+zsa|9=7_ z9PCq%0)gDGqlsarHALg^^AqkOmg%zrqdY&#B91W`#fv0|FwJCBHlS~QLAJfBu+*dF z2YI_En-~Ts1L(-Y18`{#Kyn~{Lb)g$NcLez5)5hyGu`1S$W5CQfGqGM2)q+NdG*Fn}3if+A(mTIetL=0shxl}LQE$A0kI zWfi+g>(&32Plo*0$NtAl_g@#}A7kl%sSAS1W?Tle z`FAOffQW4hO;?>U0ovwl39DHV1Mz2`F}`kQ&f`aiSO{`qye(&t3bO{7P25ICsX-h@cMjS1G)jkbUyrMEZEpRG-qHg$R{5i9y$4<9B=6mnURscfG z5pOY0FcJ3&TTyr-HkKw%Kt&|a!TnMEE5npVc0(9!ln`d5RfMue)a$nAsRl6kR~k+^tBssF4n8HgRr8?uW^(dRD}I~UcguQ;&6le` zr0P75vOFq&9(%GCP-(Vt?}@6m)z5O#-|unA+^Qp?!fN70IxAOI1%2L*X{ZOdquj_3 z_>%Cldu-twwL-TO3)7a2&OFthlvt}Zrbwx71m+{;M?X*;z@b;Sc;ORwNUgCL8~bOt z+L^4k$jh;YadsVka?MGzw%YX6@E>hXd>>79$4!Sp$lk&YcH#-+QH8a7)N__=v+N_81kRW8X{4h)CM`ew ze(o8n3~h0y`#8HwaN8Zs+9o$oRF;|aG*?=j;cugTqr?L{vTyX_+Jq=5Z!M6975VC_ zkw}-y{_teS^Wjy47s03^%h@Ia&;Lf-n}gjA%x8nEp>R10NSmlLyZeB2Vto$_2@w!^iC%26Ek=9&N8> z6_P{cWnkE&p2(YBh5@U>QluXb%Kcr1?G$6ahuu4)eWU4cXnIZ`%9&fkJB*U#mK#Z- zzoPYFUr<(zCx*U%gzS}Ih5)hA8XR=p{rJ@A?cY&mhd)=FP(&95yGSgBye=DAuWsGU z_x|Y9^&{Fd$5?*0bz>UaDi#XED3eIJp=r?%?|L5@ktZI(mfVtz?DI6A_pqIqQ`|V7 z3JT52n}wu64ur@_4m$%X5S*);$ad~W3fMSAPTY35H2bS1XuWjB-Zb>;Zmau8+sPME zq5&*m^tDfsn_;Bz3$4rW=uUkA)+j+rb?cE1Z|Z==rrcIS^IU1E4|^0tv--}uJl}1z zO}$v#@Z;njbVdvJm5~6n^}>je{Hl@efZ8_q%vbB1>>JtkM5|ud+2;m7t%S0_rAydL zm--$&7JX9$&5ybPbje!iL4akJ4ny;??5dIW9>N~H(VA?waS!ZC1E87(LrNlX)pIq) z3m>qSp9+`n9;J>^X%(EKh0Ju;Tl#OrQRFAE!YtRzg^uBzt}q@} zY}7~T4j{dp2jSI7TUB>P;6U3f3Js0_lJD3aHJl-jkJS!=P(LvRS1|oi- z?^Y?b6G-%oMI&jLHapU6P_bgIN*}+fSmU1X;a=2xQ33N)=}=tEZZiMhG4@sT7$GJ_r|#$P=T8RV-lKnD_HfkZ z5EA}IdSmMxL%&&?hWV(DoX_n~(fw9#@W)m!Z~!&W^hO=!qd`MPzHXLVMn4{a|LHb} zBzYr%HSD_?>m?nMl5uEdMvx=(jY9=dcSEq^ZED}s?i3W&c?4WAw#c>ek1brX z_}aisz2JUget#>H0pT1gWUA1MTMlPeqD%&s>x<{DYpkyiJJfxuV~18f{9y8+@7Vg9 z#y2JS7cp;xULT!ZD>fh|(*|51041p;T{NNjb{P_3F}$4wmYp+%<0(kOjHo-yb;IDx zpS9x(>HewWiFU^gf8L)e|2PL9$6M2vfu~^}$fM^&feG{@^jON+(`L=t$#b~!tO%Il zRcAW0wjk|i#(7tZH94|L&V5boxG#sEhQAUW#>YU2Ve1vZV{i+gPjD{I!{xiJhf5kF zUDeEO3DNVGdbrvtje#5O6HAwV=bFj>)?L<_UcnGB>x625N?zh0nFof~06`d=Ll!uWD>63zH#3pg=@klANEqakfby#Ag(>QgusE_>qxWAAmP z-`m248pomXr^C7@7-uiIc%06Eh+2s{sbG+bk-)Tpj854s{$vG$4tzOwYCScObHhD zOW%3z!Jh~p<4tn1&iSaOr(Ql(8si~>!mx!<0Qr+`!0U6hX$RU-N-p*-D_VHUo*AzF zF;i{cjXhEAlkzQndceI$=DMU?IWcZSQAFjHpAK{1|3pZDhCKCJt2!&D1bGm0!DWRV z(qfv;fBf1a{1loM9&QVn$rkUe?>Y!Pw}J z@AHMDDh+R<^ibk+Uz%amB1mU$1MT3dWX+Ac_Z|K76Z&M2Jo+SizN2oBN_n*9g_$M@ z@-HS0Y2Iey^9EL|Mwfh1g^-Ic4LR_-3ls8AgCcLzZ{Db^k&u9AEh#k<@-!gVsv5NK_JqCH%vP604>guWaU)^cq;#Z zyYAQwRr~xa^MwzF)#na+nhLm|f2DrIg#L-CKU3h{93k`hijX%irTl(%x|NN4-4S7W9dQ3e{5vXlQXr5D9C+ZZY}ESe2XSe z>Ps#jl(_DJUtf@_E2}pUdH40ZXSgKzeAe;Vr!i5Y@BH!cM!;#*W<~NwP#|-AAws;P zD6?Ta*dau`4_-3eZIq7*I&oEfz-_v7Z}z?u#9Z9dEad(VXe~^e1L@9Yl$Yc-_9;XH z9Kr-ivO?fk`{7qZ+p=Q~QkklB1kBCFHazo#?`~s6j4|j{y^{#Nf6hDxeE}(G$->fq z)A03%kEhhvt7W9szC9yN`JDKYbtY2Igo)qFEyo1*1EF;KSgT=xyb1WSLwT|zI-i$s z4m(?hR8GCegukw9unfFs3cjf7Ycl(CKydWA)AIedK(z$Wk)y*`Fe1U&lwOAVcK}+Z z{8*eWLWESfP6zDMP`x5OTdd-*luPj^C%Rr9((Mq47J>7=k?0Pa<37x8#shglZb5T! z>$#CYoNr6))e5h+L(i@lhq+WVq$@-le?}E|B=fQ7{<}^3@7MnqHs$|?Q-F#1N~$xTheoKW!hH?>VgqNPz<@$s>vSKehk6q-+-tw&^lguo_r`7!3pLBhuh zy3$5;v2u*lfjQ-&dqgSN<71WC(5Qqq>v3AK%J%Tq*4Wu6|Sok-v#d+b=6HDm)AL0xMKyvh)r?{3G(dFs<`IuP;!Sntu+)2n(iHVHUR zQW@K05%+$qw!2mPUJAVVXzPm0F&ahaF8}r_-`VO2H%3?-_+n%kv{-S3rp+!2T_1NWUqd+#%qr>rf;GSz0imtJv;HN_y_;&sxylHsGj z=_We;xq%hw(;8Esvn(dda-zmOC;|6{g0QC$}%Yx z^4r1a_&RFNuKo*h{V(&5|NUpYAZxp%b52CB zqhRmEy-$q&Sc5~1!u_xx^Aorcp2ViaEcOKcLGbZry}8RJ!V55_ZGGXRK6-@C@>GSL zv7AS^GO%1uz#xavdy$iKP6>|6BVfZLApsgv9C-G%;rD1T3IfnLs-ar$$_e${leh(^ zjDVqiYTPQ73q(wT-Qu3FsYX{G>jAcl<0NU`MdYM0x41s?=;U=)47I5oz@4*(+Z3Ev zavOdM_*>y$P?FA%Vhw1Cbsr4E|A1mVrMaJY@+^o2U6%k@0g?O${&;)u1GH|H+C%Pc zZpUf8RnV_{!0(EohpxZA`#O=2P67tCcOgk$`#Df5BAvH)42R&IT9vZLw38cKvz%!m zY`5X18w$76O~fe{QtKvmd}*kL^Y39BuwIoQa)hb10ebbjNDzRCOVy=1so_eqQJgg5 z;h_0Sb4}aVUzUFS!xtW+xEnc>P;8GHYpsDk4w?vhjJ?L2#7J{&*haj*g0W77;FR;Y z*Z91^8uLavM0y~Gdcm-9)Z8VcFTyE~sDC(tS=JNjnwpP8o^86yzN zk`a=d3&{Gh70|T6B=F-iA|2`#4^eOT-~A#)c&Te4YxA0eW?g1mbKoqw`HY0HF?kud z*)q8iU_r#SWi81*Du)tB!;<8-5=*@e!jGQQRKTljn5E{<5WfS2`XeikR*L!Q(}WP; zg%v%fOdM^lElA;AeQmco_PF;6-zlkQzt2~BTY9%Wjh89rzw&3w%YS2m8tCS**!cX! zPedQu97KpH8t=KQoEAhdwaIi*GT8F0(0O_94UmTtq&zeV?xt$cpbQ%(iE(-bRM&h2 z>192jy&~SJN7=xteam%aM<^!PT4}8AajVEW_E6RHL)S_mx{&xrji&&OsTjvr;W!O#q@ zBB&lP8(p4O{m6381|sA*zki5@b7|DiFW=T4mX(;>%jO!ZP|)HiDTa9zP!&LuNs>Ad zDK6TZC;CfzyicevA-k~91^aF*EI# z9$Rm@6;md&b2bv&y&r8G#&lhdxEV&f?5ia2X?bblOb)&$Qll@VW|u}^V=i-FtN+0Z zaE!;cGY-O@0Wsm(EN{*^sGnLx4FWF5VPXQ}?ZWg57ZtBSZ{spU#kcT#*{w}LIvK`- z`-TIdi=j`lZjX5m5Da0o8G7<}Fn)an=l#2xL_-u}C_zogN#gO#U$*c9KuL;n0V02i z2^<)Gdj9Gl`XbWFc~s}PPNI*G?^{YhSoYTk_?aG;dug;%i=EvEbp0jOr~Q*sBq0<6 z2Pmu$vofqdgd7*K5?VfPV*!(Z+%0!q3g0&c6R!Dw_Hw#*tt7D z^n@K<+hwc$ZuWFmd-y;R${{*$Nb&-L`PXB8Qi7ISluH-u7MXd_ipWj5H}9!U#DTwx zGA#{hQ23m1;-;O(xcR!B%ca>-RCo2hYmJD=+h_Zd`GiUFDAQRvNsq->vw%Ah* zutd|Kwp_G@8lCE?_UFm7?Oj%A)IW^t0W~gFapwZ#d#mXu8@KP@9Q$2%(%i#KgXj!qScm4$0}y5M}t z5A#xULGLhh+s&t#`fhTr$5keBPz_}Yu+T37HP3yw7Rz7;GP%9E!FL186@cQV>v4477{BAe>UMO5=I*Ms;^(>O{ z3hQao4R7jnFT8qrkQdf^9>8!gFksV|oI?SL<-Ka^!=0`=>kgjop5u`f_E~Uq>n6!( z)8_ZoQB{Qzu)=VkANEWYkJa3T$?PLr{eaQHbqxy4g(WoyIXJj76Rwm+N1?vOIK~PT!6mf3OAnQzey?lEH6M;?ogAp{s9lh3c>zb54+p& z6^uEx66=${`dTe~tarBU*34QpfNIRPr#Piro&$>}{)?xHcJf3S*chw*!2CJRhUKpvzN~{nwp$_A$aBcqbhNp)@>D)Kd(&|?^&ob)X-59&dRSG4NoxJE) zAPPX|^V^zLvDvp0wbF>|{GQ;g_*WBIhP8|zEGIQsDGqIvTqH{b(%#gLWL>x~vQ&49 zk5{$U&H=HnbB+Nn95k!hnb>VSft786wQFdqV{0>ZAFrs~*?}#AVY1<{cP=lhj!YxI zy4@?p=#gg2Ftt*&eQZ0FK3y~(toIstcs~yPN%Ne!WfpPYf?(C;e7Yg)RF!Gip2;Lh zFRl6YEw3w0sA%C{AQggcgB_n|X0ntRXpN+Q_++V1Jy-iZ^#U~{SA&AyIkU_p)J+Ut z^p;E`9uy}(4ol|a29BV@sn*I}f1Nstu59*>hBUeLPO3zvqsCQbB#MY}XPZRGR}Xz| z*nECMSN|_B%;*fJ4NUUSIK~1F-uReVH7T}fcIRfq98~8K9Fl?yA&EH$j8fn|$qL{{ z4OqB(G3|nHgQL)a3t57>C}8{-ZN+)Ss(Qn@HloH+DDiI$tfTfP34U%p7V)uI^dJxu zm5_j|$JXuotTTsXTeO&eTJRgRQtbK8iSa1R%^v{Nm3?CjuVWwrzNt7A7+2I?git-` zt7)#cQE=^czV3BWb7FG@@eJ+PD(M@LH3{3e^*lXcm>TE7wcO4d!;-&H-oX1SxUY@QugNfR3n2%Eh-Ft^K;b)y?|igiuEA2 zGiMLChJeUmwgO~BoO-ae7yAlq%6{6d5*QxK99Q@P)ocLx6bGy$DU;~t0rs067=(} z1VF(q*Ur|o*OROK1>={Uio<tkmDLVgnX*46w2RFROQ$mv z6)b)@nrVC@^6^crEnse?tLtducOKnz4A_B2)DV6Q=Tuj>Osuv8d?eBLd1wCNyV*Ro_r zL3y&Ak*T?aA!7TDJA?BAVoWqKaUZitnKXh4jq5(6ApiLfmpBOB!m$(Dez(6=Il=8KcZ zya=xR%i)FL==t<+w@%Op$2bOlekP4~k%MY&&N6frwwAqCKN#XR2~sw1NYPU2dHQO4 z_@|{xz2B4bw2q^0@&;wRZW1A^qe?W^=kt!d6k{*oE~O4O_r2HngEk@@RI+-$##u;4 z<+4Tb0b@%(57Oypec5RrgcWbm2Op=rJ5+qGLZk$T|I&HA6E1I-6RTv83NGRG2$%1wgVLVDy55eYWPq0 zkHBDHyrNy@LQ}6+3cpRz-LmwbJBa!c9X0WtN?e(dL+P@185PW%jLmkN#8C8!L9oLd zT-knTJw7Mw(W8p9jYLiI?;fRkt(cZ{dX4U}JzB`>FlI4JkdZPc8q1R+wnNsf(qPn` zMAhy5JEPUg#QKj`FoTp(6U7TRch$}+Xg-Y!7mUdjmyHhbzS#_&EDqa&qRtC-%-Gto zHgUMY@_HRIRWsoEs$GuN?<L36h$Fyo>!7r>FjJ62uH|{vQxu(MC*3Ot6us*Dey1efoGJ|KZsK|%u9VxI zy-kF~{ zIW3cuOEUlp(RLH91%=f78vT=|VF{9X;JM6pu*y-?4P`n?&hgwB^7JJkxV-4ud_Jx3 zRaqvk+!}gA*&`g%=jNz-dr~0HJHI_uedUN|x2G12Dw+iOfQ<*D93kWew9N3IUPMyy zY5E~g;XLQeQfF!J*wY*5P-)t;8W9D7DDrNvKb%;J)rC84f_Cpi+FNh@wYTQK@+%kFf5Ci=JLtNd zK>heCB&CK&Eku6 zOal5865>b~O`-9|O4o9OR(3uh{5g}b=bB#%pH)>a+|_!2-0x(J=cCu?@1*@49roo3 zUeA*=84D<*5A+4}(U|M(YqUDECgq{{H?4e3V#5Y(dwy$cw~&>DDQHC`vAVWDbqDs~x|BG<# zW&VZa7CL19aA6syO@kB&8na8Ls7!OE{ zc72D`_nl3@v{R>PEAM1b=66R#xf3(q%Y?C}<~@Sul*#=fK(`MwQlk3;U_Q-$Q9~V< zHWt6FtYzbOx=lO4DSwtf zF=V8O1iX+!gb0OLX?JLWgR4%ep1tdMS@vY-!#t_u-=M3F^W?ZxzbOhzV(DR^oeJsdJBU}zC3RQtfA>+H+ zd4EH$Wx2eE6V9%WH=b4zRo-{&(4B*PykPWs<=6)R=;8MHuV|js`nwszSlok<(ko78 z85RYyeq*QR#m*FRNsFqlEn+WPT)Hg5E&d7h6a|DE^^Fa6&Z>(U?8|aT6z$(g*qjuL zyHgmw-X{F)5?*tNbRRM?c9nGy;)_%M{8tflcwY<@OHWfv^_qwu+-f~ToLsD}Q7Sx{ zd)GOOT(BE93y>#bm?B(kGol1=dJdZH%^d-2Em@1`L?UjF;HFe%r?;mgyyjmd4yItKc9_@s^dp)aDM*YJT$( zOQmmLki5$QV8bD&ZUjrIdtHxh#<|hV>SZXm)tSr{*`LL2tJ#?R*wzsJ8DMwi;2Y0| zybu`k!@JOo`tVrwV{)$!(!g#&jl9iGL;10lHP-bik&;8*R99IuYe9>GdCO}NvM)AI zW%||T3dcQjCuh}1+y1_!)azTzPw(eQ{hhgz!V{u}&xy$SfW)YB(mND^7* z=(LED1d+IPYB)sJStwoUU`21geYoN?(Sfu}tAaLBtL>U$i};tP6uX!11Wq;y1_q^W zC39@KQ77peRX|&Om0Pn-N?JRC75~ExGp-p<>+b{0AB3Nuw&I79avHLJO=(X%id6`r zoexD~!{`;vcGhjUFMXcr{G(aUcNQ)=By6nJ?aC6Xs95>bX2%&P!R6>3?$N}tiv^yYe(^|uc_ z7ti)w`e}I*d%wvjVqYENfzyIAM|SET zzO%lpegE*?5yJebo+Ft9%`$$XaMo+RV%Ejz1c#r#E-yc{5x6*_9&M@A**Ueq+EP~! z^b1%1m>*rK)u-_3_U-S-_)FM^ynfOFj4vWaUvPbwE@i=MqbJ1C`l|E2nSebBO+b2{YW& z1tcs!CeMrR002XKLG3h~2)F$uMxneA%ob($I;>4gOoaK;r2FgiYd_;W!W6`E?sQzKfd2CuT`cU7)DBT^H1EQsYw0^iDMIbz z$H>nY*YAKgnPJ>_!0|M>c8i+}7Ln>y=}!;>#w4RHa}a4Se_cuI2pwj2B{a7+GLQ1A zSlDGj>yql-EbVlcJ!YU@pbqs5!LrUItUr2hHM{FWXO@(M1d#W~+MXboj-)DRx!2+G z`7gtGYuthv@5h1uJmmeoxl=`(O(d2%TLcZ%dwX>H_p?%{%CYlm7k{&9NL9296PD?dhhJm%1)OkOWA8ZoH0K) z)!hY9WqIORTV(yTRQ>yvqknU_Ipui22hN@QEBxS(B&thJM2w&JG`(;zbRHqGJ}tv7 zFxrQ-VLqbON3!ClY3Ux#0)DQmk& z%vp%if7PWI$beA9nOJTqkPZQoL0Qe714q2)zz3?)!mQyrH5@V7p1kUMA5YyEZ|b97 z1ifd}@kDvtC-`ob*^LKP&+)^UeVDe3kh?PiEKxG#kPjU<+VqN5V&!r4Z$G&a*gcQQ z+=I8MseP{q35MS>>rf0`(s8`)y>&iwm?H_SHw^D9gg-Yr1?jr9{pwTvsA7}Mocp*NnxXVedht_ImPNY} znTupu0_*%8HkAuroHygBTQI8t4Rs1C^VSE*{scij&5ZIZe3 zQA_;PbJvZn!<^0CN&)I7>pZq2Lk?xkB|v;yWIF)!6wBF49gysrE&uEC7c+hz6FLg& zqcIdDek!)ai4wVo91OcjGZJUUDcWHjMXEA7BEc@|0MSkyJH+G99`jV_KcB zNc@|IPuQDjjT&=wsOo&aJ4>_*iKJzxy~ZFRP_GGtStnW$wMe0zB&Xd}$U;Hhme-X1 zg#Jxi%8c}lJn{I7QuLNh@$}LeO)Eust*!Kl=mS;qk^l%Jz`E$c=uc`kc%!Wc+*tU7 z2hElS(;hd*238ud-bBG~ISt1ec7@Gru$!8Gz?avep)=H>q%sK z3jhau9pf0IWgrQv+g4Lv@Cu8vvvj*1=U|A)_oCy(jyWZ`*2 zpWaTQhsP)xPtoT(O4jV$R~_HErug=$(}n`=#76l~@BIHZ6qa=#d&tevQIY+qQ7maua#S(< z++JA%?1HqA%~{!$t*?4p>pkdu?Ypk--bsfbr-(#}w* zGtgAER2&f80(cyf)BSWQ-hmdjVTJ@Jn9-FH0x+hg#To`r57igxIgVzQ4Lkaj{K}<6 z118Md z*n;E+rqdq7o0JJ3Vu3~4r1vwkA+xtlus|L5?NUq|0DF1Q9Oj%G<_WV99hC1yul)YL=;y2kPvY9{-A4u$6GyT=>qYbx@B8%7WLcq2}v zr<`$HlATHSqTd1?U^xMag)h+O)`|^(pnMqdTU~#dP2pv3NGEH?Eg9v6;#1{NW;;!_ zz8C68_!zyq^KGlT#9PbkGv*x^&<#W4&d6h^4Y2X;g?eG|XLs%svxPIZlY*81U-c(>?t`*YV|N@Oj` z&+HwZFqB#p(LO^r+f4L4`f+SiXX^S_(ZiEPK91@88$acTr0_3)&#jp>_Q?3QcI?q9 z@L4-AKOjD(%>Z(*$cc&h#LeGEh|YK-?`}FKc;x~Bl|!Ku+>>Iln9OG1-YB$_vTL?` z{?dIn`3PTVs#689^n*u=q51KUVHKXnpg9Pvc>6@L!=K&>x9lX2~2*PUV zkC*8q)t`o`Sed4GId9xEi}s+po^0D{f@q`UxfP^`Do zfWGfCnYMrU+VH)xV1KyshvwnC#JZZM`0rlzIR(;hx}Oi$=AsDbHVzoL;X&wbtcW_w z1yhQ2ggdTv{naj(9aRULyjzvw{QgxNFIr))UKaG2?xH(i=r42WiQFf<^q_yO5jV$) z)UK+swZAqAA%<4=1AnS$g4WHW%~z||q;#J+mK-1!e-+Ze`}xySuSfXz*@7rOOml9gk(w9h_Gs%VB2AWx**hLECNIf~gO(Vj5}m>Zpu=nWrqg+Qb+^V% zf*uMbZM44+csiuz(*FTDHowd{R>72GSu#|ZQDgNO5VE9=cbo;ouZ4wy#Fgo#Sy$&G z_9a^hsSbBI*(gsaJAP!}I(lZDZ1>`)B#PI>0fdavNM4VZ$Q_2FZmV1~LyQrcj=KEL za<0$Eo^h@AS4C*>cD7SvGxGg+=9y`&8qLe+E%sNU6oB_V1fchQ7{Y0KMZ&ho^%=*( z3i?7r>*=u&uOpMDB~$yvohRGgc}$ri;3sd39y_1>na_-mPvE!b+U!^tB7TN$D?0Ai z2|3<+0X8GP4H2`PV^{t8ad$ZDtLzT_+oozGvbGLjxsTV}PMW@b;7GJ=5acJQ-Y>0H zm-7(#?qCu0|jF4ltoZ zvy^^TJ)0h*!+1hLY*7GTB*p^4C70-FLu=CldIBAJlw9JwfI6t{l$#|~iSV|y3Hz0B z;rcJNyd&o*Z31sTFf}MDOuc_)@&PG*qOPnqfR$B4&4vI}{gPGUUrF4(JQGJGl{Bob z7MOJ|8ee!MuQxkj!~WJC0lIk`&=}~^a11LlNd$9WhxIzBY&8@DLLumR&WyNt?46y0 z(TrEWhK+C53`-ynRiSXW;Oy1-*6q0MfzU2{`lR9ZgtmWq2B))Wy-E*?WO75d6 z=+jg#1j+$308R+|BA*;FPE~hTv4U>Z55I1xZyKog-!?EGYVCpT z9T3f=eYMtU3-(p*JDmrqF#2~3e~j+tonttWNs?hY)^aLX0nB^nFenr6oW{Ww~pQTgX4iWMCrkdFP<%gaD7ZJy<|Agdy!AY{8YKcWeY^{F_hJJg zOQiy;|9<*hBg;cFFKEuqPXXRR0k($J z;gt;3&yrwaY7iPiaI(vq}G+!$kvK7VTENQvC63&rJ3e zbQg9HCP3uM*ezC_$(|a?BUQ+*js)tYhpwDcr<12z{A%#XhBYm=N3Qvi z+eyiR$@X%;$l3GneSi*bwiraWwV`-1^H^(a@UMUPBtpg&34k{tPstpIOV#Y~#;vv< z8C$QfiZl}=KHmM1C(|AgH(WC&f}NYksjIr$DLa{HrWWh7?bzg)NP;rh7%91m3YO{rZb(UqCjW znLaUsXoiH8c4(;vnIb~U-QC<(9ZpvkKrX!hxUcPw2p?L9)zAFQt>6BKkKYn-z+}Zz ziuEp~o;95aykDf+|pdnVg_nm17lz^T#x z6jTr+Ej_J-C1A&T`kvKvKO2~f8Ic|t;g}YxoZ$*?mN4u>C-zIdi?r)8)%|lbPmmCv z&>;Ib3PLYWnMLeF%FA7}03xTe=k^!D5MiO2ZFAaYsh)gic9R?*kSF4jRBeemljuRO znhGH3&|%e8FcEzLs+WdC-mcI$t0@Wi&vr!wwyU|;f48gLbJ3N#r!;cew`#LqMTz!+ z07g2N_JY*Vp8&aIvuABa40W}Hc)^nO9g0ggBCw&e z)a|T9Y3{9Q$qN#^7mWKj0HKn_@`U8(yu^`7OZ0A<5Vb|YVMKLYDRy|e74Xbr-bJoY zFZKA2tiMW9_lYaGwD2(`wfcv`3Ic>_y98KniY6Az&@I zlya(T_;j-W$jE#3S1rh8Us0_d10i=rWdD}aFjlBl90g&?(l>9g9O$hbY(0}9vH1of z)c2$Jl7Yqg?{B}Y6q@P`n$y3pcfQE7d?mX49@FO0Y@bhXfx!mx0RzmmnwFu<7gg(O27h$%*ffSs!-gWcU&T!cfJu!QFj z(lERq;+}di?eUJ&5anmPG9mZK-v?4S*wG$wavOi9A{aa91N4c_+~|z;=NNAv`cf}X z!g2&cxcQWsg4dv7VC=B`lR0Cai7nxl9fZL28TC<4fFFmHY1zaeGMG53ov+i}X%nu%8lQFm2- z;RJX>3G8D?Kk6os>;sjTX!bhD!a5CaPqxTyx7b@9M+5`29Gcbr`nZj+E@pWol0W>K zodr3;%%P#RD0|ktJ>Ll2$+m9I!JfGK%90v9(!Bd|sO+OvLrl-iLXf`7=5NmT3$lTx zd{1cqp{o7wOybtq|5HP53)oToFE%m%Z5Q+3uM+dXPF{am2Oxzu){D8yPOQ&+n2jET z7)(Le)p4JXuPtADfxq)^s6_fmg2K{D_iN@WQRTsHxPjLYJY-7V_hWraoO1N7MNc6A z*?Zk&uVY$xSjPzB;Ho~p9X4@$alrTJL{zb7aMPPUSkxu5bHs!6ayhcdk5%peQ#~aJ zSi<0_poGR&5}(>5kvd$hXp7P}lA;Jl5Cs7Z?C5P;nRA(BeZJxi=Mgex(!>zde}Hvqw&6eCGEM z0iaMXMdUDZg`3+d&v{7X7I9qW?h_f{9m&wg=bb&Ry`f>1&(zeaw-3CEP_arW>RB*( z1b*DxqI+&jJZyBEmCe{<-sM&jY$iqRfGKcFd)><8HT|W82+?G1uOq@9N9V0;-R^zN zAU~0t{E|m}lvwVpOdxK_D+CrlP&-WLXTwb~3SI=|bv)be7eq8TQl)!FWa$T3Z?^Z- zA8RJ1v%Z9EJ*SambYg^-b!pT__jqx;kiFB#TVh44pU+6QICNubuw4KuE(w%KhyLJW zeb0=6b>@3eN~P5`d;}Ioy$VyIUK9$#WMxqH9kiI6mX1opE@w#eh2G?#nZF!{jao+A1M;0;wPnZdq<+?k(A zKp)}g0XL-t`E~hbGoAZKlDSslaaBGIepgLh4L6}Igb3L?q<^Hc=h2JFAR|7*t5kE& zF(0NjYqTJ?bq^z}{>c-Un~EcUj8ZOz{yilxG}>$jpEFdSw;KW|cw1lTThr2KJ`D3Z zVIfl4A>gx17E(PX;ySi~KvW#d{K&v}+9Xmq#RpQ%yd){e=yo2n+pey`+8P12EDw-8 zT>HMi@~ihSZNt1UT>ph)kVyRzve~TYiuha}xqmN8lI1%GNyUh3km|sCR5kT2mmdi5 zr!#EBv{-BK@7+f#U)Ty}@XGhy$8B%!3zd`_Z7fUG&q>*R=5AKoHLmdZ(w9q@6i)8o z7n_(bfn(GSJy=lwl#xN5iQ=6YXVranUBsu>V}XnXYqQbs{T+EvHVVsxtsM{C&pZ`( zbXCp7#fLnYZ+Yt+I8}<71pI*zG-c*UvoAxziSG0iP9tQ9{c621=-@^eQ9WrjDd%AP zkuZEGye!w+%wA(3sUXV|0fV1(*n2pt_qgC60z-HX8^x0_Dfx*6&WCj&e86ad+|%Es zd3_{OohpM~Y6Whuo?wI9J~CY0&e4=jAgOXszkOR=ZuxMSGLej6olB+BjEOg|nDA zSC4qY{MzORw}2<**f*1qJjJF>f?FaDewQ3T4$rno`WRL9vgV)==)2x}3UEZVvL>L6 z!(-Q2T>5WH2eoXehDvj~J)rJ4oR+$ys}D+ifLM%BIp=FG?lA>j$S?g^Oxg zx?KjK2}TfqoC+BuqKa~$Q$)oBJmtoWK%NuG29NtwrS$1EYE`8S`=;|^cHfw~V(RN|FxAnE1^mU+A1S6zr&B)$UyPU);(z%XK*^bv^V!=Cw@y z+OBWELO1MM^qv4NydakOTz3aocrLGlO`?eik{ctdtIDVLBAeM(Uq=1!O`NW(W=*)k z-hKFfKropT#;t+e(MX3#lL8=#r26GH2DA)Wcasi@r-6mv{rn1kyR9NkXnPACvnvsl z%*)MVTvfP0dB36+qbQt_V{{PsikE?Q5GZuq0KYYcQ|#&NPFGV>!a_#3*eYEGT402w zrbKG3bxga~6kp5wdoJU7@`IW0Y|Cdin*0U+-oq#T!LrU0*P&IcezNBQ8yRz`UL1~~ z(z~|CR%udGdNo)ZvY$9oeKNgkZQa}Xr!aI;bKhMSWqkK4(*{79HF^E6QA4d#t4Z`3 zt44Z8w3MUnfZM9yt+79gBiYX3sWi7$I}J9i8HK*Ahb;K7eTQ?N(D;tbi@ z{y2`Z6p(*uP2H4r38Y2t?FwKw`YVtKkiX5uffiejVZ>k7AC zD5l)(9mK}GXoV3q-0TmX#QLf=gQg{^qpE6PCk>cl#;N`G;B5`F&)6M&2pH_ zivr}`t$Ul;=!7`~VYtK1PveZ;(Y(y}A9`v{ojksLrujNbxA8GcdpL%Q4k8Sr~=lN_vW`PZdD3Xwh77ciUh`y6zM?X_U zU+rMu?{}yRR}1Ez=@K>!9NY+8&e~M%dU&!XeVQ_N@?OqjPJ^Bs9@D0RR%Mw}K~I|n zsMvTJOyYg{{d9D3t794BKKSAsPMuLr=(Eg!DP1-)kDSkP!)R`}{xrROq;-~`YiQ?{ zgsI6`pJJQwzIoMS$un}U9K-GelwBBHx?tIMc*d@!c=>kzQnQp}7k>yG4mG$g!hIJY zu!mpqvw&B_^Z%%t7f8Yzaex>$sacXq3;gSd2Y=}sLK04R3ORAHT2P={exi$a#h+x{ z%0imY-OQdpy`icTYkicp?`vsU@5GmGmT~4nLPqm&`4cDn!2g_>{`ch6RH6%*=XGiT zj#t9&0nE(Ooof5(F2TERB6{P++9Zt?5t+}$W1eOY*b1OU%%Sg*6W;8 zYrg>$lq$Uwl%~>DnhFvT6%ZjddWq5@LX;XLB#P1n1Ox;gh)9zz(rcuPi1Zd}f`EX5 z1T;ia{Fcu-d!N1c_nv+B_{Q1e8{?e!4@M|US**-8*PQo#UBByHV3R}3kFjH!P&v!= zT!+4~@(|y^;>BZaL=Hpg69`#>&Riyw=X)KVn$I%1(xgySbu0t392Oa7E6h~%C zYogeEz_7E#kV(tX9(5z_Dn1(2qIu${c|V)#!NR|M)v6vJzJDx5gxze39ln$x&Eme( ztl5!t1UzFzQUA`>)#ZbqZSwmV_8}9?NF#Q;11k}j^b{kci55am0X261_Os4* z-xlO3ex=$3Z)P<{xc^{n{qVxTqvTJNe%=suzhj{ycYpb%=$R96Ga=Lw0Q7HRi) z-R~hIqDU-0Z~XU18ktL^OM7=%6BBiG_xD*ltLC$+T5w)#qLJwP!?UP@+HQHSPpurl zV|9qOO+e687QYwLk8eoTN3f0o4vIytP5jU9fH`T^c!a>`9Y^)-?0X6y3DGZ=5|vc8 z&kS=4d#j+R%#%uc}HnrSzr zoXdKsF>|*&&v0bt8LUW{#hvsT*a;p)K)j%m3{^_*Q$m~dZxEoiJS;mN48iAWw@f+Z z*Cj!#9ct8@g1Ng$z&7`o@~*_OGSaWj9tat_jo*SsgX>kk&l0>*M1{lSEne|#hE(ciRZq)$UlB0g&$qce2a4d@bfrHz-uXcLIvAjJC5Ts;@ z5J6Tiq;{`^Y2KBqOjDs?fx;WN4o2M0c76e$T~j=O2oRA<$A%ZqJ6=VVy?X9Wyp=U3(?GtfwuIZiD`B8%}@=G*7kAb zcXc@n@Fd0iaYILX#N}L1_qo$A1FMAN26l8Pa;;A+_uNzPkiSY|Q@>5W1rDUh>#o-n_Z86IKUwK;fF?Ar|+Qyp08oIx?0dO5X0qaN_Dw7fO)D zSDGjW&8TW;@2pFGO53jj=`H#20E9@1*6bJ2*7w)a-I8zbZW4hcQhnkSNs^*Ky-W$| z!m%S42}8h>G6pMLzNJm_r&7NxOm%0;;N{A+AI{m&EDQulISTTP-*CDlI>J#ub+PU{ zjtjGt%{nz1C?JeFOB*8JUJB_lSH}R-l*nxZb270%u^~*O!q3+&OEmn<2ir@op*&q{ zPU$Y<=#i!-V6dUPfLvdw&@}6F?g83L7+bT7uXgJ{NND6uz(0<(h(=`41~+ng_s4mwB5i`Y7wqunz0)=sNq zt>bp>8`8eKrGlnszNpIn#K$(Q36( zy>NXC=Y?-}oz=5E9pMjUcFnjCA8R<7a7I;T`|yvc@3V9z+SpPtDV37Fyp^w~NTH`x(9N3mTys8VAeI+fDso+I(ufci+hm6>lc)qtLf1D(5k33wl)ar)Y?wg_8%m zFrv!LLPKd<8Q||}7oGOXsvC-~;~MkZ3X%p3IZ5;BI+(|s&)gr%4lY`N=^`h&R;K0E zAeRi;QMYNy6q~M)EG$r~ihk74m2hcv=~Dfp!c{Cv!}WNja)guN#)=dq``+S8V-Vzo z<7pb82m0_AyfA%oBe|v0B=5C= z2(5xJXjE8Bd%E-^EWzfIiSoFXK)v0-Qv=Z5r$?u&1fUCVO5CkoZGOmxT%+hF_!9Z} zZ(b<;3Rij&zt7#i88D`>18>;l~)`S$IB4{wCKwe>txP0!tASUwJpwX zE6=~mJTTfiWN_qxk%YX|%)h}Xs%BG6;zi-k{%N~zws+%n&R7@>b@qwC(?k3| zz0PH_X|stxZ?$t@YGZfu+d84)D4NLQB_22>{4p3fXg()~F3>#4p{?i8g?Z)i%m)|nUa;+?$hC*8wHvyY%hoSOBs|}n2A^Mg?Fz>!t z&oV=PwNRHiS)-+4Jl|Yx=Vbdvb8A^qJQPmjA>pk{h!9SnlcKeQ)}g*%OorfS^n@fR z@Q^#wr0S&?#|W^B1d$W;d1x?yO#&yNX}C{BBZRBS^xd#=|^j z0e{Zk3TY?lcI$QCEeUqMN1ENRSS&yK2=dY3<`v`y16r>p}fzu$j7pi3XWf~kvRm*}#VmuuLA|Fj+%aCEq!7a*e6fiK!ME`)|U3PmObvK8^w9CLY zs2T4UX5Mc+@~hkd>_vOfDp;mMB5(iEy0|YRPo6AAx;-zr3m)f+HZUhFN_?|!KTb|y z)|VB*t||e3$289fui1RXm}~EIyMimTU1KmW(%Y`4tzSQB!b(}whmg&n z(SQLNkXz8=Z%knB=fJ!5F4C+!XKz& z3dca`jVTBbCx*27kSpCz$w<`Ew~#g&I|`2<*j!Ipz%PhMdZyTMzd4y`ei~%6t3-wp zR2ZVdJQ+!YG8J`=4zsA41s!)v`V=J|1!wvDK z{?*DWY>zbYL(~A~yH+!@W*?SQ#}`aAd46B>2SQ{W%^wY&DoVb!&M*$1#NmgOHq1hV z*L^*y!L3?vBP5e?;m4vutgLTU9}%?Uo*jU9pNQy|y=}|P3PK2a4;C;^Qf>~rj{Xd- zos~3jSF4XNl3Y$iy5?SqnF}?4AO*5qTe*{Dz)S>`@EzBGY#)Zl1}sZd)H)2>A4|{G z8`V*n5F56|7rg29ZZ$4(?8XffBBiVV?d*26;Y~DK6N~(MA5M9~rnS!*Ai7Zu>g6I49y5 z`{&OOK(b~R9#^fn01IRm_faC0cLo`^We3`|-;gv3#rZ{_;J(Xo%u zn8nwd6Srg>jbuNYpso+lKPtz$t*s_rewgO2^1fv!~XkhY~^nEYnL}(jt|uYp65Ro z%&9Dqca#13uY^aDn-(5-Zf#w>amH+k?IM4b4*9w_MYFe>#xi-~WiL|WuzvADL&)_C znJHL^lAyUU2Pa#@wQ2X$bpcY@aIn;OzjA{!JNC3oXaAb_dC}fC9=vwSK6xnRVXPmU z)MrGEE!EJPPkFPe44#~KX~N89D=eO)}^&)OoU)&Ar{ zynoRL;z;g0`yIX`v&OR2wE*EUPcvrk}OIRi}7 z0rHKAZ-HKMCZ&rNTiD0qyZ;+REB%ugy)X1%ITG~G!~XrH``>jz{sBbrHK3ZPF+7VI z(QX9R_7y;JRuq8HG~(a? z*${#U3XnCv@qP$Yyd5B{lm9j~;{V~$e+>or=W+k;68`hL{5=`{Pebefhu7tQmI2)a zdR1D>(M)0UB!<+?Z=fUiCrJX+?Sui6B;W`!+EpiZ5g75AO?N#t57lJCj@X`dnhFxd?GLwes^a%$f2{nsbXxQ)g4N@1_6JL02P}9A5 zST6iBt&6~VtRI{r9(a>KWnFfiOyCRg>6Rq>ZBm+(b4t<1)X4!)gk6!k{*EF{swy?jv z!rQ)a4AeS>8B>&V#HtCiA2mrTH%5khj}1tde6xD_!en@|!VMX{l+h_52G=ZyOI>Lk zXRn;y42Hvdz68`0#msET56!&E@g2Ilkj9n?GY*zLTznKfxaN9MTJ#IRk(LuCTW8_> zp6lp4X-t@MI+R!|_J2Fm?UwpM)@euzW1PJwAgIjO_36r{4dvle=0Idwt`O}C zx%dPAWd>S!grrvKW_8B#%_`A2b>MS=0yfyii(|;9n{|%zBn%eStQIRa0l{Z=BfNc@ z&gvh%tD)=;J|(S?5Y2uA-a^K7wrKJ#YR1(K^y{=ex->wg7lOKE$|ZUbQj8aUoe?64 z2c>Qy_nO<36zX;gn43X}UtXBr{)i?5o7zGI0$!CVrN3NAFpObXA1*PgdTb4kj=-|-jcaXyy)&j#v0{Mk|YptElmkgmoG zjokT)sl(i$-GoQN#O+u#n0#4XCAp|^3eowz*P3$%E|b&yYbZzVe748;bNjjvAy{Bw z1EWcRuCmaowNw{PElLQbK<=ajHBzpx2OPMqJI09x_roP_M&zXeK?!zlnH?8E)RO$V z-8|-I`0}5Dp11d!-?di`G>i&8)G#GdPOVzCpTB6Yn(fVOYl1Ugyj0<>{+ z*{T`oy^0asO5WbyYXMR6S~u(fvXZ)dZTP1|L3_pc+uDAXZu=c?$h_x5Au zXe|o11Z6`m;MMhd9|aXv_`#S?M77OfDk^SS`#0zbj88lBv%UF-b@jo6_u_5aO>fUA zh)auvoqTdpR@6kT+DJ0p<4{?@+Jl4Eh)6l!Tsqd&+0(VZX46Zbg7@0Y#`wSt~@b2twmL&XEI)x96;PtD_+fu+*CpVMjBrv6~0J zkU5pI9yfc`va-lxDe%?<{+{Aam>`l!s5Ct7I6HV(kL~r$7F_H=gyERN!LUlUU)+6% zd5y1rRkdj{ffvteKX9n;wmNF%_?SzU)5mnVZr2SM=fDiKAMVATm?vyZD0}q=|Ms0J zd+8ELgnX_d^8kHp71qXFbltX<`YU*GS{#{N^L3zi_gna;wJ9k?W!qsJGi3ZN{2Tj6 zVP;;tJ3XHkKGdejV+dY_wPK=yMYL6SaC<25egoS?bpc$P;%Phq_h=CqHv`5jZBQ2H z_IL9OeUQea-ykE=3fp$sJ5Ky#u42s3q5VVTIQ-v5UV-0Z|0^4Se?r>-32FcT1f;#v zp%Yds(1DRU02f_%I$C?t0y%cJ`Rai|{v}s5Ipb=c`w67QiJ!D>Jj&s#=P&pUvJ2euGcLS z>_DpiVbsT9L;y0cO~-yQo?%X={Gc(6Jil6iXQb~mh+F4>4z&HcdsH76IMk4TmvT|A z?eEhJSP-HhA`QX`;rhL-gX1Kf3UQl;#GSqy?=m%f{VG;(PzHFb)6Eouj;6g#yX()d zn)iS95Z7AGh}+yq-BEz&(X*dZly-1_zV4Zj^Ys^s4IwFNy5u~64s-3w>fWbnTOD_V zE>>~@2svydq(-wd=k{_)@BD4Lc$d_P28V%;15<`}&AIwWTnM|Ff?xU_SQ@`p>f^&8 zIo!W4zd{8PSO%z*v;YdE1H#$rUi!Di&J))_{#l%?jfDdiJNQ8I>M?D=Vy9r}?#B0A z!y)bug#VAatV)U&NxuXHa5$02`XJ(rdqmaCWT4Mw4j;e?&)KIU_g!oq)W2_P>k`c_ zm)!5ye0k*K&GAV648sfp?#Q~FI{9aG90Q_>y;m}OCB#=_(t`XsZ>0Vm@0kLbBZsz* zbNKvA%ECW-1&EJ8M@>nKki?Ak!~9qbf?Wa{-vKicZIzi{gzdxhYwu3OgCcAhL11|S4(G2bA1=LhW0yVnUQ6W z=a{d_xWEuY)`a!++^+^C59?hBWX>Lx`Waf&N3Un`FJ623G1s3(YF}r83$^sXo=K5^ zI6hFHm)Y2JNLX_i7U2VmRD{;`)9dMF42XTwXXrcZe1kE*$T)!7bQad!HiWA)$;Q6R z70=tkbUs#2xx9dFLHt?y+$@i!_5$bCL)!B3=KJ!4fZi+lVK^a`om8*KlM_F;kM#lh znC9NWw)j=x8y6)Rm&n*B+H|{C6D3uTlF7m zG`)o?msQLkcgVT+mBZk%>sLpRLX2QqEa;;D1KXM-+#!$ldKRTW?W{jEUYZq)ce`a- z5>|rMI+*yuqL#M+)dYVrf351;P&3VlkmH-5-8-enIu>+8Hb}ZjZs8InmUN@A1Y&yS zQK1Oi+9dX{p~(9B$~4l|?8zgd{_#8Ln3MW{$OealL{4A`;mUV0ICmb5PSuq+j}0&^ zk=2|6yqUlgog9aY$oO<~N$vTv=wVW)!WC6zyE~vHYppZY$+I zlZ5mYezXhq{+G|C=RTh?QwS7%MCTJ>drH6w)53bCZf&9^TI2R7a+Y_G-G8EZ{pLut zRp4E#mxQz@2iR2~wRQoD4*{ugyH@X|uqOrZX?8QvU>mXWwCuPmyU~-#7cQnirS_ej z{oWIUP;h*H<7l0OYvE?IU(dMq+5-~LS$!u7*UwScg+*TTeK>Ndx%oKP>wnF6_>=MQ z4?gbP9y(Yq5a7Ql^RUD-_^j2%E8PSkkFOT%4`B(7*V^L7EhdL?(j%-9=kZF6m{zGjM5BPZR~E;&aXISddtk^ zTDE(JO7L85EAXM(6B40SjLIh0KwusG)8_mpI1)r)-78%aIk5?ExB{z=WH%XLgnLD1EFBRq_$ef z_0&+=QGGJ|(I#hh{jB!YV6=prU1_#6PiaY<_Mssb}~o)zPa7}m1iKqi%4o|!x@!n7ho!&g<)#z z{Ivq=EycIx))*%%`WxxIj+%?nO{{(Tje|wW20xjzffw3eCV$Mm56la|rl{n*AL=LJ zk=)uWK1C~FwZHSH>`?LO<1<0$#94y$>UY0EB^eFX72b*#>%bJXI8W8dD3wm4nQZNd z%Uy3{CcsVoLW+6z+JKXL&3RZD=%&=u^BX2p4h#SJtgp^M8e1zTzLmJPh)>}Nh$5gV zf2OgMG}O~K_ICy8ul9d~npIuiYx4o<&Gaw|tH{6=06hNqTP^;3{J(d5^-r4PKWUEt zq&fbR=J-#VV;sxLAc(HRxJv;uM3$*VOyCLbx|6>Q?ex9fv0d!F^XXnK#V|gAK)1#X zR}Rhd1S;6nr#;!xNYOjMzKZkNVu`S(VcZqv?K0>AsfMTJt$c6rM&3nT#KyWDPiw0L z5Wr46AUsdPf9x`+A+Z zY1Ubf^ed4>7Q3ayyW0@>@{)A%?wsAg~R*{tdX1F&r$060bw-pJcMx^l{+?NW;A`xZ;% zYT6EMHn&>H%$(8cpcFo-uoCU*xav;_>e&t*yeNNz3$USgoYO?BZ@>VPL&W){zWfI$ zZ-CSfQLabmg}+^>d#-%j@HZ%XNIg{}bXU)&6GpxshT-49G(bq1L~yK`G{e4*7JKli zbfO=D?6RJYc%!D@0u4`&bEpo2kbRiM0#wzV_T;_RGk6rZG+f%b3rQgh{MX%C5n*CxKwX7Dhj#hD2sc+|74 zGrpTgrTraNdoPsjF0u}}0`$$t%pBZzvoXvMZhG`m@%Ik0Fg1{7qt^k8XqRdjHaHig z^m)&k+?u35zK7XdZEQ?l2wh9fA5=>?3UY6h_{QQy9ihR1Aq*yOe}G10!Kj+g7%Hw} zIfb^r#vGZsc)@2--H;TU4=j~n*STS?vVU1n+x*8G3svJEwBVB;t})V3S^x+^6^I7Q z|G_Wz8-#NvkS+wI{<*}p-`;S?CFn-uaJWLi|Uwz;%2#SrPnbZ{{=hAdW&f#(w70Rr}E=n4QEHOs6rn^IdF z+rGOn@~eL8xNEZBQNTFZ?QVPOixFq*@+D>tnvVvj2GlT9eprA%(!%c%J~EUz)2Okt z9tooFY8)^Z3iPrQ>E5-}Odo5&+kkf4x$F*$l?0Wvf1 z37C-SGH@Z9p)KRW+x6%V3zBtY=WJ$L)dt=>qpSYxj`rplJX8=@cS&nyLGp=GgJ;;* zHcODz1$&SCkPy((evD>DIQzq)DjI(f*h(=BU7DMb-ve_jiPB}+K?$pF?xC+^pPsLI z?ez9jK?K{cn?#2p{B3F`U4~#2^RIH8TexOd@O#GDu^%Gj zZhKKe*lh5q>obRVZ@w5%}Y*m@C~Z5^koFMVCj`+=SMN~k>l+tUfNtx&+?QVgUigK5fK zy;va{H&kvDA|0rTjbLfh;^Dr;m(}OfGs|d3_mXV~itX(L-YvvZCFUgxl2fHmuBiT4 z>;NXDq3MPXEDit?D8Wz-s{Cene01t^dksaSu7noJnJJAhHxDS8capXheAh4Alwg%+ zi~3Xm;B61$mH=tX`=k#}#!izAQNlou$t{XTmbTMXAbcsSK96YLU;ElNUhrX=#l(HqK}RTSy=Y&%j#%<4C1Le zv=LCV9`Eh#t9V0$nxK$kcc-XV1?k}f+zljQ;0(-|B?hA88tUNik42dco@Jb%{ru)5 zt8tcK{D=Bnv8FaJjeB*m8oiAfx?+p1W^SCJelBh)r;@56&W1vmj+3~1kO-iZm6X^H zM(VC!u=yZ<%L(ZcMnc>f$5pq^dRNHtD7Cg^`jYH79;>rQbLyo ze8Zm@uH?R`?OOVeN$GCYqS?)?0(m1@ zyxa#n0`Y}TZ(k)3bz_8(C;3cz_s2nA-bH#dTSv*O74j`fq)GA6zxvwQ6&DZ1UF~+c zZfbZByEN4Y6J-HX-v<6_a@jHjXsyDK<`!h%`L^CswGX7?nv`AC0F%XXsoip0vq1t-XT)x{LliJ9n3`LMeNx#gz^<=5+d*1W$Z{{^w$6|9zQxnN9lJ`t zk?QT2M!tK}KidI+B@3gCn8i{jnANSmWMe|Zvn5I{*0lBGO=;R*-q%*;No`5)+LjPqhORcZ8o$@M7&xYW@-|?!mYHahvmL z(Nu>GRoTC$*uSi&9}O>7>KS}vthg?ba`tQT$-W zd826NjnRJZSex?sjmVkM=L7l?yN6{nW4P8bNQiI>kh(!Zd{~_6bD|AVRPD%p@op5W zp%~N^0!gFKno_qyDi7YB?vgD`%s854`P>YWqh9w^V%nik;Z1+~uc*D{42CFIr=cj2 zc<%v@1JZMX08GWbR!VzY<$|~Mg6J5^iZhn57UP{2{;tJb{S4lYj)Ru(Nx*TUt_`;yE!qf%kz;81jqPi7aeFtA5blhzF> zj1`sFqi1za&})CGXdvoRM_j-&*DoRDI07+$aQ z(bXqG{tMFC4&#BU1KDQxw{?VF#q!)V%QY@jx>iKuZc6n(EYz^A#}H}Ja|~#b@zOaj46~`#Aap+=>A&{&8S#0 zv0E6AaEGqFsa%PciM*+mlx6$z)rnb~`jm4n?W~EgqVX%^2oZM`aYL79AlZD;^~EC) zH{4^07{pVUu7rY)C{hF-%T0dy0QdXJiAJ_S962Wu{@GW9;p)kA6{I9 zocali!%9M2hGzG=aGdDlsQVKJh@~npz#R9Ct7}OTaqzCjbZQ0=qG}MNLs_3jM_jAZ z^)m%uXCSR(PNBAj2Ekl7?`?ds3A4&Tm^?+`>K2e;7>~4{L2~ur6ElHIwo&bf_KeQF zl(gA*P3`H5@8A6hH5nu&k0`I|747?lSasMti~zt@Sgc;_GRKO+*5yRAt(qzA2`W)P zwAr-j)B{`(9gRhl(#Bq+@CG1_9)a$_K z=>gy6bZEbTht>&ZG+GFCjrm%K1nyfnPR2wTN^S1X&-ZorGfpVJpyhVBq;#5VlPAXd zsb&+Eh7$*3>rab#=pDpDDuMMT4j?+dx9PGqFypI=Mi^X1Ipt&deNvD$w&Sfg)tXPt z=Ui}`*s79K)oP1vcwT&X8DfkdT&HD@dUc3WFGHpFUU>e_Qn5gw;oKvrgsRQx| zbVt1Qj4n^=l6^8lZaU1GiW>KDzj+4|d<+6HGMZ^Rlx#u+Lxh7WNrCoiK9}0-WV8O9$km=7#pTNRrEl1e^?H>CL{t_oGW# z@CKltV`#dQch>r{atjI5-vNukPlu>+8)($zxvGlF{3srjcFil|u53YU$jPsIbqp!s z_HbkY{UQ*ls`V@L^fIO-NfvkNwpfIjZH{wOD@Z&8||G-+_}Uh(vW)w=v|=hat! zi1YE*lRQN?1ZDh2I#$#_D?PuSosSrU(NvPU1ri=%`T&ED3iT?jW!cG?D2oM@HeO|U z@aA#r{?fLnwu0Hk?6CCOs0GRELalKrq1Sp2@%_aceuW?~4W(L=`P0aoSIC}EUyu2= zi}-|O4Mhp@#7EMV^WPd>Xq)&PJvcaC(-#EE+Pi8U^5UaeDxY)R67~t08!d~nq*V1n zIoDx-0;SE$H4KbH*9KK)701-mN2h=Jk^Tfqm&BxTxT>f3zZO`*S<-AMT&B#YfOXhV zo1)hP7NKSF@R<;UlQl9*ObRN}#;cLRL%!c}?qd~e;zvO-YPb6Q1WmR=+>`Ja0Rtzx zCHf;+4(H)3eVdk7g}O#w>;WcEc=ZNLWm6oXs(3tJ5Y-k_`~nmx@!QB}M+3GIP-l^*JgP5YeooRW^WvwhxyBzMtK z`@VFmyUX5776 zQz2jKZ;;A%`Xxhh7a$#Y0(l4NgVIiFk^~7D;DKNFH8@vql7v?95j&p|r>?n5e(uaw zPhKc)L5|(4Z#_TmKdpL|Vvx6%nID*QhH!feOgm8(hl2yI!b@b#a|3aeL=ua89dB8t z7w6Y5ex-1ZmOf==^LSC z!ceWJGIX*&)%$xOOwb2^sPTQH`~bqg*?pySuJbEuz!CGB%N#-Jw zyG&vSM^lMrhzL_N0K(FF*3fxKk5lkrbpY~@iM_cAcjbLB4S!ViOoy(1a`EOf-?{et z$LxZyTCt@)b}DUT+R{pZ3JU>n!D&LGi>Das4*~v_&6T7sd*7j`AYYR%8^LeMt{#8w ztn2Bfn7cLp@-6g;^}qI3F$Hx6xcw36UKkJ}yaWbqwDX@g#FCrjG!HjK>qu`4%zK~u z94|BCFz=lqHpL_Iu~a$fv#JK$16z)Z-~_Z5^Bu(Z0_MXluSNd$qq@GUp9?@7`JGX+3$5VUFzS{9zd1JMS|cWx2*&!;_i)Wxn^NAj>WHZ0@{0H+*??ga}lPQ0N> zcQ|uJUmrElUsj|&DYl=TpD%cTOc2Z$e|)&z#VY%>?mZWC5%ob}p=p)%sj6y$nW`}EZmCj?`AYkQTESa+jvW(f60Ml-p-BQV zEvJP)H1Bo8j(lT@(0qM~BnJobJ#s~KtWL}3{3T+qa#O0UZu-O7*@|j!u}=rRmD2Pg zpC80bf~TWzF^lVZOxhI4Dc z`{+!!oM)AK?Q6fv))$}Q4!5$AwFnEDR&b2miNNq^*y?%>U zYl^;pjhKs>^5Y9)|5i!x|AvBKsIfkC)y5(Ah}bvwyAQ(eWDS=JXCrh%DlNCrj#O>7 zLp6{?AH;Bs(n0Y)3bwlL*e}f9m_n?2icFD{JL=~x|E*I*o4B6>2iHGohoo%Vj%WI6&juf^+mg}e zILdt}PRBas(z!#$k}j|J-J*v4QMexF*thVqRbYhybzj~F`{0De2GU16R!0KU4@Xpg zp!_p$ETOxPSt}pnXb{O*4lY=wWEVLG2i`S;?BfmGDnRo2pn}2V~#pZf3 zxKHBF4bh9TY5zg&?(F#|p(gRIFXP_QvW%g^sIjz3>alan_a)T}6x!?whSaOqVwtuTX&}z5sH#_#?#8J0|E`>_V$pgWaDXl?zNNM8R z25SX#3ew}wA>Avb4kqcpq9N;I-z)__@g88Voui)ozojajs9cwlR6J^R)yx2N@O*0k z@#QAbfuu#?Yt43m?RwyxT5v=g-v$x~Brvp`($UX#zkJ}+SCADsAs=N+rDE*?#<1V8%80L0nL)6Kb{Ci2B4ArWu7YAqJZeum5<>n{aD%8R%)(P)ji51HHn-Kop(*sNEa_`lAHB_vR6ps;YHc7Yj&< zol%*X=;_Jw|7#e(WsCT-OyXjmgf;7{;OHVoo)3(H-?x|K2H5Vrmu7ygt*`_cDnO50 z*fZ)ECI%3r01^n$)2`~)N3yR&rGS{iU)6n|&MtA|0fNMRR(I|6Y5J?(-g9_WkH_4A z8VT}y;=i}o{lAR`#>p&)csZ$1uQRh5?sRin{8il44;;sO%BDEg-u7w>T=o8i?&MfW zkzY5tUPg4Ce8&IKSzV7IqPb+stY>J_`E0{0_nZO!9ENc6{ls0XaIJwCpC+k;8l+Al zkq2HDGv&v7L(8)WJxB?OG`O%lba*3|i{e`f^R^!>pz76+`lmX~9ZkH9@VF{Zmty$^ z3eXg|NTCGqwD=ubP#)^i@Cq|eyGqbIgC#_{zwNJ9{-ce{5-MQp@OhIfSF-lDzsHQQ zK;68l|G=)zp91=1?h$4SLy&%nH3B|tsLIf)r$s^-in$`RXbfSIXML|ZygivH4dq|7 zpNY?o(NIc|3QOr%&Q{DgeKpzidij$C6aZ(Y9WN$1Q5sl>LcpY(%NK-u(EOA`6v$Ke zr?BeAcTpBTliR&wle-py|Cu>D#?o)X4WP z8!81B_49|g4;3`TbnjX##$u-0fQZI{lxEA)5yeTeLzrcrU z8&{gD3x`2duj}3B8BjHH|_RE7~7kp=>I*otbUsJp*=zM|B$(qH~LP^r}Tc~iFD@B+v z6r+vfrD^q&-mE`Ln8VB0j~=Zb`O%;7*QR&4`Z$mwuhw9Gtk1wFwN(4 z0gw0&QTseeA?j05!z;vd zbN}}r&!#9zB5)WF#0-x5f|(1s4^A*tx zv>q8^mw8|j&MR6CfKWlcC`)Ghwzg&xT9KK-%Iz@|qjgsd!2(9!= zC@QQ^I$LKxQ<0yzK|Nem>041?=69^lWLo05$BSp>Z4T7?%sNAM^dwLfK^veyKBQ@O z+l%++7c6c}qSbNjV;&G4av=z=hdd5c$YK%Ccp>8J| zr_~IA54PG*0hd0PX1z@GizY`?@6*D7v`VR=IL5(y6zMA%f&P1N_kcG(!e%1=7rx{N zdCS;MM;Z$atsb{J8;(;%0gJSVMurh(fc2?epP6bXi!5^-Mr$JT?P?}|{ABgkwY~V( z99$(k`F!~X?wN52BHX8@|77#!TQg}YE-VM84*kysJYR>KxlPR>!xCCgl;UAX@ejZa z5QvBjZVzajP-z)O*kfwVB$E0C`vngqYiyrNey72QY9TDr0O>P=9KV#&p`R3GgBF}b z%cEpy`O6S#^{7HjsCWM2`hqIfo?RhC^!Zqi!402>KriJ=;I81fP>bW^@Kitp5VzJ1 zt}|?*%QLiS#>)c2$ox+6tOID}+?iThAW3Y%sXl7O&ktbDUB;Yn4?5-WYs~cCi#KU( zNjbY#OnF-~KKxE;y@0+yIhU=2s;v z^XuJt%RkAA{uRze*J6EM6loV_0q?yW#A^sV=WXFmxyMk|NvOwaj}9P|;|nWthBH1# z$%_^p=(c+G{_eZ0zu>!10m=RKq}i*88Dk)2)f{_hgC!8X6cQhlV|kh4*bov=On_XR ztUITpTEc7KWv4I;%)tee zA&kGRsPN(8QR_X+G3O;aK$8B~^(~T0T0@wYSicIS0w#r7$``{3pik3qOSn!*6#6(V zKb$<-IdzMY)B98zd*J-#kayXyiO?L83cL;{{HZReu|Vpgs@T5YaA3=cE}0HgEvMq3Dn^*86~GVUvVecOjcw)?vnX z5@qg=RI76;2Q_+!Tnl(G82gQPC+F6c{R}JHP#D|6cc&^lZW6%r8L*$@WjFbiNNR zu?As5`xFI&JM}Kae_`lMRP|(?BbCIspiTHZy?JNrC%wDXhSVB0jC7A`6}Y(SjO%?n z%tt&i7pL1FenPk+vFx1z{-*#(F+XKqM|aY6pTvy0cuk?H6KjKI;&7(RYqi|RJx86x zdl$j%bf63z?i?CKMyz|&4B>;?UezC@QRE0h#jMtFNjhQ9w!Ort)UENlPO)J3NLc#w zqcw%GpG)!KhD>X^E;Rp8S-=}io&f|A{JKs-3!4IVRGBUe_fD9Je$d0#Pc<1`uczz) z`iT>^s*mUNtW@LE^+BnRJ*p{3D9P-I_B*<4#ep~i_Y1H)_c3bpTu%Xs*1<_W>PJ44 zF62E!eWID7T#dgYjz9uI*WO%~Rb1mG8xk z)lvqwqLS3C&RexkUO!Cvi^&U_3>Ma7rAAN&Ka;F7<_BMjylURzoHxPYaMip}6DK7k zOm}F;23wrN;pVMSdD7J1_PS8u-Op4^JFttH6K!akq4Lxt3(1iO8IkI+ILL8la#7BY z%uR%CuII;=?u$hCiA8SQ1993=JWiMv~CiXSKI zf_dw!MW#Y^K2rgXr<2GxYW&?-4z}IP@dZv4w@RPqjR?1`+j6}+?Z!)L5UTuURHa|b z;W2>V++lv2%86EA7~q@7$HLULd^6YUE3La!3MVY;)3aV}P?D4s#->ldxz?O4EPvMg z`zEf0;y|qfkn4cxoC)%sMa<>8 zQ#sf99xW{`-t$#WSDX&z7;8HPJR;#>_vDu#p?VDGASvVaFv$8d_01eK$K-zfgkSMDRlLR73~XZ?PNS*{W>R zI)|6YO`H6oVEo;m=Z#sP91xwK43tWk(cwK>c08@PGDCsZ ztm_{Rp+I6YdX7{QxwFZRZA!VKjg@!tr+t^W(~{iOW8V5GG}z(MvIz+veLnYMb4iTv zqUW2mM+(!kZ*rEy6=QUtvsJAEl)UYwe#!_HNoMvl=VuHe+0?9~y3F)>d3VTU%3?r@Ra(wWWeBc^G23oq zq@^~KmZv#T04L_}r{&Kq__>6v!(R;B=VlX3-l4g<r5%g`Go#HQ%mJef$Xu0WeRFMjd8=Xecm z&{a=*+r%5K-c+$VVk*^??e=4JcpUFiu64fa^yS{1?XB5Kil0d9zJ=-aADjA~v(YQ( z1@?i7)Bx^Hv?EwG0tys}6H2?4b{!O3%OAB74mFK-MyLlI{ah=CHYYv(l!fJtm-7S~ z7hqWYf=o0+YKkre=uPP0d7%CCP!OMc!zXvjGxeC(tU%7sZpMY1qF*|FJy9+9|6(eC zw^oW`uP>q-2kRG(!Wpr}SzeRPH4xlS9W5DonSQ!&j2FQ z@HccN5~L$J5-+MyA3t-W6T@3|+*3tDOYO6y#U7v8JCDjw))$GFj|fM23Rjz<59>nD zA{!iYXlLAl9l93}Co-h-ygwF{q8i^kzQq1qHT`vW?Tv6I8=fTU9 zyTBsms7F}&q`uj?&en9{fU zSj5(r!LKllumrTv$58EzUJQpaUG)Rqf>llIj=NRH>ZW4(>@BHqUg<)uOQN-r1Pd~chORp%y+wTkmH3YnNb z6v{_yQsSsHPBdM*5|ZFw;v`+duh}5@g!TQcF8p-2hp6{)r`y>vy=NcQ0Z2kbQU<6F z-}z40v*h=4YSPx8;$el+=^tiVG;W*^LGTqroNUm8d3Dej zP8S9gw4tJ&?gYlfe5F*|!}J~o_EOup)Dueun~qCNROuGX_;kmH9J@(aX~?8~-;LS5 znJoY4OXC3sLKMo0zNS_f#bsk^s|^+~ZEfmkWvlo7@MJzlL+>0AXJ4fo%y9?3EqXN>?t#EN{<4_Gb5vIJ*YnRu79f8 z01Jh}KD&o+9%)qA^q;oOQ2bRbSS?y!9M+;A%3KPc@rD94$}@ChD&T9i$?r%v9CIC6 zua8ywFbep$jmXC;3EG^OR_O9{aTMjab^m<=j+{(HkiqlOoiy+%0PAZVQb>)4Ojd^K ze0ch1b;4R1h{y`Q7EVjXJiICyn#mP7cP0+9x}mqq#b(sdWItErI}K_6RpdO1u5@{V ztK}xH3%q}ei!++J<)z`KzA20H&#G;m88Kd`eQQF5Cx#Rzp9<6t*d8?+m!_#c5$#6J z*%cl4e}Hw31y3b#eVBYh=cg8sGkSxQN($+YRByjI8wCrQ@F!!QD0yhjxrf({jxgJ3 zB(@JdyCvU3s!IOohOZZ|E1xned@7#WF+VE$4=h=`$eNPRGQU>0ixzf8g zQDEp-S^J2_A(e*RwsH!jWlyHE$bo4?uNgz2U7RK zdc9ZfXNkdpLPm@>=$|1(%=`p>3OsUl6}%W9jF>cLinyNw0qAzU0A^glWm&HWRhZ(r zLc}OKx5$#TU>q_L$w170*);i0Lq9eR{R&!mL-VP00$zrVdZfE zE~jJq7t^ng|0WeU*o`?je}G}IxMApN26RPaJYvUW7eVJ5MeNJ{yV%+PvZa4?(*LKK zg8!@DtOn3F(g^xnZUMyPTgZXR2i!R;vs@Ru%y%R5?P=(Dpb>tAS_*jfbpNZ=ql*?|Kpba z@t*vjX8y!rkfEh#q0inOo*xU)F}@c&N1%C zS9y+kQX*)B^Prxv!_~^BhHbBH8G1da2l2UW_t|Z|A%s8P*MCplYWD8Z41c*jOyZdfHajqz8$w>k!kQA(*kP_36nj_uYrfA z0^h;>xrr_=>=k3XhH;6Ze(|>6qzs@IPz|dzSX$~zR%{j@J3@enX0eCe`+`lU7hz)F zY7QWGDVnd98DP1%_40RsczXx(#fY6zOIc7e9{Z zvs{o41Ye=M^26f_Fmr{A4&uDCHV%xEJFHi#`wb}YDnaf!VyNlkJ$T$2^W}zYs%K7 zl%ZvS>_Z&e++%R_TkA;+0`@Ig!28aJ0*jCC&l5iCH!KP_RD%6Ct|*|O(DT~@mmdkp zT6CJ#`L5K@y?2sINytw{hpk=ko4mObfl#0sfTtIE|B}fFQHiaWtbuZAg*YL-6O+HdnI~oLog>V(F zH4a=$I{Xg=7rlOcw!RrSrZ*80_(L`8&@dm34f-yib+;@!Ay2yK$ue1Le4{Y8Y_)pW zwm0l{v6pwb8M;8~z1LekAy?>SR8hVE>ZT9L2uOS%al?o(WS|f+086aQL%-TOL3au( zUCH`^6f1nKft2f#VCoO^>g1~WIW@Gq4mQ-g09esSHPM_xg{TqvZYgci^D~#aPpt|a z^TJuT#`Qh4TGsLreVK4L3VAZ@@Zg7R*CUyeDM>Z2^1R$oZle^hzP{3x>K2!qDJLS1>~6+sn>BjoRmFxB z^?FJ@J4~NSSv1cH^0=mO=b7k6ZVn9$g7-MeQy0m%g3z4a1jwrc4&+HSPd+0Jq3e_D zjd!PK8-IE&L>X-Bqb+VpT|0ML2AVnm?;3Uht)*X7EiNm+d|k!1uP{G9^-k(D)2;F; zo0)frkME3(3$mNv7s(XfL%+{9GrFL@spGKX3^xr#%qu6i$=QVRk*vFr(d_fBn(d=& z2P`qZYtKte1!0BuHc}JcMZFuEl=4;g#u`MWyfoW{;N4l6^)+(m+-~)&A`Dq6JFl0J zx!W4NQ&PF;2YM9N{if!{cRVg)6}YBr0z-A5=KBK%SVfK$G(yDLlTX^)U+j{YD4@v&4UDM2PxX|{ z?YMxvQg>CnT>m*k5-@>9%anANtxcA31n?@TFn>=mmp}YTNIa&S6e1_Dx-K7$n$VM{ zelI*QP0$k>%|>jh3()jw39nDKi^dSX?vLkMJG~Y^uf=rir@Y3R&4_}X=kB!1o2eP= z{jBZFa6knN`>dASQ}Qt|<FQ{}+1d6|ytlQ+)+{5Ri9 zEfy&B@*@y+HI8W&V5LV_WxJpb(XS{r_mM*rU(Y7Q{qln_1#&yQ!a;-2NB(jRPsJHX zAlu(gO1h9V=c}ScyXR;Zbag9J_zXU$cbw{_qTh*~lk(etoqXr%u}Rr#@n|Dz>m1c7 z*=#J2>{1cLE1h5F7TQ@Vuf}@zkv6l6LGBjUAxi{9>bIlf``=r=dZ`uNCkMTYAf<5| z{4&BFby6{>1-6}nB%~f{ec-;9kKVpRtt2rz9S|pbODi`jd1IwMeKKfmN#wp2=s95| zVE)AA*zAWoG_{>D3Zh6ygQAEzNh`bQeD)sq+U@LuSkKX5pA$2hUE`QGH+R`N<$gFA z+|Sj42Hr=fd~4_7_fzO)I}6qU#xj~(>eU|*)-ir zr}^ZFTrr2csAMryA3~*Z$9lh~UJ)w4@lo8hsF|bfqS6H3Yr+|B?f!l0-{=?WYKQK1 zIdaxN?=_xO&WU(-j|QNl>jeyID~Il`t72b()xgd$!BAH!l&1U?aQ=#Ca8r9G?>E-8 zjV_MS%lS$q?fWj3XV6@;>$r~SS@~ew9#SP~s(}TDLvVgK2rFRGkvzZLRn663P}Q;^ zy7o?S9X{xF%Ke5%K%MT&^St55DoQ3t{pS`A&gZv{=(<|*Ra>O7c8_PMRbH6t+jd;b z8VDJj2}t&9Wtft3v^o;xCf=sWZuO8ON9-Hw7MtO#duhnb{a)ImZgRjvzN($BPFOhO zVnc-Kf&c)H zKQ_HAx;z93>lGx$ALGYofFP(f$3dYlJvj#^-NVUth3FqYQl%E%_vMK!Vw!nYi;%>cl z>-mi-+F)fC{U$Yy#vS^E8eb9WM(#<}_>f_(ryTKM1br#Y-@0>Fx~{&iUYfnd&yPbo zMI%9{_Qlths9}fAuIec~VGyX>>8~Jp@)7)@vM4mwNiT;oqxZ{p`ltJ5XqDoVEy%_E zD*KPM<&no#F88kO3dkqal&6*UX33{3;bcyCuY~Aqm3$1I@%(^4`4E566Kl3*JyT|E z;xO4Yk?6KuMs-@iM9f|ybAN%o!gB(&u~W@s08tSzrTbhzfd+r5P==P;8aM?2hA41n zQUu3n|Cx$f!`kwVX|{Hl0l++J*Fn6Hqt}iNAj>C}N zi7(=RWyy&4ojC@n;kPtTkng*tn{I4oWhvL~(AU>;Ve|V=NTvGF-FbIaFZ(?&In8Iq zGjH#E25?rO?5_BZ(fbdh=mKQ(P7EK~p$zLLu1u=#*!QKe`kHe0WDpLvGIb!%#k%$B5*UU3i2h%hFW7dULaNK&=K#c4gyy!~{Yz~FOhB~|S6QJK&HazIb6 zmVukpgZdfvhl}@Zq%uOHTSN(>hwUqlT+ny@VljcS-O?krkbGle1I}yGv!x+K%j@W6 z?US#hu%@k^iQtACDQdQ=Zw-TT| zQGPaR;)hJG8<(Ns0`t4~&ZHx{)}8;TjAX$9GikU$Ao~I=fgZw%0dPV$N2yj@qVoNz zWj!@PzqS)k0}I%*8+xmG4g=T#5b;&vE+cmto>| z?ETz|i_EW&1ROtK%fI#EMH}NSMIJ2$w9eJp9H=-R@^@YU4z8q&*<^fj}Pq(^3ok99t|t_B|^-HJQmX& zx|);9F5<9Xj>?}J`S$I_Ykt1IV_8hQ?(*Af3xMgC4uy-#OorJ|`N;QrAx>miwAIwE zqBf`U-PRDNAl|_f6cj3rB~$bSB)jCZI?<8$uom$IB1&y+*E>3->)`H(i8;{!(K27o z{%#S~G*+QN+27JXvm*LLWj;&e=+!3A7Rwl>1FyJkQsX>#Kb1*4C(Z z*6akiK(O(WLCu~4$BzZKg$PF&VE7Fb^XJ~{iITmV=E4jJl6occm1di_#tIsSQFcX* zm``bWpI`NHX7|`?38XdD2%kA~hh?Q(Kmbj4xSFAIrZ7&}O!ak;n7i%Ycn<$3T%zOi zj$#WdpCL#@dX*Bi#w%4?iTjVl$J!xD!dwpotTy-_(WQRi%)WS)E< z5zYm60E5AXvZab%mDQdF=(;ygqFlJo#N3dV=Llz=3)eb+|BrrLXb=I3+oTwhZoOIH zM0B?)Cw26Hag?heS+%G&WL)#~n=$gV#o}U&Qojo|{KbS$_BFvQd80lZp@<0#*ir{O zgbrp)=Ce7iM#4;P8aj`8O5}(WhLr@eB-I{fBp80|2Dn*AZ+Y8;zJQVe^s_tom559) z=0)=uT!NGwLkOxT-je+lD`WWU>AP2%y!xF5O2XH^e&BWjoWGg!(HRT9z2HcE9k?CO zLl2`)l>vfFf#x0l7Vg@Wq;NZ=1XdZ%xX&h4oqY4w5sRyU*fKx`iQ57((F3WLfEgqx zks%NWx=-_JB@qrrP05^%Z`2@^|T`9QR^vK2ifGVJ?SF?uMdCN*L;rOD|>fq!`{;)Oh&Uy`RI+H zO1F{+bs-qeFB#gE^*&OmQ#a()-k^uelu!HKa-KdhSC~L}p>tCH8=NH+Mzx_Cg-Q4fr*k2;c&af*U8lQGF8!*l}6R}NlFBca!UE*3g*yYBy*!v$GSiSr?`NjyiMTzSSK z{X!}qojqsJs~m~12S7($095+|FcuzE^X~M!tJ;?2a66bD*6}XAY((pxUQ%4==W3gO zac#ChuQ1|z0--+H-Bv($7G+Msx9ab((qorRD}$B~#krfoi*-P;WK_Exrc}2yLzo5aMu6L38_I{5Dqr%2s5|o`HVAc3K<;aYBi@rR^vmXZT2UdpJ!Ekch zUSl4mIu|aF1HTA0L!O?0e3&CvYYXj1-NNZVdAbpQ=Amt!X66swOtB|e(i_esla>pqI3X@Y`9#+dKNzBwg*|@sEOU>mo)Xd=Xf=zsb5TQmW`zG z83L;r-kKCO3@}`ZD*(^ws1XXO0p1A={xden-5=;`f>4*~y&J9OCw|-dHI!AYs(Qr@ zFX`P^p??{C7K*MooA8WXC-fut`CwQq{375m5$5-FxEfZH=INm@o+h%idgrEhcraH5 z@yFNk_oU*_fO3)R9Uqo^y|9D5cAiHR@p-K&f(qxS^gSArM&g z>!;|Q+Q%p*jZ&t|4 ztAu!N3HF7oRP&E1@bLU9VzCZEZZ7vxs-wtahUa^z7~nz>VkHOK%jcQ8m$;W)LbbGe zm%XkEJkoSMBp%|w>W#g=`4cv)Ije`9zsj$xF{zk`4J#7hP8HXv@klJFy4vjpoLyLl6}F5HyTTAN z0@eT6C_sM={eOFO(d(r4{lz2|-3_6z0Gsu&GURJXhbSh|AAAIe98&`zbq&aT_qL0s zl8%f)6j|&SMZ`IiRP;6DM=o}D)wxS&O5-Z+yD&F0ZeRvnqs7bq1Yx~loqcMe}`a8&cV&137P zAMXDgP+!b>8*YK?l#MApV))4D*aC*Cs7%i{rz8Q2Vj!OurNfmP zT1Iy5Al#K3Ij-KtGtxcrKK56>X)#CW`ds+s*)9xJO3bP9v1ADV^dryUX^gO%LU}KM zBQZ`wMd?4M0nxk%``0aAd`^aIrZG1xA5&ihku2GfR9O!UCxb_ZDC|O7<>o+iEK>uP zFi{&QEf^h7Y(Xfy&s=@uIXK(zDki^IKtQfzNS79@J5BijX{oLmZkl;#?itL8-xcjq zqUNc6P1`fWgU$?Ri^9ZT{k$5JPpo^+s7P61dH~}0-aI!^Y@R67ff24xCT4ST+l_`A zxCmjT8@EtbB>bA{vweAQ4J;bR;ZDExa2k)&XM*$6Rge^1G~?tU%>~gZiKU7!O=CLo zL@?E4LwWugfX8tCwx!q2{~`f~$FN-P4Q>Ib0bGYEcnWaC@Vrn3634+ubS?1W`lMV%YrzI>0Jft20zfwh?5jmW^=UT( zaW~1#jq&sc4bTe6(_CfpiC2vg=8>L6`d8nXTN6hg$6hbn+8)a_lKBlj0`CJIfs0W4 zJMcWZ%0&)hA?@%p&7}0yQiyv1HuAfz{yJrkuTv_+non(g3)|7-_C1yJ9oLbESHWC> zlp%Jz3sJvJ7r+1l9t`!TEA!?FU`{>Zz|E`V<>;YQfrfl_Zf@NGtBUD9CxoDq;`wFO z8VeIi>z^3XvuJu=JSF@urWy~#%58x?NEc!%;EQc?k1zsS9hJqE3?&y2cBWDvo07Tm z8@W%7R>>sIS8hCN%u?1?m2!IBI4CS7DeKC)D1u*~C)ZJs)Gz|_k0tGiHV!hR6DHu6 z=o(TS_#A(KWTP0Np?PQT#D31>j)u_M~@=^}=A=)X3r}&&3}_XG9$gESef0*OLZ#Ty)D= zvbMkx7}70ss!YZglf<)hMN&iSW0$<}^elUZDp_nJMdG1lewg;!z4RXs9;kBie?oh( zeam8^R?n$nP!Kxrc|a-aD@Xu5f0|lCl5`}CmApU;6HGNUM?>!xnund)dJxt&w4a{w z=GCn@lWf;0)26hcEpC8#W7ehSlI^!??HVUh756($SP&(Bs zL-9-_j!_!U7o5N3$?tqlPNgtz4u+Xa1b<@2$Aw;75WT|Qt!=p+=NCc@x#u9$>nJ;_ zSTg2!AuA-ayS2ESgLUNFdY6Gn=?^BRBUeGCJNNHg6RT(Q6!h=OyJhtFWv|pPWSLgk z)Bg}r{xiD#8>nU70j`Z`zXZUHJ_MFC(D}e39fgrt7~Gemx-!}TxYDS>?=!$NBcZTH z=f~{Stt(SyiwnrE28S=&G*$P;c`vX+UJPm=6hG|he9mm6*gbM~bwIO8!(1MpXq zOI$@j-@5@n@^XjEjfI*4++*g}wi^G*gQRG;a(DkWF?7=tu0g$cPOMwXhEs-hgWSH( z%K>;Z93I;Jky=7|e^{xf&KTL82PYi#wjW-a(YFf zYD8QNc_VT|^m;h!yM(W}$quk99-B@1)8JUT9hGk$Mtxx0+hHn7F!%zZJ`g#?M0r-2 zj;@xKV(q+8*>@UR1j%2OgkSz7E5 zeMawux*{*9ZO2c6INaR`v*v~<#_936iU1?ISNlx3v}*rh1fa>8D?)87qHlcRQ+*{7S<8l-cZUaVxVj9Vd{JHI~jObL5?{u<&@#uXiTgb3kY_o3-k z6M-XG17~hpkn6$)2$n)*n=y-09QrQ>>=U@!RuBeXeV|RwcSD;I&Ck`3vqP7^RlFOYYdC7#ubM{{f3> z-b+Lq%;)gU-%2H5xTiyJeyXjRoMTL+9L%n22;RY!<1S(4JI+U*Psq5gLG1l)-h(_D z8ceRH^WUH(4k27x!|0dDq6~ge_=c_~yzESzy1aw6T^4JhP1;bm&W9-bvaaWIK}xR#m1P99P0UYPPv^;w%R*D+_@OLt3W1Kp%d<%zXgp z_-&l@$AGZ!z>O~%SdD5Y!DP4MKF*C2r@0x8c_|FdrKsQJi0a4FXH||?{Ho*4);2lFV)qKVO(DQa=V$hY7I#*gsEJ_?_P~xxQW|R$Hf5 z5xO*0W49M_`!EIUn!`^wWb}~;xa#h%IIzG+`)Ov(0}siOA?9swCcDcirxd#&0Ri~) z<$Y)X#(8|^Fqv`gsrbnubr83^hzVVH_z|#F?{cy@jH_L-8Z`v;Jo}027PbHratQSFEht~p ze7%aF@_$oNq|UDMl%8hSUxbVFWg1}9SYziO0@a6UIM+7pH_&Hqhb)@Um;->Ib}fuEcZ?%12@-R#`t zw+rm;VDN_P&|oJ)$D(pW;!A%GIr=w;xIN0Xk<9*{IrS@D->py~pyjAOll6r9fF{M~ zFrk`mPSzp3Pq{IV;WQ5jBOkMhW6ORP`F>TIgZ1@gj?k`fwV$0H?%V?VP#Pzo87Br* zT&c3;!%Tp8jE{k(LJf9WKUny~=SHi< zAl^mRu^Z_ zDOQ+@)JRBx`lptR(8mbzSME__59`2QNZ?4wS`UlQJx8^i9}MRUL>P@I=qjJca&1G8 z?|j|8pw7NDrcljM^Tg@6iuBj7vHf0;xAuuZ*#*e)V=)UdMAQrT@bPbga!4i$W z;#6ek7A3qfdaGgV*SLCegN;3!WPbkZ%_vC@D2Io^58ULA&O$Vu4^J^a%wtG3c5lYo zGH+3n2<>X+YXczLv7K9E6%q=4&{CxwKaY%|bN)Dik#8?lnI69OhN~mm)xnQJ*kj#$ zdRl;)kloucbum3onSYB`?95RXpK$IfZj)9+_)d`;%cPa_caUdApVuGR7p1AeN0BIC zT}@pO0=5KB`%uFP2G4It%|j$$O|(jB6GVNY-JPiN6DB&Exb3pr4N40Oao0<#>L;*3 z-eHt!m*A7225aIQ<@H^fG$7`ozZa>DDmRbWYf~k|qdi?b%b^$MOg(<5zs9i_8lLR1Iv1b&BlSp~@$kr?3Vd zRf@xsuTv^&SdJ~u)E|N921Ya3B51sUsb3sLsXm&osyr0XVioRKN~}*Y)V4UM>?Z^| z$vfk&d?F7TAh3FVy3Wug#(YuboWJM&lSil!k`F2S&Rd8PEStm zPTTZ4KjzZrF}1^6%hwv3ZAN4*n6|HXOFey*{J!@19CsbY86Sn=Rlv-BL^cQ|$xzD( z<>e60*+BPe1t#Jt3d+2+Yi@aQVOh`ZkJnrz;QDf9&hbyHt=nUM??oX1MbsMW2;CES zj?fEpPkj%W(Jm$QYfwXFrD5|}wVsBM5W-Dbe02TGnM;e`R&8(k2PjTE0vk$QW3hOB{)={9Uh7VuO>{CPqTD3oY(4}@TJ1l0`0yC8EMGeW zqHuRS&b$L(TfL62q~9K=^D-_`Rl!}!0)g53;oa&vPd2cGZ{Kuu0-8{{voiu!wjohT zoWG7+$`-{gXHdEiQGR=*$@Tsc`km&6@f~ig`}REZa$@BUjjh@b#+}SH>;CjfB$3gj zJm;FE>D$P|HfOE+Nm&#=0tIxj5kE)msNgy7mn-wooJ;yt8xIeB{A`1a-IK~O;~XDBCN8ZrgqW1I}3@D>h$)j&Jg@2 zE1i{kZ_Yd(t^#O|oP) zZLQ&%V_QNCEIlAxwBsQXC`nP9mC#`B@7Uja&v*XEII_HGotGx6pr zrY85v>aVgA8m$KqZobY9ks5a0CxhGu9?Y_ecbR}lee(l6&K@a`l)MB>d4_{yX!n7nDm;H&~QK7SR#t7a!Af3JSBp6%>QB?YJO9|I#;%N7G@NcqFZDXK4y zU7XxuDS`Jw>Z~$oa>+lFCOguJq)$%==Qr2cin5+!>YOc#K^jIPUPtyJ-)BphADm*{ zzefPkc{?d^5W6lysDoW+m@L{2;ttiHV+Zk4vmM7#{q;4I=dS%S_eS^x$lDc?Zb(## z_I2)G3++4h0uVagj7Ojl?dD?eUc4aMl^kzFeSvtI9Umsz#o!-Ps9y`yJC7b(9v9rZ zZDRMJq*3tR)pF%*U54{>`tmalJqM~M&6t6M1K^l&|Ij}ugp5GUf`21H`P5pj@{q6S z=7|BPV*UKp1F!O`L^To z=ICVIbMyUSyrQ&Lh{d?V4h0%WKr_Cf+CHb_&6E6Ze75a8@k__>r19iSAXL!<0^vl& zQH)FVD=_B=>Oe^{A9e4GrjSU2MQ??BhW2so!qgutVE|YBb_36h!tfw96OQD*FsXIhveL&f&c*0LU6V>FURKKs@>NVq8 z+>)!g{o_l_t9B6u(>kwljseGhnhIkOe)KREOF;bZkI}g|& zl$ch#kGN@jwQ_E)UZ-@LLF-&y;*3=KmvwW@8`NQt?jT z%wT_RPt`bkd~Aw~<;&?4t0(73VGl%@o@yYUf@Mg_^Li!NkGO1z#^wdUTAhW2+)ze6 z5W2U&d?;extW$!aSz2IM5gMDo$K8l#gf{~Ffn5tl(?!VafumQ57O4OnzYh=&={xS1aaTSDUjJxR^mK+-Ll>|SFx%~PqE<}hy5)xO8-U2jZIIY0d(ckgVt z*>hD3qX0di`lAm>o|fbR@+Ad!WsINr-y>n&8@VNiADQ-(u7TUxw@cj5RxSyOMQdR076{~54&C(b9I!soDl zJ%Cq4>4#|?a-x22B?+f%wx_5Bn}}22J+J7@+W7siG~#xm3BfC-IXlp&FwF~hG4U?(a~EJo`+wZkCRxjJ@s53n}HY2gNEo?iU^{TUOJ zbLtm?WjN1>Iw)@TEQ*{F=jn_hjmPgFI3j%nrO=t)wHv-pY4^eEXxHOsjOQ+2O~ukL zlesYJ$T+w{HTHZ%Q$yCIG3uFz=lhF^KOU6Ze`P!GsDJ-PcuhIy@^2qMa4vYb@E=2n zy2_n^-9-FjI9O13TQo2~x9IQp73nggD^?3FNFRWt*}vC%ZwS$7zZdJbGZZRT3JsXp zVpUjQ%DwS+Uh;bH|JB}?M>Vx{`34mc2M|zDM1mJIDgw$NDv$_>h+GUa3PMy=CJ_;l zDdC`~fXE;yC@Mh#nM6d1$Pl8;h!Ex>K$u04DGZr&=)(I=eZPKhb+5PH>hAaYkF1rG z%BkA5t7_M-y?6aKn=Fj*Zz?Ke^jAd+d=Hip2Y(+=xbIxUy^)>gtDZkFb^OGpw`<=$ zH5s|TkTjon=c7D0%Xy~}Wh!Gmw66&YEu+yAUU^%n*JQfP6o+YK>0fA^%ZQwR`^@#< zSEb9nBeAnw<4WPpH%p%?#55!XtvKMfHf7uM0>i-H1`6_P#+}mj5f5Y$6AM8vj!aFz zo%&d}>3wSI-jU6&sR}X9_FGB3y?A0DEHyRdw3DaX>;4gqfW+J-bX!~#3uWyODJR^n z4L^6eer3_i)7@kfttp&4aWWI#fSP4ty_lIRYvG;#8ny&m@o8bv#It>bo~>*yHC;P zo8punNYC|YA3S;_Tlp)s(qU$;`We1s>$9US>cW%_V{XxkdS;&yM^7lOyQWxIYrr$f zJ5~6pu;i9%uH&WqM(d;RsJ~CvUv*7CMKp6cUG%FWkX(pbP8Ywmi?MUT_O)mEmagw- zo*qA0B|AETzhQ0b4E)JvPG^Q7Ne>#FuU0|4H&bY3vw8_(-lY^~8qs-epO|58AB@7`C|^dux|h}qRgg`A%ZmYDq> zIRLFQ8q8Zap6BUy^$nu;ZDY-hZgiuQ$(Fgf!>W^}2bAKEO8I-0)3?pqhB*(CSBtCC z`(pN`r#L(%AyxB#t|l^)FaIcN7-JZZ}b2W+n%kwBi z@sDWSP$Y=Pb$;>cqq0oJd)=h%FK=9|JP`9tj-Q$=nw$MA3TvtP|E^p6KMm|woBfmF zY|LIaYg~sCrjsS`x zY}m}N9M}qMW=9k9oriM9id&+p7NZ`_YbI>#YPj4)E_lnKS8Jk18hn`Qg4fUmtTf!< zv|`qba%T~*WT_ZsRu*s@j4vtWy-ZlaTSblwHE}SmI-)U#t!6meRI78KxF+Ztl znD=-`?2{3*XP-rq*&zH)SgKVkZw20sEyJLGkw>$Yhde=Kf6?$W)cu*?kC5o0F6*ki zebf889i4hAAP+@_xzTeM0)B&@nkdfyWby^^kQ;7Qa2*bbaVI_~ltuDYkPnh|*ycN$ z7fe)rw{JWCZg!gTTK~KVao@p28DsnhtPd(4vCAMc8)RBgtBUE8Vty6mmY!i)4I591 zYlreRhEyB|SP|&WYz@OEl5!vR)IBeW4V|)4i<3<0xU7KR3iUVHz7OzTt&?_L7!lYQ z0s0^ViMl(<3ZB60@tTaWswKo02foH^e^iUnr&h(};osZf=Bw{RQDG?u13lZ*U*Bmq%F^O@ z7Vhu)?CFxEb3I4t!TiCE>bHk+%nO41=)L&Of;UrTy8apFEpIi$gF&)@!5%}meN-Po zR*EAI>%H6VuGC~>;qKo&;qyBRkEg7F)}t|SBU)7ukC))7!{0D+c#lCfp@so##xw;J zxtK$CFq>Vh3#I!L zV+$Yuu8aJmUh*IP{!c(_1W}wG|2)9Dcsg4HR}^BnUd7AM6Ti0SWBgQz{l&nM^EGYCbxQ4RIF~NW8N|%xoS52?fST zQ^3s`XTCAtb;U@8HyQ2C0?;djiJc|@3i=Q)l8+vvC+K^S(a;dgSU@kz3KFNH<{9}= zIF}fR2vmZtiH9co!A$K;yGX2!8QX5R+(M;vnKcn}6IO&ZwY%|8;NYLj4Xk{@z=oC{ z9zLwH&@Xe^e&X73dF$v2;m4Ln%JE5s_VD^vHus~y~=8g=&!nR%GrGwwadGoV+C zBEK+4id;LJB_11}Q|?NWrqC?#0A!>QJA}@fv8q}Y}FtqSmli~HHo_$yvVgbCb4ImF8VSt=G2vk4%QZ;&$&Cc_d! zPr6_YiFfqx<1FfI!lE>ySu8>rIRII6`BUhC%!BWAwAo4vuafbr@ZwL2NXMD^C4>ws zCWV!^pIz@PpD}A%73i7YuTmWWN$$Q9M_n0mU{O=(JA@>u7$0X#4LdrYNH%pSF%z*& z+WP83oUzi)IraDNM$}{1D8_nlCKxhPIy_t8@5W5d0H3@qtkujv40NCL{`(K&BA@E+ zy^;XaZHjtDKgCTSdw1cD!^P_dR>omcsgggE#H%o2fni}vpDwrXjWbNIxD=k-(nCLH zhrf7lE3Mm7U%t9D#{q~!w(RBiKAUH=kQ;R3mA zjCtYRv*GG6#$10@@hEvLY~f>bZb6&$uBta_2Q>4`eja?z$y=+l|H*#EH8v*pTF7n} za72w?{ctEo(t}%khFz_;wMTEN%|};eox8g3bMS&y!?otBa}3p2 z!C&|OOyJI&EZW{YrPtb%f>o(B6_2dQ)S6OS{QmKIzT@_G8X>8d|Ef%o1s?=6O1f;L zf9Hv^cHNz6Y^y37E|hPR{xZm)B)+ll4Ha59wd3OLW>53o=llpMv!4`rWe*3D(I12N z3NkhGLXvlOkdT{Qt6OR+q-kYYT79H~L>hrS93D4hC~5LtC;aKVtk?|EB*Av}(^=FP z%%<0~ZQP=yN;a<27Dg3HJDt7Y(R1;k$cv(F*Z0THRCg$eKe3CphpU-4X~fFy=kNv$ z_dfjbIC>B#_j`UpLPwCkr2ft~2^|(D+my`HPG9!D*f{&m)b7=%NTEYJPfDb3-tS+6?CZv#e9*j`=3i|b$TR&yd4H$arLs?C zs0LWJb=C^L0SN7_iid%i4(Yua=qD|s1nJ4q9VXp6#00R%%K#@P zH2HHVhUNv_U7Jen(%AJT9lBQD?uGWx69W&JDO;38AKI1wyx_RhdIOE9boAWw2X=>t zabgoVnSEtK_$%)jVNtre;J%?&ka34*4{~E)mD?)2q)S!9MptfyL`a|Rye!hk?WCyy zPcv)wZcUgfynO<g{&uYV=(fq3UwaMB&5z@qsuK+yT;;ug?K6 zB{8Z@$X}|u6JAyN$n6xuFovaa8DSV?6fziOjo-62_Y>j;&acZ!DV~cS0^{ zR^#`thaPC!9HH53XVm8%VUIR=1U1f)IiyiHrJyr6S6CmA981p~b(?pqg}2aHESpph zhf^1)8=#O*fc?9hop=E$dTA(p_~>!}c$3!GpjGmYyp)4jrZuN#783u&%3H^lalTxb ze6Ta&=<%GP!xsnh8*+1VpCUsY9y$$2;@)Ra1^q*4`ry5eS$rO1lzH;soEwZc4rdoVG8`cAqFZa<+t!UJR!H_5FP?Z&e_g4+WX{33_< z$Ia(RV1prkf;Gk$Q`QSCP|K#28Px+L^?Y;@06-Z z58J=1n+u59c)?3Rlku#8Fs@)S3slmYWd-xIN^ny!1df;l!H+xkgYQ9z_i{F&D1>3k zYT2F1!^B?W9%Q+)Q$8Q_fhXB|o;vMJJv`=``-iT+)bj7KtDMFAd`zAnAU^O^F|XTK zET0mdQ+L@_4xv|sKRuU)!HS71mk>>L&_FST|7MOdw3VSI5TfwKfCp45 zIMV|67=(Py_sPI_#=#dYh~19-(<4Lf6B52>3iO(GaLfSbn~l^6=m)TH4uDoUii-yK z`FQ{&H2DW*0fhy4fjLWv>db%RhwxE=*07+CW2=I{D~q%5;X$28y#S;UFrL*Rvp3m| zLVR78(Gue25s1G52WuJs`O#Qa1e5|G^e?^;=QLEQF@)o;gxK3L@CkwWD~d9(x{ejA z2}A+I2LLPtBOCMQ=b^*bFoN}o@H#-{R}eT#lmyJ#20#iy@8^ss?r!D)d_!@)X6VN$ zz@U{N9ykhwF8Fic|L@L^e+mWn`}4rs zg#~{u+uMmp4dqGvl*Qg##B4OyDzMn!dgpL>;y&%I>ES-14%yAT4rFLpN2SA^l17h*gv(DUzI#SKfakc%T`l2bIq-Ab}K4 z3bw`Y6OH+*;G_lO&$SqsQD?9Odn(wbha`q6{Lz6l_;8r3p8_RZt z)qpqDV+i_M1BCX^I~{zpVXtsVs#J8(?5V<3+PG{Q%T8On{^|wmAd^Algv+C`8uRb=1GprwP%8}E)gaQyewqBTTW+mPwl%}Rt2BYYveq}*3AJx|G;PGhw zDhy=yX$&yIdAkpQi*(zj10n!USf4_>Nf8#BEyDa`yEC2R8#8Sh5jUt)_D4D80Br^y`fHDV^47!3<<*p+*a) z_4`e$XYlrT%woaj~iGDeOP5o|jiafGiN63!2QB1)r z4o+ZAEGJme-WXp`zDQJF1nF0W4N)|x;1!QDk+!&aG9TPntV7RO{QR+dMIp^60&8+{nW|MD&Xy4LHTGc-=RxYa`q`H1Ju0nVSn95fs$C`y zr;mDIp9m&trAkCgV{?xVkK630a>*+hBw{5C822sp)a-O-W6wvBiWC@k{an)&pPzVB zbH$h5B=qOJ9cO1EOD)p^5nZ||43 zEbe3gRo4T#YP>PHBBf3&E4wyrv&L~lnuGjceDILt4^%WN~cujBj9My<73JRM*10o)G5EN9&np_2|?A&!Hi=r zVN3YvvR5H;tUY5ja};P$>*TgaaL*?loZuLy93t<;K?NL!fDV&RA`2kTUP3QtBNzBn zPa=p@dzf}$VgtnZqy&dYeMq3q2JteQS}`rb;Hw{-OfWN5qxl)Lf?1T8DQn-K&0s#l z0TnMho{h~8vTi<`F@v@PT0S-JgeWF#ICM6Hh6R=1fJ7HHu}q>m zvVyoXF^rtP z-}wt^KzykchL!ges7Q2`bbmG(iI)Y4&hE_?N4yg&mlpz@f>4eMY$xGh2PfH&tF zA%Vpsa$0}N9n#=^BmP6#Cg_|iZhllmz{Abvy6@(a)kbjF#XYPzMEXU5#q_tb)PF^V zhlO$bIP@DYHprg%4W9qsl8DYT<;e7g(%N7b)>F(skiQ%L+(a4sD$Zk42JPD{76Wm$ zWh3$(8S|LZx_>A#X0E=wgg~1^{UqS~?|Ah`mlc>K%u~U4?7u3+ywgr=m-3 z?(a=K{@ihR6EWq5iPq)v`@3`3{4F-cd`OztWBi@Ic`^MwhI0Rhb_msX| z-p5CuE+-Wio>2l$HoEp~AjotiHKqotAY$Fqzn=lW#)9Jp{{x!dz9*r+5f>`}N3?y^ zLK5OcERj^ltLEj5&sYSYCY3l*O{I-(Z`sz7zXm z9K1lM-%CA>?b#9##gb`lYrAfGsR(VzqKrLVK)1`*yD+OcVh7bgivSM-bpjg?AYpO> zEj3ZKF|4R|_e}}Zukj;#4)7V`Y?|9X{u9`+9U6VQ3=<&l%K`!Ku2(!Kuxdy(ugmCl%Fgnr&zoVws0fuC> zw%MYyR5H4p%jGytP`w85fyvMce*fs?4~7f_SQ%t496qSi4{$HYWMT6XpnN%>#8)pN zEa}PjGNK(+sB=gVRGw!m0_FcH#j44Cb#c#@A;h(!&mm#p`Wgj+jxA9 z!p7?wN99I0kNOx7$J|@5P;`F=+=H^TQN0i~+BUVR=yTG3(ITT&LQ2k!pSQ&s78}yo zE>%w37|F3oz>+qT(sm`yMPI8V%#o3AXK8%=xbT@%Yu_n^7$Llx|EkDZV08~RksIpY zcvq*tcrs{XtP~fBP_Elo3cbOfyr(gHS+ltHwM{%MDcVdtHTMj4@XNKUUAN{QT?%{t z)MVQl5#u51=6-ve{s2{^Ix+dTHgi&`D)#Xz=TL9&XxmM?-t`|P0+eD**wDZ>wJ@%d z{btg)!o>CKI}<+$OF8zI>DHyuR!mEgM$2is}F*1 zmQ24LT^BXC-^M9)ZFqM0AtQ?_KPOKjEqIVeng7NW>|U`QEqQgO3``0qJbeB`E=%j7PjF7PdO?KV68l5F|&3i)L+Mk0sIpU03C&hlMw>v-Z)bU|#Ab}R;+sssmFT`tuf%2E&(gfsD<{1A_Fv zeS|JVj$ncT*P+s~HlfTWq8`S-Z(A!Z?hsIBX0~N6EO4z=REW#dmBi#=LzXcRkZ@aUz019?$WqYevH-jql77QfH_m7M zFXWihW!qhQ3=8I}F+TGCiZ4>zY}@~WgV_ed|5jATf92oyzG>M1a7Ct~UtT^l$Hw;J zquRT;st%4}K&h z3mkzS@gqoIDDvl&#SC#0HL_it0WD@9iv|%W0PNqX-#+GI|8k%SEo9$``5A01VP+-> z=^o_-eblZ+19D`Fm|05EgmE5qXo0CEo7R8Diw><|vNRFl^BhZjXbvQ^gs{ICzz>J@ z+o8xMM6Q7n-I`cB-Iuj>*PNnY%y;VO`iEn1OXLW0A`Mo%!OW2;g)b68f}qH*Ae#V5 zXlgel08H#O7l80PxaznUJ%0T!an%W>6jrd&su+MPKhI83$9m?PAU??jt2r=k-5ht zy?z6@uUF~cL-x2wVY(DSr5#HMVE!`$dzUGddFwAcJwtnC##}Q8cu(su6lmHv@4?Vy zK<)yN$3VzAfJLbVfgR*95cUnI&rj!wa1&rPuXLyA!z{`SCX!cHp6Qs@-_-)og9J)m z?uZga>i3#Cu?#l3?9pfdpUDx?=i_khS0XUakTW^}YA!pTGsA1F@A-Ljl@}%4i;#yoL;2X~DU78(^Y_eea>35GB{yT^8Lt#X{!qFP<1C)?)zA$qlv< zyLc*qfRY|sh^`vE5%-{2xHN&QN_KfWDg4sWzNhwuAng;WXA3v?EkQqusr>-xc+k?Ap9F7kob1S3c}njVy<4 z7m-yR$Acb zU@kk(3o@p~OMrDV0}{_5BP?6#5UKyX2$#XfEi~w5cW~gZ zL)Z4{#WGVsiK3pi!IQikd*ZYhaOi@p-`Ksu7&iI_zubI=4ZC(oesCGyN z;74UZBoxW<29X-WN+xGN+M~_vtC_)!-qEAb;zCrsh?9A9;zO`n9?3+RT7=eTQOJ{o zY?XMzV?dbzrhiXQILtEswcIp?oQ#RfdlUrD;N(`?>xePISS^|XtDT=RuZ;&6jf{9y z&Lz|=FN2JgG+TColJ)K)G{IWAj9nHIAX67AfX@!rXT>m}_k^q!*kzQ%06`;tDBqG#^t1(|9&dTK)iVcF(=OoQaGM$>~vg>=B=+m}H8=k7cQ5vW@z^ZcZ$9dC9zq z=Zy0j8+yh~WU=4tc#Xrr`&uBBn5_vMI5B;4(h*%29X{hBzcaM*--;^37pHLtPk_N3h_R(eW&QD96%)$x<>ru#$V4zvM>-sx8% z%8{oLiXtL;D84Ii-=TG(x2A(^?(bfa{~@Gyr@}NMfghc*IjtTShe!JzG$)K6NCeEJfYevq7 z*o4$gq)GJWZ$@>$Y@C!6n1L#fs=V3?YNxVW<-c|h?SDVI#ZwXWlD}M=5a~|riNo6u zV}^~v|3Npk^fn10KHgc6fHcgcuL)Zt2EC)PUe$mj8wm;9d*1o9W&z)xaDk!HN@@}K zmV6)aX5Uo#n$J4MSCadq4$;a_D9Oe6z{~ZBbiWk2DTXb2t@5~dhtZZ*amTTi*Mr)# z0k=FvtM!MIU&p+!D7h&X==%qAEx*zZ`WbzRoxX}iAp*HVr+E9e-5eMQN^ZY!9}xm- zz9442+~&FWAEh)0gKr9%)cq)`fqZN;Q`Q3XlF+NYa!4QgqaFkASbx?s0jIk^UzCjX zLmWMu25hwzdUxVd#BDfvT8D(G + %\VignetteIndexEntry{All about Metadata} + %\VignetteEngine{knitr::rmarkdown} + %\VignetteEncoding{UTF-8} +--- +```{css, echo = FALSE} +#pkgdown-sidebar{ + display:none; +} +.wide .table{ + font-size: 8px; + overflow: visible +} + +``` + +```{r, include = FALSE} +knitr::opts_chunk$set( + collapse = TRUE, + comment = "#>" +) +options(rmarkdown.html_vignette.check_title = FALSE) +``` + +{sdtm.oak} is a metadata-driven solution that is designed to be Electronic Data +Capture (EDC) and standards agnostic. Throughout this article, the term "metadata" +is used several times. In this context, "metadata" refers to the specific +metadata used by {sdtm.oak}. This article aims to provide users with a more +detailed understanding of the {sdtm.oak} metadata. + +In general, metadata can be defined as "data about data." It does not include +any patient-level data. Instead, the metadata provides a blueprint of the data +that needs to be collected during a study. + +## Standards Metadata + +The standards metadata used in {sdtm.oak} is sourced from the CDISC Library or +sponsor MDR or any other form of documentation where standards are maintained. +This metadata provides information on the following: + +- The relationship between Data Collection Standards (eCRF & eDT), SDTM mapping, +and Controlled Terminology +- Machine-readable standard SDTM mappings +- Algorithms and associated metadata required for the SDTM automation of +standards in the study. + +In the upcoming releases of {sdtm.oak}, we will effectively utilize the +standards metadata and customize it to meet the study requirements. + +## Study Definition Metadata + +Study Definition Metadata is also referred to as Study Metadata. Study Definition +Metadata provides information about the eCRF and eDT data collected in the study. + +**eCRF Metadata** +The eCRF Design Metadata is fetched from the EDC system. This Metadata includes + +- Forms Metadata: Identifier, eCRF label, Repeating format and other properties of the eCRF. + +- Fields Metadata: Identifier, question label, datatype, and other +properties of data collection fields in the study. + +- Data Dictionaries: Identifier and the controlled terms collected at the +source. + +- Visits: Name of the visits as defined in the EDC. + +**eDT Metadata** + +eDT Metadata is the blueprint metadata that describes the data collected as part of that external data transfer (from clinical sites to the sponsor). This includes + +- Dataset name, label, repeating properties, etc. + +- Variable name, datatype, label and associated codelist, etc. + + +## Study SDTM Mappings Metadata (specifications) + +Study SDTM mappings metadata is the study SDTM specification. To develop the SDTM domains, {sdtm.oak} requires the user to prepare the Study SDTM mappings metadata. Unlike the conventional SDTM specification, which includes one tab per domain defining the target (SDTM domain, Variables) to source (raw dataset, raw variables) and SDTM mappings, the SDTM spec for {sdtm.oak} defines the source-to-target relationship. For each source, the SDTM mapping, algorithms, and associated metadata are defined. The table below presents the columns in the SDTM mapping specification and its explanation. + +

+```{r echo = FALSE, results = "asis"} +library(knitr) +definition <- data.frame( + Variable_Name = c( + "study_number", + "raw_source_model", + "raw_dataset", + "raw_dataset_ordinal", + "raw_dataset_label", + "raw_variable", + "raw_variable_label", + "raw_variable_ordinal", + "raw_variable_type", + "raw_data_format", + "raw_codelist", + "study_specific", + "annotation_ordinal", + "mapping_is_dataset", + "annotation_text", + "target_domain", + "target_sdtm_variable", + "target_sdtm_variable_role", + "target_sdtm_variable_codelist_code", + paste( + "target_sdtm_variable_", + "controlled_terms_or_format" + ), + "target_sdtm_variable_ordinal", + "origin", + "mapping_algorithm", + "sub_algorithm", + "target_hardcoded_value", + "target_term_value", + "target_term_code", + "condition_ordinal", + "condition_group_ordinal", + "condition_left_raw_dataset", + "condition_left_raw_variable", + "condition_left_sdtm_domain", + "condition_left_sdtm_variable", + "condition_operator", + "condition_right_text_value", + "condition_right_sdtm_domain", + "condition_right_sdtm_variable", + "condition_right_raw_dataset", + "condition_right_raw_variable", + "condition_next_logical_operator", + "merge_type", + "merge_left", + "merge_right", + "merge_condition", + "unduplicate_keys", + "groupby_keys", + "target_resource_dataset", + "target_resource_variable" + ), + `Description_of_the_variable` = c( + "Study Number", + "Data Collection model", + "Name of the raw or source dataset", + "Ordinal of the raw dataset as defined in EDC or eDT specification", + "Label of the raw or source dataset", + "Name of the raw variable", + "Label of the raw variable", + paste( + "Ordinal of the variable as defined in the eCRF or", + "eDT specification" + ), + "Type of the Raw Variable", + "Data format of the raw variable", + paste( + "Dictionary name which is assigned to the ", + "eCRF field or a eDT variable" + ), + paste( + "`TRUE` indicates that the source is study specific. ", + "`FALSE` indicates that the raw variable is part of data standards" + ), + "Ordinal of the SDTM mappings for the particular raw source", + paste( + "Indicates if the SDTM mapping is at the dataset level. ", + "`TRUE` indicates that it is dataset level mapping." + ), + "SDTM mapping text or annotation text", + "Name of the target domain.", + "Name of the target SDTM variable", + "CDISC Role for the SDTM target variable defined in the annotation.", + paste( + "NCI or sponsor code of the codelist assigned to the ", + "SDTM target variable defined in the annotation." + ), + paste( + "Controlled terms or format for the target variable ", + "defined in the annotation (as defined per CDISC).", + "`target_sdtm_variable_controlled_terms_or_format` is required ", + "for SDTM Define.xml" + ), + "Ordinal of the target SDTM variable", + "Origin of metadata source, values are subject to controlled terminology", + "Mapping Algorithm", + "The sub-algorithm (scenario) of the source-to-target mapping", + "Text (Hardcoded value) that applies to the target.", + paste( + "CDISC Submission value or sponsor value which represents a", + "hardcoded text" + ), + paste( + "NCI code or sponsor code of the hardcoded value" + ), + paste( + "Ordinal of a (sub)condition, increasing when there ", + "are more than one sub-conditions (e.g. X AND Y)" + ), + paste( + "Ordinal of a group of sub-conditions, used to ", + "disambiguate complex conditions such as (A AND B) OR C. ", + "The ordinal increases in each group and gives the final ", + "precedence of the logical operators." + ), + "Name of the raw dataset on the left part of the condition", + "Name of the raw variable on the left part of the condition", + "Name of the SDTM variable used in the left part of the condition.", + paste( + "Name of the SDTM domain of the variable that is used in ", + "the left part of the condition." + ), + "Operator between the left and right part of the condition", + paste( + "A text that applies to the right part of the condition as ", + "indicated per `condition_operator`." + ), + "Name of the SDTM variable used in the right part of the condition.", + paste( + "Name of the SDTM domain of the variable that is used ", + "in the right part of the condition." + ), + "Name of the raw dataset on the right part of the condition", + "Name of the raw variable on the right part of the condition", + paste( + "The logical operator that applies to the next ", + "sub-conditions, typically AND, OR" + ), + "Specifies the type of join", + "Specifies the left component of the merge", + "Specifies the right component of the merge", + paste( + "Specify the condition of the join (e.g. a specific ", + "variable that should match in the components of the merge)" + ), + paste( + "Raw variables that should be used to determine whether ", + "an observation in the source data is a duplicate record and ", + "subject to being removed" + ), + paste( + "Raw Variables or aggregation functions (i.e. earliest, ", + "latest) to group source data records before mapping to SDTM" + ), + paste( + "Raw dataset name of the raw variable. This will be used when ", + " values are assigned from a from a different source", + "other than the source the mapping is associated with" + ), + paste( + "Raw variable name. This will be used when ", + "values are assigned from a from a different source", + "other than the source the mapping is associated with" + ) + ), + Example_Values = c( + "test_study", + "e-CRF or eDT", + "VTLS1, DEM", + "1, 2, 3, etc", + "Vital Signs,
Demographics", + "SEX_001,
BRTHDD", + "Systolic Blood Pressure,
Birth Day", + "1, 2, 3, etc", + "Text Box,
Date control", + "$200,
dd MON YYYY", + "SEX, ETHNIC", + "TRUE, FALSE", + "1, 2, 3, etc", + "TRUE, FALSE", + "VS.VSORRES when VSTESTCD = 'SYSBP'", + "VS, MH", + "VSORRES, MHSTDTC", + "Topic Variable,
Grouping Qualifier,
Identifier Variable", + "C66742
C66790", + "(AGEU)
ISO 8601
(SEX)", + "1, 2, 3", + "Derived,
Assigned,
Collected,
Predecessor", + "DATASET_LEVEL
ASSIGN_CT
AE_AEREL
HARDCODE_CT", + "ASSIGN_NO_CT
HARCODE_CT", + "ALZHEIMER'S DISEASE HISTORY", + "Y,
beats/min,
INFORMED CONSENT OBTAINED", + "C49488", + "1, 2, 3", + "1, 2, 3", + "VTLS1", + "POSITION", + "AE", + "AEENRTPT", + paste( + "Checked
Not_checked
Is_null
Is_not_null", + "
Equals_to
Different_to
is_numeric
in", + "
not_in" + ), + "('Not Recovered/Not Resolved','Recovering/Resolving')
HOSPITALIZATION", + "AE", + "AETERM", + "SMKHX", + "SUNAM", + "and, or", + "left_join
right_join
full_join
visit_join
subject_join", + "VTLS1", + "VACREC", + "VTLS1.SUBJECT = VACREC.SUBJECT,
MD1.MDNUM = VACREC.MDNUM", + "VTLS1.SUBJECT,
VTLS1.DATAPAGEID", + "TXINF1.DATAPGID,
Earliest", + "AEDE", + "DATAPAGEID" + ), + Association_with_mapping_Algorithms = c( + "Generic Use", + "Generic Use", + "Required for all mapping algorithms", + "Generic Use", + "Generic Use", + "Generic Use", + "Generic Use", + "Generic Use", + "Required for all mapping algorithms", + "Required for all mapping algorithms", + "Required for all mapping algorithms", + "Generic Use", + "Required for all mapping algorithms", + "Required for all mapping algorithms", + "Generic Use", + "Required for all mapping algorithms", + "Required for all mapping algorithms", + "Required for all mapping algorithms", + "Required for all mapping algorithms", + "Generic Use", + "Required for all mapping algorithms", + "Used for define.xml", + "Required for all mapping algorithms", + "Only when Mapping Algorithm is
IF_THEN_ELSE
DATASET_LEVEL", + "ASSIGN_NO_CT
HARDCODE_NO_CT", + "HARDCODE_CT", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "IF_THEN_ELSE", + "MERGE", + "MERGE", + "MERGE", + "MERGE", + "REMOVE_DUP", + "GROUP_BY", + "ASSIGN_NO_CT", + "ASSIGN_NO_CT" + ), + stringsAsFactors = TRUE +) +knitr::kable(definition) +```