PH006 Audit Trails of SAS Data Set Changes An Overview Maria Y. Reiss, Wyeth Pharmaceuticals, Collegeville, PA
|
|
- Cori Gallagher
- 5 years ago
- Views:
Transcription
1 PH006 Audit Trails of SAS Data Set Changes An Overview Maria Y. Reiss, Wyeth, Collegeville, PA ABSTRACT SAS programmers often have to modify data in SAS data sets. When modifying data, it is desirable to create an audit trail of the changes made. This paper presents an overview of the techniques commonly used to create audit trails for changes to SAS data sets. The code contained in this paper was developed using version 8.2 of SAS. The intended audience of this paper is beginner and intermediate SAS programmers. INTRODUCTION An audit trail is a log of all changes made to data. Information that is typically included in an audit trail is: the data before and after the change. the userid of the person who made the change. the date and time of the data change. the reason for the change. The advantages of an audit trail are: 1. An audit trail improves data security by making it more difficult to hide fraudulent changes to data. 2. An audit trail improves data integrity. An audit trail should contain a record of both unintentional and intentional changes to data, so you can use it to detect and fix unintentional data changes. 3. You can use an audit trail to regress to earlier versions of data. 4. You can reconstruct and reapply data updates that originally failed. 5. You can use audit trail data to develop usage statistics and patterns. 1 In the pharmaceutical industry, an audit trail of data changes is essential due to 21 CFR Part 11 compliance. 2, 3 SAS programmers have several techniques available for generating audit trails of SAS data set changes. This paper presents the pros and cons of commonly used techniques for creating audit trails of changes to SAS data sets. These commonly used techniques are: Visual review of data dumps. PUT statements within a SAS data step to explicitly write out a log of data changes. Using the new audit trail facility available in SAS Version 8. Using PROC COMPARE to list the differences in the data before and after changes were made. Using custom macros to list the differences in the data before and after changes were made. Only allowing data changes to be made in applications that are programmed to create an audit trail (such as SAS/AF or SAS/Intranet applications). Using the new SAS Drug Development Product. VISUAL REVIEW OF DATA DUMPS The simplest technique is to use an output procedure such as PROC PRINT or PROC REPORT to print out the data after the changes are made. A person can then visually review the output and verify that the data changes were made correctly. Obviously, this technique is prone to human error. Also, this technique is very tedious. It should be used only with small quantities of data. 1
2 PUT STATEMENTS WITHIN A DATA STEP Another simple method of generating an audit trail of data changes is to change the data within a data step and then use put statements within the same data step to write a log of the changes. For example: data NSMEDV&new; set NSMEDV&old; file print; title4 **** CORRECTION LOG for NSMEDV&new DATA **** ; title5 ; if patient = and visitdt = mdy(01,01,2003) & medx = Tylenol then do; put patient= visitdt= medptx= medx= startdt= /* key vars */ dose = 5; doseu = MG ; route = PO ; reason_change = Add new data for Patient Tylenol ; Correction Made: dose= doseu= route= ; /* changed variables */ reason_change= ; end; The advantages of this technique are that it is simple to implement, and it does not require extra storage space. A disadvantage is that it too can be prone to human error since it depends on the programmer entering the correct variable names in the put statement. Also, this technique will not detect unintentional changes to data. USING THE SAS AUDIT TRAIL FACILITY With Version 8, SAS added a new audit trail facility to the SAS system. The SAS audit trail facility is a read-only SAS data set that contains information about changes made to another SAS data set. The observations in the audit trail data set contains all the variables from the original data set plus the following additional variables 4 _ATDATETIME ATUSERID ATOBSNO ATRETURNCODE ATMESSAGE ATOPCODE_ Stores the date and time of a modification Stores the logon userid associated with a modification Stores the observation number affected by the modification, except when REUSE=YES Stores the event return code Stores the SAS log message at the time of the modification Stores a code describing the type of modification where DA = Added data record image DD = Deleted data record image DR = Before update record image DW = After update record image EA = Observation add failed ED = Observation delete failed EW = Observation update failed Example Creating a Simple Audit Trail The following SAS dataset, MYRDATA.NSMED, contains information about concomitant medications for patients in a clinical trial. PATIENT VISITDT MEDX DOSE ROUTE STARTDT STOPDT OCT2000 Methyl-Prednisolone. 20SEP SEP OCT2000 Methyl-Prednisolone. 23SEP SEP OCT2000 Methyl-Prednisolone. 24SEP SEP OCT2000 Methyl-Prednisolone. 25SEP SEP OCT2000 Methyl-Prednisolone. 26SEP SEP OCT2000 Methyl-Prednisolone. 27SEP OCT2000 2
3 I add an audit trail to the SAS data set using the code listed below. Note that I add one optional user variable called reason_change. This variable will contain the text of the reason for the data change. %* Add an audit trail data set. *; proc datasets lib=myrdata; audit nsmed; initiate; user_var reason_change $60; Then I modify the SAS dataset using PROC SQL. %* Update a record. *; proc sql; update myrdata.nsmed set dose = 5, reason_change = "Add dose information for first episode" where patient = '000101' & visitdt = '18OCT2000:00:00:00'dt & startdt='20sep2000:00:00:00'dt & stopdt='22sep2000:00:00:00'dt; %* Insert a record. *; proc sql; insert into myrdata.nsmed set patient = '000101', visitdt = '20DEC2000:00:00:00'dt, medx = 'Tylenol', route = "PO", startdt = '18DEC2000:00:00:00'dt, stopdt = '19DEC2000:00:00:00'dt, reason_change = "Add new non-study medication record for patient "; %* Delete a record. *; proc sql; delete from myrdata.nsmed where patient = '000101' & visitdt = '20DEC2000:00:00:00'dt & medx = 'Tylenol' & route = 'PO'; Here is a listing of the audit trail data set that results from these data changes. PATIENT VISITDT MEDX DOSE ROUTE STARTDT OCT2000 Methyl-Prednisolone. 20SEP OCT2000 Methyl-Prednisolone 5 20SEP DEC2000 Tylenol. PO 18DEC DEC2000 Tylenol. PO 18DEC2000 PATIENT STOPDT Reason_Change _ATDATETIME_ SEP MAY2003:14:38: SEP2000 Add dose information for first episode 22MAY2003:14:38: DEC2000 Add new non-study medication record for patient MAY2003:14:38: DEC MAY2003:14:38:32 PATIENT _ATOBSNO ATRETURNCODE ATUSERID ATOPCODE ATMESSAGE_ reissm DR reissm DW reissm DA reissm DD 3
4 The audit trail data set contains two observations for the record update, one observation for the record insertion, and one observation for the record deletion. Pros of the Audit Trail Facility 1. The audit trail facility is part of the Base SAS system. Thus, this feature is supported by SAS. 2. The audit trail facility stores the SAS log message at the time of the modification. 3. The audit trail facility stores information about failed appends. 4. The audit trail facility stores observations that were rejected by integrity constraints. 5. You can add optional user variables to the audit data set such as Reason for Change. 6. The audit trail facility allows you to roll back your data to any given point in time through the use of the timestamp variable _ATDATETIME_. Cons of the Audit Trail Facility 1. The audit trail facility only applies to data changes made by editing the data interactively using PROC APPEND MODIFY statement in the DATA step UPDATE, INSERT, and DELETE statements with PROC SQL According to SAS, An audit trail is not appropriate for data sets that are rebuilt using the DATA step or the SQL procedure. In fact, rebuilding the data set deletes the audit trail. 5 Also, The audit trail is not recommended for SAS data files that are copied, moved, sorted in place, replaced, or transferred to another operating system because those operations do not preserve the audit trail The audit trail data set can become very large since the observations in the audit trail data set contain all of the variables from the original data set plus additional variables. Also, the audit trail data set contains two observations for every record update. 3. The _ATMESSAGE_ variable can contain a long SAS message. In fact, SAS recommends setting a large linesize (e.g. linesize=250) when displaying the content of the _ATMESSAGE_ variable. 4. The logging of data into the audit trail data set can degrade system performance. USING PROC COMPARE PROC COMPARE is the SAS procedure for comparing two SAS data sets against each other. 6 One application of PROC COMPARE is logging and checking changes to a SAS data set. One can use PROC COMPARE to compare the data set before and after editing to make sure that the desired changes were made correctly and that no unintentional changes were made. In this way, the output from PROC COMPARE can serve an audit trail of changes made to the SAS data set. 7 Example Using PROC COMPARE to create a log of data edits. Version 01 of the PAYROLL data contains the following data: ID SALARY The data manager creates Version 02 of the PAYROLL data with edits: 4
5 data payrollv02; set payrollv01; if id=057 then salary=600; if id=026 then delete; To produce a report of the edits, use the code: title1 "Differences Between PAYROLLV02 and PAYROLLV01"; proc compare base = payrollv01 compare = payrollv02 briefsummary listall transpose; id id; This code produces the following output: Differences Between PAYROLLV02 and PAYROLLV01 17:03 Wednesday, April 23, The COMPARE Procedure Comparison of WORK.PAYROLLV01 with WORK.PAYROLLV02 (Method=EXACT) Comparison Results for Observations Observation 2 in WORK.PAYROLLV01 not found in WORK.PAYROLLV02: ID=26. ID=57: Variable Base Value Compare Diff. % Diff SALARY NOTE: Data set WORK.PAYROLLV01 contains 1 observations not in WORK.PAYROLLV02. NOTE: Values of the following 1 variables compare unequal: SALARY Example Using PROC COMPARE to detect unintentional changes to data. PROC COMPARE can also detect unintentional changes to data. As you know, one must be careful when merging data sets. When merging two data sets that contain a common variable with different lengths in the two data sets, SAS will take the length from the first data set in the MERGE statement. If the variable has a shorter length in the first data set, this can cause values from the second data set to be truncated in the merged data set. Data Set 1- LNAME Has Length $10 ID LNAME SALARY 11 REISS WILLIAMS SMITH 777 Data Set 2 - LNAME Has Length $17 ID LNAME 11 REISS 26 WILLIAMS 28 SMITH 34 HOSKINSON-ALVAREZ 5
6 57 JONES 60 BROWN These two data sets are merged using the code: data mergedata; merge ds1 ds2; by id; The variable LNAME in the resulting data set MERGEDATA has length $10. To produce a report of data changes, use the code: proc compare base = ds2 compare = mergedata briefsummary; id id; title1 "Comparison of DS2 and MERGEDATA"; This code produces the following output showing that variable LNAME has been truncated for the record with ID 34. NOTE: Values of the following 1 variables compare unequal: LNAME Value Comparison Results for Variables Base Value Compare Value ID LNAME LNAME 34 HOSKINSON-ALVAREZ HOSKINSON- Pros of Using PROC COMPARE to Create an Audit Trail 1. PROC COMPARE is part of the Base SAS system. Thus, this feature is supported by SAS. 2. PROC COMPARE detects all data changes both intentional and unintentional. It will detect data changes no matter how the changes were made (e.g. it detects changes made through the data step). 3. Using PROC COMPARE to generate an audit trail does not require additional storage space to store an audit data set. 4. PROC COMPARE generally does not require a lot of system resources to run. Cons of Using PROC COMPARE to Create an Audit Trail 1. PROC COMPARE does not provide all the features of a complete audit trail. It does not store information about failed appends or observations rejected by integrity constraints. It does not provide information on the reason for the changes, and it is difficult to roll back data changes using PROC COMPARE output. 2. PROC COMPARE output can be lengthy. 3. PROC COMPARE can be confusing to use because it has a large number of options. 6
7 USING CUSTOM MACROS PROC COMPARE is a very useful tool. However, it has the disadvantage of producing lengthy output. It can also be a little difficult to streamline and tailor PROC COMPARE output. Because of this, some SAS programmers have developed their own custom macros to compare SAS data sets. These custom macros can be used in the same manner as PROC COMPARE to compare the SAS data set before and after changes were made, thereby generating a log of the data changes. Below I list two macros written by SAS programmers as easier-to-use substitutes for PROC COMPARE. 1. %COMP_OBS macro by Kevin King, Wyeth Research, Cambridge, MA. 8 This macro is described in the paper Comparing 2 SAS Data Sets: An Alternative to Using PROC Compare available at the URL < >. This macro only requires as input the names of the two data sets being compared. The macro compares the two data sets and creates an output problem data set containing those observations that differ %EZCOMPAR macro by Doug Zirbel, Pinnacle Solutions, Indianapolis, IN. 9 This macro is described in the paper Finally An Easy Way to Compare Two SAS Files! available at the URL < >. This macro has three input parameters: the names of the two data sets being compared and an optional SORTVARS parameter. This macro can compare two files with the same name that are in different libraries. The macro is limited to comparing data sets with the same set of variables. It creates an output exception file containing any record pairs that do not exactly match. This macro is well-suited to many before-and-after testing situations. 9 Pros of Using Custom Compare Macros to Create an Audit Trail 1. These macros are easy to use. 2. These macros detect all data changes both intentional and unintentional. They will detect data changes no matter how the changes were made (e.g. it detects changes made through the data step). 3. Using these custom macros to generate an audit trail does not require additional storage space to store an audit data set. Cons of Using Custom Compare Macros to Create an Audit Trail 1. These macros are not part of the Base SAS system. Thus, these macros are not supported by the SAS Institute, Inc.. 2. These macros do not provide all the features of a complete audit trail. They do not store information about failed appends or observations rejected by integrity constraints. They do not provide information on the reason for the changes, and it is difficult to roll back data changes using their output. USING CUSTOM APPLICATIONS Another technique for producing an audit trail for all data changes is to only users to change data through a custom application that is programmed to generate an audit trail of all data changes. In his paper User-Interface Tool Choice and Audit Trail Tool Choice for a SAS Based Data Entry/Verify System for Clinical Trials Data, Barry R. Cohen of Planning Data Systems, Inc. in Ardmore, PA describes a system that his company has written. 10 This system is a double-key data entry/verify system for pharmaceutical clinical trials data. This system uses SAS/AF as a GUI front-end. The users of the system can only interact with the data through the GUI front-end. The system generates an audit trail of all data changes. Interestingly, Barry Cohen chose not to use the native SAS audit trail facility in their application. He was concerned about the size of the SAS audit trail data set. Plus, his customers wanted the ability to store reason why information for each variable value that changed. In order 7
8 to have this ability, Barry Cohen s application creates an audit data set with one record per variable changed. Barry Cohen s paper is available at URL < www2.sas.com/proceedings/sugi27/p pdf >. Pros of Using Custom Applications to Create an Audit Trail 1. You can develop your application so that it produces any type of audit trail you want. 2. You can develop a user-friendly interface to the data for your users. Cons of Using Custom Applications to Create an Audit Trail 1. You must spend the time and money to develop the custom application. 2. Your custom application is not part of the Base SAS system. So you must support it yourself. USING THE SAS DRUG DEVELOPMENT PRODUCT SAS has a new product called the Drug Development Product. This product requires an additional SAS license. The Drug Development Product is a web-based platform that can store SAS data, programs, and documents. Customers can choose to store their data and other objects on a server at the SAS Institute, Inc. in Cary, NC, or on their own server. The product provides versioning, audit trails, notification of changes, strong security features, and e-signatures. SAS describes the product as a secure biomedical knowledge platform. The platform becomes the central location for all information about that particular compound, including but not limited to pharmacokinetic, clinical and pre-clinical data; tables; reports; analysis systems; text and graphic documents; journal articles; and competitive analysis. 11 This product was specifically designed to address 21 CFR Part 11 issues. Audit trails of all objects within the product are an integral part of the product. According to SAS, the audit trail keeps a readable and printable history of all modifications made to an object including creation, changes, deletion, and electronic signatures. 12 The Drug Development Product has been available for about one year. At the time of the writing of this paper, SAS has twelve customers for this product. Here are links to information about the product: An Overview - SAS Drug Development Intelligent Research Management SAS Drug Development A solution for addressing 21 CFR Part 11 compliance CONCLUSION There are several different methods for producing audit trails for SAS data set changes. This paper provides an overview of the most commonly used methods. REFERENCES (1) Franklin, Gary and Jensen, Art (2000), Integrity Constraints and Audit Trails Working Together, SUGI 25 Paper 8 March < www2.sas.com/proceedings/sugi25/25/aa/25p008.pdf >. (2) FDA, 21 CFR Part 11, Electronic Records; Electronic Signatures; Final Rule. Federal Register Vol. 62, No. 54, 13429, March 20, (3) FDA, Guidance for Industry, Part 11, Electronic Records; Electronic Signatures Scope and Application, February 20, < > 8
9 (4) SAS Institute Inc. (1999), SAS OnlineDOC, Version 8, Chapter 28, SAS Data Files; pp , Cary, NC: SAS Institute Inc. (5) Thielbar, Melinda. Hey, Who Changed My Data? SAS Bits & Bytes. February < (May 6, 2003). (6) SAS Institute Inc. (1999), SAS OnlineDOC, Version 8, Chapter 9, The COMPARE Procedure; pp , Cary, NC: SAS Institute Inc. (7) Reiss, Maria (2003). Dare to Compare Tailoring PROC COMPARE Output, SESUG (8) King, Kevin (2000). Comparing 2 SAS Data Sets: An Alternative to Using PROC Compare, NESUG < >. (9) Zirbel, Doug (2002). Finally An Easy Way to Compare Two SAS Files! SUGI 27 Paper April < >. (10) Cohen, Barry R. (2002). User-Interface Tool Choice and Audit Trail Tool Choice for a SAS Based Data Entry/Verify System for Clinical Trials Data, SUGI 27 Paper April < www2.sas.com/proceedings/sugi27/p pdf >. (11) SAS Drug Development Intelligent Research Management. SAS Institute, Inc. White Paper < > (12) SAS Drug Development A solution for addressing 21 CFR Part 11 compliance. SAS Institute, Inc. White Paper < > CONTACT INFORMATION Your comments and questions are valued and encouraged. Contact the author at: Maria Y. Reiss Wyeth Research 500 Arcola Road Collegeville, PA reissm@wyeth.com Phone: (484) SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. indicates USA registration. Other brand and product names are registered trademarks or trademarks of their respective companies. 9
Controlling SAS Datasets Using SAS System and Dataset Options (or I need to track the data!) David Franklin, New Hampshire, USA
Paper CC14 Controlling SAS Datasets Using SAS System and Dataset Options (or I need to track the data!) David Franklin, New Hampshire, USA ABSTRACT Keeping track of modifications to data in a SAS dataset
More informationA Few Quick and Efficient Ways to Compare Data
A Few Quick and Efficient Ways to Compare Data Abraham Pulavarti, ICON Clinical Research, North Wales, PA ABSTRACT In the fast paced environment of a clinical research organization, a SAS programmer has
More informationGetting Familiar with SAS Version 8.2 and 9.0 Enhancements Sunil K. Gupta, Gupta Programming, Simi Valley, CA
Getting Familiar with SAS Version 8.2 and 9.0 Enhancements Sunil K. Gupta, Gupta Programming, Simi Valley, CA ABSTRACT Are you just getting around to realizing what SAS version 8.2 has to offer while recently
More informationIndenting with Style
ABSTRACT Indenting with Style Bill Coar, Axio Research, Seattle, WA Within the pharmaceutical industry, many SAS programmers rely heavily on Proc Report. While it is used extensively for summary tables
More informationPharmaSUG Paper IB11
PharmaSUG 2015 - Paper IB11 Proc Compare: Wonderful Procedure! Anusuiya Ghanghas, inventiv International Pharma Services Pvt Ltd, Pune, India Rajinder Kumar, inventiv International Pharma Services Pvt
More informationChoice of Development Tool for the User Interface of a Client-Server Application in a SAS Environment
Choice of Development Tool for the User Interface of a Client-Server Application in a SAS Environment Barry R. Cohen, Planning Data Systems, Inc., Ardmore, PA ABSTRACT Application developers in SAS environments
More informationPharmaSUG China Paper 059
PharmaSUG China 2016 - Paper 059 Using SAS @ to Assemble Output Report Files into One PDF File with Bookmarks Sam Wang, Merrimack Pharmaceuticals, Inc., Cambridge, MA Kaniz Khalifa, Leaf Research Services,
More informationAre you Still Afraid of Using Arrays? Let s Explore their Advantages
Paper CT07 Are you Still Afraid of Using Arrays? Let s Explore their Advantages Vladyslav Khudov, Experis Clinical, Kharkiv, Ukraine ABSTRACT At first glance, arrays in SAS seem to be a complicated and
More informationThe Output Bundle: A Solution for a Fully Documented Program Run
Paper AD05 The Output Bundle: A Solution for a Fully Documented Program Run Carl Herremans, MSD (Europe), Inc., Brussels, Belgium ABSTRACT Within a biostatistics department, it is required that each statistical
More informationPharmaSUG Paper PO22
PharmaSUG 2015 - Paper PO22 Challenges in Developing ADSL with Baseline Data Hongyu Liu, Vertex Pharmaceuticals Incorporated, Boston, MA Hang Pang, Vertex Pharmaceuticals Incorporated, Boston, MA ABSTRACT
More informationMaking the most of SAS Jobs in LSAF
PharmaSUG 2018 - Paper AD-26 Making the most of SAS Jobs in LSAF Sonali Garg, Alexion; Greg Weber, DataCeutics ABSTRACT SAS Life Science Analytics Framework (LSAF) provides the ability to have a 21 CFR
More informationPharmaceuticals, Health Care, and Life Sciences. An Approach to CDISC SDTM Implementation for Clinical Trials Data
An Approach to CDISC SDTM Implementation for Clinical Trials Data William T. Chen, Merck Research Laboratories, Rahway, NJ Margaret M. Coughlin, Merck Research Laboratories, Rahway, NJ ABSTRACT The Clinical
More informationSAS PROGRAM EFFICIENCY FOR BEGINNERS. Bruce Gilsen, Federal Reserve Board
SAS PROGRAM EFFICIENCY FOR BEGINNERS Bruce Gilsen, Federal Reserve Board INTRODUCTION This paper presents simple efficiency techniques that can benefit inexperienced SAS software users on all platforms.
More informationSAS PROGRAM EFFICIENCY FOR BEGINNERS. Bruce Gilsen, Federal Reserve Board
SAS PROGRAM EFFICIENCY FOR BEGINNERS Bruce Gilsen, Federal Reserve Board INTRODUCTION This paper presents simple efficiency techniques that can benefit inexperienced SAS software users on all platforms.
More informationBruce Gilsen, Federal Reserve Board
SAS PROGRAM EFFICIENCY FOR BEGINNERS Bruce Gilsen, Federal Reserve Board INTRODUCTION This paper presents simple efficiency techniques that can benefit inexperienced SAS software users on all platforms
More informationA SAS and Java Application for Reporting Clinical Trial Data. Kevin Kane MSc Infoworks (Data Handling) Limited
A SAS and Java Application for Reporting Clinical Trial Data Kevin Kane MSc Infoworks (Data Handling) Limited Reporting Clinical Trials Is Resource Intensive! Reporting a clinical trial program for a new
More informationUsing Templates Created by the SAS/STAT Procedures
Paper 081-29 Using Templates Created by the SAS/STAT Procedures Yanhong Huang, Ph.D. UMDNJ, Newark, NJ Jianming He, Solucient, LLC., Berkeley Heights, NJ ABSTRACT SAS procedures provide a large quantity
More informationRun your reports through that last loop to standardize the presentation attributes
PharmaSUG2011 - Paper TT14 Run your reports through that last loop to standardize the presentation attributes Niraj J. Pandya, Element Technologies Inc., NJ ABSTRACT Post Processing of the report could
More informationIntroduction / Overview
Paper # SC18 Exploring SAS Generation Data Sets Kirk Paul Lafler, Software Intelligence Corporation Abstract Users have at their disposal a unique and powerful feature for retaining historical copies of
More informationAutomating Comparison of Multiple Datasets Sandeep Kottam, Remx IT, King of Prussia, PA
Automating Comparison of Multiple Datasets Sandeep Kottam, Remx IT, King of Prussia, PA ABSTRACT: Have you ever been asked to compare new datasets to old datasets while transfers of data occur several
More informationPharmaSUG Paper SP04
PharmaSUG 2015 - Paper SP04 Means Comparisons and No Hard Coding of Your Coefficient Vector It Really Is Possible! Frank Tedesco, United Biosource Corporation, Blue Bell, Pennsylvania ABSTRACT When doing
More informationTaming a Spreadsheet Importation Monster
SESUG 2013 Paper BtB-10 Taming a Spreadsheet Importation Monster Nat Wooding, J. Sargeant Reynolds Community College ABSTRACT As many programmers have learned to their chagrin, it can be easy to read Excel
More informationTable Lookups: From IF-THEN to Key-Indexing
Table Lookups: From IF-THEN to Key-Indexing Arthur L. Carpenter, California Occidental Consultants ABSTRACT One of the more commonly needed operations within SAS programming is to determine the value of
More informationBeginner Beware: Hidden Hazards in SAS Coding
ABSTRACT SESUG Paper 111-2017 Beginner Beware: Hidden Hazards in SAS Coding Alissa Wise, South Carolina Department of Education New SAS programmers rely on errors, warnings, and notes to discover coding
More informationMultiple Graphical and Tabular Reports on One Page, Multiple Ways to Do It Niraj J Pandya, CT, USA
Paper TT11 Multiple Graphical and Tabular Reports on One Page, Multiple Ways to Do It Niraj J Pandya, CT, USA ABSTRACT Creating different kind of reports for the presentation of same data sounds a normal
More informationLST in Comparison Sanket Kale, Parexel International Inc., Durham, NC Sajin Johnny, Parexel International Inc., Durham, NC
ABSTRACT PharmaSUG 2013 - Paper PO01 LST in Comparison Sanket Kale, Parexel International Inc., Durham, NC Sajin Johnny, Parexel International Inc., Durham, NC The need for producing error free programming
More informationReal Time Clinical Trial Oversight with SAS
PharmaSUG 2017 - Paper DA01 Real Time Clinical Trial Oversight with SAS Ashok Gunuganti, Trevena ABSTRACT A clinical trial is an expensive and complex undertaking with multiple teams working together to
More informationCustomized Flowcharts Using SAS Annotation Abhinav Srivastva, PaxVax Inc., Redwood City, CA
ABSTRACT Customized Flowcharts Using SAS Annotation Abhinav Srivastva, PaxVax Inc., Redwood City, CA Data visualization is becoming a trend in all sectors where critical business decisions or assessments
More informationAn Introduction to Compressing Data Sets J. Meimei Ma, Quintiles
An Introduction to Compressing Data Sets J. Meimei Ma, Quintiles r:, INTRODUCTION This tutorial introduces compressed data sets. The SAS system compression algorithm is described along with basic syntax.
More informationEXPERIENCES USING SAS/ACCESS IN A COMPLEX RELATIONAL DATABASE APPLICATION. Murty Arisetty, Howmedica, Div. of Pfizer Hospital Products Group, Inc.
EXPERIENCES USING SAS/ACCESS IN A COMPLEX RELATIONAL DATABASE APPLICATION Murty Arisetty, Howmedica, Div. of Pfizer Hospital Products Group, Inc. ABSTRACT The SAS System's Release 6.06 version of SAS/ACCESS
More informationHandling Numeric Representation SAS Errors Caused by Simple Floating-Point Arithmetic Computation Fuad J. Foty, U.S. Census Bureau, Washington, DC
Paper BB-206 Handling Numeric Representation SAS Errors Caused by Simple Floating-Point Arithmetic Computation Fuad J. Foty, U.S. Census Bureau, Washington, DC ABSTRACT Every SAS programmer knows that
More informationApplication of Modular Programming in Clinical Trial Environment Mirjana Stojanovic, CALGB - Statistical Center, DUMC, Durham, NC
PharmaSUG2010 - Paper PO08 Application of Modular Programming in Clinical Trial Environment Mirjana Stojanovic, CALGB - Statistical Center, DUMC, Durham, NC ABSTRACT This paper describes a modular approach
More informationThe 'SKIP' Statement
The 'SKIP' Statement Paul Grant, Private Healthcare Systems, Inc. The Problem Sooner or later every SAS programmer faces the irritating problem of running only a portion of an existing SAS program. If
More informationPhUSE US Connect 2019
PhUSE US Connect 2019 Paper SI04 Creation of ADaM Define.xml v2.0 Using SAS Program and Pinnacle 21 Yan Lei, Johnson & Johnson, Spring House, PA, USA Yongjiang Xu, Johnson & Johnson, Spring House, PA,
More informationCC13 An Automatic Process to Compare Files. Simon Lin, Merck & Co., Inc., Rahway, NJ Huei-Ling Chen, Merck & Co., Inc., Rahway, NJ
CC13 An Automatic Process to Compare Files Simon Lin, Merck & Co., Inc., Rahway, NJ Huei-Ling Chen, Merck & Co., Inc., Rahway, NJ ABSTRACT Comparing different versions of output files is often performed
More informationData Edit-checks Integration using ODS Tagset Niraj J. Pandya, Element Technologies Inc., NJ Vinodh Paida, Impressive Systems Inc.
PharmaSUG2011 - Paper DM03 Data Edit-checks Integration using ODS Tagset Niraj J. Pandya, Element Technologies Inc., NJ Vinodh Paida, Impressive Systems Inc., TX ABSTRACT In the Clinical trials data analysis
More informationCustomizing SAS Data Integration Studio to Generate CDISC Compliant SDTM 3.1 Domains
Paper AD17 Customizing SAS Data Integration Studio to Generate CDISC Compliant SDTM 3.1 Domains ABSTRACT Tatyana Kovtun, Bayer HealthCare Pharmaceuticals, Montville, NJ John Markle, Bayer HealthCare Pharmaceuticals,
More informationWorking with Composite Endpoints: Constructing Analysis Data Pushpa Saranadasa, Merck & Co., Inc., Upper Gwynedd, PA
PharmaSug2016- Paper HA03 Working with Composite Endpoints: Constructing Analysis Data Pushpa Saranadasa, Merck & Co., Inc., Upper Gwynedd, PA ABSTRACT A composite endpoint in a Randomized Clinical Trial
More informationAn Alternate Way to Create the Standard SDTM Domains
PharmaSUG 2018 - Paper DS-12 ABSTRACT An Alternate Way to Create the Standard SDTM Domains Sunil Kumar Pusarla, Omeros Corporation Sponsors who initiate clinical trials after 2016-12-17 are required to
More informationBad Date: How to find true love with Partial Dates! Namrata Pokhrel, Accenture Life Sciences, Berwyn, PA
PharmaSUG 2014 Paper PO09 Bad Date: How to find true love with Partial Dates! Namrata Pokhrel, Accenture Life Sciences, Berwyn, PA ABSTRACT This poster will discuss the difficulties encountered while trying
More informationMigration of a Flexible Reporting System from SAS 6.12 to SAS A project experience -
Paper AS12 Migration of a Flexible Reporting System from SAS 6.12 to SAS 9.1.3 - A project experience - Raymond Ebben, OCS Consulting, Rosmalen, The Netherlands ABSTRACT This paper will discuss the execution
More informationThe DATA Statement: Efficiency Techniques
The DATA Statement: Efficiency Techniques S. David Riba, JADE Tech, Inc., Clearwater, FL ABSTRACT One of those SAS statements that everyone learns in the first day of class, the DATA statement rarely gets
More informationComplying with FDA's 21 CFR Part 11 Regulation
Complying with FDA's 21 CFR Part 11 Regulation A Secure Time Management Primer This report was prepared by the Washington Bureau of Larstan Business Reports, an independent editorial firm based in Washington,
More informationParallelizing Windows Operating System Services Job Flows
ABSTRACT SESUG Paper PSA-126-2017 Parallelizing Windows Operating System Services Job Flows David Kratz, D-Wise Technologies Inc. SAS Job flows created by Windows operating system services have a problem:
More informationA Practical Guide to SAS Extended Attributes
ABSTRACT Paper 1980-2015 A Practical Guide to SAS Extended Attributes Chris Brooks, Melrose Analytics Ltd All SAS data sets and variables have standard attributes. These include items such as creation
More informationCOMPLIANCE. associates VALIDATOR WHITE PAPER. Addressing 21 cfr Part 11
VALIDATOR WHITE PAPER Addressing 21 cfr Part 11 Compliance Associates 1 1 INTRODUCTION 21 CFR Part 11 has been become a very large concern in the pharmaceutical industry as of late due to pressure from
More informationSAS 9 Programming Enhancements Marje Fecht, Prowerk Consulting Ltd Mississauga, Ontario, Canada
SAS 9 Programming Enhancements Marje Fecht, Prowerk Consulting Ltd Mississauga, Ontario, Canada ABSTRACT Performance improvements are the well-publicized enhancement to SAS 9, but what else has changed
More informationSAS/Warehouse Administrator Usage and Enhancements Terry Lewis, SAS Institute Inc., Cary, NC
SAS/Warehouse Administrator Usage and Enhancements Terry Lewis, SAS Institute Inc., Cary, NC ABSTRACT SAS/Warehouse Administrator software makes it easier to build, maintain, and access data warehouses
More informationA Tool to Compare Different Data Transfers Jun Wang, FMD K&L, Inc., Nanjing, China
PharmaSUG China 2018 Paper 64 A Tool to Compare Different Data Transfers Jun Wang, FMD K&L, Inc., Nanjing, China ABSTRACT For an ongoing study, especially for middle-large size studies, regular or irregular
More informationIntegrated Safety Reporting Anemone Thalmann elba - GEIGY Ltd (PH3.25), Basel
ntegrated Safety Reporting Anemone Thalmann elba - GEGY Ltd (PH3.25), Basel Abstract: Most of the regulatory health authorities approving pharmaceutical products consider the ntegrated Safety Summary to
More informationGit with It and Version Control!
Paper CT10 Git with It and Version Control! Carrie Dundas-Lucca, Zencos Consulting, LLC., Cary, NC, United States Ivan Gomez, Zencos Consulting, LLC., Cary, NC, United States ABSTRACT It is a long-standing
More informationReading and Writing RTF Documents as Data: Automatic Completion of CONSORT Flow Diagrams
Reading and Writing RTF Documents as Data: Automatic Completion of CONSORT Flow Diagrams Art Carpenter, California Occidental Consultants, Anchorage, AK Dennis G. Fisher, Ph.D., CSULB, Long Beach, CA ABSTRACT
More informationHow to Keep Multiple Formats in One Variable after Transpose Mindy Wang
How to Keep Multiple Formats in One Variable after Transpose Mindy Wang Abstract In clinical trials and many other research fields, proc transpose are used very often. When many variables with their individual
More informationThe Power of PROC SQL Techniques and SAS Dictionary Tables in Handling Data
Paper PO31 The Power of PROC SQL Techniques and SAS Dictionary Tables in Handling Data MaryAnne DePesquo Hope, Health Services Advisory Group, Phoenix, Arizona Fen Fen Li, Health Services Advisory Group,
More informationStatistics, Data Analysis & Econometrics
ST009 PROC MI as the Basis for a Macro for the Study of Patterns of Missing Data Carl E. Pierchala, National Highway Traffic Safety Administration, Washington ABSTRACT The study of missing data patterns
More informationThe new SAS 9.2 FCMP Procedure, what functions are in your future? John H. Adams, Boehringer Ingelheim Pharmaceutical, Inc.
PharmaSUG2010 - Paper AD02 The new SAS 9.2 FCMP Procedure, what functions are in your future? John H. Adams, Boehringer Ingelheim Pharmaceutical, Inc., Ridgefield, CT ABSTRACT Our company recently decided
More informationPaper CC16. William E Benjamin Jr, Owl Computer Consultancy LLC, Phoenix, AZ
Paper CC16 Smoke and Mirrors!!! Come See How the _INFILE_ Automatic Variable and SHAREBUFFERS Infile Option Can Speed Up Your Flat File Text-Processing Throughput Speed William E Benjamin Jr, Owl Computer
More informationSAS File Management. Improving Performance CHAPTER 37
519 CHAPTER 37 SAS File Management Improving Performance 519 Moving SAS Files Between Operating Environments 520 Converting SAS Files 520 Repairing Damaged Files 520 Recovering SAS Data Files 521 Recovering
More informationPharmaSUG 2013 CC26 Automating the Labeling of X- Axis Sanjiv Ramalingam, Vertex Pharmaceuticals, Inc., Cambridge, MA
PharmaSUG 2013 CC26 Automating the Labeling of X- Axis Sanjiv Ramalingam, Vertex Pharmaceuticals, Inc., Cambridge, MA ABSTRACT Labeling of the X-axis usually involves a tedious axis statement specifying
More informationImplementing CDISC Using SAS. Full book available for purchase here.
Implementing CDISC Using SAS. Full book available for purchase here. Contents About the Book... ix About the Authors... xv Chapter 1: Implementation Strategies... 1 The Case for Standards... 1 Which Models
More informationQuick Results with the Output Delivery System
Paper 58-27 Quick Results with the Output Delivery System Sunil K. Gupta, Gupta Programming, Simi Valley, CA ABSTRACT SAS s new Output Delivery System (ODS) opens a whole new world of options in generating
More informationCreating a Patient Profile using CDISC SDTM Marc Desgrousilliers, Clinovo, Sunnyvale, CA Romain Miralles, Clinovo, Sunnyvale, CA
Creating a Patient Profile using CDISC SDTM Marc Desgrousilliers, Clinovo, Sunnyvale, CA Romain Miralles, Clinovo, Sunnyvale, CA ABSTRACT CDISC SDTM data is the standard format requested by the FDA for
More informationModule I: Clinical Trials a Practical Guide to Design, Analysis, and Reporting 1. Fundamentals of Trial Design
Module I: Clinical Trials a Practical Guide to Design, Analysis, and Reporting 1. Fundamentals of Trial Design Randomized the Clinical Trails About the Uncontrolled Trails The protocol Development The
More informationODS/RTF Pagination Revisit
PharmaSUG 2018 - Paper QT-01 ODS/RTF Pagination Revisit Ya Huang, Halozyme Therapeutics, Inc. Bryan Callahan, Halozyme Therapeutics, Inc. ABSTRACT ODS/RTF combined with PROC REPORT has been used to generate
More informationPaper HOW-06. Tricia Aanderud, And Data Inc, Raleigh, NC
Paper HOW-06 Building Your First SAS Stored Process Tricia Aanderud, And Data Inc, Raleigh, NC ABSTRACT Learn how to convert a simple SAS macro into three different stored processes! Using examples from
More informationSAS Programming Techniques for Manipulating Metadata on the Database Level Chris Speck, PAREXEL International, Durham, NC
PharmaSUG2010 - Paper TT06 SAS Programming Techniques for Manipulating Metadata on the Database Level Chris Speck, PAREXEL International, Durham, NC ABSTRACT One great leap that beginning and intermediate
More informationData Management of Clinical Studies
Data Management of Clinical Studies Magdolna Kiss, Dr. Artila B. Kovac. Chinoin Pharmaceutical and Chemical Works Ltd. Co. Hungary 1 : 1 " 'f, f: > ', }. :'J- ",< " i ;; ' "., F:", " ':.!1 " f }; l' l:.:
More informationAmie Bissonett, inventiv Health Clinical, Minneapolis, MN
PharmaSUG 2013 - Paper TF12 Let s get SAS sy Amie Bissonett, inventiv Health Clinical, Minneapolis, MN ABSTRACT The SAS language has a plethora of procedures, data step statements, functions, and options
More informationA SAS Macro to Generate Caterpillar Plots. Guochen Song, i3 Statprobe, Cary, NC
PharmaSUG2010 - Paper CC21 A SAS Macro to Generate Caterpillar Plots Guochen Song, i3 Statprobe, Cary, NC ABSTRACT Caterpillar plots are widely used in meta-analysis and it only requires a click in software
More informationABB Limited. Table of Content. Executive Summary
21 CFR Part 11 Electronic Records; Electronic Signatures Guidance for Industry Scope of Application Position Paper: A Summary and Interpretation of the Guidance Note: This document has been prepared based
More informationTHE OUTPUT NONMEM DATASET - WITH ADDL RECORDS
SAS Macro to Create ADDL Records To Estimate Dosing Not Represented in the Collected Data, In a NONMEM Population Pharmacokinetic Analysis Dataset Richard Schneck, Mike Heathman, and Lynn Reynolds, Eli
More informationLocking SAS Data Objects
59 CHAPTER 5 Locking SAS Data Objects Introduction 59 Audience 60 About the SAS Data Hierarchy and Locking 60 The SAS Data Hierarchy 60 How SAS Data Objects Are Accessed and Used 61 Types of Locks 62 Locking
More informationPaper Validating User-Submitted Data Files with Base SAS. Michael A. Raithel, Westat
Paper 1662-2018 Validating User-Submitted Data Files with Base SAS Michael A. Raithel, Westat Abstract SAS programming professionals are often asked to receive data files from external sources and analyze
More information186 Statistics, Data Analysis and Modeling. Proceedings of MWSUG '95
A Statistical Analysis Macro Library in SAS Carl R. Haske, Ph.D., STATPROBE, nc., Ann Arbor, M Vivienne Ward, M.S., STATPROBE, nc., Ann Arbor, M ABSTRACT Statistical analysis plays a major role in pharmaceutical
More informationPROC REPORT Basics: Getting Started with the Primary Statements
Paper HOW07 PROC REPORT Basics: Getting Started with the Primary Statements Arthur L. Carpenter California Occidental Consultants, Oceanside, California ABSTRACT The presentation of data is an essential
More informationPlanning to Pool SDTM by Creating and Maintaining a Sponsor-Specific Controlled Terminology Database
PharmaSUG 2017 - Paper DS13 Planning to Pool SDTM by Creating and Maintaining a Sponsor-Specific Controlled Terminology Database ABSTRACT Cori Kramer, Ragini Hari, Keith Shusterman, Chiltern When SDTM
More informationArthur L. Carpenter California Occidental Consultants, Oceanside, California
Paper 028-30 Storing and Using a List of Values in a Macro Variable Arthur L. Carpenter California Occidental Consultants, Oceanside, California ABSTRACT When using the macro language it is not at all
More informationProc Migrate: How to Migrate Your Data and Know You ve Done It Right!
Paper 288-28.3 Proc Migrate: How to Migrate Your Data and Know You ve Done It Right! Diane Olson, SAS Institute, Cary, NC David Wiehle, SAS Institute, Cary, NC ABSTRACT Migrating your data to a new version
More informationTackling Unique Problems Using TWO SET Statements in ONE DATA Step. Ben Cochran, The Bedford Group, Raleigh, NC
MWSUG 2017 - Paper BB114 Tackling Unique Problems Using TWO SET Statements in ONE DATA Step Ben Cochran, The Bedford Group, Raleigh, NC ABSTRACT This paper illustrates solving many problems by creatively
More informationA Practical and Efficient Approach in Generating AE (Adverse Events) Tables within a Clinical Study Environment
A Practical and Efficient Approach in Generating AE (Adverse Events) Tables within a Clinical Study Environment Abstract Jiannan Hu Vertex Pharmaceuticals, Inc. When a clinical trial is at the stage of
More informationPharmaSUG Paper CC02
PharmaSUG 2012 - Paper CC02 Automatic Version Control and Track Changes of CDISC ADaM Specifications for FDA Submission Xiangchen (Bob) Cui, Vertex Pharmaceuticals, Cambridge, MA Min Chen, Vertex Pharmaceuticals,
More informationPharmaSUG Paper PO10
PharmaSUG 2013 - Paper PO10 How to make SAS Drug Development more efficient Xiaopeng Li, Celerion Inc., Lincoln, NE Chun Feng, Celerion Inc., Lincoln, NE Peng Chai, Celerion Inc., Lincoln, NE ABSTRACT
More informationBasic SAS Hash Programming Techniques Applied in Our Daily Work in Clinical Trials Data Analysis
PharmaSUG China 2018 Paper 18 Basic SAS Hash Programming Techniques Applied in Our Daily Work in Clinical Trials Data Analysis ABSTRACT Fanyu Li, MSD, Beijing, China With the development of SAS programming
More informationAutomate Clinical Trial Data Issue Checking and Tracking
PharmaSUG 2018 - Paper AD-31 ABSTRACT Automate Clinical Trial Data Issue Checking and Tracking Dale LeSueur and Krishna Avula, Regeneron Pharmaceuticals Inc. Well organized and properly cleaned data are
More informationPhUse Practical Uses of the DOW Loop in Pharmaceutical Programming Richard Read Allen, Peak Statistical Services, Evergreen, CO, USA
PhUse 2009 Paper Tu01 Practical Uses of the DOW Loop in Pharmaceutical Programming Richard Read Allen, Peak Statistical Services, Evergreen, CO, USA ABSTRACT The DOW-Loop was originally developed by Don
More informationMacro Architecture in Pictures Mark Tabladillo PhD, marktab Consulting, Atlanta, GA Associate Faculty, University of Phoenix
Paper PS16_05 Macro Architecture in Pictures Mark Tabladillo PhD, marktab Consulting, Atlanta, GA Associate Faculty, University of Phoenix ABSTRACT The qualities which SAS macros share with object-oriented
More informationHOW TO DEVELOP A SAS/AF APPLICATION
PS001 Creating Effective Graphical User Interfaces Using Version 8 SAS/AF Anders Longthorne, National Highway Traffic Safety Administration, Washington, DC ABSTRACT Improving access to an organization
More informationA SAS Macro for Generating Informative Cumulative/Point-wise Bar Charts
Paper PO16 A SAS Macro for Generating Informative Cumulative/Point-wise Bar Charts Xuejing Mao, Eli Lilly and Company, Indianapolis, IN Mario Widel, Eli Lilly and Company, Indianapolis, IN ABSTRACT Bar
More informationTweaking your tables: Suppressing superfluous subtotals in PROC TABULATE
ABSTRACT Tweaking your tables: Suppressing superfluous subtotals in PROC TABULATE Steve Cavill, NSW Bureau of Crime Statistics and Research, Sydney, Australia PROC TABULATE is a great tool for generating
More informationAre Your SAS Programs Running You? Marje Fecht, Prowerk Consulting, Cape Coral, FL Larry Stewart, SAS Institute Inc., Cary, NC
Paper CS-044 Are Your SAS Programs Running You? Marje Fecht, Prowerk Consulting, Cape Coral, FL Larry Stewart, SAS Institute Inc., Cary, NC ABSTRACT Most programs are written on a tight schedule, using
More informationGet Started Writing SAS Macros Luisa Hartman, Jane Liao, Merck Sharp & Dohme Corp.
Get Started Writing SAS Macros Luisa Hartman, Jane Liao, Merck Sharp & Dohme Corp. ABSTRACT The SAS Macro Facility is a tool which lends flexibility to your SAS code and promotes easier maintenance. It
More informationOne SAS To Rule Them All
SAS Global Forum 2017 ABSTRACT Paper 1042 One SAS To Rule Them All William Gui Zupko II, Federal Law Enforcement Training Centers In order to display data visually, our audience preferred Excel s compared
More informationOUT= IS IN: VISUALIZING PROC COMPARE RESULTS IN A DATASET
OUT= IS IN: VISUALIZING PROC COMPARE RESULTS IN A DATASET Prasad Ilapogu, Ephicacy Consulting Group; Masaki Mihaila, Pfizer; ABSTRACT Proc compare is widely used in the pharmaceutical world to validate
More informationGraphical User Interface to Report Generation in a Pharmaceutical Environment (Using SAS/AF Software FRAME Technology to Keep Your Head Above Water)
Graphical User Interface to Report Generation in a Pharmaceutical Environment (Using SAS/AF Software FRAME Technology to Keep Your Head Above Water) Kenneth Salatka, PARKE-DAVIS Phannaceutical Research,
More informationAn Automation Procedure for Oracle Data Extraction and Insertion
An Automation Procedure for Oracle Data Extraction and Insertion Shiqun S. Li, Smith Hanley, East Hanover, NJ David H. Wilcox, NYS Department of Health, Albany, NY ABSTRACT SAS software provides strong
More informationStatistics and Data Analysis. Common Pitfalls in SAS Statistical Analysis Macros in a Mass Production Environment
Common Pitfalls in SAS Statistical Analysis Macros in a Mass Production Environment Huei-Ling Chen, Merck & Co., Inc., Rahway, NJ Aiming Yang, Merck & Co., Inc., Rahway, NJ ABSTRACT Four pitfalls are commonly
More informationAutomated Checking Of Multiple Files Kathyayini Tappeta, Percept Pharma Services, Bridgewater, NJ
PharmaSUG 2015 - Paper QT41 Automated Checking Of Multiple Files Kathyayini Tappeta, Percept Pharma Services, Bridgewater, NJ ABSTRACT Most often clinical trial data analysis has tight deadlines with very
More informationSAS Macro Programming for Beginners
ABSTRACT SAS Macro Programming for Beginners Lora D. Delwiche, Winters, CA Susan J. Slaughter, Avocet Solutions, Davis, CA Macro programming is generally considered an advanced topic. But, while macros
More informationSAS Clinical Data Integration Server 2.1
SAS Clinical Data Integration Server 2.1 User s Guide Preproduction Documentation THIS DOCUMENT IS A PREPRODUCTION DRAFT AND IS PROVIDED BY SAS INSTITUTE INC. ON AN AS IS BASIS WITHOUT WARRANTY OF ANY
More informationQuick and Efficient Way to Check the Transferred Data Divyaja Padamati, Eliassen Group Inc., North Carolina.
ABSTRACT PharmaSUG 2016 - Paper QT03 Quick and Efficient Way to Check the Transferred Data Divyaja Padamati, Eliassen Group Inc., North Carolina. Consistency, quality and timelines are the three milestones
More information