code: private static void buildNestedBuckets(HashMap m, String p) {
          String[] components = p.split(":");
          int cl = components.length;
          if(cl == 1) {
              if( ! m.containsKey(components[0]) )
                  m.put(components[0], new HashMap());
          } else {
              HashMap temp = m;
              for(int i=0; i < cl; i++) {
                  if( ! temp.containsKey(components[i]) )
                      temp.put(components[i], new HashMap());
                  temp = (HashMap) temp.get(components[i]);
              }
          }
      }
docs: A helper method to created the nested bucket structure.
  @param m The map in which to build the nested structure.
  @param p The nested bucket structure to create