code: def apply_hfb_pars():
      
      hfb_pars = pd.read_csv('hfb6_pars.csv')
  
      hfb_mults_contents = open(hfb_pars.mlt_file.values[0], 'r').readlines()
      skiprows = sum([1 if i.strip().startswith('#') else 0 for i in hfb_mults_contents]) + 1
      header = hfb_mults_contents[:skiprows]
  
      # read in the multipliers
      names = ['lay', 'irow1','icol1','irow2','icol2', 'hydchr']
      hfb_mults = pd.read_csv(hfb_pars.mlt_file.values[0], skiprows=skiprows, delim_whitespace=True, names=names).dropna()
  
  
      # read in the original file
      hfb_org = pd.read_csv(hfb_pars.org_file.values[0], skiprows=skiprows, delim_whitespace=True, names=names).dropna()
  
      # multiply it out
      hfb_org.hydchr *= hfb_mults.hydchr
  
      for cn in names[:-1]:
          hfb_mults[cn] = hfb_mults[cn].astype(np.int)
          hfb_org[cn] = hfb_org[cn].astype(np.int)
      # write the results
      with open(hfb_pars.model_file.values[0], 'w') as ofp:
          [ofp.write('{0}\n'.format(line.strip())) for line in header]
  
          hfb_org[['lay', 'irow1','icol1','irow2','icol2', 'hydchr']].to_csv(ofp, sep=' ',
                  header=None, index=None)
docs: a function to apply HFB multiplier parameters.  Used to implement
      the parameterization constructed by write_hfb_zone_multipliers_template()
  
      This is to account for the horrible HFB6 format that differs from other BCs making this a special case
  
      Note
      ----
      requires "hfb_pars.csv"
  
      should be added to the forward_run.py script