static void FindFirstAnchor(nsIDOMNode* inNode, nsIDOMNode** outAnchor);
static void GetSelectedLink(nsISelection* inSelection, nsIDOMNode **outLinkNode);
NS_INTERFACE_MAP_ENDclass nsTransferableFactory{public:  static nsresult CreateFromEvent(nsIDOMEvent* inMouseEvent, nsIFlavorDataProvider *inFlavorDataProvider,                                  nsITransferable** outTrans);protected:  nsTransferableFactory(nsIDOMEvent* inMouseEvent, nsIFlavorDataProvider *inFlavorDataProvider);  nsresult Produce(nsITransferable** outTrans);private:  nsresult ConvertStringsToTransferable(nsITransferable** outTrans);  static nsresult GetDraggableSelectionData(nsISelection* inSelection, nsIDOMNode* inRealTargetNode,                                             nsIDOMNode **outImageOrLinkNode, PRBool* outDragSelectedText);  static void FindParentLinkNode(nsIDOMNode* inNode, nsIDOMNode** outParent);  static void GetAnchorURL(nsIDOMNode* inNode, nsAString& outURL);  static void GetNodeString(nsIDOMNode* inNode, nsAString & outNodeString);  static nsresult GetImageFromDOMNode(nsIDOMNode* inNode, nsIImage** outImage);  static void CreateLinkText(const nsAString& inURL, const nsAString & inText,                              nsAString& outLinkText);  static void FindFirstAnchor(nsIDOMNode* inNode, nsIDOMNode** outAnchor);  enum serializationMode {serializeAsText, serializeAsHTML};  // if inNode is null, use the selection from the window  static nsresult SerializeNodeOrSelection(serializationMode inMode, PRUint32 inFlags,                        nsIDOMWindow* inWindow, nsIDOMNode* inNode, nsAString& outResultString,                        nsAString& outHTMLContext, nsAString& outHTMLInfo);  PRBool mInstanceAlreadyUsed;  nsCOMPtr<nsIDOMEvent> mMouseEvent;  nsCOMPtr<nsIFlavorDataProvider> mFlavorDataProvider;  nsString mUrlString;  nsString mImageSourceString;  nsString mTitleString;  nsString mHtmlString;        // will be filled automatically if you fill urlstring  nsString mContextString;  nsString mInfoString;  PRBool mIsAnchor;  nsCOMPtr<nsIImage> mImage;};