function Archive = read_igra(path,period)
fid=fopen([path 'USM00070026-data.txt'],'r');
Archive = [];
header = fgets(fid);
while ischar(header)
    linenum = str2double(header(34:36));
    igra_date = datenum([str2num(header(14:17))  str2num(header(19:20)) str2num(header(22:23)) str2num(header(28:29)) str2num(header(30:31)) 0]);
    hour = str2num(header(25:26));
    if hour == 0
        igra_date = igra_date - 1;
    end
    
    for i = 1:linenum
        linstr = fgets(fid);
        linstr = strrep(linstr,'B','');
        linstr = strrep(linstr,'A','');
        linmat = sscanf(linstr,'%f',[1,9]);
        etime = linmat(2);
        if etime== -9999 || etime == -8888
            etime = NaN;
        end
        mins = fix(etime/100);
        secs = etime - 100*mins;
        time = igra_date + mins/60/24 + secs/60/60/24;
        linmat(2) = time;
        linmat(1) = igra_date;
        Archive = [Archive; linmat];       
    end
    header = fgets(fid);
end
fclose all;

% QC
Archive(Archive == -9999) = NaN;
Archive(Archive == -8888) = NaN;

% convert
Archive(:,3) = Archive(:,3)/100;
Archive(:,5) = Archive(:,5)/10;
Archive(:,6) = Archive(:,6)/10;
Archive(:,7) = Archive(:,5) - Archive(:,7)/10 ;
Archive(:,9) = Archive(:,9)/10;

% sort
[~,ind] = sort(Archive(:,2));
Archive = Archive(ind,:);
Archive(Archive(:,1) < datenum(period(1,:)) | Archive(:,1) > datenum(period(2,:)) + 1,:) = [];