code: private static void buildPath(HashMap m, String p) {
          boolean isEvent = false;
          if(p.contains("@")) {
              String[] components = p.split("@");
              int cl = components.length;
              buildNestedBuckets(m, components[0]);
              if(cl == 2) {
                  if(p.contains("!")) isEvent = true;
                  HashMap pointer = traverseToPoint(m, components[0]);
                  String d;
                  if(isEvent) {
                      String[] temp = components[1].split("!");
                      d = temp[0];
                  } else {
                      d = components[1];
                  }
                  if( ! pointer.containsKey(d) ) 
                      pointer.put(d, new ArrayList());
              }
          } 
      }
docs: Creates a nested path, if not already present in the map. This does not
  support multipath definitions. Please split prior to sending the path to
  this function.
  
  @param m The map to create the path inside of.
  @param p The full path to create.