@Override
 public void end() {
   final int count = child.getCount();
   parentEvents.add(
       new ParquetProtocol("readMapBegin()") {
         @Override
         public TMap readMapBegin() throws TException {
           return new TMap(keyType, valueType, count);
         }
       });
   parentEvents.addAll(mapEvents);
   mapEvents.clear();
   parentEvents.add(readMapEnd);
 }
 @Override
 public void start() {
   child.startCounting();
   // we'll add the events in the end as we need to count elements
 }