code: public Header remove(AsciiString name){
          if(name==null || first==null)
              return null;
  
          Header h = null;
          int idx = name.hashCode() & (table.length-1);
          Object obj = table[idx];
          if(obj==null)
              return null;
          else if(obj instanceof Header){
              Header header = (Header)obj;
              if(header.name.equals(name)){
                  table[idx] = null;
                  h = header;
              }
          }else{
              Header headers[] = (Header[])obj;
              for(int i=0; i<headers.length; i++){
                  Header header = headers[i];
                  if(header!=null && header.name.equals(name)){
                      headers[i] = null;
                      h = header;
                      break;
                  }
              }
          }
  
          if(h!=null)
              removeSameNext(h);
          return h;
      }
docs: /*-------------------------------------------------[ Remove ]---------------------------------------------------