code: public final void push(int value)
    {
  
      int ff = m_firstFree;
  
      if ((ff + 1) >= m_mapSize)
      {
        if (null == m_map)
        {
          m_map = new int[m_blocksize];
          m_mapSize = m_blocksize;
        }
        else
        {
          m_mapSize += m_blocksize;
  
          int newMap[] = new int[m_mapSize];
  
          System.arraycopy(m_map, 0, newMap, 0, ff + 1);
  
          m_map = newMap;
        }
      }
  
      m_map[ff] = value;
  
      ff++;
  
      m_firstFree = ff;
    }
docs: Append a Node onto the vector.
  
  @param value Node to add to the vector