       module hash
       call pc_hash(hash1,init,80,0,1000)
       call pc_hash(hash2,init,80,1,1,1000)
       call pc_hash(hash3,init,80,1,1,1000)
       call pc_dbm(cs1,open_csv,email.csv,,field_names)
       match=0
       first=0
       last=0
       call pc_dbm(cs1,read)
       do while (pc_dbm_sts)
           if(pc_hash(hash1,insert,""pc_dbm(cs1,fld,firstname) pc_dbm(cs1,fld,lastname)"")) then
               match=match+1
           else
               print "duplicate name key "pc_hash(hash1,key)""
               print "duplicate name nam "pc_dbm(cs1,fld,firstname) pc_dbm(cs1,fld,lastname)""
           endif
           if(pc_hash(hash2,insert,pc_dbm(cs1,fld,firstname))) then
               first=first+1
               call pc_hash(hash2,save,1)
               print "first name key "pc_hash(hash2,key)""
               print "first name data "pc_hash(hash2,data)""
           else
               call pc_hash(hash2,save,pc_calc(pc_hash(hash2,data)+1,i))
               print "repeat first name key "pc_hash(hash2,key)""
               print "repeat first name data "pc_hash(hash2,data)""
           endif
           if(pc_hash(hash3,insert,pc_dbm(cs1,fld,lastname))) then
               last=last+1
               call pc_hash(hash3,save2,1)
               print "last name key "pc_hash(hash3,key)""
               print "last name data "pc_hash(hash3,data2)""
           else
               call pc_hash(hash3,save2,pc_calc(pc_hash(hash3,data2)+1,i))
               print "repeat last name key "pc_hash(hash3,key)""
               print "repeat last name data "pc_hash(hash3,data2)""
           endif
           call pc_dbm(cs1,read)
       end do
       call pc_hash(hash3,loop)
       call pc_hash(hash3,sort)
       do while (pc_hash_sts)
           print "last name key "pc_hash(hash3,key)""
           call pc_hash(hash3,sort)
       end do
       print "matched names = pc_calc(match)"
       print "first   names = pc_calc(first)"
       print "last    names = pc_calc(last)"
       end
