private PriorityQueue<KeyValue<Object, Object>> sortReducerInput(){
       FileInputStream fileStream;
       try {
          System.out.println(mapperOutputPath+"/"+ReducerInputFileName);
       fileStream = new FileInputStream(mapperOutputPath+"/"+ReducerInputFileName);
       try {
           ObjectInputStream inputStream = new ObjectInputStream(fileStream);
           try {
               PriorityQueue<KeyValue<Object, Object>> pairQ = new PriorityQueue<KeyValue<Object, Object>>();
               KeyValue<Object,Object> pair = new KeyValue<Object,Object>();
               try{
               while((pair = (KeyValue<Object, Object>) inputStream.readObject()) != null){
                   System.out.println("sort:"+pair.getKey()+pair.getValue());
                   pairQ.add(pair);
               }
               return pairQ;
               }catch(EOFException e){
                   return pairQ;
               }
               
           } catch (ClassNotFoundException e) {
               // TODO Auto-generated catch block
               e.printStackTrace();
               return null;
           }
       } catch (IOException e) {
           // TODO Auto-generated catch block
           e.printStackTrace();
           return null;
       }
   } catch (FileNotFoundException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
       return null;
   }
       
   }