return nsGenericElement::CloneNode(aDeep, aResult);
*aReturn = nsnull;  nsHTMLInputElement* it = new nsHTMLInputElement(mNodeInfo, PR_FALSE); if (!it) { return NS_ERROR_OUT_OF_MEMORY; }  nsCOMPtr<nsIDOMNode> kungFuDeathGrip(it);  CopyInnerTo(it, aDeep);  switch (mType) { case NS_FORM_INPUT_TEXT: case NS_FORM_INPUT_PASSWORD: case NS_FORM_INPUT_FILE: if (GET_BOOLBIT(mBitField, BF_VALUE_CHANGED)) {   nsAutoString value; GetValue(value);  it->SetValueInternal(value, nsnull); } break; case NS_FORM_INPUT_RADIO: case NS_FORM_INPUT_CHECKBOX: if (GET_BOOLBIT(mBitField, BF_CHECKED_CHANGED)) {   PRBool checked; GetChecked(&checked); it->DoSetChecked(checked, PR_FALSE); } break; default: break; }  kungFuDeathGrip.swap(*aReturn);  return NS_OK;
nsHTMLInputElement::CloneNode(PRBool aDeep, nsIDOMNode **aResult){  return nsGenericElement::CloneNode(aDeep, aResult);}