What is the following SAS code trying to do? Please explain Proc sort data = SpecCodes; By TreatingProvider SpecifaltyCodes; Run; Data SpecsCode2; Set SpecCodes; By TreatingProvider SpecialtyCode; If first.TreatingProvider then Counter = 0; Counter +1; Run; Proc freq data = SpecCodes 2; Tables Counter; Run; Data SpecCodes 3 (drop = SpecialityCode Counter i); Set SpecCodes 2; By TreatingProvider SpecialtyCode; Array Spec_Code{6} $ 2 Code1-Code6; Retain Code1-Code6; If first.TreatingProvider then do i = 1 to 6; Spec_code{1} = "; End; Spec_Code{Counter} = SpecialtyCode; If last.TreatingProvider then output; Run;