diff --git a/modules/icing/pirep_goes.py b/modules/icing/pirep_goes.py
index ddf06e815b50ed2f39e72602d197e7effedc32ab..8ac6e275af4c09210b4c94c8b9f280446fe39bf2 100644
--- a/modules/icing/pirep_goes.py
+++ b/modules/icing/pirep_goes.py
@@ -255,6 +255,40 @@ def run(pirep_dct, outfile=None, outfile_l1b=None, dt_str_start=None, dt_str_end
         create_file(outfile_l1b, data_dct, l1b_ds_list, lon_c, lat_c, time_s, fl_alt_s)
 
 
+def analyze2(ice_dct):
+    intensity = []
+    cnt_0 = 0
+    cnt_1 = 0
+    cnt_2 = 0
+    cnt_3 = 0
+    cnt_4 = 0
+    cnt_5 = 0
+    cnt_6 = 0
+    for ts in list(ice_dct.keys()):
+        reports = ice_dct[ts]
+        for tup in reports:
+            it = tup[3]
+            if it == 0:
+                cnt_0 += 1
+                print(tup[4])
+            elif it == 1:
+                cnt_1 += 1
+            elif it == 2:
+                cnt_2 += 1
+            elif it == 3:
+                cnt_3 += 1
+            elif it == 4:
+                cnt_4 += 1
+            elif it == 5:
+                cnt_5 += 1
+            elif it == 6:
+                cnt_6 += 1
+            intensity.append(tup[3])
+    intensity = np.array(intensity)
+    print(np.histogram(intensity, bins=7))
+    print(cnt_0, cnt_1, cnt_2, cnt_3, cnt_4, cnt_5, cnt_6)
+
+
 def analyze(ice_dct, no_ice_dct):
 
     last_file = None
@@ -318,6 +352,127 @@ def analyze(ice_dct, no_ice_dct):
         print(dt_str[2:])
 
 
+def analyze_all(ice_dct, no_ice_dct, neg_ice_dct):
+
+    last_file = None
+    ice_files = []
+    ice_times = []
+    ice_files_5_6 = []
+    ice_times_5_6 = []
+    ice_files_1 = []
+    ice_times_1 = []
+    ice_files_4 = []
+    ice_times_4 = []
+    ice_files_3 = []
+    ice_times_3 = []
+    ice_files_2 = []
+    ice_times_2 = []
+    for ts in list(ice_dct.keys()):
+        try:
+            ds = get_goes_datasource(ts)
+            goes_file, t_0, _ = ds.get_file(ts)
+            print(goes_file, t_0)
+            if goes_file is not None and goes_file != last_file:
+                rpts = ice_dct[ts]
+                for tup in rpts:
+                    if tup[3] == 5 or tup[3] == 6:
+                        ice_files_5_6.append(goes_file)
+                        ice_times_5_6.append(t_0)
+                    elif tup[3] == 1:
+                        ice_files_1.append(goes_file)
+                        ice_times_1.append(t_0)
+                    elif tup[3] == 4:
+                        ice_files_4.append(goes_file)
+                        ice_times_4.append(t_0)
+                    elif tup[3] == 3:
+                        ice_files_3.append(goes_file)
+                        ice_times_3.append(t_0)
+                    else:
+                        ice_files_2.append(goes_file)
+                        ice_times_2.append(t_0)
+                last_file = goes_file
+        except Exception:
+            continue
+
+    last_file = None
+    no_ice_files = []
+    no_ice_times = []
+    for ts in list(no_ice_dct.keys()):
+        try:
+            ds = get_goes_datasource(ts)
+            goes_file, t_0, _ = ds.get_file(ts)
+            if goes_file is not None and goes_file != last_file:
+                no_ice_files.append(goes_file)
+                no_ice_times.append(t_0)
+                last_file = goes_file
+        except Exception:
+            continue
+
+    last_file = None
+    neg_ice_files = []
+    neg_ice_times = []
+    for ts in list(neg_ice_dct.keys()):
+        try:
+            ds = get_goes_datasource(ts)
+            goes_file, t_0, _ = ds.get_file(ts)
+            if goes_file is not None and goes_file != last_file:
+                neg_ice_files.append(goes_file)
+                neg_ice_times.append(t_0)
+                last_file = goes_file
+        except Exception:
+            continue
+
+    ice_times_5_6 = np.array(ice_times_5_6)
+    ice_times = ice_times_1 + ice_files_2 + ice_files_3 + ice_files_4
+    ice_times = np.array(ice_times)
+    ice_times_4 = np.array(ice_files_4)
+    ice_times_3 = np.array(ice_files_3)
+    ice_times_2 = np.array(ice_files_2)
+    ice_times_1 = np.array(ice_files_1)
+    no_ice_times = np.array(no_ice_times)
+    neg_ice_times = np.array(neg_ice_times)
+
+    itrsct_vals, comm1, comm2 = np.intersect1d(ice_times_5_6, ice_times_4, return_indices=True)
+    print(itrsct_vals.shape)
+    itrsct_vals, comm1, comm2 = np.intersect1d(ice_times_5_6, ice_times_3, return_indices=True)
+    print(itrsct_vals.shape)
+    itrsct_vals, comm1, comm2 = np.intersect1d(ice_times_5_6, ice_times_2, return_indices=True)
+    print(itrsct_vals.shape)
+    itrsct_vals, comm1, comm2 = np.intersect1d(ice_times_5_6, ice_times_1, return_indices=True)
+    print(itrsct_vals.shape)
+    itrsct_vals, comm1, comm2 = np.intersect1d(ice_times_5_6, no_ice_times, return_indices=True)
+    print(itrsct_vals.shape)
+    itrsct_vals, comm1, comm2 = np.intersect1d(ice_times_5_6, neg_ice_times, return_indices=True)
+    print(itrsct_vals.shape)
+
+    # ice_indexes = np.arange(len(ice_times))
+    #
+    # ucomm2 = np.setxor1d(comm2, ice_indexes)
+    # np.random.shuffle(ucomm2)
+    # ucomm2 = ucomm2[0:8000]
+    #
+    # files_comm = []
+    # for i in comm2:
+    #     files_comm.append(ice_files[i])
+    #
+    # files_extra = []
+    # times_extra = []
+    # for i in ucomm2:
+    #     files_extra.append(ice_files[i])
+    #     times_extra.append(ice_times[i])
+    #
+    # files = files_comm + files_extra
+    # times = itrsct_vals.tolist() + times_extra
+    # times = np.array(times)
+    #
+    # sidxs = np.argsort(times)
+    # for i in sidxs:
+    #     filename = os.path.split(files[i])[1]
+    #     so = re.search('_s\\d{11}', filename)
+    #     dt_str = so.group()
+    #     print(dt_str[2:])
+
+
 def run_qc(filename, filename_l1b):
     f = h5py.File(filename, 'r')
     icing_alt = f['icing_altitude'][:]