unit nsXPCOM_safe17;

interface

uses
  nsConsts, nsGeckoStrings, nsTypes;

const
  NS_ISUPPORTS_SAFE17_IID: TGUID = '{00000000-0000-0000-c000-000000000046}';

  MOZIJSSUBSCRIPTLOADER_SAFE17_IID: TGUID = '{8792d77e-1dd2-11b2-ac7f-9bc9be4f2916}';

  NS_IARRAY_SAFE17_IID: TGUID = '{114744d9-c369-456e-b55a-52fe52880d2d}';

  NS_IMUTABLEARRAY_SAFE17_IID: TGUID = '{2cd0b2f8-d4dd-48b8-87ba-b0200501f079}';

  NS_IASN1OBJECT_SAFE17_IID: TGUID = '{ba8bf582-1dd1-11b2-898c-f40246bc9a63}';
  NS_IASN1OBJECT_SAFE17_ASN1_END_CONTENTS = 0;
  NS_IASN1OBJECT_SAFE17_ASN1_BOOLEAN = 1;
  NS_IASN1OBJECT_SAFE17_ASN1_INTEGER = 2;
  NS_IASN1OBJECT_SAFE17_ASN1_BIT_STRING = 3;
  NS_IASN1OBJECT_SAFE17_ASN1_OCTET_STRING = 4;
  NS_IASN1OBJECT_SAFE17_ASN1_NULL = 5;
  NS_IASN1OBJECT_SAFE17_ASN1_OBJECT_ID = 6;
  NS_IASN1OBJECT_SAFE17_ASN1_ENUMERATED = 10;
  NS_IASN1OBJECT_SAFE17_ASN1_UTF8_STRING = 12;
  NS_IASN1OBJECT_SAFE17_ASN1_SEQUENCE = 16;
  NS_IASN1OBJECT_SAFE17_ASN1_SET = 17;
  NS_IASN1OBJECT_SAFE17_ASN1_PRINTABLE_STRING = 19;
  NS_IASN1OBJECT_SAFE17_ASN1_T61_STRING = 20;
  NS_IASN1OBJECT_SAFE17_ASN1_IA5_STRING = 22;
  NS_IASN1OBJECT_SAFE17_ASN1_UTC_TIME = 23;
  NS_IASN1OBJECT_SAFE17_ASN1_GEN_TIME = 24;
  NS_IASN1OBJECT_SAFE17_ASN1_VISIBLE_STRING = 26;
  NS_IASN1OBJECT_SAFE17_ASN1_UNIVERSAL_STRING = 28;
  NS_IASN1OBJECT_SAFE17_ASN1_BMP_STRING = 30;
  NS_IASN1OBJECT_SAFE17_ASN1_HIGH_TAG_NUMBER = 31;
  NS_IASN1OBJECT_SAFE17_ASN1_CONTEXT_SPECIFIC = 32;
  NS_IASN1OBJECT_SAFE17_ASN1_APPLICATION = 33;
  NS_IASN1OBJECT_SAFE17_ASN1_PRIVATE = 34;

  NS_IASN1SEQUENCE_SAFE17_IID: TGUID = '{b6b957e6-1dd1-11b2-89d7-e30624f50b00}';

  NS_IAUTHPROMPT_SAFE17_IID: TGUID = '{2f977d45-5485-11d4-87e2-0010a4e75ef2}';
  NS_IAUTHPROMPT_SAFE17_SAVE_PASSWORD_NEVER = 0;
  NS_IAUTHPROMPT_SAFE17_SAVE_PASSWORD_FOR_SESSION = 1;
  NS_IAUTHPROMPT_SAFE17_SAVE_PASSWORD_PERMANENTLY = 2;

  NS_IBADCERTLISTENER_SAFE17_IID: TGUID = '{86960956-edb0-11d4-998b-00b0d02354a0}';
  NS_IBADCERTLISTENER_SAFE17_UNINIT_ADD_FLAG = -1;
  NS_IBADCERTLISTENER_SAFE17_ADD_TRUSTED_FOR_SESSION = 1;
  NS_IBADCERTLISTENER_SAFE17_ADD_TRUSTED_PERMANENTLY = 2;

  NS_ISIMPLEENUMERATOR_SAFE17_IID: TGUID = '{d1899240-f9d2-11d2-bdd6-000064657374}';

  NS_ICATEGORYMANAGER_SAFE17_IID: TGUID = '{3275b2cd-af6d-429a-80d7-f0c5120342ac}';

  NS_ICERTIFICATEDIALOGS_SAFE17_IID: TGUID = '{a03ca940-09be-11d5-ac5d-000064657374}';

  NS_IREQUEST_SAFE17_IID: TGUID = '{ef6bfbd2-fd46-48d8-96b7-9f8f0fd387fe}';
  NS_IREQUEST_SAFE17_LOAD_NORMAL = 0;
  NS_IREQUEST_SAFE17_LOAD_BACKGROUND = 1;
  NS_IREQUEST_SAFE17_INHIBIT_CACHING = 128;
  NS_IREQUEST_SAFE17_INHIBIT_PERSISTENT_CACHING = 256;
  NS_IREQUEST_SAFE17_LOAD_BYPASS_CACHE = 512;
  NS_IREQUEST_SAFE17_LOAD_FROM_CACHE = 1024;
  NS_IREQUEST_SAFE17_VALIDATE_ALWAYS = 2048;
  NS_IREQUEST_SAFE17_VALIDATE_NEVER = 4096;
  NS_IREQUEST_SAFE17_VALIDATE_ONCE_PER_SESSION = 8192;

  NS_ICHANNEL_SAFE17_IID: TGUID = '{c63a055a-a676-4e71-bf3c-6cfa11082018}';
  NS_ICHANNEL_SAFE17_LOAD_DOCUMENT_URI = 65536;
  NS_ICHANNEL_SAFE17_LOAD_RETARGETED_DOCUMENT_URI = 131072;
  NS_ICHANNEL_SAFE17_LOAD_REPLACE = 262144;
  NS_ICHANNEL_SAFE17_LOAD_INITIAL_DOCUMENT_URI = 524288;
  NS_ICHANNEL_SAFE17_LOAD_TARGETED = 1048576;

  NS_IPROGRAMMINGLANGUAGE_SAFE17_IID: TGUID = '{ea604e90-40ba-11d5-90bb-0010a4e73d9a}';
  NS_IPROGRAMMINGLANGUAGE_SAFE17_UNKNOWN = 0;
  NS_IPROGRAMMINGLANGUAGE_SAFE17_CPLUSPLUS = 1;
  NS_IPROGRAMMINGLANGUAGE_SAFE17_JAVASCRIPT = 2;
  NS_IPROGRAMMINGLANGUAGE_SAFE17_PYTHON = 3;
  NS_IPROGRAMMINGLANGUAGE_SAFE17_PERL = 4;
  NS_IPROGRAMMINGLANGUAGE_SAFE17_JAVA = 5;
  NS_IPROGRAMMINGLANGUAGE_SAFE17_ZX81_BASIC = 6;
  NS_IPROGRAMMINGLANGUAGE_SAFE17_JAVASCRIPT2 = 7;

  NS_ICLASSINFO_SAFE17_IID: TGUID = '{986c11d0-f340-11d4-9075-0010a4e73d9a}';
  NS_ICLASSINFO_SAFE17_SINGLETON = 1;
  NS_ICLASSINFO_SAFE17_THREADSAFE = 2;
  NS_ICLASSINFO_SAFE17_MAIN_THREAD_ONLY = 4;
  NS_ICLASSINFO_SAFE17_DOM_OBJECT = 8;
  NS_ICLASSINFO_SAFE17_PLUGIN_OBJECT = 16;
  NS_ICLASSINFO_SAFE17_EAGER_CLASSINFO = 32;
  NS_ICLASSINFO_SAFE17_CONTENT_NODE = 64;
  NS_ICLASSINFO_SAFE17_RESERVED = 2147483648;

  NS_ICLIPBOARDCOMMANDS_SAFE17_IID: TGUID = '{b8100c90-73be-11d2-92a5-00105a1b0d64}';

  NS_ICOMPONENTMANAGER_SAFE17_IID: TGUID = '{a88e5a60-205a-4bb1-94e1-2628daf51eae}';

  NS_ICOMPONENTREGISTRAR_SAFE17_IID: TGUID = '{2417cbfe-65ad-48a6-b4b6-eb84db174392}';

  NS_ICONTEXTMENULISTENER_SAFE17_IID: TGUID = '{3478b6b0-3875-11d4-94ef-0020183bf181}';
  NS_ICONTEXTMENULISTENER_SAFE17_CONTEXT_NONE = 0;
  NS_ICONTEXTMENULISTENER_SAFE17_CONTEXT_LINK = 1;
  NS_ICONTEXTMENULISTENER_SAFE17_CONTEXT_IMAGE = 2;
  NS_ICONTEXTMENULISTENER_SAFE17_CONTEXT_DOCUMENT = 4;
  NS_ICONTEXTMENULISTENER_SAFE17_CONTEXT_TEXT = 8;
  NS_ICONTEXTMENULISTENER_SAFE17_CONTEXT_INPUT = 16;

  NS_ICOOKIE_SAFE17_IID: TGUID = '{e9fcb9a4-d376-458f-b720-e65e7df593bc}';
  NS_ICOOKIE_SAFE17_STATUS_UNKNOWN = 0;
  NS_ICOOKIE_SAFE17_STATUS_ACCEPTED = 1;
  NS_ICOOKIE_SAFE17_STATUS_DOWNGRADED = 2;
  NS_ICOOKIE_SAFE17_STATUS_FLAGGED = 3;
  NS_ICOOKIE_SAFE17_STATUS_REJECTED = 4;
  NS_ICOOKIE_SAFE17_POLICY_UNKNOWN = 0;
  NS_ICOOKIE_SAFE17_POLICY_NONE = 1;
  NS_ICOOKIE_SAFE17_POLICY_NO_CONSENT = 2;
  NS_ICOOKIE_SAFE17_POLICY_IMPLICIT_CONSENT = 3;
  NS_ICOOKIE_SAFE17_POLICY_EXPLICIT_CONSENT = 4;
  NS_ICOOKIE_SAFE17_POLICY_NO_II = 5;

  NS_ICOOKIEMANAGER_SAFE17_IID: TGUID = '{aaab6710-0f2c-11d5-a53b-0010a401eb10}';

  NS_ICRLINFO_SAFE17_IID: TGUID = '{c185d920-4a3e-11d5-ba27-00108303b117}';

  NS_IDEBUG_SAFE17_IID: TGUID = '{3bf0c3d7-3bd9-4cf2-a971-33572c503e1e}';

  NS_IFILE_SAFE17_IID: TGUID = '{c8c0a080-0868-11d3-915f-d9d889d48e3c}';
  NS_IFILE_SAFE17_NORMAL_FILE_TYPE = 0;
  NS_IFILE_SAFE17_DIRECTORY_TYPE = 1;

  NS_IDIRECTORYSERVICEPROVIDER_SAFE17_IID: TGUID = '{bbf8cab0-d43a-11d3-8cc2-00609792278c}';

  NS_IDIRECTORYSERVICEPROVIDER2_SAFE17_IID: TGUID = '{2f977d4b-5485-11d4-87e2-0010a4e75ef2}';

  NS_IDIRECTORYSERVICE_SAFE17_IID: TGUID = '{57a66a60-d43a-11d3-8cc2-00609792278c}';

  NS_IDOM3DOCUMENTEVENT_SAFE17_IID: TGUID = '{090ecc19-b7cb-4f47-ae47-ed68d4926249}';

  NS_IDOM3EVENTTARGET_SAFE17_IID: TGUID = '{3e9c01a7-de97-4c3b-8294-b4bd9d7056d1}';

  NS_IDOMABSTRACTVIEW_SAFE17_IID: TGUID = '{f51ebade-8b1a-11d3-aae7-0010830123b4}';

  NS_IDOMNODE_SAFE17_IID: TGUID = '{a6cf907c-15b3-11d2-932e-00805f8add32}';
  NS_IDOMNODE_SAFE17_ELEMENT_NODE = 1;
  NS_IDOMNODE_SAFE17_ATTRIBUTE_NODE = 2;
  NS_IDOMNODE_SAFE17_TEXT_NODE = 3;
  NS_IDOMNODE_SAFE17_CDATA_SECTION_NODE = 4;
  NS_IDOMNODE_SAFE17_ENTITY_REFERENCE_NODE = 5;
  NS_IDOMNODE_SAFE17_ENTITY_NODE = 6;
  NS_IDOMNODE_SAFE17_PROCESSING_INSTRUCTION_NODE = 7;
  NS_IDOMNODE_SAFE17_COMMENT_NODE = 8;
  NS_IDOMNODE_SAFE17_DOCUMENT_NODE = 9;
  NS_IDOMNODE_SAFE17_DOCUMENT_TYPE_NODE = 10;
  NS_IDOMNODE_SAFE17_DOCUMENT_FRAGMENT_NODE = 11;
  NS_IDOMNODE_SAFE17_NOTATION_NODE = 12;

  NS_IDOMATTR_SAFE17_IID: TGUID = '{a6cf9070-15b3-11d2-932e-00805f8add32}';

  NS_IDOMBARPROP_SAFE17_IID: TGUID = '{9eb2c150-1d56-11d3-8221-0060083a0bcf}';

  NS_IDOMCHARACTERDATA_SAFE17_IID: TGUID = '{a6cf9072-15b3-11d2-932e-00805f8add32}';

  NS_IDOMTEXT_SAFE17_IID: TGUID = '{a6cf9082-15b3-11d2-932e-00805f8add32}';

  NS_IDOMCDATASECTION_SAFE17_IID: TGUID = '{a6cf9071-15b3-11d2-932e-00805f8add32}';

  NS_IDOMCOMMENT_SAFE17_IID: TGUID = '{a6cf9073-15b3-11d2-932e-00805f8add32}';

  NS_IDOMCOUNTER_SAFE17_IID: TGUID = '{31adb439-0055-402d-9b1d-d5ca94f3f55b}';

  NS_IDOMCSSVALUE_SAFE17_IID: TGUID = '{009f7ea5-9e80-41be-b008-db62f10823f2}';
  NS_IDOMCSSVALUE_SAFE17_CSS_INHERIT = 0;
  NS_IDOMCSSVALUE_SAFE17_CSS_PRIMITIVE_VALUE = 1;
  NS_IDOMCSSVALUE_SAFE17_CSS_VALUE_LIST = 2;
  NS_IDOMCSSVALUE_SAFE17_CSS_CUSTOM = 3;

  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_IID: TGUID = '{e249031f-8df9-4e7a-b644-18946dce0019}';
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_UNKNOWN = 0;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_NUMBER = 1;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_PERCENTAGE = 2;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_EMS = 3;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_EXS = 4;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_PX = 5;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_CM = 6;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_MM = 7;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_IN = 8;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_PT = 9;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_PC = 10;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_DEG = 11;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_RAD = 12;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_GRAD = 13;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_MS = 14;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_S = 15;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_HZ = 16;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_KHZ = 17;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_DIMENSION = 18;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_STRING = 19;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_URI = 20;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_IDENT = 21;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_ATTR = 22;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_COUNTER = 23;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_RECT = 24;
  NS_IDOMCSSPRIMITIVEVALUE_SAFE17_CSS_RGBCOLOR = 25;

  NS_IDOMCSSRULE_SAFE17_IID: TGUID = '{a6cf90c1-15b3-11d2-932e-00805f8add32}';
  NS_IDOMCSSRULE_SAFE17_UNKNOWN_RULE = 0;
  NS_IDOMCSSRULE_SAFE17_STYLE_RULE = 1;
  NS_IDOMCSSRULE_SAFE17_CHARSET_RULE = 2;
  NS_IDOMCSSRULE_SAFE17_IMPORT_RULE = 3;
  NS_IDOMCSSRULE_SAFE17_MEDIA_RULE = 4;
  NS_IDOMCSSRULE_SAFE17_FONT_FACE_RULE = 5;
  NS_IDOMCSSRULE_SAFE17_PAGE_RULE = 6;

  NS_IDOMCSSRULELIST_SAFE17_IID: TGUID = '{a6cf90c0-15b3-11d2-932e-00805f8add32}';

  NS_IDOMCSSSTYLEDECLARATION_SAFE17_IID: TGUID = '{a6cf90be-15b3-11d2-932e-00805f8add32}';

  NS_IDOMSTYLESHEET_SAFE17_IID: TGUID = '{a6cf9080-15b3-11d2-932e-00805f8add32}';

  NS_IDOMCSSSTYLESHEET_SAFE17_IID: TGUID = '{a6cf90c2-15b3-11d2-932e-00805f8add32}';

  NS_IDOMCSSVALUELIST_SAFE17_IID: TGUID = '{8f09fa84-39b9-4dca-9b2f-db0eeb186286}';

  NS_IDOMEVENT_SAFE17_IID: TGUID = '{a66b7b80-ff46-bd97-0080-5f8ae38add32}';
  NS_IDOMEVENT_SAFE17_CAPTURING_PHASE = 1;
  NS_IDOMEVENT_SAFE17_AT_TARGET = 2;
  NS_IDOMEVENT_SAFE17_BUBBLING_PHASE = 3;

  NS_IDOMCUSTOMEVENT_SAFE17_IID: TGUID = '{55c7af7b-1a64-40bf-87eb-2c2cbee0491b}';

  NS_IDOMDOCUMENT_SAFE17_IID: TGUID = '{a6cf9075-15b3-11d2-932e-00805f8add32}';

  NS_IDOMDOCUMENTEVENT_SAFE17_IID: TGUID = '{46b91d66-28e2-11d4-ab1e-0010830123b4}';

  NS_IDOMDOCUMENTFRAGMENT_SAFE17_IID: TGUID = '{a6cf9076-15b3-11d2-932e-00805f8add32}';

  NS_IDOMDOCUMENTRANGE_SAFE17_IID: TGUID = '{7b9badc6-c9bc-447a-8670-dbd195aed24b}';

  NS_IDOMDOCUMENTSTYLE_SAFE17_IID: TGUID = '{3d9f4973-dd2e-48f5-b5f7-2634e09eadd9}';

  NS_IDOMDOCUMENTTYPE_SAFE17_IID: TGUID = '{a6cf9077-15b3-11d2-932e-00805f8add32}';

  NS_IDOMDOCUMENTVIEW_SAFE17_IID: TGUID = '{1acdb2ba-1dd2-11b2-95bc-9542495d2569}';

  NS_IDOMDOMEXCEPTION_SAFE17_IID: TGUID = '{a6cf910a-15b3-11d2-932e-00805f8add32}';
  NS_IDOMDOMEXCEPTION_SAFE17_INDEX_SIZE_ERR = 1;
  NS_IDOMDOMEXCEPTION_SAFE17_DOMSTRING_SIZE_ERR = 2;
  NS_IDOMDOMEXCEPTION_SAFE17_HIERARCHY_REQUEST_ERR = 3;
  NS_IDOMDOMEXCEPTION_SAFE17_WRONG_DOCUMENT_ERR = 4;
  NS_IDOMDOMEXCEPTION_SAFE17_INVALID_CHARACTER_ERR = 5;
  NS_IDOMDOMEXCEPTION_SAFE17_NO_DATA_ALLOWED_ERR = 6;
  NS_IDOMDOMEXCEPTION_SAFE17_NO_MODIFICATION_ALLOWED_ERR = 7;
  NS_IDOMDOMEXCEPTION_SAFE17_NOT_FOUND_ERR = 8;
  NS_IDOMDOMEXCEPTION_SAFE17_NOT_SUPPORTED_ERR = 9;
  NS_IDOMDOMEXCEPTION_SAFE17_INUSE_ATTRIBUTE_ERR = 10;
  NS_IDOMDOMEXCEPTION_SAFE17_INVALID_STATE_ERR = 11;
  NS_IDOMDOMEXCEPTION_SAFE17_SYNTAX_ERR = 12;
  NS_IDOMDOMEXCEPTION_SAFE17_INVALID_MODIFICATION_ERR = 13;
  NS_IDOMDOMEXCEPTION_SAFE17_NAMESPACE_ERR = 14;
  NS_IDOMDOMEXCEPTION_SAFE17_INVALID_ACCESS_ERR = 15;

  NS_IDOMDOMIMPLEMENTATION_SAFE17_IID: TGUID = '{a6cf9074-15b3-11d2-932e-00805f8add32}';

  NS_IDOMELEMENT_SAFE17_IID: TGUID = '{a6cf9078-15b3-11d2-932e-00805f8add32}';

  NS_IDOMENTITY_SAFE17_IID: TGUID = '{a6cf9079-15b3-11d2-932e-00805f8add32}';

  NS_IDOMENTITYREFERENCE_SAFE17_IID: TGUID = '{a6cf907a-15b3-11d2-932e-00805f8add32}';

  NS_IDOMEVENTGROUP_SAFE17_IID: TGUID = '{33347bee-6620-4841-8152-36091ae80c7e}';

  NS_IDOMEVENTLISTENER_SAFE17_IID: TGUID = '{df31c120-ded6-11d1-bd85-00805f8ae3f4}';

  NS_IDOMEVENTTARGET_SAFE17_IID: TGUID = '{1c773b30-d1cf-11d2-bd95-00805f8ae3f4}';

  NS_IDOMHTMLELEMENT_SAFE17_IID: TGUID = '{a6cf9085-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLANCHORELEMENT_SAFE17_IID: TGUID = '{a6cf90aa-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLAPPLETELEMENT_SAFE17_IID: TGUID = '{a6cf90ae-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLAREAELEMENT_SAFE17_IID: TGUID = '{a6cf90b0-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLBASEELEMENT_SAFE17_IID: TGUID = '{a6cf908b-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLBASEFONTELEMENT_SAFE17_IID: TGUID = '{a6cf90a6-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLBODYELEMENT_SAFE17_IID: TGUID = '{a6cf908e-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLBRELEMENT_SAFE17_IID: TGUID = '{a6cf90a5-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLBUTTONELEMENT_SAFE17_IID: TGUID = '{a6cf9095-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLCOLLECTION_SAFE17_IID: TGUID = '{a6cf9083-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLDIRECTORYELEMENT_SAFE17_IID: TGUID = '{a6cf909c-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLDIVELEMENT_SAFE17_IID: TGUID = '{a6cf90a0-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLDLISTELEMENT_SAFE17_IID: TGUID = '{a6cf909b-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLDOCUMENT_SAFE17_IID: TGUID = '{a6cf9084-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLEMBEDELEMENT_SAFE17_IID: TGUID = '{123f90ab-15b3-11d2-456e-00805f8add32}';

  NS_IDOMHTMLFIELDSETELEMENT_SAFE17_IID: TGUID = '{a6cf9097-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLFONTELEMENT_SAFE17_IID: TGUID = '{a6cf90a7-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLFORMELEMENT_SAFE17_IID: TGUID = '{a6cf908f-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLFRAMEELEMENT_SAFE17_IID: TGUID = '{a6cf90b9-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLFRAMESETELEMENT_SAFE17_IID: TGUID = '{a6cf90b8-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLHEADELEMENT_SAFE17_IID: TGUID = '{a6cf9087-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLHEADINGELEMENT_SAFE17_IID: TGUID = '{a6cf90a2-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLHRELEMENT_SAFE17_IID: TGUID = '{a6cf90a8-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLHTMLELEMENT_SAFE17_IID: TGUID = '{a6cf9086-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLIFRAMEELEMENT_SAFE17_IID: TGUID = '{a6cf90ba-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLIMAGEELEMENT_SAFE17_IID: TGUID = '{a6cf90ab-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLINPUTELEMENT_SAFE17_IID: TGUID = '{a6cf9093-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLISINDEXELEMENT_SAFE17_IID: TGUID = '{a6cf908c-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLLABELELEMENT_SAFE17_IID: TGUID = '{a6cf9096-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLLEGENDELEMENT_SAFE17_IID: TGUID = '{a6cf9098-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLLIELEMENT_SAFE17_IID: TGUID = '{a6cf909e-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLLINKELEMENT_SAFE17_IID: TGUID = '{a6cf9088-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLMAPELEMENT_SAFE17_IID: TGUID = '{a6cf90af-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLMENUELEMENT_SAFE17_IID: TGUID = '{a6cf909d-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLMETAELEMENT_SAFE17_IID: TGUID = '{a6cf908a-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLMODELEMENT_SAFE17_IID: TGUID = '{a6cf90a9-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLOBJECTELEMENT_SAFE17_IID: TGUID = '{a6cf90ac-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLOLISTELEMENT_SAFE17_IID: TGUID = '{a6cf909a-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLOPTGROUPELEMENT_SAFE17_IID: TGUID = '{a6cf9091-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLOPTIONELEMENT_SAFE17_IID: TGUID = '{a6cf9092-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLOPTIONSCOLLECTION_SAFE17_IID: TGUID = '{bce0213c-f70f-488f-b93f-688acca55d63}';

  NS_IDOMHTMLPARAGRAPHELEMENT_SAFE17_IID: TGUID = '{a6cf90a1-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLPARAMELEMENT_SAFE17_IID: TGUID = '{a6cf90ad-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLPREELEMENT_SAFE17_IID: TGUID = '{a6cf90a4-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLQUOTEELEMENT_SAFE17_IID: TGUID = '{a6cf90a3-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLSCRIPTELEMENT_SAFE17_IID: TGUID = '{a6cf90b1-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLSELECTELEMENT_SAFE17_IID: TGUID = '{a6cf9090-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLSTYLEELEMENT_SAFE17_IID: TGUID = '{a6cf908d-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLTABLECAPTIONELEMENT_SAFE17_IID: TGUID = '{a6cf90b3-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLTABLECELLELEMENT_SAFE17_IID: TGUID = '{a6cf90b7-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLTABLECOLELEMENT_SAFE17_IID: TGUID = '{a6cf90b4-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLTABLEELEMENT_SAFE17_IID: TGUID = '{a6cf90b2-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLTABLEROWELEMENT_SAFE17_IID: TGUID = '{a6cf90b6-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLTABLESECTIONELEMENT_SAFE17_IID: TGUID = '{a6cf90b5-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLTEXTAREAELEMENT_SAFE17_IID: TGUID = '{a6cf9094-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLTITLEELEMENT_SAFE17_IID: TGUID = '{a6cf9089-15b3-11d2-932e-00805f8add32}';

  NS_IDOMHTMLULISTELEMENT_SAFE17_IID: TGUID = '{a6cf9099-15b3-11d2-932e-00805f8add32}';

  NS_IDOMMEDIALIST_SAFE17_IID: TGUID = '{9b0c2ed7-111c-4824-adf9-ef0da6dad371}';

  NS_IDOMUIEVENT_SAFE17_IID: TGUID = '{a6cf90c3-15b3-11d2-932e-00805f8add32}';

  NS_IDOMMOUSEEVENT_SAFE17_IID: TGUID = '{ff751edc-8b02-aae7-0010-8301838a3123}';

  NS_IDOMNAMEDNODEMAP_SAFE17_IID: TGUID = '{a6cf907b-15b3-11d2-932e-00805f8add32}';

  NS_IDOMNODELIST_SAFE17_IID: TGUID = '{a6cf907d-15b3-11d2-932e-00805f8add32}';

  NS_IDOMNOTATION_SAFE17_IID: TGUID = '{a6cf907e-15b3-11d2-932e-00805f8add32}';

  NS_IDOMPROCESSINGINSTRUCTION_SAFE17_IID: TGUID = '{a6cf907f-15b3-11d2-932e-00805f8add32}';

  NS_IDOMRANGE_SAFE17_IID: TGUID = '{a6cf90ce-15b3-11d2-932e-00805f8add32}';
  NS_IDOMRANGE_SAFE17_START_TO_START = 0;
  NS_IDOMRANGE_SAFE17_START_TO_END = 1;
  NS_IDOMRANGE_SAFE17_END_TO_END = 2;
  NS_IDOMRANGE_SAFE17_END_TO_START = 3;

  NS_IDOMRECT_SAFE17_IID: TGUID = '{71735f62-ac5c-4236-9a1f-5ffb280d531c}';

  NS_IDOMRGBCOLOR_SAFE17_IID: TGUID = '{6aff3102-320d-4986-9790-12316bb87cf9}';

  NS_IDOMSTYLESHEETLIST_SAFE17_IID: TGUID = '{a6cf9081-15b3-11d2-932e-00805f8add32}';

  NS_IDOMWINDOW_SAFE17_IID: TGUID = '{a6cf906b-15b3-11d2-932e-00805f8add32}';

  NS_IDOMWINDOW2_SAFE17_IID: TGUID = '{65455132-b96a-40ec-adea-52fa22b1028c}';

  NS_IDOMWINDOWCOLLECTION_SAFE17_IID: TGUID = '{a6cf906f-15b3-11d2-932e-00805f8add32}';

  NS_IEMBEDDINGSITEWINDOW_SAFE17_IID: TGUID = '{3e5432cd-9568-4bd1-8cbe-d50aba110743}';
  NS_IEMBEDDINGSITEWINDOW_SAFE17_DIM_FLAGS_POSITION = 1;
  NS_IEMBEDDINGSITEWINDOW_SAFE17_DIM_FLAGS_SIZE_INNER = 2;
  NS_IEMBEDDINGSITEWINDOW_SAFE17_DIM_FLAGS_SIZE_OUTER = 4;

  NS_IFACTORY_SAFE17_IID: TGUID = '{00000001-0000-0000-c000-000000000046}';

  NS_IURI_SAFE17_IID: TGUID = '{07a22cc0-0ce5-11d3-9331-00104ba0fd40}';

  NS_IURL_SAFE17_IID: TGUID = '{d6116970-8034-11d3-9399-00104ba0fd40}';

  NS_IFILEURL_SAFE17_IID: TGUID = '{d26b2e2e-1dd1-11b2-88f3-8545a7ba7949}';

  NS_IGLOBALHISTORY_SAFE17_IID: TGUID = '{9491c383-e3c4-11d2-bdbe-0050040a9b44}';

  NS_IHISTORYENTRY_SAFE17_IID: TGUID = '{a41661d4-1417-11d5-9882-00c04fa02f40}';

  NS_IHTTPCHANNEL_SAFE17_IID: TGUID = '{9277fe09-f0cc-4cd9-bbce-581dd94b0260}';

  NS_IHTTPHEADERVISITOR_SAFE17_IID: TGUID = '{0cf40717-d7c1-4a94-8c1e-d6c9734101bb}';

  NS_IINPUTSTREAM_SAFE17_IID: TGUID = '{fa9c7f6c-61b3-11d4-9877-00c04fa0cf4a}';

  NS_IINTERFACEREQUESTOR_SAFE17_IID: TGUID = '{033a1470-8b2a-11d3-af88-00a024ffc08c}';

  NS_IIOSERVICE_SAFE17_IID: TGUID = '{bddeda3f-9020-4d12-8c70-984ee9f7935e}';

  NS_ILOADGROUP_SAFE17_IID: TGUID = '{3de0a31c-feaf-400f-9f1e-4ef71f8b20cc}';

  NS_ILOCALFILE_SAFE17_IID: TGUID = '{aa610f20-a889-11d3-8c81-000064657374}';

  NS_IMEMORY_SAFE17_IID: TGUID = '{59e7e77a-38e4-11d4-8cf5-0060b0fc14a3}';

  NS_IMODULE_SAFE17_IID: TGUID = '{7392d032-5371-11d3-994e-00805fd26fee}';

  NS_IOBSERVER_SAFE17_IID: TGUID = '{db242e01-e4d9-11d2-9dde-000064657374}';

  NS_IOBSERVERSERVICE_SAFE17_IID: TGUID = '{d07f5192-e3d1-11d2-8acd-00105a1b8860}';

  NS_IOUTPUTSTREAM_SAFE17_IID: TGUID = '{0d0acd2a-61b4-11d4-9877-00c04fa0cf4a}';

  NS_IPASSWORD_SAFE17_IID: TGUID = '{cf39c2b0-1e4b-11d5-a549-0010a401eb10}';

  NS_IPREFBRANCH_SAFE17_IID: TGUID = '{56c35506-f14b-11d3-99d3-ddbfac2ccf65}';
  NS_IPREFBRANCH_SAFE17_PREF_INVALID = 0;
  NS_IPREFBRANCH_SAFE17_PREF_STRING = 32;
  NS_IPREFBRANCH_SAFE17_PREF_INT = 64;
  NS_IPREFBRANCH_SAFE17_PREF_BOOL = 128;

  NS_IPREFLOCALIZEDSTRING_SAFE17_IID: TGUID = '{ae419e24-1dd1-11b2-b39a-d3e5e7073802}';

  NS_IPREFSERVICE_SAFE17_IID: TGUID = '{decb9cc7-c08f-4ea5-be91-a8fc637ce2d2}';

  NS_IPRINTSESSION_SAFE17_IID: TGUID = '{2f977d52-5485-11d4-87e2-0010a4e75ef2}';

  NS_IPRINTSETTINGS_SAFE17_IID: TGUID = '{83427530-f790-11d4-a869-00105a183419}';
  NS_IPRINTSETTINGS_SAFE17_kInitSaveOddEvenPages = 1;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveHeaderLeft = 2;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveHeaderCenter = 4;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveHeaderRight = 8;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveFooterLeft = 16;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveFooterCenter = 32;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveFooterRight = 64;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveBGColors = 128;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveBGImages = 256;
  NS_IPRINTSETTINGS_SAFE17_kInitSavePaperSize = 512;
  NS_IPRINTSETTINGS_SAFE17_kInitSavePaperName = 1024;
  NS_IPRINTSETTINGS_SAFE17_kInitSavePaperSizeUnit = 2048;
  NS_IPRINTSETTINGS_SAFE17_kInitSavePaperSizeType = 4096;
  NS_IPRINTSETTINGS_SAFE17_kInitSavePaperData = 8192;
  NS_IPRINTSETTINGS_SAFE17_kInitSavePaperWidth = 16384;
  NS_IPRINTSETTINGS_SAFE17_kInitSavePaperHeight = 32768;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveReversed = 65536;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveInColor = 131072;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveOrientation = 262144;
  NS_IPRINTSETTINGS_SAFE17_kInitSavePrintCommand = 524288;
  NS_IPRINTSETTINGS_SAFE17_kInitSavePrinterName = 1048576;
  NS_IPRINTSETTINGS_SAFE17_kInitSavePrintToFile = 2097152;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveToFileName = 4194304;
  NS_IPRINTSETTINGS_SAFE17_kInitSavePageDelay = 8388608;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveMargins = 16777216;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveNativeData = 33554432;
  NS_IPRINTSETTINGS_SAFE17_kInitSavePlexName = 67108864;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveShrinkToFit = 134217728;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveScaling = 268435456;
  NS_IPRINTSETTINGS_SAFE17_kInitSaveAll = 4294967295;
  NS_IPRINTSETTINGS_SAFE17_kPrintOddPages = 1;
  NS_IPRINTSETTINGS_SAFE17_kPrintEvenPages = 2;
  NS_IPRINTSETTINGS_SAFE17_kEnableSelectionRB = 4;
  NS_IPRINTSETTINGS_SAFE17_kRangeAllPages = 0;
  NS_IPRINTSETTINGS_SAFE17_kRangeSpecifiedPageRange = 1;
  NS_IPRINTSETTINGS_SAFE17_kRangeSelection = 2;
  NS_IPRINTSETTINGS_SAFE17_kRangeFocusFrame = 3;
  NS_IPRINTSETTINGS_SAFE17_kJustLeft = 0;
  NS_IPRINTSETTINGS_SAFE17_kJustCenter = 1;
  NS_IPRINTSETTINGS_SAFE17_kJustRight = 2;
  NS_IPRINTSETTINGS_SAFE17_kUseInternalDefault = 0;
  NS_IPRINTSETTINGS_SAFE17_kUseSettingWhenPossible = 1;
  NS_IPRINTSETTINGS_SAFE17_kPaperSizeNativeData = 0;
  NS_IPRINTSETTINGS_SAFE17_kPaperSizeDefined = 1;
  NS_IPRINTSETTINGS_SAFE17_kPaperSizeInches = 0;
  NS_IPRINTSETTINGS_SAFE17_kPaperSizeMillimeters = 1;
  NS_IPRINTSETTINGS_SAFE17_kPortraitOrientation = 0;
  NS_IPRINTSETTINGS_SAFE17_kLandscapeOrientation = 1;
  NS_IPRINTSETTINGS_SAFE17_kNoFrames = 0;
  NS_IPRINTSETTINGS_SAFE17_kFramesAsIs = 1;
  NS_IPRINTSETTINGS_SAFE17_kSelectedFrame = 2;
  NS_IPRINTSETTINGS_SAFE17_kEachFrameSep = 3;
  NS_IPRINTSETTINGS_SAFE17_kFrameEnableNone = 0;
  NS_IPRINTSETTINGS_SAFE17_kFrameEnableAll = 1;
  NS_IPRINTSETTINGS_SAFE17_kFrameEnableAsIsAndEach = 2;

  NS_IPROFILE_SAFE17_IID: TGUID = '{02b0625a-e7f3-11d2-9f5a-006008a6efe9}';
  NS_IPROFILE_SAFE17_SHUTDOWN_PERSIST = 1;
  NS_IPROFILE_SAFE17_SHUTDOWN_CLEANSE = 2;

  NS_IPROFILECHANGESTATUS_SAFE17_IID: TGUID = '{2f977d43-5485-11d4-87e2-0010a4e75ef2}';

  NS_IPROMPT_SAFE17_IID: TGUID = '{a63f70c0-148b-11d3-9333-00104ba0fd40}';
  NS_IPROMPT_SAFE17_BUTTON_POS_0 = 1;
  NS_IPROMPT_SAFE17_BUTTON_POS_1 = 256;
  NS_IPROMPT_SAFE17_BUTTON_POS_2 = 65536;
  NS_IPROMPT_SAFE17_BUTTON_TITLE_OK = 1;
  NS_IPROMPT_SAFE17_BUTTON_TITLE_CANCEL = 2;
  NS_IPROMPT_SAFE17_BUTTON_TITLE_YES = 3;
  NS_IPROMPT_SAFE17_BUTTON_TITLE_NO = 4;
  NS_IPROMPT_SAFE17_BUTTON_TITLE_SAVE = 5;
  NS_IPROMPT_SAFE17_BUTTON_TITLE_DONT_SAVE = 6;
  NS_IPROMPT_SAFE17_BUTTON_TITLE_REVERT = 7;
  NS_IPROMPT_SAFE17_BUTTON_TITLE_IS_STRING = 127;
  NS_IPROMPT_SAFE17_BUTTON_POS_0_DEFAULT = 0;
  NS_IPROMPT_SAFE17_BUTTON_POS_1_DEFAULT = 16777216;
  NS_IPROMPT_SAFE17_BUTTON_POS_2_DEFAULT = 33554432;
  NS_IPROMPT_SAFE17_BUTTON_DELAY_ENABLE = 67108864;
  NS_IPROMPT_SAFE17_STD_OK_CANCEL_BUTTONS = 513;

  NS_IPROMPTSERVICE_SAFE17_IID: TGUID = '{1630c61a-325e-49ca-8759-a31b16c47aa5}';
  NS_IPROMPTSERVICE_SAFE17_BUTTON_POS_0 = 1;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_POS_1 = 256;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_POS_2 = 65536;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_TITLE_OK = 1;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_TITLE_CANCEL = 2;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_TITLE_YES = 3;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_TITLE_NO = 4;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_TITLE_SAVE = 5;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_TITLE_DONT_SAVE = 6;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_TITLE_REVERT = 7;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_TITLE_IS_STRING = 127;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_POS_0_DEFAULT = 0;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_POS_1_DEFAULT = 16777216;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_POS_2_DEFAULT = 33554432;
  NS_IPROMPTSERVICE_SAFE17_BUTTON_DELAY_ENABLE = 67108864;
  NS_IPROMPTSERVICE_SAFE17_STD_OK_CANCEL_BUTTONS = 513;
  NS_IPROMPTSERVICE_SAFE17_STD_YES_NO_BUTTONS = 1027;

  NS_IPROPERTIES_SAFE17_IID: TGUID = '{78650582-4e93-4b60-8e85-26ebd3eb14ca}';

  NS_IPROTOCOLHANDLER_SAFE17_IID: TGUID = '{15fd6940-8ea7-11d3-93ad-00104ba0fd40}';
  NS_IPROTOCOLHANDLER_SAFE17_URI_STD = 0;
  NS_IPROTOCOLHANDLER_SAFE17_URI_NORELATIVE = 1;
  NS_IPROTOCOLHANDLER_SAFE17_URI_NOAUTH = 2;
  NS_IPROTOCOLHANDLER_SAFE17_ALLOWS_PROXY = 4;
  NS_IPROTOCOLHANDLER_SAFE17_ALLOWS_PROXY_HTTP = 8;

  NS_IREQUESTOBSERVER_SAFE17_IID: TGUID = '{fd91e2e0-1481-11d3-9333-00104ba0fd40}';

  NS_ISCRIPTABLEINPUTSTREAM_SAFE17_IID: TGUID = '{a2a32f90-9b90-11d3-a189-0050041caf44}';

  NS_ISECURITYWARNINGDIALOGS_SAFE17_IID: TGUID = '{1c399d06-1dd2-11b2-bc58-c87cbcacdb78}';

  NS_ISELECTION_SAFE17_IID: TGUID = '{b2c7ed59-8634-4352-9e37-5484c8b6e4e1}';

  NS_ISERVICEMANAGER_SAFE17_IID: TGUID = '{8bb35ed9-e332-462d-9155-4a002ab5c958}';

  NS_ISHISTORY_SAFE17_IID: TGUID = '{7294fe9b-14d8-11d5-9882-00c04fa02f40}';

  NS_ISHISTORYLISTENER_SAFE17_IID: TGUID = '{3b07f591-e8e1-11d4-9882-00c04fa02f40}';

  NS_ISTREAMLISTENER_SAFE17_IID: TGUID = '{1a637020-1482-11d3-9333-00104ba0fd40}';

  NS_ISUPPORTSPRIMITIVE_SAFE17_IID: TGUID = '{d0d4b136-1dd1-11b2-9371-f0727ef827c0}';
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_ID = 1;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_CSTRING = 2;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_STRING = 3;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_PRBOOL = 4;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_PRUINT8 = 5;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_PRUINT16 = 6;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_PRUINT32 = 7;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_PRUINT64 = 8;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_PRTIME = 9;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_CHAR = 10;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_PRINT16 = 11;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_PRINT32 = 12;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_PRINT64 = 13;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_FLOAT = 14;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_DOUBLE = 15;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_VOID = 16;
  NS_ISUPPORTSPRIMITIVE_SAFE17_TYPE_INTERFACE_POINTER = 17;

  NS_ISUPPORTSID_SAFE17_IID: TGUID = '{d18290a0-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSCSTRING_SAFE17_IID: TGUID = '{d65ff270-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSSTRING_SAFE17_IID: TGUID = '{d79dc970-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSPRBOOL_SAFE17_IID: TGUID = '{ddc3b490-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSPRUINT8_SAFE17_IID: TGUID = '{dec2e4e0-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSPRUINT16_SAFE17_IID: TGUID = '{dfacb090-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSPRUINT32_SAFE17_IID: TGUID = '{e01dc470-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSPRUINT64_SAFE17_IID: TGUID = '{e13567c0-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSPRTIME_SAFE17_IID: TGUID = '{e2563630-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSCHAR_SAFE17_IID: TGUID = '{e2b05e40-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSPRINT16_SAFE17_IID: TGUID = '{e30d94b0-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSPRINT32_SAFE17_IID: TGUID = '{e36c5250-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSPRINT64_SAFE17_IID: TGUID = '{e3cb0ff0-4a1c-11d3-9890-006008962422}';

  NS_ISUPPORTSFLOAT_SAFE17_IID: TGUID = '{abeaa390-4ac0-11d3-baea-00805f8a5dd7}';

  NS_ISUPPORTSDOUBLE_SAFE17_IID: TGUID = '{b32523a0-4ac0-11d3-baea-00805f8a5dd7}';

  NS_ISUPPORTSVOID_SAFE17_IID: TGUID = '{464484f0-568d-11d3-baf8-00805f8a5dd7}';

  NS_ISUPPORTSINTERFACEPOINTER_SAFE17_IID: TGUID = '{995ea724-1dd1-11b2-9211-c21bdd3e7ed0}';

  NS_ITOOLTIPLISTENER_SAFE17_IID: TGUID = '{44b78386-1dd2-11b2-9ad2-e4eee2ca1916}';

  NS_ITOOLTIPTEXTPROVIDER_SAFE17_IID: TGUID = '{b128a1e6-44f3-4331-8fbe-5af360ff21ee}';

  NS_ITRACEREFCNT_SAFE17_IID: TGUID = '{273dc92f-0fe6-4545-96a9-21be77828039}';

  NS_IUNICHARSTREAMLISTENER_SAFE17_IID: TGUID = '{4a7e9b62-fef8-400d-9865-d6820f630b4c}';

  NS_IUPLOADCHANNEL_SAFE17_IID: TGUID = '{ddf633d8-e9a4-439d-ad88-de636fd9bb75}';

  NS_IURICONTENTLISTENER_SAFE17_IID: TGUID = '{94928ab3-8b63-11d3-989d-001083010e9b}';

  NS_IWEAKREFERENCE_SAFE17_IID: TGUID = '{9188bc85-f92e-11d2-81ef-0060083a0bcf}';

  NS_ISUPPORTSWEAKREFERENCE_SAFE17_IID: TGUID = '{9188bc86-f92e-11d2-81ef-0060083a0bcf}';

  NS_IWEBBROWSER_SAFE17_IID: TGUID = '{69e5df00-7b8b-11d3-af61-00a024ffc08c}';

  NS_IWEBBROWSERCHROME_SAFE17_IID: TGUID = '{ba434c60-9d52-11d3-afb0-00a024ffc08c}';
  NS_IWEBBROWSERCHROME_SAFE17_STATUS_SCRIPT = 1;
  NS_IWEBBROWSERCHROME_SAFE17_STATUS_SCRIPT_DEFAULT = 2;
  NS_IWEBBROWSERCHROME_SAFE17_STATUS_LINK = 3;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_DEFAULT = 1;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_WINDOW_BORDERS = 2;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_WINDOW_CLOSE = 4;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_WINDOW_RESIZE = 8;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_MENUBAR = 16;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_TOOLBAR = 32;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_LOCATIONBAR = 64;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_STATUSBAR = 128;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_PERSONAL_TOOLBAR = 256;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_SCROLLBARS = 512;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_TITLEBAR = 1024;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_EXTRA = 2048;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_WITH_SIZE = 4096;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_WITH_POSITION = 8192;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_WINDOW_MIN = 16384;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_WINDOW_POPUP = 32768;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_WINDOW_RAISED = 33554432;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_WINDOW_LOWERED = 67108864;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_CENTER_SCREEN = 134217728;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_DEPENDENT = 268435456;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_MODAL = 536870912;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_OPENAS_DIALOG = 1073741824;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_OPENAS_CHROME = 2147483648;
  NS_IWEBBROWSERCHROME_SAFE17_CHROME_ALL = 4094;

  NS_IWEBBROWSERCHROMEFOCUS_SAFE17_IID: TGUID = '{d2206418-1dd1-11b2-8e55-acddcd2bcfb8}';

  NS_IWEBBROWSERFIND_SAFE17_IID: TGUID = '{2f977d44-5485-11d4-87e2-0010a4e75ef2}';

  NS_IWEBBROWSERFINDINFRAMES_SAFE17_IID: TGUID = '{e0f5d182-34bc-11d5-be5b-b760676c6ebc}';

  NS_IWEBBROWSERFOCUS_SAFE17_IID: TGUID = '{9c5d3c58-1dd1-11b2-a1c9-f3699284657a}';

  NS_IWEBBROWSERPRINT_SAFE17_IID: TGUID = '{9a7ca4b0-fbba-11d4-a869-00105a183419}';
  NS_IWEBBROWSERPRINT_SAFE17_PRINTPREVIEW_GOTO_PAGENUM = 0;
  NS_IWEBBROWSERPRINT_SAFE17_PRINTPREVIEW_PREV_PAGE = 1;
  NS_IWEBBROWSERPRINT_SAFE17_PRINTPREVIEW_NEXT_PAGE = 2;
  NS_IWEBBROWSERPRINT_SAFE17_PRINTPREVIEW_HOME = 3;
  NS_IWEBBROWSERPRINT_SAFE17_PRINTPREVIEW_END = 4;

  NS_IWEBBROWSERSETUP_SAFE17_IID: TGUID = '{f15398a0-8018-11d3-af70-00a024ffc08c}';
  NS_IWEBBROWSERSETUP_SAFE17_SETUP_ALLOW_PLUGINS = 1;
  NS_IWEBBROWSERSETUP_SAFE17_SETUP_ALLOW_JAVASCRIPT = 2;
  NS_IWEBBROWSERSETUP_SAFE17_SETUP_ALLOW_META_REDIRECTS = 3;
  NS_IWEBBROWSERSETUP_SAFE17_SETUP_ALLOW_SUBFRAMES = 4;
  NS_IWEBBROWSERSETUP_SAFE17_SETUP_ALLOW_IMAGES = 5;
  NS_IWEBBROWSERSETUP_SAFE17_SETUP_FOCUS_DOC_BEFORE_CONTENT = 6;
  NS_IWEBBROWSERSETUP_SAFE17_SETUP_USE_GLOBAL_HISTORY = 256;
  NS_IWEBBROWSERSETUP_SAFE17_SETUP_IS_CHROME_WRAPPER = 7;

  NS_IWEBPROGRESS_SAFE17_IID: TGUID = '{570f39d0-efd0-11d3-b093-00a024ffc08c}';
  NS_IWEBPROGRESS_SAFE17_NOTIFY_STATE_REQUEST = 1;
  NS_IWEBPROGRESS_SAFE17_NOTIFY_STATE_DOCUMENT = 2;
  NS_IWEBPROGRESS_SAFE17_NOTIFY_STATE_NETWORK = 4;
  NS_IWEBPROGRESS_SAFE17_NOTIFY_STATE_WINDOW = 8;
  NS_IWEBPROGRESS_SAFE17_NOTIFY_STATE_ALL = 15;
  NS_IWEBPROGRESS_SAFE17_NOTIFY_PROGRESS = 16;
  NS_IWEBPROGRESS_SAFE17_NOTIFY_STATUS = 32;
  NS_IWEBPROGRESS_SAFE17_NOTIFY_SECURITY = 64;
  NS_IWEBPROGRESS_SAFE17_NOTIFY_LOCATION = 128;
  NS_IWEBPROGRESS_SAFE17_NOTIFY_ALL = 255;

  NS_IWEBPROGRESSLISTENER_SAFE17_IID: TGUID = '{570f39d1-efd0-11d3-b093-00a024ffc08c}';
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_START = 1;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_REDIRECTING = 2;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_TRANSFERRING = 4;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_NEGOTIATING = 8;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_STOP = 16;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_IS_REQUEST = 65536;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_IS_DOCUMENT = 131072;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_IS_NETWORK = 262144;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_IS_WINDOW = 524288;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_IS_INSECURE = 4;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_IS_BROKEN = 1;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_IS_SECURE = 2;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_SECURE_HIGH = 262144;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_SECURE_MED = 65536;
  NS_IWEBPROGRESSLISTENER_SAFE17_STATE_SECURE_LOW = 131072;

  NS_IWINDOWCREATOR_SAFE17_IID: TGUID = '{30465632-a777-44cc-90f9-8145475ef999}';

  NS_IWINDOWWATCHER_SAFE17_IID: TGUID = '{002286a8-494b-43b3-8ddd-49e3fc50622b}';

  NS_IX509CERT_SAFE17_IID: TGUID = '{f0980f60-ee3d-11d4-998b-00b0d02354a0}';
  NS_IX509CERT_SAFE17_UNKNOWN_CERT = 0;
  NS_IX509CERT_SAFE17_CA_CERT = 1;
  NS_IX509CERT_SAFE17_USER_CERT = 2;
  NS_IX509CERT_SAFE17_EMAIL_CERT = 4;
  NS_IX509CERT_SAFE17_SERVER_CERT = 8;
  NS_IX509CERT_SAFE17_VERIFIED_OK = 0;
  NS_IX509CERT_SAFE17_NOT_VERIFIED_UNKNOWN = 1;
  NS_IX509CERT_SAFE17_CERT_REVOKED = 2;
  NS_IX509CERT_SAFE17_CERT_EXPIRED = 4;
  NS_IX509CERT_SAFE17_CERT_NOT_TRUSTED = 8;
  NS_IX509CERT_SAFE17_ISSUER_NOT_TRUSTED = 16;
  NS_IX509CERT_SAFE17_ISSUER_UNKNOWN = 32;
  NS_IX509CERT_SAFE17_INVALID_CA = 64;
  NS_IX509CERT_SAFE17_USAGE_NOT_ALLOWED = 128;
  NS_IX509CERT_SAFE17_CERT_USAGE_SSLClient = 0;
  NS_IX509CERT_SAFE17_CERT_USAGE_SSLServer = 1;
  NS_IX509CERT_SAFE17_CERT_USAGE_SSLServerWithStepUp = 2;
  NS_IX509CERT_SAFE17_CERT_USAGE_SSLCA = 3;
  NS_IX509CERT_SAFE17_CERT_USAGE_EmailSigner = 4;
  NS_IX509CERT_SAFE17_CERT_USAGE_EmailRecipient = 5;
  NS_IX509CERT_SAFE17_CERT_USAGE_ObjectSigner = 6;
  NS_IX509CERT_SAFE17_CERT_USAGE_UserCertImport = 7;
  NS_IX509CERT_SAFE17_CERT_USAGE_VerifyCA = 8;
  NS_IX509CERT_SAFE17_CERT_USAGE_ProtectedObjectSigner = 9;
  NS_IX509CERT_SAFE17_CERT_USAGE_StatusResponder = 10;
  NS_IX509CERT_SAFE17_CERT_USAGE_AnyCA = 11;

  NS_IX509CERTDB_SAFE17_IID: TGUID = '{da48b3c0-1284-11d5-ac67-000064657374}';
  NS_IX509CERTDB_SAFE17_UNTRUSTED = 0;
  NS_IX509CERTDB_SAFE17_TRUSTED_SSL = 1;
  NS_IX509CERTDB_SAFE17_TRUSTED_EMAIL = 2;
  NS_IX509CERTDB_SAFE17_TRUSTED_OBJSIGN = 4;

  NS_IX509CERTVALIDITY_SAFE17_IID: TGUID = '{e701dfd8-1dd1-11b2-a172-ffa6cc6156ad}';

type
  nsISupports_safe17 = interface;
  mozIJSSubScriptLoader_safe17 = interface;
  nsIArray_safe17 = interface;
  nsIMutableArray_safe17 = interface;
  nsIASN1Object_safe17 = interface;
  nsIASN1Sequence_safe17 = interface;
  nsIAuthPrompt_safe17 = interface;
  nsIBadCertListener_safe17 = interface;
  nsISimpleEnumerator_safe17 = interface;
  nsICategoryManager_safe17 = interface;
  nsICertificateDialogs_safe17 = interface;
  nsIRequest_safe17 = interface;
  nsIChannel_safe17 = interface;
  nsIProgrammingLanguage_safe17 = interface;
  nsIClassInfo_safe17 = interface;
  nsIClipboardCommands_safe17 = interface;
  nsIComponentManager_safe17 = interface;
  nsIComponentRegistrar_safe17 = interface;
  nsIContextMenuListener_safe17 = interface;
  nsICookie_safe17 = interface;
  nsICookieManager_safe17 = interface;
  nsICRLInfo_safe17 = interface;
  nsIDebug_safe17 = interface;
  nsIFile_safe17 = interface;
  nsIDirectoryServiceProvider_safe17 = interface;
  nsIDirectoryServiceProvider2_safe17 = interface;
  nsIDirectoryService_safe17 = interface;
  nsIDOM3DocumentEvent_safe17 = interface;
  nsIDOM3EventTarget_safe17 = interface;
  nsIDOMAbstractView_safe17 = interface;
  nsIDOMNode_safe17 = interface;
  nsIDOMAttr_safe17 = interface;
  nsIDOMBarProp_safe17 = interface;
  nsIDOMCharacterData_safe17 = interface;
  nsIDOMText_safe17 = interface;
  nsIDOMCDATASection_safe17 = interface;
  nsIDOMComment_safe17 = interface;
  nsIDOMCounter_safe17 = interface;
  nsIDOMCSSValue_safe17 = interface;
  nsIDOMCSSPrimitiveValue_safe17 = interface;
  nsIDOMCSSRule_safe17 = interface;
  nsIDOMCSSRuleList_safe17 = interface;
  nsIDOMCSSStyleDeclaration_safe17 = interface;
  nsIDOMStyleSheet_safe17 = interface;
  nsIDOMCSSStyleSheet_safe17 = interface;
  nsIDOMCSSValueList_safe17 = interface;
  nsIDOMEvent_safe17 = interface;
  nsIDOMCustomEvent_safe17 = interface;
  nsIDOMDocument_safe17 = interface;
  nsIDOMDocumentEvent_safe17 = interface;
  nsIDOMDocumentFragment_safe17 = interface;
  nsIDOMDocumentRange_safe17 = interface;
  nsIDOMDocumentStyle_safe17 = interface;
  nsIDOMDocumentType_safe17 = interface;
  nsIDOMDocumentView_safe17 = interface;
  nsIDOMDOMException_safe17 = interface;
  nsIDOMDOMImplementation_safe17 = interface;
  nsIDOMElement_safe17 = interface;
  nsIDOMEntity_safe17 = interface;
  nsIDOMEntityReference_safe17 = interface;
  nsIDOMEventGroup_safe17 = interface;
  nsIDOMEventListener_safe17 = interface;
  nsIDOMEventTarget_safe17 = interface;
  nsIDOMHTMLElement_safe17 = interface;
  nsIDOMHTMLAnchorElement_safe17 = interface;
  nsIDOMHTMLAppletElement_safe17 = interface;
  nsIDOMHTMLAreaElement_safe17 = interface;
  nsIDOMHTMLBaseElement_safe17 = interface;
  nsIDOMHTMLBaseFontElement_safe17 = interface;
  nsIDOMHTMLBodyElement_safe17 = interface;
  nsIDOMHTMLBRElement_safe17 = interface;
  nsIDOMHTMLButtonElement_safe17 = interface;
  nsIDOMHTMLCollection_safe17 = interface;
  nsIDOMHTMLDirectoryElement_safe17 = interface;
  nsIDOMHTMLDivElement_safe17 = interface;
  nsIDOMHTMLDListElement_safe17 = interface;
  nsIDOMHTMLDocument_safe17 = interface;
  nsIDOMHTMLEmbedElement_safe17 = interface;
  nsIDOMHTMLFieldSetElement_safe17 = interface;
  nsIDOMHTMLFontElement_safe17 = interface;
  nsIDOMHTMLFormElement_safe17 = interface;
  nsIDOMHTMLFrameElement_safe17 = interface;
  nsIDOMHTMLFrameSetElement_safe17 = interface;
  nsIDOMHTMLHeadElement_safe17 = interface;
  nsIDOMHTMLHeadingElement_safe17 = interface;
  nsIDOMHTMLHRElement_safe17 = interface;
  nsIDOMHTMLHtmlElement_safe17 = interface;
  nsIDOMHTMLIFrameElement_safe17 = interface;
  nsIDOMHTMLImageElement_safe17 = interface;
  nsIDOMHTMLInputElement_safe17 = interface;
  nsIDOMHTMLIsIndexElement_safe17 = interface;
  nsIDOMHTMLLabelElement_safe17 = interface;
  nsIDOMHTMLLegendElement_safe17 = interface;
  nsIDOMHTMLLIElement_safe17 = interface;
  nsIDOMHTMLLinkElement_safe17 = interface;
  nsIDOMHTMLMapElement_safe17 = interface;
  nsIDOMHTMLMenuElement_safe17 = interface;
  nsIDOMHTMLMetaElement_safe17 = interface;
  nsIDOMHTMLModElement_safe17 = interface;
  nsIDOMHTMLObjectElement_safe17 = interface;
  nsIDOMHTMLOListElement_safe17 = interface;
  nsIDOMHTMLOptGroupElement_safe17 = interface;
  nsIDOMHTMLOptionElement_safe17 = interface;
  nsIDOMHTMLOptionsCollection_safe17 = interface;
  nsIDOMHTMLParagraphElement_safe17 = interface;
  nsIDOMHTMLParamElement_safe17 = interface;
  nsIDOMHTMLPreElement_safe17 = interface;
  nsIDOMHTMLQuoteElement_safe17 = interface;
  nsIDOMHTMLScriptElement_safe17 = interface;
  nsIDOMHTMLSelectElement_safe17 = interface;
  nsIDOMHTMLStyleElement_safe17 = interface;
  nsIDOMHTMLTableCaptionElement_safe17 = interface;
  nsIDOMHTMLTableCellElement_safe17 = interface;
  nsIDOMHTMLTableColElement_safe17 = interface;
  nsIDOMHTMLTableElement_safe17 = interface;
  nsIDOMHTMLTableRowElement_safe17 = interface;
  nsIDOMHTMLTableSectionElement_safe17 = interface;
  nsIDOMHTMLTextAreaElement_safe17 = interface;
  nsIDOMHTMLTitleElement_safe17 = interface;
  nsIDOMHTMLUListElement_safe17 = interface;
  nsIDOMMediaList_safe17 = interface;
  nsIDOMUIEvent_safe17 = interface;
  nsIDOMMouseEvent_safe17 = interface;
  nsIDOMNamedNodeMap_safe17 = interface;
  nsIDOMNodeList_safe17 = interface;
  nsIDOMNotation_safe17 = interface;
  nsIDOMProcessingInstruction_safe17 = interface;
  nsIDOMRange_safe17 = interface;
  nsIDOMRect_safe17 = interface;
  nsIDOMRGBColor_safe17 = interface;
  nsIDOMStyleSheetList_safe17 = interface;
  nsIDOMWindow_safe17 = interface;
  nsIDOMWindow2_safe17 = interface;
  nsIDOMWindowCollection_safe17 = interface;
  nsIEmbeddingSiteWindow_safe17 = interface;
  nsIFactory_safe17 = interface;
  nsIURI_safe17 = interface;
  nsIURL_safe17 = interface;
  nsIFileURL_safe17 = interface;
  nsIGlobalHistory_safe17 = interface;
  nsIHistoryEntry_safe17 = interface;
  nsIHttpChannel_safe17 = interface;
  nsIHttpHeaderVisitor_safe17 = interface;
  nsIInputStream_safe17 = interface;
  nsIInterfaceRequestor_safe17 = interface;
  nsIIOService_safe17 = interface;
  nsILoadGroup_safe17 = interface;
  nsILocalFile_safe17 = interface;
  nsIMemory_safe17 = interface;
  nsIModule_safe17 = interface;
  nsIObserver_safe17 = interface;
  nsIObserverService_safe17 = interface;
  nsIOutputStream_safe17 = interface;
  nsIPassword_safe17 = interface;
  nsIPrefBranch_safe17 = interface;
  nsIPrefLocalizedString_safe17 = interface;
  nsIPrefService_safe17 = interface;
  nsIPrintSession_safe17 = interface;
  nsIPrintSettings_safe17 = interface;
  nsIProfile_safe17 = interface;
  nsIProfileChangeStatus_safe17 = interface;
  nsIPrompt_safe17 = interface;
  nsIPromptService_safe17 = interface;
  nsIProperties_safe17 = interface;
  nsIProtocolHandler_safe17 = interface;
  nsIRequestObserver_safe17 = interface;
  nsIScriptableInputStream_safe17 = interface;
  nsISecurityWarningDialogs_safe17 = interface;
  nsISelection_safe17 = interface;
  nsIServiceManager_safe17 = interface;
  nsISHistory_safe17 = interface;
  nsISHistoryListener_safe17 = interface;
  nsIStreamListener_safe17 = interface;
  nsISupportsPrimitive_safe17 = interface;
  nsISupportsID_safe17 = interface;
  nsISupportsCString_safe17 = interface;
  nsISupportsString_safe17 = interface;
  nsISupportsPRBool_safe17 = interface;
  nsISupportsPRUint8_safe17 = interface;
  nsISupportsPRUint16_safe17 = interface;
  nsISupportsPRUint32_safe17 = interface;
  nsISupportsPRUint64_safe17 = interface;
  nsISupportsPRTime_safe17 = interface;
  nsISupportsChar_safe17 = interface;
  nsISupportsPRInt16_safe17 = interface;
  nsISupportsPRInt32_safe17 = interface;
  nsISupportsPRInt64_safe17 = interface;
  nsISupportsFloat_safe17 = interface;
  nsISupportsDouble_safe17 = interface;
  nsISupportsVoid_safe17 = interface;
  nsISupportsInterfacePointer_safe17 = interface;
  nsITooltipListener_safe17 = interface;
  nsITooltipTextProvider_safe17 = interface;
  nsITraceRefcnt_safe17 = interface;
  nsIUnicharStreamListener_safe17 = interface;
  nsIUploadChannel_safe17 = interface;
  nsIURIContentListener_safe17 = interface;
  nsIWeakReference_safe17 = interface;
  nsISupportsWeakReference_safe17 = interface;
  nsIWebBrowser_safe17 = interface;
  nsIWebBrowserChrome_safe17 = interface;
  nsIWebBrowserChromeFocus_safe17 = interface;
  nsIWebBrowserFind_safe17 = interface;
  nsIWebBrowserFindInFrames_safe17 = interface;
  nsIWebBrowserFocus_safe17 = interface;
  nsIWebBrowserPrint_safe17 = interface;
  nsIWebBrowserSetup_safe17 = interface;
  nsIWebProgress_safe17 = interface;
  nsIWebProgressListener_safe17 = interface;
  nsIWindowCreator_safe17 = interface;
  nsIWindowWatcher_safe17 = interface;
  nsIX509Cert_safe17 = interface;
  nsIX509CertDB_safe17 = interface;
  nsIX509CertValidity_safe17 = interface;
  nsWriteSegmentFun = function (aInStream: nsIInputStream_safe17; 
                                aClosure: Pointer;
                                const aFromSegment: Pointer;
                                aToOffset: PRUint32;
                                aCount: PRUint32;
                                out aWriteCount: PRUint32): nsresult; stdcall;


  nsReadSegmentFun = function (aOutStream: nsIOutputStream_safe17;
                               aClosure: Pointer;
                               aToSegment: Pointer;
                               aFromOffset: PRUint32;
                               aCount: PRUint32;
                               out aReadCount: PRUint32): nsresult; stdcall;


  DOMTimeStamp = PRUint64;
  nsLoadFlags = PRUint32;
(*** 
 * An optional interface for accessing the HTTP or
 * javascript cookie object
 * 
 * @status FROZEN
 *)
  nsCookieStatus = PRInt32;
  nsCookiePolicy = PRInt32;
  nsISupports_safe17 = interface
  ['{00000000-0000-0000-c000-000000000046}']
  end;

  mozIJSSubScriptLoader_safe17 = interface(nsISupports_safe17)
  ['{8792d77e-1dd2-11b2-ac7f-9bc9be4f2916}']
    procedure LoadSubScript(const url: PWideChar); safecall;
  end;

  nsIArray_safe17 = interface(nsISupports_safe17)
  ['{114744d9-c369-456e-b55a-52fe52880d2d}']
    function GetLength(): PRUint32; safecall;
    property Length: PRUint32 read GetLength;
    procedure QueryElementAt(index: PRUint32; const uuid: TGUID; out _result); safecall;
    function IndexOf(startIndex: PRUint32; element: nsISupports_safe17): PRUint32; safecall;
    function Enumerate(): nsISimpleEnumerator_safe17; safecall;
  end;

  nsIMutableArray_safe17 = interface(nsIArray_safe17)
  ['{2cd0b2f8-d4dd-48b8-87ba-b0200501f079}']
    procedure AppendElement(element: nsISupports_safe17; weak: PRBool); safecall;
    procedure RemoveElementAt(index: PRUint32); safecall;
    procedure InsertElementAt(element: nsISupports_safe17; index: PRUint32; weak: PRBool); safecall;
    procedure Clear(); safecall;
  end;

  nsIASN1Object_safe17 = interface(nsISupports_safe17)
  ['{ba8bf582-1dd1-11b2-898c-f40246bc9a63}']
    function GetType(): PRUint32; safecall;
    procedure SetType(aType: PRUint32); safecall;
    property _Type: PRUint32 read GetType write SetType;
    function GetTag(): PRUint32; safecall;
    procedure SetTag(aTag: PRUint32); safecall;
    property Tag: PRUint32 read GetTag write SetTag;
    procedure GetDisplayName(aDisplayName: nsAString); safecall;
    procedure SetDisplayName(const aDisplayName: nsAString); safecall;
    procedure GetDisplayValue(aDisplayValue: nsAString); safecall;
    procedure SetDisplayValue(const aDisplayValue: nsAString); safecall;
  end;

  nsIASN1Sequence_safe17 = interface(nsIASN1Object_safe17)
  ['{b6b957e6-1dd1-11b2-89d7-e30624f50b00}']
    function GetASN1Objects(): nsIMutableArray_safe17; safecall;
    procedure SetASN1Objects(aASN1Objects: nsIMutableArray_safe17); safecall;
    property ASN1Objects: nsIMutableArray_safe17 read GetASN1Objects write SetASN1Objects;
    function GetIsValidContainer(): PRBool; safecall;
    procedure SetIsValidContainer(aIsValidContainer: PRBool); safecall;
    property IsValidContainer: PRBool read GetIsValidContainer write SetIsValidContainer;
    function GetIsExpanded(): PRBool; safecall;
    procedure SetIsExpanded(aIsExpanded: PRBool); safecall;
    property IsExpanded: PRBool read GetIsExpanded write SetIsExpanded;
  end;

  nsIAuthPrompt_safe17 = interface(nsISupports_safe17)
  ['{2f977d45-5485-11d4-87e2-0010a4e75ef2}']
    function Prompt(const dialogTitle: PWideChar; const text: PWideChar; const passwordRealm: PWideChar; savePassword: PRUint32; const defaultText: PWideChar; out _result: PWideChar): PRBool; safecall;
    function PromptUsernameAndPassword(const dialogTitle: PWideChar; const text: PWideChar; const passwordRealm: PWideChar; savePassword: PRUint32; out user: PWideChar; out pwd: PWideChar): PRBool; safecall;
    function PromptPassword(const dialogTitle: PWideChar; const text: PWideChar; const passwordRealm: PWideChar; savePassword: PRUint32; out pwd: PWideChar): PRBool; safecall;
  end;

  nsIBadCertListener_safe17 = interface(nsISupports_safe17)
  ['{86960956-edb0-11d4-998b-00b0d02354a0}']
    function ConfirmUnknownIssuer(socketInfo: nsIInterfaceRequestor_safe17; cert: nsIX509Cert_safe17; out certAddType: PRInt16): PRBool; safecall;
    function ConfirmMismatchDomain(socketInfo: nsIInterfaceRequestor_safe17; const targetURL: nsACString; cert: nsIX509Cert_safe17): PRBool; safecall;
    function ConfirmCertExpired(socketInfo: nsIInterfaceRequestor_safe17; cert: nsIX509Cert_safe17): PRBool; safecall;
    procedure NotifyCrlNextupdate(socketInfo: nsIInterfaceRequestor_safe17; const targetURL: nsACString; cert: nsIX509Cert_safe17); safecall;
  end;

  nsISimpleEnumerator_safe17 = interface(nsISupports_safe17)
  ['{d1899240-f9d2-11d2-bdd6-000064657374}']
    function HasMoreElements(): PRBool; safecall;
    function GetNext(): nsISupports_safe17; safecall;
  end;

  nsICategoryManager_safe17 = interface(nsISupports_safe17)
  ['{3275b2cd-af6d-429a-80d7-f0c5120342ac}']
    function GetCategoryEntry(const aCategory: PAnsiChar; const aEntry: PAnsiChar): PAnsiChar; safecall;
    function AddCategoryEntry(const aCategory: PAnsiChar; const aEntry: PAnsiChar; const aValue: PAnsiChar; aPersist: PRBool; aReplace: PRBool): PAnsiChar; safecall;
    procedure DeleteCategoryEntry(const aCategory: PAnsiChar; const aEntry: PAnsiChar; aPersist: PRBool); safecall;
    procedure DeleteCategory(const aCategory: PAnsiChar); safecall;
    function EnumerateCategory(const aCategory: PAnsiChar): nsISimpleEnumerator_safe17; safecall;
    function EnumerateCategories(): nsISimpleEnumerator_safe17; safecall;
  end;

  nsICertificateDialogs_safe17 = interface(nsISupports_safe17)
  ['{a03ca940-09be-11d5-ac5d-000064657374}']
    function ConfirmDownloadCACert(ctx: nsIInterfaceRequestor_safe17; cert: nsIX509Cert_safe17; out trust: PRUint32): PRBool; safecall;
    procedure NotifyCACertExists(ctx: nsIInterfaceRequestor_safe17); safecall;
    function SetPKCS12FilePassword(ctx: nsIInterfaceRequestor_safe17; password: nsAString): PRBool; safecall;
    function GetPKCS12FilePassword(ctx: nsIInterfaceRequestor_safe17; password: nsAString): PRBool; safecall;
    procedure ViewCert(ctx: nsIInterfaceRequestor_safe17; cert: nsIX509Cert_safe17); safecall;
    procedure CrlImportStatusDialog(ctx: nsIInterfaceRequestor_safe17; crl: nsICRLInfo_safe17); safecall;
  end;

  nsIRequest_safe17 = interface(nsISupports_safe17)
  ['{ef6bfbd2-fd46-48d8-96b7-9f8f0fd387fe}']
    procedure GetName(aName: nsACString); safecall;
    function IsPending(): PRBool; safecall;
    function GetStatus(): nsresult; safecall;
    property Status: nsresult read GetStatus;
    procedure Cancel(aStatus: nsresult); safecall;
    procedure Suspend(); safecall;
    procedure Resume(); safecall;
    function GetLoadGroup(): nsILoadGroup_safe17; safecall;
    procedure SetLoadGroup(aLoadGroup: nsILoadGroup_safe17); safecall;
    property LoadGroup: nsILoadGroup_safe17 read GetLoadGroup write SetLoadGroup;
    function GetLoadFlags(): nsLoadFlags; safecall;
    procedure SetLoadFlags(aLoadFlags: nsLoadFlags); safecall;
    property LoadFlags: nsLoadFlags read GetLoadFlags write SetLoadFlags;
  end;

  nsIChannel_safe17 = interface(nsIRequest_safe17)
  ['{c63a055a-a676-4e71-bf3c-6cfa11082018}']
    function GetOriginalURI(): nsIURI_safe17; safecall;
    procedure SetOriginalURI(aOriginalURI: nsIURI_safe17); safecall;
    property OriginalURI: nsIURI_safe17 read GetOriginalURI write SetOriginalURI;
    function GetURI(): nsIURI_safe17; safecall;
    property URI: nsIURI_safe17 read GetURI;
    function GetOwner(): nsISupports_safe17; safecall;
    procedure SetOwner(aOwner: nsISupports_safe17); safecall;
    property Owner: nsISupports_safe17 read GetOwner write SetOwner;
    function GetNotificationCallbacks(): nsIInterfaceRequestor_safe17; safecall;
    procedure SetNotificationCallbacks(aNotificationCallbacks: nsIInterfaceRequestor_safe17); safecall;
    property NotificationCallbacks: nsIInterfaceRequestor_safe17 read GetNotificationCallbacks write SetNotificationCallbacks;
    function GetSecurityInfo(): nsISupports_safe17; safecall;
    property SecurityInfo: nsISupports_safe17 read GetSecurityInfo;
    procedure GetContentType(aContentType: nsACString); safecall;
    procedure SetContentType(const aContentType: nsACString); safecall;
    procedure GetContentCharset(aContentCharset: nsACString); safecall;
    procedure SetContentCharset(const aContentCharset: nsACString); safecall;
    function GetContentLength(): PRInt32; safecall;
    procedure SetContentLength(aContentLength: PRInt32); safecall;
    property ContentLength: PRInt32 read GetContentLength write SetContentLength;
    function Open(): nsIInputStream_safe17; safecall;
    procedure AsyncOpen(aListener: nsIStreamListener_safe17; aContext: nsISupports_safe17); safecall;
  end;

  nsIProgrammingLanguage_safe17 = interface(nsISupports_safe17)
  ['{ea604e90-40ba-11d5-90bb-0010a4e73d9a}']
  end;

  nsIClassInfo_safe17 = interface(nsISupports_safe17)
  ['{986c11d0-f340-11d4-9075-0010a4e73d9a}']
    procedure GetInterfaces(out count: PRUint32; out _array_array); safecall;
    function GetHelperForLanguage(language: PRUint32): nsISupports_safe17; safecall;
    function GetContractID(): PAnsiChar; safecall;
    property ContractID: PAnsiChar read GetContractID;
    function GetClassDescription(): PAnsiChar; safecall;
    property ClassDescription: PAnsiChar read GetClassDescription;
    function GetClassID(): PGUID; safecall;
    property ClassID: PGUID read GetClassID;
    function GetImplementationLanguage(): PRUint32; safecall;
    property ImplementationLanguage: PRUint32 read GetImplementationLanguage;
    function GetFlags(): PRUint32; safecall;
    property Flags: PRUint32 read GetFlags;
    function GetClassIDNoAlloc(): TGUID; safecall;
    property ClassIDNoAlloc: TGUID read GetClassIDNoAlloc;
  end;

  nsIClipboardCommands_safe17 = interface(nsISupports_safe17)
  ['{b8100c90-73be-11d2-92a5-00105a1b0d64}']
    function CanCutSelection(): PRBool; safecall;
    function CanCopySelection(): PRBool; safecall;
    function CanCopyLinkLocation(): PRBool; safecall;
    function CanCopyImageLocation(): PRBool; safecall;
    function CanCopyImageContents(): PRBool; safecall;
    function CanPaste(): PRBool; safecall;
    procedure CutSelection(); safecall;
    procedure CopySelection(); safecall;
    procedure CopyLinkLocation(); safecall;
    procedure CopyImageLocation(); safecall;
    procedure CopyImageContents(); safecall;
    procedure Paste(); safecall;
    procedure SelectAll(); safecall;
    procedure SelectNone(); safecall;
  end;

  nsIComponentManager_safe17 = interface(nsISupports_safe17)
  ['{a88e5a60-205a-4bb1-94e1-2628daf51eae}']
    procedure GetClassObject(const aClass: TGUID; const aIID: TGUID; out _result); safecall;
    procedure GetClassObjectByContractID(const aContractID: PAnsiChar; const aIID: TGUID; out _result); safecall;
    procedure CreateInstance(const aClass: TGUID; aDelegate: nsISupports_safe17; const aIID: TGUID; out _result); safecall;
    procedure CreateInstanceByContractID(const aContractID: PAnsiChar; aDelegate: nsISupports_safe17; const aIID: TGUID; out _result); safecall;
  end;

  nsIComponentRegistrar_safe17 = interface(nsISupports_safe17)
  ['{2417cbfe-65ad-48a6-b4b6-eb84db174392}']
    procedure AutoRegister(aSpec: nsIFile_safe17); safecall;
    procedure AutoUnregister(aSpec: nsIFile_safe17); safecall;
    procedure RegisterFactory(const aClass: TGUID; const aClassName: PAnsiChar; const aContractID: PAnsiChar; aFactory: nsIFactory_safe17); safecall;
    procedure UnregisterFactory(const aClass: TGUID; aFactory: nsIFactory_safe17); safecall;
    procedure RegisterFactoryLocation(const aClass: TGUID; const aClassName: PAnsiChar; const aContractID: PAnsiChar; aFile: nsIFile_safe17; const aLoaderStr: PAnsiChar; const aType: PAnsiChar); safecall;
    procedure UnregisterFactoryLocation(const aClass: TGUID; aFile: nsIFile_safe17); safecall;
    function IsCIDRegistered(const aClass: TGUID): PRBool; safecall;
    function IsContractIDRegistered(const aContractID: PAnsiChar): PRBool; safecall;
    function EnumerateCIDs(): nsISimpleEnumerator_safe17; safecall;
    function EnumerateContractIDs(): nsISimpleEnumerator_safe17; safecall;
    function CIDToContractID(const aClass: TGUID): PAnsiChar; safecall;
    function ContractIDToCID(const aContractID: PAnsiChar): PGUID; safecall;
  end;

  nsIContextMenuListener_safe17 = interface(nsISupports_safe17)
  ['{3478b6b0-3875-11d4-94ef-0020183bf181}']
    procedure OnShowContextMenu(aContextFlags: PRUint32; aEvent: nsIDOMEvent_safe17; aNode: nsIDOMNode_safe17); safecall;
  end;

  nsICookie_safe17 = interface(nsISupports_safe17)
  ['{e9fcb9a4-d376-458f-b720-e65e7df593bc}']
    procedure GetName(aName: nsACString); safecall;
    procedure GetValue(aValue: nsACString); safecall;
    function GetIsDomain(): PRBool; safecall;
    property IsDomain: PRBool read GetIsDomain;
    procedure GetHost(aHost: nsACString); safecall;
    procedure GetPath(aPath: nsACString); safecall;
    function GetIsSecure(): PRBool; safecall;
    property IsSecure: PRBool read GetIsSecure;
    function GetExpires(): PRUint64; safecall;
    property Expires: PRUint64 read GetExpires;
    function GetStatus(): nsCookieStatus; safecall;
    property Status: nsCookieStatus read GetStatus;
    function GetPolicy(): nsCookiePolicy; safecall;
    property Policy: nsCookiePolicy read GetPolicy;
  end;

  nsICookieManager_safe17 = interface(nsISupports_safe17)
  ['{aaab6710-0f2c-11d5-a53b-0010a401eb10}']
    procedure RemoveAll(); safecall;
    function GetEnumerator(): nsISimpleEnumerator_safe17; safecall;
    property Enumerator: nsISimpleEnumerator_safe17 read GetEnumerator;
    procedure Remove(const aDomain: nsACString; const aName: nsACString; const aPath: nsACString; aBlocked: PRBool); safecall;
  end;

  nsICRLInfo_safe17 = interface(nsISupports_safe17)
  ['{c185d920-4a3e-11d5-ba27-00108303b117}']
    procedure GetOrganization(aOrganization: nsAString); safecall;
    procedure GetOrganizationalUnit(aOrganizationalUnit: nsAString); safecall;
    function GetLastUpdate(): PRTime; safecall;
    property LastUpdate: PRTime read GetLastUpdate;
    function GetNextUpdate(): PRTime; safecall;
    property NextUpdate: PRTime read GetNextUpdate;
    procedure GetLastUpdateLocale(aLastUpdateLocale: nsAString); safecall;
    procedure GetNextUpdateLocale(aNextUpdateLocale: nsAString); safecall;
    procedure GetNameInDb(aNameInDb: nsAString); safecall;
    procedure GetLastFetchURL(aLastFetchURL: nsACString); safecall;
  end;

  nsIDebug_safe17 = interface(nsISupports_safe17)
  ['{3bf0c3d7-3bd9-4cf2-a971-33572c503e1e}']
    procedure Assertion(const aStr: PAnsiChar; const aExpr: PAnsiChar; const aFile: PAnsiChar; aLine: PRInt32); safecall;
    procedure Warning(const aStr: PAnsiChar; const aFile: PAnsiChar; aLine: PRInt32); safecall;
    procedure Break(const aFile: PAnsiChar; aLine: PRInt32); safecall;
    procedure Abort(const aFile: PAnsiChar; aLine: PRInt32); safecall;
  end;

  nsIFile_safe17 = interface(nsISupports_safe17)
  ['{c8c0a080-0868-11d3-915f-d9d889d48e3c}']
    procedure Append(const node: nsAString); safecall;
    procedure AppendNative(const node: nsACString); safecall;
    procedure Normalize(); safecall;
    procedure Create(_type: PRUint32; permissions: PRUint32); safecall;
    procedure GetLeafName(aLeafName: nsAString); safecall;
    procedure SetLeafName(const aLeafName: nsAString); safecall;
    procedure GetNativeLeafName(aNativeLeafName: nsACString); safecall;
    procedure SetNativeLeafName(const aNativeLeafName: nsACString); safecall;
    procedure CopyTo(newParentDir: nsIFile_safe17; const newName: nsAString); safecall;
    procedure CopyToNative(newParentDir: nsIFile_safe17; const newName: nsACString); safecall;
    procedure CopyToFollowingLinks(newParentDir: nsIFile_safe17; const newName: nsAString); safecall;
    procedure CopyToFollowingLinksNative(newParentDir: nsIFile_safe17; const newName: nsACString); safecall;
    procedure MoveTo(newParentDir: nsIFile_safe17; const newName: nsAString); safecall;
    procedure MoveToNative(newParentDir: nsIFile_safe17; const newName: nsACString); safecall;
    procedure Remove(recursive: PRBool); safecall;
    function GetPermissions(): PRUint32; safecall;
    procedure SetPermissions(aPermissions: PRUint32); safecall;
    property Permissions: PRUint32 read GetPermissions write SetPermissions;
    function GetPermissionsOfLink(): PRUint32; safecall;
    procedure SetPermissionsOfLink(aPermissionsOfLink: PRUint32); safecall;
    property PermissionsOfLink: PRUint32 read GetPermissionsOfLink write SetPermissionsOfLink;
    function GetLastModifiedTime(): PRInt64; safecall;
    procedure SetLastModifiedTime(aLastModifiedTime: PRInt64); safecall;
    property LastModifiedTime: PRInt64 read GetLastModifiedTime write SetLastModifiedTime;
    function GetLastModifiedTimeOfLink(): PRInt64; safecall;
    procedure SetLastModifiedTimeOfLink(aLastModifiedTimeOfLink: PRInt64); safecall;
    property LastModifiedTimeOfLink: PRInt64 read GetLastModifiedTimeOfLink write SetLastModifiedTimeOfLink;
    function GetFileSize(): PRInt64; safecall;
    procedure SetFileSize(aFileSize: PRInt64); safecall;
    property FileSize: PRInt64 read GetFileSize write SetFileSize;
    function GetFileSizeOfLink(): PRInt64; safecall;
    property FileSizeOfLink: PRInt64 read GetFileSizeOfLink;
    procedure GetTarget(aTarget: nsAString); safecall;
    procedure GetNativeTarget(aNativeTarget: nsACString); safecall;
    procedure GetPath(aPath: nsAString); safecall;
    procedure GetNativePath(aNativePath: nsACString); safecall;
    function Exists(): PRBool; safecall;
    function IsWritable(): PRBool; safecall;
    function IsReadable(): PRBool; safecall;
    function IsExecutable(): PRBool; safecall;
    function IsHidden(): PRBool; safecall;
    function IsDirectory(): PRBool; safecall;
    function IsFile(): PRBool; safecall;
    function IsSymlink(): PRBool; safecall;
    function IsSpecial(): PRBool; safecall;
    procedure CreateUnique(_type: PRUint32; permissions: PRUint32); safecall;
    function Clone(): nsIFile_safe17; safecall;
    function Equals(inFile: nsIFile_safe17): PRBool; safecall;
    function _Contains(inFile: nsIFile_safe17; recur: PRBool): PRBool; safecall;
    function GetParent(): nsIFile_safe17; safecall;
    property Parent: nsIFile_safe17 read GetParent;
    function GetDirectoryEntries(): nsISimpleEnumerator_safe17; safecall;
    property DirectoryEntries: nsISimpleEnumerator_safe17 read GetDirectoryEntries;
  end;

  nsIDirectoryServiceProvider_safe17 = interface(nsISupports_safe17)
  ['{bbf8cab0-d43a-11d3-8cc2-00609792278c}']
    function GetFile(const prop: PAnsiChar; out persistent: PRBool): nsIFile_safe17; safecall;
  end;

  nsIDirectoryServiceProvider2_safe17 = interface(nsIDirectoryServiceProvider_safe17)
  ['{2f977d4b-5485-11d4-87e2-0010a4e75ef2}']
    function GetFiles(const prop: PAnsiChar): nsISimpleEnumerator_safe17; safecall;
  end;

  nsIDirectoryService_safe17 = interface(nsISupports_safe17)
  ['{57a66a60-d43a-11d3-8cc2-00609792278c}']
    procedure Init(); safecall;
    procedure RegisterProvider(prov: nsIDirectoryServiceProvider_safe17); safecall;
    procedure UnregisterProvider(prov: nsIDirectoryServiceProvider_safe17); safecall;
  end;

  nsIDOM3DocumentEvent_safe17 = interface(nsISupports_safe17)
  ['{090ecc19-b7cb-4f47-ae47-ed68d4926249}']
    function CreateEventGroup(): nsIDOMEventGroup_safe17; safecall;
  end;

  nsIDOM3EventTarget_safe17 = interface(nsISupports_safe17)
  ['{3e9c01a7-de97-4c3b-8294-b4bd9d7056d1}']
    procedure AddGroupedEventListener(const _type: nsAString; listener: nsIDOMEventListener_safe17; useCapture: PRBool; evtGroup: nsIDOMEventGroup_safe17); safecall;
    procedure RemoveGroupedEventListener(const _type: nsAString; listener: nsIDOMEventListener_safe17; useCapture: PRBool; evtGroup: nsIDOMEventGroup_safe17); safecall;
    function CanTrigger(const _type: nsAString): PRBool; safecall;
    function IsRegisteredHere(const _type: nsAString): PRBool; safecall;
  end;

  nsIDOMAbstractView_safe17 = interface(nsISupports_safe17)
  ['{f51ebade-8b1a-11d3-aae7-0010830123b4}']
    function GetDocument(): nsIDOMDocumentView_safe17; safecall;
    property Document: nsIDOMDocumentView_safe17 read GetDocument;
  end;

  nsIDOMNode_safe17 = interface(nsISupports_safe17)
  ['{a6cf907c-15b3-11d2-932e-00805f8add32}']
    procedure GetNodeName(aNodeName: nsAString); safecall;
    procedure GetNodeValue(aNodeValue: nsAString); safecall;
    procedure SetNodeValue(const aNodeValue: nsAString); safecall;
    function GetNodeType(): PRUint16; safecall;
    property NodeType: PRUint16 read GetNodeType;
    function GetParentNode(): nsIDOMNode_safe17; safecall;
    property ParentNode: nsIDOMNode_safe17 read GetParentNode;
    function GetChildNodes(): nsIDOMNodeList_safe17; safecall;
    property ChildNodes: nsIDOMNodeList_safe17 read GetChildNodes;
    function GetFirstChild(): nsIDOMNode_safe17; safecall;
    property FirstChild: nsIDOMNode_safe17 read GetFirstChild;
    function GetLastChild(): nsIDOMNode_safe17; safecall;
    property LastChild: nsIDOMNode_safe17 read GetLastChild;
    function GetPreviousSibling(): nsIDOMNode_safe17; safecall;
    property PreviousSibling: nsIDOMNode_safe17 read GetPreviousSibling;
    function GetNextSibling(): nsIDOMNode_safe17; safecall;
    property NextSibling: nsIDOMNode_safe17 read GetNextSibling;
    function GetAttributes(): nsIDOMNamedNodeMap_safe17; safecall;
    property Attributes: nsIDOMNamedNodeMap_safe17 read GetAttributes;
    function GetOwnerDocument(): nsIDOMDocument_safe17; safecall;
    property OwnerDocument: nsIDOMDocument_safe17 read GetOwnerDocument;
    function InsertBefore(newChild: nsIDOMNode_safe17; refChild: nsIDOMNode_safe17): nsIDOMNode_safe17; safecall;
    function ReplaceChild(newChild: nsIDOMNode_safe17; oldChild: nsIDOMNode_safe17): nsIDOMNode_safe17; safecall;
    function RemoveChild(oldChild: nsIDOMNode_safe17): nsIDOMNode_safe17; safecall;
    function AppendChild(newChild: nsIDOMNode_safe17): nsIDOMNode_safe17; safecall;
    function HasChildNodes(): PRBool; safecall;
    function CloneNode(deep: PRBool): nsIDOMNode_safe17; safecall;
    procedure Normalize(); safecall;
    function IsSupported(const feature: nsAString; const version: nsAString): PRBool; safecall;
    procedure GetNamespaceURI(aNamespaceURI: nsAString); safecall;
    procedure GetPrefix(aPrefix: nsAString); safecall;
    procedure SetPrefix(const aPrefix: nsAString); safecall;
    procedure GetLocalName(aLocalName: nsAString); safecall;
    function HasAttributes(): PRBool; safecall;
  end;

  nsIDOMAttr_safe17 = interface(nsIDOMNode_safe17)
  ['{a6cf9070-15b3-11d2-932e-00805f8add32}']
    procedure GetName(aName: nsAString); safecall;
    function GetSpecified(): PRBool; safecall;
    property Specified: PRBool read GetSpecified;
    procedure GetValue(aValue: nsAString); safecall;
    procedure SetValue(const aValue: nsAString); safecall;
    function GetOwnerElement(): nsIDOMElement_safe17; safecall;
    property OwnerElement: nsIDOMElement_safe17 read GetOwnerElement;
  end;

  nsIDOMBarProp_safe17 = interface(nsISupports_safe17)
  ['{9eb2c150-1d56-11d3-8221-0060083a0bcf}']
    function GetVisible(): PRBool; safecall;
    procedure SetVisible(aVisible: PRBool); safecall;
    property Visible: PRBool read GetVisible write SetVisible;
  end;

  nsIDOMCharacterData_safe17 = interface(nsIDOMNode_safe17)
  ['{a6cf9072-15b3-11d2-932e-00805f8add32}']
    procedure GetData(aData: nsAString); safecall;
    procedure SetData(const aData: nsAString); safecall;
    function GetLength(): PRUint32; safecall;
    property Length: PRUint32 read GetLength;
    procedure SubstringData(offset: PRUint32; count: PRUint32; _retval: nsAString); safecall;
    procedure AppendData(const arg: nsAString); safecall;
    procedure InsertData(offset: PRUint32; const arg: nsAString); safecall;
    procedure DeleteData(offset: PRUint32; count: PRUint32); safecall;
    procedure ReplaceData(offset: PRUint32; count: PRUint32; const arg: nsAString); safecall;
  end;

  nsIDOMText_safe17 = interface(nsIDOMCharacterData_safe17)
  ['{a6cf9082-15b3-11d2-932e-00805f8add32}']
    function SplitText(offset: PRUint32): nsIDOMText_safe17; safecall;
  end;

  nsIDOMCDATASection_safe17 = interface(nsIDOMText_safe17)
  ['{a6cf9071-15b3-11d2-932e-00805f8add32}']
  end;

  nsIDOMComment_safe17 = interface(nsIDOMCharacterData_safe17)
  ['{a6cf9073-15b3-11d2-932e-00805f8add32}']
  end;

  nsIDOMCounter_safe17 = interface(nsISupports_safe17)
  ['{31adb439-0055-402d-9b1d-d5ca94f3f55b}']
    procedure GetIdentifier(aIdentifier: nsAString); safecall;
    procedure GetListStyle(aListStyle: nsAString); safecall;
    procedure GetSeparator(aSeparator: nsAString); safecall;
  end;

  nsIDOMCSSValue_safe17 = interface(nsISupports_safe17)
  ['{009f7ea5-9e80-41be-b008-db62f10823f2}']
    procedure GetCssText(aCssText: nsAString); safecall;
    procedure SetCssText(const aCssText: nsAString); safecall;
    function GetCssValueType(): PRUint16; safecall;
    property CssValueType: PRUint16 read GetCssValueType;
  end;

  nsIDOMCSSPrimitiveValue_safe17 = interface(nsIDOMCSSValue_safe17)
  ['{e249031f-8df9-4e7a-b644-18946dce0019}']
    function GetPrimitiveType(): PRUint16; safecall;
    property PrimitiveType: PRUint16 read GetPrimitiveType;
    procedure SetFloatValue(unitType: PRUint16; floatValue: Single); safecall;
    function GetFloatValue(unitType: PRUint16): Single; safecall;
    procedure SetStringValue(stringType: PRUint16; const stringValue: nsAString); safecall;
    procedure GetStringValue(_retval: nsAString); safecall;
    function GetCounterValue(): nsIDOMCounter_safe17; safecall;
    function GetRectValue(): nsIDOMRect_safe17; safecall;
    function GetRGBColorValue(): nsIDOMRGBColor_safe17; safecall;
  end;

  nsIDOMCSSRule_safe17 = interface(nsISupports_safe17)
  ['{a6cf90c1-15b3-11d2-932e-00805f8add32}']
    function GetType(): PRUint16; safecall;
    property _Type: PRUint16 read GetType;
    procedure GetCssText(aCssText: nsAString); safecall;
    procedure SetCssText(const aCssText: nsAString); safecall;
    function GetParentStyleSheet(): nsIDOMCSSStyleSheet_safe17; safecall;
    property ParentStyleSheet: nsIDOMCSSStyleSheet_safe17 read GetParentStyleSheet;
    function GetParentRule(): nsIDOMCSSRule_safe17; safecall;
    property ParentRule: nsIDOMCSSRule_safe17 read GetParentRule;
  end;

  nsIDOMCSSRuleList_safe17 = interface(nsISupports_safe17)
  ['{a6cf90c0-15b3-11d2-932e-00805f8add32}']
    function GetLength(): PRUint32; safecall;
    property Length: PRUint32 read GetLength;
    function Item(index: PRUint32): nsIDOMCSSRule_safe17; safecall;
  end;

  nsIDOMCSSStyleDeclaration_safe17 = interface(nsISupports_safe17)
  ['{a6cf90be-15b3-11d2-932e-00805f8add32}']
    procedure GetCssText(aCssText: nsAString); safecall;
    procedure SetCssText(const aCssText: nsAString); safecall;
    procedure GetPropertyValue(const propertyName: nsAString; _retval: nsAString); safecall;
    function GetPropertyCSSValue(const propertyName: nsAString): nsIDOMCSSValue_safe17; safecall;
    procedure RemoveProperty(const propertyName: nsAString; _retval: nsAString); safecall;
    procedure GetPropertyPriority(const propertyName: nsAString; _retval: nsAString); safecall;
    procedure SetProperty(const propertyName: nsAString; const value: nsAString; const priority: nsAString); safecall;
    function GetLength(): PRUint32; safecall;
    property Length: PRUint32 read GetLength;
    procedure Item(index: PRUint32; _retval: nsAString); safecall;
    function GetParentRule(): nsIDOMCSSRule_safe17; safecall;
    property ParentRule: nsIDOMCSSRule_safe17 read GetParentRule;
  end;

  nsIDOMStyleSheet_safe17 = interface(nsISupports_safe17)
  ['{a6cf9080-15b3-11d2-932e-00805f8add32}']
    procedure GetType(aType: nsAString); safecall;
    function GetDisabled(): PRBool; safecall;
    procedure SetDisabled(aDisabled: PRBool); safecall;
    property Disabled: PRBool read GetDisabled write SetDisabled;
    function GetOwnerNode(): nsIDOMNode_safe17; safecall;
    property OwnerNode: nsIDOMNode_safe17 read GetOwnerNode;
    function GetParentStyleSheet(): nsIDOMStyleSheet_safe17; safecall;
    property ParentStyleSheet: nsIDOMStyleSheet_safe17 read GetParentStyleSheet;
    procedure GetHref(aHref: nsAString); safecall;
    procedure GetTitle(aTitle: nsAString); safecall;
    function GetMedia(): nsIDOMMediaList_safe17; safecall;
    property Media: nsIDOMMediaList_safe17 read GetMedia;
  end;

  nsIDOMCSSStyleSheet_safe17 = interface(nsIDOMStyleSheet_safe17)
  ['{a6cf90c2-15b3-11d2-932e-00805f8add32}']
    function GetOwnerRule(): nsIDOMCSSRule_safe17; safecall;
    property OwnerRule: nsIDOMCSSRule_safe17 read GetOwnerRule;
    function GetCssRules(): nsIDOMCSSRuleList_safe17; safecall;
    property CssRules: nsIDOMCSSRuleList_safe17 read GetCssRules;
    function InsertRule(const rule: nsAString; index: PRUint32): PRUint32; safecall;
    procedure DeleteRule(index: PRUint32); safecall;
  end;

  nsIDOMCSSValueList_safe17 = interface(nsIDOMCSSValue_safe17)
  ['{8f09fa84-39b9-4dca-9b2f-db0eeb186286}']
    function GetLength(): PRUint32; safecall;
    property Length: PRUint32 read GetLength;
    function Item(index: PRUint32): nsIDOMCSSValue_safe17; safecall;
  end;

  nsIDOMEvent_safe17 = interface(nsISupports_safe17)
  ['{a66b7b80-ff46-bd97-0080-5f8ae38add32}']
    procedure GetType(aType: nsAString); safecall;
    function GetTarget(): nsIDOMEventTarget_safe17; safecall;
    property Target: nsIDOMEventTarget_safe17 read GetTarget;
    function GetCurrentTarget(): nsIDOMEventTarget_safe17; safecall;
    property CurrentTarget: nsIDOMEventTarget_safe17 read GetCurrentTarget;
    function GetEventPhase(): PRUint16; safecall;
    property EventPhase: PRUint16 read GetEventPhase;
    function GetBubbles(): PRBool; safecall;
    property Bubbles: PRBool read GetBubbles;
    function GetCancelable(): PRBool; safecall;
    property Cancelable: PRBool read GetCancelable;
    function GetTimeStamp(): DOMTimeStamp; safecall;
    property TimeStamp: DOMTimeStamp read GetTimeStamp;
    procedure StopPropagation(); safecall;
    procedure PreventDefault(); safecall;
    procedure InitEvent(const eventTypeArg: nsAString; canBubbleArg: PRBool; cancelableArg: PRBool); safecall;
  end;

  nsIDOMCustomEvent_safe17 = interface(nsIDOMEvent_safe17)
  ['{55c7af7b-1a64-40bf-87eb-2c2cbee0491b}']
    procedure SetCurrentTarget(target: nsIDOMNode_safe17); safecall;
    procedure SetEventPhase(phase: PRUint16); safecall;
  end;

  nsIDOMDocument_safe17 = interface(nsIDOMNode_safe17)
  ['{a6cf9075-15b3-11d2-932e-00805f8add32}']
    function GetDoctype(): nsIDOMDocumentType_safe17; safecall;
    property Doctype: nsIDOMDocumentType_safe17 read GetDoctype;
    function GetImplementation(): nsIDOMDOMImplementation_safe17; safecall;
    property _Implementation: nsIDOMDOMImplementation_safe17 read GetImplementation;
    function GetDocumentElement(): nsIDOMElement_safe17; safecall;
    property DocumentElement: nsIDOMElement_safe17 read GetDocumentElement;
    function CreateElement(const tagName: nsAString): nsIDOMElement_safe17; safecall;
    function CreateDocumentFragment(): nsIDOMDocumentFragment_safe17; safecall;
    function CreateTextNode(const data: nsAString): nsIDOMText_safe17; safecall;
    function CreateComment(const data: nsAString): nsIDOMComment_safe17; safecall;
    function CreateCDATASection(const data: nsAString): nsIDOMCDATASection_safe17; safecall;
    function CreateProcessingInstruction(const target: nsAString; const data: nsAString): nsIDOMProcessingInstruction_safe17; safecall;
    function CreateAttribute(const name: nsAString): nsIDOMAttr_safe17; safecall;
    function CreateEntityReference(const name: nsAString): nsIDOMEntityReference_safe17; safecall;
    function GetElementsByTagName(const tagname: nsAString): nsIDOMNodeList_safe17; safecall;
    function ImportNode(importedNode: nsIDOMNode_safe17; deep: PRBool): nsIDOMNode_safe17; safecall;
    function CreateElementNS(const namespaceURI: nsAString; const qualifiedName: nsAString): nsIDOMElement_safe17; safecall;
    function CreateAttributeNS(const namespaceURI: nsAString; const qualifiedName: nsAString): nsIDOMAttr_safe17; safecall;
    function GetElementsByTagNameNS(const namespaceURI: nsAString; const localName: nsAString): nsIDOMNodeList_safe17; safecall;
    function GetElementById(const elementId: nsAString): nsIDOMElement_safe17; safecall;
  end;

  nsIDOMDocumentEvent_safe17 = interface(nsISupports_safe17)
  ['{46b91d66-28e2-11d4-ab1e-0010830123b4}']
    function CreateEvent(const eventType: nsAString): nsIDOMEvent_safe17; safecall;
  end;

  nsIDOMDocumentFragment_safe17 = interface(nsIDOMNode_safe17)
  ['{a6cf9076-15b3-11d2-932e-00805f8add32}']
  end;

  nsIDOMDocumentRange_safe17 = interface(nsISupports_safe17)
  ['{7b9badc6-c9bc-447a-8670-dbd195aed24b}']
    function CreateRange(): nsIDOMRange_safe17; safecall;
  end;

  nsIDOMDocumentStyle_safe17 = interface(nsISupports_safe17)
  ['{3d9f4973-dd2e-48f5-b5f7-2634e09eadd9}']
    function GetStyleSheets(): nsIDOMStyleSheetList_safe17; safecall;
    property StyleSheets: nsIDOMStyleSheetList_safe17 read GetStyleSheets;
  end;

  nsIDOMDocumentType_safe17 = interface(nsIDOMNode_safe17)
  ['{a6cf9077-15b3-11d2-932e-00805f8add32}']
    procedure GetName(aName: nsAString); safecall;
    function GetEntities(): nsIDOMNamedNodeMap_safe17; safecall;
    property Entities: nsIDOMNamedNodeMap_safe17 read GetEntities;
    function GetNotations(): nsIDOMNamedNodeMap_safe17; safecall;
    property Notations: nsIDOMNamedNodeMap_safe17 read GetNotations;
    procedure GetPublicId(aPublicId: nsAString); safecall;
    procedure GetSystemId(aSystemId: nsAString); safecall;
    procedure GetInternalSubset(aInternalSubset: nsAString); safecall;
  end;

  nsIDOMDocumentView_safe17 = interface(nsISupports_safe17)
  ['{1acdb2ba-1dd2-11b2-95bc-9542495d2569}']
    function GetDefaultView(): nsIDOMAbstractView_safe17; safecall;
    property DefaultView: nsIDOMAbstractView_safe17 read GetDefaultView;
  end;

  nsIDOMDOMException_safe17 = interface(nsISupports_safe17)
  ['{a6cf910a-15b3-11d2-932e-00805f8add32}']
    function GetCode(): PRUint32; safecall;
    property Code: PRUint32 read GetCode;
  end;

  nsIDOMDOMImplementation_safe17 = interface(nsISupports_safe17)
  ['{a6cf9074-15b3-11d2-932e-00805f8add32}']
    function HasFeature(const feature: nsAString; const version: nsAString): PRBool; safecall;
    function CreateDocumentType(const qualifiedName: nsAString; const publicId: nsAString; const systemId: nsAString): nsIDOMDocumentType_safe17; safecall;
    function CreateDocument(const namespaceURI: nsAString; const qualifiedName: nsAString; doctype: nsIDOMDocumentType_safe17): nsIDOMDocument_safe17; safecall;
  end;

  nsIDOMElement_safe17 = interface(nsIDOMNode_safe17)
  ['{a6cf9078-15b3-11d2-932e-00805f8add32}']
    procedure GetTagName(aTagName: nsAString); safecall;
    procedure GetAttribute(const name: nsAString; _retval: nsAString); safecall;
    procedure SetAttribute(const name: nsAString; const value: nsAString); safecall;
    procedure RemoveAttribute(const name: nsAString); safecall;
    function GetAttributeNode(const name: nsAString): nsIDOMAttr_safe17; safecall;
    function SetAttributeNode(newAttr: nsIDOMAttr_safe17): nsIDOMAttr_safe17; safecall;
    function RemoveAttributeNode(oldAttr: nsIDOMAttr_safe17): nsIDOMAttr_safe17; safecall;
    function GetElementsByTagName(const name: nsAString): nsIDOMNodeList_safe17; safecall;
    procedure GetAttributeNS(const namespaceURI: nsAString; const localName: nsAString; _retval: nsAString); safecall;
    procedure SetAttributeNS(const namespaceURI: nsAString; const qualifiedName: nsAString; const value: nsAString); safecall;
    procedure RemoveAttributeNS(const namespaceURI: nsAString; const localName: nsAString); safecall;
    function GetAttributeNodeNS(const namespaceURI: nsAString; const localName: nsAString): nsIDOMAttr_safe17; safecall;
    function SetAttributeNodeNS(newAttr: nsIDOMAttr_safe17): nsIDOMAttr_safe17; safecall;
    function GetElementsByTagNameNS(const namespaceURI: nsAString; const localName: nsAString): nsIDOMNodeList_safe17; safecall;
    function HasAttribute(const name: nsAString): PRBool; safecall;
    function HasAttributeNS(const namespaceURI: nsAString; const localName: nsAString): PRBool; safecall;
  end;

  nsIDOMEntity_safe17 = interface(nsIDOMNode_safe17)
  ['{a6cf9079-15b3-11d2-932e-00805f8add32}']
    procedure GetPublicId(aPublicId: nsAString); safecall;
    procedure GetSystemId(aSystemId: nsAString); safecall;
    procedure GetNotationName(aNotationName: nsAString); safecall;
  end;

  nsIDOMEntityReference_safe17 = interface(nsIDOMNode_safe17)
  ['{a6cf907a-15b3-11d2-932e-00805f8add32}']
  end;

  nsIDOMEventGroup_safe17 = interface(nsISupports_safe17)
  ['{33347bee-6620-4841-8152-36091ae80c7e}']
    function IsSameEventGroup(other: nsIDOMEventGroup_safe17): PRBool; safecall;
  end;

  nsIDOMEventListener_safe17 = interface(nsISupports_safe17)
  ['{df31c120-ded6-11d1-bd85-00805f8ae3f4}']
    procedure HandleEvent(event: nsIDOMEvent_safe17); safecall;
  end;

  nsIDOMEventTarget_safe17 = interface(nsISupports_safe17)
  ['{1c773b30-d1cf-11d2-bd95-00805f8ae3f4}']
    procedure AddEventListener(const _type: nsAString; listener: nsIDOMEventListener_safe17; useCapture: PRBool); safecall;
    procedure RemoveEventListener(const _type: nsAString; listener: nsIDOMEventListener_safe17; useCapture: PRBool); safecall;
    function DispatchEvent(evt: nsIDOMEvent_safe17): PRBool; safecall;
  end;

  nsIDOMHTMLElement_safe17 = interface(nsIDOMElement_safe17)
  ['{a6cf9085-15b3-11d2-932e-00805f8add32}']
    procedure GetId(aId: nsAString); safecall;
    procedure SetId(const aId: nsAString); safecall;
    procedure GetTitle(aTitle: nsAString); safecall;
    procedure SetTitle(const aTitle: nsAString); safecall;
    procedure GetLang(aLang: nsAString); safecall;
    procedure SetLang(const aLang: nsAString); safecall;
    procedure GetDir(aDir: nsAString); safecall;
    procedure SetDir(const aDir: nsAString); safecall;
    procedure GetClassName(aClassName: nsAString); safecall;
    procedure SetClassName(const aClassName: nsAString); safecall;
  end;

  nsIDOMHTMLAnchorElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90aa-15b3-11d2-932e-00805f8add32}']
    procedure GetAccessKey(aAccessKey: nsAString); safecall;
    procedure SetAccessKey(const aAccessKey: nsAString); safecall;
    procedure GetCharset(aCharset: nsAString); safecall;
    procedure SetCharset(const aCharset: nsAString); safecall;
    procedure GetCoords(aCoords: nsAString); safecall;
    procedure SetCoords(const aCoords: nsAString); safecall;
    procedure GetHref(aHref: nsAString); safecall;
    procedure SetHref(const aHref: nsAString); safecall;
    procedure GetHreflang(aHreflang: nsAString); safecall;
    procedure SetHreflang(const aHreflang: nsAString); safecall;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    procedure GetRel(aRel: nsAString); safecall;
    procedure SetRel(const aRel: nsAString); safecall;
    procedure GetRev(aRev: nsAString); safecall;
    procedure SetRev(const aRev: nsAString); safecall;
    procedure GetShape(aShape: nsAString); safecall;
    procedure SetShape(const aShape: nsAString); safecall;
    function GetTabIndex(): PRInt32; safecall;
    procedure SetTabIndex(aTabIndex: PRInt32); safecall;
    property TabIndex: PRInt32 read GetTabIndex write SetTabIndex;
    procedure GetTarget(aTarget: nsAString); safecall;
    procedure SetTarget(const aTarget: nsAString); safecall;
    procedure GetType(aType: nsAString); safecall;
    procedure SetType(const aType: nsAString); safecall;
    procedure Blur(); safecall;
    procedure Focus(); safecall;
  end;

  nsIDOMHTMLAppletElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90ae-15b3-11d2-932e-00805f8add32}']
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
    procedure GetAlt(aAlt: nsAString); safecall;
    procedure SetAlt(const aAlt: nsAString); safecall;
    procedure GetArchive(aArchive: nsAString); safecall;
    procedure SetArchive(const aArchive: nsAString); safecall;
    procedure GetCode(aCode: nsAString); safecall;
    procedure SetCode(const aCode: nsAString); safecall;
    procedure GetCodeBase(aCodeBase: nsAString); safecall;
    procedure SetCodeBase(const aCodeBase: nsAString); safecall;
    procedure GetHeight(aHeight: nsAString); safecall;
    procedure SetHeight(const aHeight: nsAString); safecall;
    function GetHspace(): PRInt32; safecall;
    procedure SetHspace(aHspace: PRInt32); safecall;
    property Hspace: PRInt32 read GetHspace write SetHspace;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    procedure GetObject(aObject: nsAString); safecall;
    procedure SetObject(const aObject: nsAString); safecall;
    function GetVspace(): PRInt32; safecall;
    procedure SetVspace(aVspace: PRInt32); safecall;
    property Vspace: PRInt32 read GetVspace write SetVspace;
    procedure GetWidth(aWidth: nsAString); safecall;
    procedure SetWidth(const aWidth: nsAString); safecall;
  end;

  nsIDOMHTMLAreaElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90b0-15b3-11d2-932e-00805f8add32}']
    procedure GetAccessKey(aAccessKey: nsAString); safecall;
    procedure SetAccessKey(const aAccessKey: nsAString); safecall;
    procedure GetAlt(aAlt: nsAString); safecall;
    procedure SetAlt(const aAlt: nsAString); safecall;
    procedure GetCoords(aCoords: nsAString); safecall;
    procedure SetCoords(const aCoords: nsAString); safecall;
    procedure GetHref(aHref: nsAString); safecall;
    procedure SetHref(const aHref: nsAString); safecall;
    function GetNoHref(): PRBool; safecall;
    procedure SetNoHref(aNoHref: PRBool); safecall;
    property NoHref: PRBool read GetNoHref write SetNoHref;
    procedure GetShape(aShape: nsAString); safecall;
    procedure SetShape(const aShape: nsAString); safecall;
    function GetTabIndex(): PRInt32; safecall;
    procedure SetTabIndex(aTabIndex: PRInt32); safecall;
    property TabIndex: PRInt32 read GetTabIndex write SetTabIndex;
    procedure GetTarget(aTarget: nsAString); safecall;
    procedure SetTarget(const aTarget: nsAString); safecall;
  end;

  nsIDOMHTMLBaseElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf908b-15b3-11d2-932e-00805f8add32}']
    procedure GetHref(aHref: nsAString); safecall;
    procedure SetHref(const aHref: nsAString); safecall;
    procedure GetTarget(aTarget: nsAString); safecall;
    procedure SetTarget(const aTarget: nsAString); safecall;
  end;

  nsIDOMHTMLBaseFontElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90a6-15b3-11d2-932e-00805f8add32}']
    procedure GetColor(aColor: nsAString); safecall;
    procedure SetColor(const aColor: nsAString); safecall;
    procedure GetFace(aFace: nsAString); safecall;
    procedure SetFace(const aFace: nsAString); safecall;
    function GetSize(): PRInt32; safecall;
    procedure SetSize(aSize: PRInt32); safecall;
    property Size: PRInt32 read GetSize write SetSize;
  end;

  nsIDOMHTMLBodyElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf908e-15b3-11d2-932e-00805f8add32}']
    procedure GetALink(aALink: nsAString); safecall;
    procedure SetALink(const aALink: nsAString); safecall;
    procedure GetBackground(aBackground: nsAString); safecall;
    procedure SetBackground(const aBackground: nsAString); safecall;
    procedure GetBgColor(aBgColor: nsAString); safecall;
    procedure SetBgColor(const aBgColor: nsAString); safecall;
    procedure GetLink(aLink: nsAString); safecall;
    procedure SetLink(const aLink: nsAString); safecall;
    procedure GetText(aText: nsAString); safecall;
    procedure SetText(const aText: nsAString); safecall;
    procedure GetVLink(aVLink: nsAString); safecall;
    procedure SetVLink(const aVLink: nsAString); safecall;
  end;

  nsIDOMHTMLBRElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90a5-15b3-11d2-932e-00805f8add32}']
    procedure GetClear(aClear: nsAString); safecall;
    procedure SetClear(const aClear: nsAString); safecall;
  end;

  nsIDOMHTMLButtonElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9095-15b3-11d2-932e-00805f8add32}']
    function GetForm(): nsIDOMHTMLFormElement_safe17; safecall;
    property Form: nsIDOMHTMLFormElement_safe17 read GetForm;
    procedure GetAccessKey(aAccessKey: nsAString); safecall;
    procedure SetAccessKey(const aAccessKey: nsAString); safecall;
    function GetDisabled(): PRBool; safecall;
    procedure SetDisabled(aDisabled: PRBool); safecall;
    property Disabled: PRBool read GetDisabled write SetDisabled;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    function GetTabIndex(): PRInt32; safecall;
    procedure SetTabIndex(aTabIndex: PRInt32); safecall;
    property TabIndex: PRInt32 read GetTabIndex write SetTabIndex;
    procedure GetType(aType: nsAString); safecall;
    procedure GetValue(aValue: nsAString); safecall;
    procedure SetValue(const aValue: nsAString); safecall;
  end;

  nsIDOMHTMLCollection_safe17 = interface(nsISupports_safe17)
  ['{a6cf9083-15b3-11d2-932e-00805f8add32}']
    function GetLength(): PRUint32; safecall;
    property Length: PRUint32 read GetLength;
    function Item(index: PRUint32): nsIDOMNode_safe17; safecall;
    function NamedItem(const name: nsAString): nsIDOMNode_safe17; safecall;
  end;

  nsIDOMHTMLDirectoryElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf909c-15b3-11d2-932e-00805f8add32}']
    function GetCompact(): PRBool; safecall;
    procedure SetCompact(aCompact: PRBool); safecall;
    property Compact: PRBool read GetCompact write SetCompact;
  end;

  nsIDOMHTMLDivElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90a0-15b3-11d2-932e-00805f8add32}']
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
  end;

  nsIDOMHTMLDListElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf909b-15b3-11d2-932e-00805f8add32}']
    function GetCompact(): PRBool; safecall;
    procedure SetCompact(aCompact: PRBool); safecall;
    property Compact: PRBool read GetCompact write SetCompact;
  end;

  nsIDOMHTMLDocument_safe17 = interface(nsIDOMDocument_safe17)
  ['{a6cf9084-15b3-11d2-932e-00805f8add32}']
    procedure GetTitle(aTitle: nsAString); safecall;
    procedure SetTitle(const aTitle: nsAString); safecall;
    procedure GetReferrer(aReferrer: nsAString); safecall;
    procedure GetDomain(aDomain: nsAString); safecall;
    procedure GetURL(aURL: nsAString); safecall;
    function GetBody(): nsIDOMHTMLElement_safe17; safecall;
    procedure SetBody(aBody: nsIDOMHTMLElement_safe17); safecall;
    property Body: nsIDOMHTMLElement_safe17 read GetBody write SetBody;
    function GetImages(): nsIDOMHTMLCollection_safe17; safecall;
    property Images: nsIDOMHTMLCollection_safe17 read GetImages;
    function GetApplets(): nsIDOMHTMLCollection_safe17; safecall;
    property Applets: nsIDOMHTMLCollection_safe17 read GetApplets;
    function GetLinks(): nsIDOMHTMLCollection_safe17; safecall;
    property Links: nsIDOMHTMLCollection_safe17 read GetLinks;
    function GetForms(): nsIDOMHTMLCollection_safe17; safecall;
    property Forms: nsIDOMHTMLCollection_safe17 read GetForms;
    function GetAnchors(): nsIDOMHTMLCollection_safe17; safecall;
    property Anchors: nsIDOMHTMLCollection_safe17 read GetAnchors;
    procedure GetCookie(aCookie: nsAString); safecall;
    procedure SetCookie(const aCookie: nsAString); safecall;
    procedure Open(); safecall;
    procedure Close(); safecall;
    procedure Write(const text: nsAString); safecall;
    procedure Writeln(const text: nsAString); safecall;
    function GetElementsByName(const elementName: nsAString): nsIDOMNodeList_safe17; safecall;
  end;

  nsIDOMHTMLEmbedElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{123f90ab-15b3-11d2-456e-00805f8add32}']
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
    procedure GetHeight(aHeight: nsAString); safecall;
    procedure SetHeight(const aHeight: nsAString); safecall;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    procedure GetSrc(aSrc: nsAString); safecall;
    procedure SetSrc(const aSrc: nsAString); safecall;
    procedure GetType(aType: nsAString); safecall;
    procedure SetType(const aType: nsAString); safecall;
    procedure GetWidth(aWidth: nsAString); safecall;
    procedure SetWidth(const aWidth: nsAString); safecall;
  end;

  nsIDOMHTMLFieldSetElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9097-15b3-11d2-932e-00805f8add32}']
    function GetForm(): nsIDOMHTMLFormElement_safe17; safecall;
    property Form: nsIDOMHTMLFormElement_safe17 read GetForm;
  end;

  nsIDOMHTMLFontElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90a7-15b3-11d2-932e-00805f8add32}']
    procedure GetColor(aColor: nsAString); safecall;
    procedure SetColor(const aColor: nsAString); safecall;
    procedure GetFace(aFace: nsAString); safecall;
    procedure SetFace(const aFace: nsAString); safecall;
    procedure GetSize(aSize: nsAString); safecall;
    procedure SetSize(const aSize: nsAString); safecall;
  end;

  nsIDOMHTMLFormElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf908f-15b3-11d2-932e-00805f8add32}']
    function GetElements(): nsIDOMHTMLCollection_safe17; safecall;
    property Elements: nsIDOMHTMLCollection_safe17 read GetElements;
    function GetLength(): PRInt32; safecall;
    property Length: PRInt32 read GetLength;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    procedure GetAcceptCharset(aAcceptCharset: nsAString); safecall;
    procedure SetAcceptCharset(const aAcceptCharset: nsAString); safecall;
    procedure GetAction(aAction: nsAString); safecall;
    procedure SetAction(const aAction: nsAString); safecall;
    procedure GetEnctype(aEnctype: nsAString); safecall;
    procedure SetEnctype(const aEnctype: nsAString); safecall;
    procedure GetMethod(aMethod: nsAString); safecall;
    procedure SetMethod(const aMethod: nsAString); safecall;
    procedure GetTarget(aTarget: nsAString); safecall;
    procedure SetTarget(const aTarget: nsAString); safecall;
    procedure Submit(); safecall;
    procedure Reset(); safecall;
  end;

  nsIDOMHTMLFrameElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90b9-15b3-11d2-932e-00805f8add32}']
    procedure GetFrameBorder(aFrameBorder: nsAString); safecall;
    procedure SetFrameBorder(const aFrameBorder: nsAString); safecall;
    procedure GetLongDesc(aLongDesc: nsAString); safecall;
    procedure SetLongDesc(const aLongDesc: nsAString); safecall;
    procedure GetMarginHeight(aMarginHeight: nsAString); safecall;
    procedure SetMarginHeight(const aMarginHeight: nsAString); safecall;
    procedure GetMarginWidth(aMarginWidth: nsAString); safecall;
    procedure SetMarginWidth(const aMarginWidth: nsAString); safecall;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    function GetNoResize(): PRBool; safecall;
    procedure SetNoResize(aNoResize: PRBool); safecall;
    property NoResize: PRBool read GetNoResize write SetNoResize;
    procedure GetScrolling(aScrolling: nsAString); safecall;
    procedure SetScrolling(const aScrolling: nsAString); safecall;
    procedure GetSrc(aSrc: nsAString); safecall;
    procedure SetSrc(const aSrc: nsAString); safecall;
    function GetContentDocument(): nsIDOMDocument_safe17; safecall;
    property ContentDocument: nsIDOMDocument_safe17 read GetContentDocument;
  end;

  nsIDOMHTMLFrameSetElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90b8-15b3-11d2-932e-00805f8add32}']
    procedure GetCols(aCols: nsAString); safecall;
    procedure SetCols(const aCols: nsAString); safecall;
    procedure GetRows(aRows: nsAString); safecall;
    procedure SetRows(const aRows: nsAString); safecall;
  end;

  nsIDOMHTMLHeadElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9087-15b3-11d2-932e-00805f8add32}']
    procedure GetProfile(aProfile: nsAString); safecall;
    procedure SetProfile(const aProfile: nsAString); safecall;
  end;

  nsIDOMHTMLHeadingElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90a2-15b3-11d2-932e-00805f8add32}']
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
  end;

  nsIDOMHTMLHRElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90a8-15b3-11d2-932e-00805f8add32}']
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
    function GetNoShade(): PRBool; safecall;
    procedure SetNoShade(aNoShade: PRBool); safecall;
    property NoShade: PRBool read GetNoShade write SetNoShade;
    procedure GetSize(aSize: nsAString); safecall;
    procedure SetSize(const aSize: nsAString); safecall;
    procedure GetWidth(aWidth: nsAString); safecall;
    procedure SetWidth(const aWidth: nsAString); safecall;
  end;

  nsIDOMHTMLHtmlElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9086-15b3-11d2-932e-00805f8add32}']
    procedure GetVersion(aVersion: nsAString); safecall;
    procedure SetVersion(const aVersion: nsAString); safecall;
  end;

  nsIDOMHTMLIFrameElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90ba-15b3-11d2-932e-00805f8add32}']
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
    procedure GetFrameBorder(aFrameBorder: nsAString); safecall;
    procedure SetFrameBorder(const aFrameBorder: nsAString); safecall;
    procedure GetHeight(aHeight: nsAString); safecall;
    procedure SetHeight(const aHeight: nsAString); safecall;
    procedure GetLongDesc(aLongDesc: nsAString); safecall;
    procedure SetLongDesc(const aLongDesc: nsAString); safecall;
    procedure GetMarginHeight(aMarginHeight: nsAString); safecall;
    procedure SetMarginHeight(const aMarginHeight: nsAString); safecall;
    procedure GetMarginWidth(aMarginWidth: nsAString); safecall;
    procedure SetMarginWidth(const aMarginWidth: nsAString); safecall;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    procedure GetScrolling(aScrolling: nsAString); safecall;
    procedure SetScrolling(const aScrolling: nsAString); safecall;
    procedure GetSrc(aSrc: nsAString); safecall;
    procedure SetSrc(const aSrc: nsAString); safecall;
    procedure GetWidth(aWidth: nsAString); safecall;
    procedure SetWidth(const aWidth: nsAString); safecall;
    function GetContentDocument(): nsIDOMDocument_safe17; safecall;
    property ContentDocument: nsIDOMDocument_safe17 read GetContentDocument;
  end;

  nsIDOMHTMLImageElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90ab-15b3-11d2-932e-00805f8add32}']
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
    procedure GetAlt(aAlt: nsAString); safecall;
    procedure SetAlt(const aAlt: nsAString); safecall;
    procedure GetBorder(aBorder: nsAString); safecall;
    procedure SetBorder(const aBorder: nsAString); safecall;
    function GetHeight(): PRInt32; safecall;
    procedure SetHeight(aHeight: PRInt32); safecall;
    property Height: PRInt32 read GetHeight write SetHeight;
    function GetHspace(): PRInt32; safecall;
    procedure SetHspace(aHspace: PRInt32); safecall;
    property Hspace: PRInt32 read GetHspace write SetHspace;
    function GetIsMap(): PRBool; safecall;
    procedure SetIsMap(aIsMap: PRBool); safecall;
    property IsMap: PRBool read GetIsMap write SetIsMap;
    procedure GetLongDesc(aLongDesc: nsAString); safecall;
    procedure SetLongDesc(const aLongDesc: nsAString); safecall;
    procedure GetSrc(aSrc: nsAString); safecall;
    procedure SetSrc(const aSrc: nsAString); safecall;
    procedure GetUseMap(aUseMap: nsAString); safecall;
    procedure SetUseMap(const aUseMap: nsAString); safecall;
    function GetVspace(): PRInt32; safecall;
    procedure SetVspace(aVspace: PRInt32); safecall;
    property Vspace: PRInt32 read GetVspace write SetVspace;
    function GetWidth(): PRInt32; safecall;
    procedure SetWidth(aWidth: PRInt32); safecall;
    property Width: PRInt32 read GetWidth write SetWidth;
  end;

  nsIDOMHTMLInputElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9093-15b3-11d2-932e-00805f8add32}']
    procedure GetDefaultValue(aDefaultValue: nsAString); safecall;
    procedure SetDefaultValue(const aDefaultValue: nsAString); safecall;
    function GetDefaultChecked(): PRBool; safecall;
    procedure SetDefaultChecked(aDefaultChecked: PRBool); safecall;
    property DefaultChecked: PRBool read GetDefaultChecked write SetDefaultChecked;
    function GetForm(): nsIDOMHTMLFormElement_safe17; safecall;
    property Form: nsIDOMHTMLFormElement_safe17 read GetForm;
    procedure GetAccept(aAccept: nsAString); safecall;
    procedure SetAccept(const aAccept: nsAString); safecall;
    procedure GetAccessKey(aAccessKey: nsAString); safecall;
    procedure SetAccessKey(const aAccessKey: nsAString); safecall;
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
    procedure GetAlt(aAlt: nsAString); safecall;
    procedure SetAlt(const aAlt: nsAString); safecall;
    function GetChecked(): PRBool; safecall;
    procedure SetChecked(aChecked: PRBool); safecall;
    property Checked: PRBool read GetChecked write SetChecked;
    function GetDisabled(): PRBool; safecall;
    procedure SetDisabled(aDisabled: PRBool); safecall;
    property Disabled: PRBool read GetDisabled write SetDisabled;
    function GetMaxLength(): PRInt32; safecall;
    procedure SetMaxLength(aMaxLength: PRInt32); safecall;
    property MaxLength: PRInt32 read GetMaxLength write SetMaxLength;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    function GetReadOnly(): PRBool; safecall;
    procedure SetReadOnly(aReadOnly: PRBool); safecall;
    property ReadOnly: PRBool read GetReadOnly write SetReadOnly;
    function GetSize(): PRUint32; safecall;
    procedure SetSize(aSize: PRUint32); safecall;
    property Size: PRUint32 read GetSize write SetSize;
    procedure GetSrc(aSrc: nsAString); safecall;
    procedure SetSrc(const aSrc: nsAString); safecall;
    function GetTabIndex(): PRInt32; safecall;
    procedure SetTabIndex(aTabIndex: PRInt32); safecall;
    property TabIndex: PRInt32 read GetTabIndex write SetTabIndex;
    procedure GetType(aType: nsAString); safecall;
    procedure SetType(const aType: nsAString); safecall;
    procedure GetUseMap(aUseMap: nsAString); safecall;
    procedure SetUseMap(const aUseMap: nsAString); safecall;
    procedure GetValue(aValue: nsAString); safecall;
    procedure SetValue(const aValue: nsAString); safecall;
    procedure Blur(); safecall;
    procedure Focus(); safecall;
    procedure Select(); safecall;
    procedure Click(); safecall;
  end;

  nsIDOMHTMLIsIndexElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf908c-15b3-11d2-932e-00805f8add32}']
    function GetForm(): nsIDOMHTMLFormElement_safe17; safecall;
    property Form: nsIDOMHTMLFormElement_safe17 read GetForm;
    procedure GetPrompt(aPrompt: nsAString); safecall;
    procedure SetPrompt(const aPrompt: nsAString); safecall;
  end;

  nsIDOMHTMLLabelElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9096-15b3-11d2-932e-00805f8add32}']
    function GetForm(): nsIDOMHTMLFormElement_safe17; safecall;
    property Form: nsIDOMHTMLFormElement_safe17 read GetForm;
    procedure GetAccessKey(aAccessKey: nsAString); safecall;
    procedure SetAccessKey(const aAccessKey: nsAString); safecall;
    procedure GetHtmlFor(aHtmlFor: nsAString); safecall;
    procedure SetHtmlFor(const aHtmlFor: nsAString); safecall;
  end;

  nsIDOMHTMLLegendElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9098-15b3-11d2-932e-00805f8add32}']
    function GetForm(): nsIDOMHTMLFormElement_safe17; safecall;
    property Form: nsIDOMHTMLFormElement_safe17 read GetForm;
    procedure GetAccessKey(aAccessKey: nsAString); safecall;
    procedure SetAccessKey(const aAccessKey: nsAString); safecall;
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
  end;

  nsIDOMHTMLLIElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf909e-15b3-11d2-932e-00805f8add32}']
    procedure GetType(aType: nsAString); safecall;
    procedure SetType(const aType: nsAString); safecall;
    function GetValue(): PRInt32; safecall;
    procedure SetValue(aValue: PRInt32); safecall;
    property Value: PRInt32 read GetValue write SetValue;
  end;

  nsIDOMHTMLLinkElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9088-15b3-11d2-932e-00805f8add32}']
    function GetDisabled(): PRBool; safecall;
    procedure SetDisabled(aDisabled: PRBool); safecall;
    property Disabled: PRBool read GetDisabled write SetDisabled;
    procedure GetCharset(aCharset: nsAString); safecall;
    procedure SetCharset(const aCharset: nsAString); safecall;
    procedure GetHref(aHref: nsAString); safecall;
    procedure SetHref(const aHref: nsAString); safecall;
    procedure GetHreflang(aHreflang: nsAString); safecall;
    procedure SetHreflang(const aHreflang: nsAString); safecall;
    procedure GetMedia(aMedia: nsAString); safecall;
    procedure SetMedia(const aMedia: nsAString); safecall;
    procedure GetRel(aRel: nsAString); safecall;
    procedure SetRel(const aRel: nsAString); safecall;
    procedure GetRev(aRev: nsAString); safecall;
    procedure SetRev(const aRev: nsAString); safecall;
    procedure GetTarget(aTarget: nsAString); safecall;
    procedure SetTarget(const aTarget: nsAString); safecall;
    procedure GetType(aType: nsAString); safecall;
    procedure SetType(const aType: nsAString); safecall;
  end;

  nsIDOMHTMLMapElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90af-15b3-11d2-932e-00805f8add32}']
    function GetAreas(): nsIDOMHTMLCollection_safe17; safecall;
    property Areas: nsIDOMHTMLCollection_safe17 read GetAreas;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
  end;

  nsIDOMHTMLMenuElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf909d-15b3-11d2-932e-00805f8add32}']
    function GetCompact(): PRBool; safecall;
    procedure SetCompact(aCompact: PRBool); safecall;
    property Compact: PRBool read GetCompact write SetCompact;
  end;

  nsIDOMHTMLMetaElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf908a-15b3-11d2-932e-00805f8add32}']
    procedure GetContent(aContent: nsAString); safecall;
    procedure SetContent(const aContent: nsAString); safecall;
    procedure GetHttpEquiv(aHttpEquiv: nsAString); safecall;
    procedure SetHttpEquiv(const aHttpEquiv: nsAString); safecall;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    procedure GetScheme(aScheme: nsAString); safecall;
    procedure SetScheme(const aScheme: nsAString); safecall;
  end;

  nsIDOMHTMLModElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90a9-15b3-11d2-932e-00805f8add32}']
    procedure GetCite(aCite: nsAString); safecall;
    procedure SetCite(const aCite: nsAString); safecall;
    procedure GetDateTime(aDateTime: nsAString); safecall;
    procedure SetDateTime(const aDateTime: nsAString); safecall;
  end;

  nsIDOMHTMLObjectElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90ac-15b3-11d2-932e-00805f8add32}']
    function GetForm(): nsIDOMHTMLFormElement_safe17; safecall;
    property Form: nsIDOMHTMLFormElement_safe17 read GetForm;
    procedure GetCode(aCode: nsAString); safecall;
    procedure SetCode(const aCode: nsAString); safecall;
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
    procedure GetArchive(aArchive: nsAString); safecall;
    procedure SetArchive(const aArchive: nsAString); safecall;
    procedure GetBorder(aBorder: nsAString); safecall;
    procedure SetBorder(const aBorder: nsAString); safecall;
    procedure GetCodeBase(aCodeBase: nsAString); safecall;
    procedure SetCodeBase(const aCodeBase: nsAString); safecall;
    procedure GetCodeType(aCodeType: nsAString); safecall;
    procedure SetCodeType(const aCodeType: nsAString); safecall;
    procedure GetData(aData: nsAString); safecall;
    procedure SetData(const aData: nsAString); safecall;
    function GetDeclare(): PRBool; safecall;
    procedure SetDeclare(aDeclare: PRBool); safecall;
    property Declare: PRBool read GetDeclare write SetDeclare;
    procedure GetHeight(aHeight: nsAString); safecall;
    procedure SetHeight(const aHeight: nsAString); safecall;
    function GetHspace(): PRInt32; safecall;
    procedure SetHspace(aHspace: PRInt32); safecall;
    property Hspace: PRInt32 read GetHspace write SetHspace;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    procedure GetStandby(aStandby: nsAString); safecall;
    procedure SetStandby(const aStandby: nsAString); safecall;
    function GetTabIndex(): PRInt32; safecall;
    procedure SetTabIndex(aTabIndex: PRInt32); safecall;
    property TabIndex: PRInt32 read GetTabIndex write SetTabIndex;
    procedure GetType(aType: nsAString); safecall;
    procedure SetType(const aType: nsAString); safecall;
    procedure GetUseMap(aUseMap: nsAString); safecall;
    procedure SetUseMap(const aUseMap: nsAString); safecall;
    function GetVspace(): PRInt32; safecall;
    procedure SetVspace(aVspace: PRInt32); safecall;
    property Vspace: PRInt32 read GetVspace write SetVspace;
    procedure GetWidth(aWidth: nsAString); safecall;
    procedure SetWidth(const aWidth: nsAString); safecall;
    function GetContentDocument(): nsIDOMDocument_safe17; safecall;
    property ContentDocument: nsIDOMDocument_safe17 read GetContentDocument;
  end;

  nsIDOMHTMLOListElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf909a-15b3-11d2-932e-00805f8add32}']
    function GetCompact(): PRBool; safecall;
    procedure SetCompact(aCompact: PRBool); safecall;
    property Compact: PRBool read GetCompact write SetCompact;
    function GetStart(): PRInt32; safecall;
    procedure SetStart(aStart: PRInt32); safecall;
    property Start: PRInt32 read GetStart write SetStart;
    procedure GetType(aType: nsAString); safecall;
    procedure SetType(const aType: nsAString); safecall;
  end;

  nsIDOMHTMLOptGroupElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9091-15b3-11d2-932e-00805f8add32}']
    function GetDisabled(): PRBool; safecall;
    procedure SetDisabled(aDisabled: PRBool); safecall;
    property Disabled: PRBool read GetDisabled write SetDisabled;
    procedure GetLabel(aLabel: nsAString); safecall;
    procedure SetLabel(const aLabel: nsAString); safecall;
  end;

  nsIDOMHTMLOptionElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9092-15b3-11d2-932e-00805f8add32}']
    function GetForm(): nsIDOMHTMLFormElement_safe17; safecall;
    property Form: nsIDOMHTMLFormElement_safe17 read GetForm;
    function GetDefaultSelected(): PRBool; safecall;
    procedure SetDefaultSelected(aDefaultSelected: PRBool); safecall;
    property DefaultSelected: PRBool read GetDefaultSelected write SetDefaultSelected;
    procedure GetText(aText: nsAString); safecall;
    function GetIndex(): PRInt32; safecall;
    property Index: PRInt32 read GetIndex;
    function GetDisabled(): PRBool; safecall;
    procedure SetDisabled(aDisabled: PRBool); safecall;
    property Disabled: PRBool read GetDisabled write SetDisabled;
    procedure GetLabel(aLabel: nsAString); safecall;
    procedure SetLabel(const aLabel: nsAString); safecall;
    function GetSelected(): PRBool; safecall;
    procedure SetSelected(aSelected: PRBool); safecall;
    property Selected: PRBool read GetSelected write SetSelected;
    procedure GetValue(aValue: nsAString); safecall;
    procedure SetValue(const aValue: nsAString); safecall;
  end;

  nsIDOMHTMLOptionsCollection_safe17 = interface(nsISupports_safe17)
  ['{bce0213c-f70f-488f-b93f-688acca55d63}']
    function GetLength(): PRUint32; safecall;
    procedure SetLength(aLength: PRUint32); safecall;
    property Length: PRUint32 read GetLength write SetLength;
    function Item(index: PRUint32): nsIDOMNode_safe17; safecall;
    function NamedItem(const name: nsAString): nsIDOMNode_safe17; safecall;
  end;

  nsIDOMHTMLParagraphElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90a1-15b3-11d2-932e-00805f8add32}']
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
  end;

  nsIDOMHTMLParamElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90ad-15b3-11d2-932e-00805f8add32}']
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    procedure GetType(aType: nsAString); safecall;
    procedure SetType(const aType: nsAString); safecall;
    procedure GetValue(aValue: nsAString); safecall;
    procedure SetValue(const aValue: nsAString); safecall;
    procedure GetValueType(aValueType: nsAString); safecall;
    procedure SetValueType(const aValueType: nsAString); safecall;
  end;

  nsIDOMHTMLPreElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90a4-15b3-11d2-932e-00805f8add32}']
    function GetWidth(): PRInt32; safecall;
    procedure SetWidth(aWidth: PRInt32); safecall;
    property Width: PRInt32 read GetWidth write SetWidth;
  end;

  nsIDOMHTMLQuoteElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90a3-15b3-11d2-932e-00805f8add32}']
    procedure GetCite(aCite: nsAString); safecall;
    procedure SetCite(const aCite: nsAString); safecall;
  end;

  nsIDOMHTMLScriptElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90b1-15b3-11d2-932e-00805f8add32}']
    procedure GetText(aText: nsAString); safecall;
    procedure SetText(const aText: nsAString); safecall;
    procedure GetHtmlFor(aHtmlFor: nsAString); safecall;
    procedure SetHtmlFor(const aHtmlFor: nsAString); safecall;
    procedure GetEvent(aEvent: nsAString); safecall;
    procedure SetEvent(const aEvent: nsAString); safecall;
    procedure GetCharset(aCharset: nsAString); safecall;
    procedure SetCharset(const aCharset: nsAString); safecall;
    function GetDefer(): PRBool; safecall;
    procedure SetDefer(aDefer: PRBool); safecall;
    property Defer: PRBool read GetDefer write SetDefer;
    procedure GetSrc(aSrc: nsAString); safecall;
    procedure SetSrc(const aSrc: nsAString); safecall;
    procedure GetType(aType: nsAString); safecall;
    procedure SetType(const aType: nsAString); safecall;
  end;

  nsIDOMHTMLSelectElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9090-15b3-11d2-932e-00805f8add32}']
    procedure GetType(aType: nsAString); safecall;
    function GetSelectedIndex(): PRInt32; safecall;
    procedure SetSelectedIndex(aSelectedIndex: PRInt32); safecall;
    property SelectedIndex: PRInt32 read GetSelectedIndex write SetSelectedIndex;
    procedure GetValue(aValue: nsAString); safecall;
    procedure SetValue(const aValue: nsAString); safecall;
    function GetLength(): PRUint32; safecall;
    procedure SetLength(aLength: PRUint32); safecall;
    property Length: PRUint32 read GetLength write SetLength;
    function GetForm(): nsIDOMHTMLFormElement_safe17; safecall;
    property Form: nsIDOMHTMLFormElement_safe17 read GetForm;
    function GetOptions(): nsIDOMHTMLOptionsCollection_safe17; safecall;
    property Options: nsIDOMHTMLOptionsCollection_safe17 read GetOptions;
    function GetDisabled(): PRBool; safecall;
    procedure SetDisabled(aDisabled: PRBool); safecall;
    property Disabled: PRBool read GetDisabled write SetDisabled;
    function GetMultiple(): PRBool; safecall;
    procedure SetMultiple(aMultiple: PRBool); safecall;
    property Multiple: PRBool read GetMultiple write SetMultiple;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    function GetSize(): PRInt32; safecall;
    procedure SetSize(aSize: PRInt32); safecall;
    property Size: PRInt32 read GetSize write SetSize;
    function GetTabIndex(): PRInt32; safecall;
    procedure SetTabIndex(aTabIndex: PRInt32); safecall;
    property TabIndex: PRInt32 read GetTabIndex write SetTabIndex;
    procedure Add(element: nsIDOMHTMLElement_safe17; before: nsIDOMHTMLElement_safe17); safecall;
    procedure Remove(index: PRInt32); safecall;
    procedure Blur(); safecall;
    procedure Focus(); safecall;
  end;

  nsIDOMHTMLStyleElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf908d-15b3-11d2-932e-00805f8add32}']
    function GetDisabled(): PRBool; safecall;
    procedure SetDisabled(aDisabled: PRBool); safecall;
    property Disabled: PRBool read GetDisabled write SetDisabled;
    procedure GetMedia(aMedia: nsAString); safecall;
    procedure SetMedia(const aMedia: nsAString); safecall;
    procedure GetType(aType: nsAString); safecall;
    procedure SetType(const aType: nsAString); safecall;
  end;

  nsIDOMHTMLTableCaptionElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90b3-15b3-11d2-932e-00805f8add32}']
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
  end;

  nsIDOMHTMLTableCellElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90b7-15b3-11d2-932e-00805f8add32}']
    function GetCellIndex(): PRInt32; safecall;
    property CellIndex: PRInt32 read GetCellIndex;
    procedure GetAbbr(aAbbr: nsAString); safecall;
    procedure SetAbbr(const aAbbr: nsAString); safecall;
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
    procedure GetAxis(aAxis: nsAString); safecall;
    procedure SetAxis(const aAxis: nsAString); safecall;
    procedure GetBgColor(aBgColor: nsAString); safecall;
    procedure SetBgColor(const aBgColor: nsAString); safecall;
    procedure GetCh(aCh: nsAString); safecall;
    procedure SetCh(const aCh: nsAString); safecall;
    procedure GetChOff(aChOff: nsAString); safecall;
    procedure SetChOff(const aChOff: nsAString); safecall;
    function GetColSpan(): PRInt32; safecall;
    procedure SetColSpan(aColSpan: PRInt32); safecall;
    property ColSpan: PRInt32 read GetColSpan write SetColSpan;
    procedure GetHeaders(aHeaders: nsAString); safecall;
    procedure SetHeaders(const aHeaders: nsAString); safecall;
    procedure GetHeight(aHeight: nsAString); safecall;
    procedure SetHeight(const aHeight: nsAString); safecall;
    function GetNoWrap(): PRBool; safecall;
    procedure SetNoWrap(aNoWrap: PRBool); safecall;
    property NoWrap: PRBool read GetNoWrap write SetNoWrap;
    function GetRowSpan(): PRInt32; safecall;
    procedure SetRowSpan(aRowSpan: PRInt32); safecall;
    property RowSpan: PRInt32 read GetRowSpan write SetRowSpan;
    procedure GetScope(aScope: nsAString); safecall;
    procedure SetScope(const aScope: nsAString); safecall;
    procedure GetVAlign(aVAlign: nsAString); safecall;
    procedure SetVAlign(const aVAlign: nsAString); safecall;
    procedure GetWidth(aWidth: nsAString); safecall;
    procedure SetWidth(const aWidth: nsAString); safecall;
  end;

  nsIDOMHTMLTableColElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90b4-15b3-11d2-932e-00805f8add32}']
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
    procedure GetCh(aCh: nsAString); safecall;
    procedure SetCh(const aCh: nsAString); safecall;
    procedure GetChOff(aChOff: nsAString); safecall;
    procedure SetChOff(const aChOff: nsAString); safecall;
    function GetSpan(): PRInt32; safecall;
    procedure SetSpan(aSpan: PRInt32); safecall;
    property Span: PRInt32 read GetSpan write SetSpan;
    procedure GetVAlign(aVAlign: nsAString); safecall;
    procedure SetVAlign(const aVAlign: nsAString); safecall;
    procedure GetWidth(aWidth: nsAString); safecall;
    procedure SetWidth(const aWidth: nsAString); safecall;
  end;

  nsIDOMHTMLTableElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90b2-15b3-11d2-932e-00805f8add32}']
    function GetCaption(): nsIDOMHTMLTableCaptionElement_safe17; safecall;
    procedure SetCaption(aCaption: nsIDOMHTMLTableCaptionElement_safe17); safecall;
    property Caption: nsIDOMHTMLTableCaptionElement_safe17 read GetCaption write SetCaption;
    function GetTHead(): nsIDOMHTMLTableSectionElement_safe17; safecall;
    procedure SetTHead(aTHead: nsIDOMHTMLTableSectionElement_safe17); safecall;
    property THead: nsIDOMHTMLTableSectionElement_safe17 read GetTHead write SetTHead;
    function GetTFoot(): nsIDOMHTMLTableSectionElement_safe17; safecall;
    procedure SetTFoot(aTFoot: nsIDOMHTMLTableSectionElement_safe17); safecall;
    property TFoot: nsIDOMHTMLTableSectionElement_safe17 read GetTFoot write SetTFoot;
    function GetRows(): nsIDOMHTMLCollection_safe17; safecall;
    property Rows: nsIDOMHTMLCollection_safe17 read GetRows;
    function GetTBodies(): nsIDOMHTMLCollection_safe17; safecall;
    property TBodies: nsIDOMHTMLCollection_safe17 read GetTBodies;
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
    procedure GetBgColor(aBgColor: nsAString); safecall;
    procedure SetBgColor(const aBgColor: nsAString); safecall;
    procedure GetBorder(aBorder: nsAString); safecall;
    procedure SetBorder(const aBorder: nsAString); safecall;
    procedure GetCellPadding(aCellPadding: nsAString); safecall;
    procedure SetCellPadding(const aCellPadding: nsAString); safecall;
    procedure GetCellSpacing(aCellSpacing: nsAString); safecall;
    procedure SetCellSpacing(const aCellSpacing: nsAString); safecall;
    procedure GetFrame(aFrame: nsAString); safecall;
    procedure SetFrame(const aFrame: nsAString); safecall;
    procedure GetRules(aRules: nsAString); safecall;
    procedure SetRules(const aRules: nsAString); safecall;
    procedure GetSummary(aSummary: nsAString); safecall;
    procedure SetSummary(const aSummary: nsAString); safecall;
    procedure GetWidth(aWidth: nsAString); safecall;
    procedure SetWidth(const aWidth: nsAString); safecall;
    function CreateTHead(): nsIDOMHTMLElement_safe17; safecall;
    procedure DeleteTHead(); safecall;
    function CreateTFoot(): nsIDOMHTMLElement_safe17; safecall;
    procedure DeleteTFoot(); safecall;
    function CreateCaption(): nsIDOMHTMLElement_safe17; safecall;
    procedure DeleteCaption(); safecall;
    function InsertRow(index: PRInt32): nsIDOMHTMLElement_safe17; safecall;
    procedure DeleteRow(index: PRInt32); safecall;
  end;

  nsIDOMHTMLTableRowElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90b6-15b3-11d2-932e-00805f8add32}']
    function GetRowIndex(): PRInt32; safecall;
    property RowIndex: PRInt32 read GetRowIndex;
    function GetSectionRowIndex(): PRInt32; safecall;
    property SectionRowIndex: PRInt32 read GetSectionRowIndex;
    function GetCells(): nsIDOMHTMLCollection_safe17; safecall;
    property Cells: nsIDOMHTMLCollection_safe17 read GetCells;
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
    procedure GetBgColor(aBgColor: nsAString); safecall;
    procedure SetBgColor(const aBgColor: nsAString); safecall;
    procedure GetCh(aCh: nsAString); safecall;
    procedure SetCh(const aCh: nsAString); safecall;
    procedure GetChOff(aChOff: nsAString); safecall;
    procedure SetChOff(const aChOff: nsAString); safecall;
    procedure GetVAlign(aVAlign: nsAString); safecall;
    procedure SetVAlign(const aVAlign: nsAString); safecall;
    function InsertCell(index: PRInt32): nsIDOMHTMLElement_safe17; safecall;
    procedure DeleteCell(index: PRInt32); safecall;
  end;

  nsIDOMHTMLTableSectionElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf90b5-15b3-11d2-932e-00805f8add32}']
    procedure GetAlign(aAlign: nsAString); safecall;
    procedure SetAlign(const aAlign: nsAString); safecall;
    procedure GetCh(aCh: nsAString); safecall;
    procedure SetCh(const aCh: nsAString); safecall;
    procedure GetChOff(aChOff: nsAString); safecall;
    procedure SetChOff(const aChOff: nsAString); safecall;
    procedure GetVAlign(aVAlign: nsAString); safecall;
    procedure SetVAlign(const aVAlign: nsAString); safecall;
    function GetRows(): nsIDOMHTMLCollection_safe17; safecall;
    property Rows: nsIDOMHTMLCollection_safe17 read GetRows;
    function InsertRow(index: PRInt32): nsIDOMHTMLElement_safe17; safecall;
    procedure DeleteRow(index: PRInt32); safecall;
  end;

  nsIDOMHTMLTextAreaElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9094-15b3-11d2-932e-00805f8add32}']
    procedure GetDefaultValue(aDefaultValue: nsAString); safecall;
    procedure SetDefaultValue(const aDefaultValue: nsAString); safecall;
    function GetForm(): nsIDOMHTMLFormElement_safe17; safecall;
    property Form: nsIDOMHTMLFormElement_safe17 read GetForm;
    procedure GetAccessKey(aAccessKey: nsAString); safecall;
    procedure SetAccessKey(const aAccessKey: nsAString); safecall;
    function GetCols(): PRInt32; safecall;
    procedure SetCols(aCols: PRInt32); safecall;
    property Cols: PRInt32 read GetCols write SetCols;
    function GetDisabled(): PRBool; safecall;
    procedure SetDisabled(aDisabled: PRBool); safecall;
    property Disabled: PRBool read GetDisabled write SetDisabled;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    function GetReadOnly(): PRBool; safecall;
    procedure SetReadOnly(aReadOnly: PRBool); safecall;
    property ReadOnly: PRBool read GetReadOnly write SetReadOnly;
    function GetRows(): PRInt32; safecall;
    procedure SetRows(aRows: PRInt32); safecall;
    property Rows: PRInt32 read GetRows write SetRows;
    function GetTabIndex(): PRInt32; safecall;
    procedure SetTabIndex(aTabIndex: PRInt32); safecall;
    property TabIndex: PRInt32 read GetTabIndex write SetTabIndex;
    procedure GetType(aType: nsAString); safecall;
    procedure GetValue(aValue: nsAString); safecall;
    procedure SetValue(const aValue: nsAString); safecall;
    procedure Blur(); safecall;
    procedure Focus(); safecall;
    procedure Select(); safecall;
  end;

  nsIDOMHTMLTitleElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9089-15b3-11d2-932e-00805f8add32}']
    procedure GetText(aText: nsAString); safecall;
    procedure SetText(const aText: nsAString); safecall;
  end;

  nsIDOMHTMLUListElement_safe17 = interface(nsIDOMHTMLElement_safe17)
  ['{a6cf9099-15b3-11d2-932e-00805f8add32}']
    function GetCompact(): PRBool; safecall;
    procedure SetCompact(aCompact: PRBool); safecall;
    property Compact: PRBool read GetCompact write SetCompact;
    procedure GetType(aType: nsAString); safecall;
    procedure SetType(const aType: nsAString); safecall;
  end;

  nsIDOMMediaList_safe17 = interface(nsISupports_safe17)
  ['{9b0c2ed7-111c-4824-adf9-ef0da6dad371}']
    procedure GetMediaText(aMediaText: nsAString); safecall;
    procedure SetMediaText(const aMediaText: nsAString); safecall;
    function GetLength(): PRUint32; safecall;
    property Length: PRUint32 read GetLength;
    procedure Item(index: PRUint32; _retval: nsAString); safecall;
    procedure DeleteMedium(const oldMedium: nsAString); safecall;
    procedure AppendMedium(const newMedium: nsAString); safecall;
  end;

  nsIDOMUIEvent_safe17 = interface(nsIDOMEvent_safe17)
  ['{a6cf90c3-15b3-11d2-932e-00805f8add32}']
    function GetView(): nsIDOMAbstractView_safe17; safecall;
    property View: nsIDOMAbstractView_safe17 read GetView;
    function GetDetail(): PRInt32; safecall;
    property Detail: PRInt32 read GetDetail;
    procedure InitUIEvent(const typeArg: nsAString; canBubbleArg: PRBool; cancelableArg: PRBool; viewArg: nsIDOMAbstractView_safe17; detailArg: PRInt32); safecall;
  end;

  nsIDOMMouseEvent_safe17 = interface(nsIDOMUIEvent_safe17)
  ['{ff751edc-8b02-aae7-0010-8301838a3123}']
    function GetScreenX(): PRInt32; safecall;
    property ScreenX: PRInt32 read GetScreenX;
    function GetScreenY(): PRInt32; safecall;
    property ScreenY: PRInt32 read GetScreenY;
    function GetClientX(): PRInt32; safecall;
    property ClientX: PRInt32 read GetClientX;
    function GetClientY(): PRInt32; safecall;
    property ClientY: PRInt32 read GetClientY;
    function GetCtrlKey(): PRBool; safecall;
    property CtrlKey: PRBool read GetCtrlKey;
    function GetShiftKey(): PRBool; safecall;
    property ShiftKey: PRBool read GetShiftKey;
    function GetAltKey(): PRBool; safecall;
    property AltKey: PRBool read GetAltKey;
    function GetMetaKey(): PRBool; safecall;
    property MetaKey: PRBool read GetMetaKey;
    function GetButton(): PRUint16; safecall;
    property Button: PRUint16 read GetButton;
    function GetRelatedTarget(): nsIDOMEventTarget_safe17; safecall;
    property RelatedTarget: nsIDOMEventTarget_safe17 read GetRelatedTarget;
    procedure InitMouseEvent(const typeArg: nsAString; canBubbleArg: PRBool; cancelableArg: PRBool; viewArg: nsIDOMAbstractView_safe17; detailArg: PRInt32; screenXArg: PRInt32; screenYArg: PRInt32; clientXArg: PRInt32; clientYArg: PRInt32; ctrlKeyArg: PRBool; altKeyArg: PRBool; shiftKeyArg: PRBool; metaKeyArg: PRBool; buttonArg: PRUint16; relatedTargetArg: nsIDOMEventTarget_safe17); safecall;
  end;

  nsIDOMNamedNodeMap_safe17 = interface(nsISupports_safe17)
  ['{a6cf907b-15b3-11d2-932e-00805f8add32}']
    function GetNamedItem(const name: nsAString): nsIDOMNode_safe17; safecall;
    function SetNamedItem(arg: nsIDOMNode_safe17): nsIDOMNode_safe17; safecall;
    function RemoveNamedItem(const name: nsAString): nsIDOMNode_safe17; safecall;
    function Item(index: PRUint32): nsIDOMNode_safe17; safecall;
    function GetLength(): PRUint32; safecall;
    property Length: PRUint32 read GetLength;
    function GetNamedItemNS(const namespaceURI: nsAString; const localName: nsAString): nsIDOMNode_safe17; safecall;
    function SetNamedItemNS(arg: nsIDOMNode_safe17): nsIDOMNode_safe17; safecall;
    function RemoveNamedItemNS(const namespaceURI: nsAString; const localName: nsAString): nsIDOMNode_safe17; safecall;
  end;

  nsIDOMNodeList_safe17 = interface(nsISupports_safe17)
  ['{a6cf907d-15b3-11d2-932e-00805f8add32}']
    function Item(index: PRUint32): nsIDOMNode_safe17; safecall;
    function GetLength(): PRUint32; safecall;
    property Length: PRUint32 read GetLength;
  end;

  nsIDOMNotation_safe17 = interface(nsIDOMNode_safe17)
  ['{a6cf907e-15b3-11d2-932e-00805f8add32}']
    procedure GetPublicId(aPublicId: nsAString); safecall;
    procedure GetSystemId(aSystemId: nsAString); safecall;
  end;

  nsIDOMProcessingInstruction_safe17 = interface(nsIDOMNode_safe17)
  ['{a6cf907f-15b3-11d2-932e-00805f8add32}']
    procedure GetTarget(aTarget: nsAString); safecall;
    procedure GetData(aData: nsAString); safecall;
    procedure SetData(const aData: nsAString); safecall;
  end;

  nsIDOMRange_safe17 = interface(nsISupports_safe17)
  ['{a6cf90ce-15b3-11d2-932e-00805f8add32}']
    function GetStartContainer(): nsIDOMNode_safe17; safecall;
    property StartContainer: nsIDOMNode_safe17 read GetStartContainer;
    function GetStartOffset(): PRInt32; safecall;
    property StartOffset: PRInt32 read GetStartOffset;
    function GetEndContainer(): nsIDOMNode_safe17; safecall;
    property EndContainer: nsIDOMNode_safe17 read GetEndContainer;
    function GetEndOffset(): PRInt32; safecall;
    property EndOffset: PRInt32 read GetEndOffset;
    function GetCollapsed(): PRBool; safecall;
    property Collapsed: PRBool read GetCollapsed;
    function GetCommonAncestorContainer(): nsIDOMNode_safe17; safecall;
    property CommonAncestorContainer: nsIDOMNode_safe17 read GetCommonAncestorContainer;
    procedure SetStart(refNode: nsIDOMNode_safe17; offset: PRInt32); safecall;
    procedure SetEnd(refNode: nsIDOMNode_safe17; offset: PRInt32); safecall;
    procedure SetStartBefore(refNode: nsIDOMNode_safe17); safecall;
    procedure SetStartAfter(refNode: nsIDOMNode_safe17); safecall;
    procedure SetEndBefore(refNode: nsIDOMNode_safe17); safecall;
    procedure SetEndAfter(refNode: nsIDOMNode_safe17); safecall;
    procedure Collapse(toStart: PRBool); safecall;
    procedure SelectNode(refNode: nsIDOMNode_safe17); safecall;
    procedure SelectNodeContents(refNode: nsIDOMNode_safe17); safecall;
    function CompareBoundaryPoints(how: PRUint16; sourceRange: nsIDOMRange_safe17): PRInt16; safecall;
    procedure DeleteContents(); safecall;
    function ExtractContents(): nsIDOMDocumentFragment_safe17; safecall;
    function CloneContents(): nsIDOMDocumentFragment_safe17; safecall;
    procedure InsertNode(newNode: nsIDOMNode_safe17); safecall;
    procedure SurroundContents(newParent: nsIDOMNode_safe17); safecall;
    function CloneRange(): nsIDOMRange_safe17; safecall;
    procedure ToString(_retval: nsAString); safecall;
    procedure Detach(); safecall;
  end;

  nsIDOMRect_safe17 = interface(nsISupports_safe17)
  ['{71735f62-ac5c-4236-9a1f-5ffb280d531c}']
    function GetTop(): nsIDOMCSSPrimitiveValue_safe17; safecall;
    property Top: nsIDOMCSSPrimitiveValue_safe17 read GetTop;
    function GetRight(): nsIDOMCSSPrimitiveValue_safe17; safecall;
    property Right: nsIDOMCSSPrimitiveValue_safe17 read GetRight;
    function GetBottom(): nsIDOMCSSPrimitiveValue_safe17; safecall;
    property Bottom: nsIDOMCSSPrimitiveValue_safe17 read GetBottom;
    function GetLeft(): nsIDOMCSSPrimitiveValue_safe17; safecall;
    property Left: nsIDOMCSSPrimitiveValue_safe17 read GetLeft;
  end;

  nsIDOMRGBColor_safe17 = interface(nsISupports_safe17)
  ['{6aff3102-320d-4986-9790-12316bb87cf9}']
    function GetRed(): nsIDOMCSSPrimitiveValue_safe17; safecall;
    property Red: nsIDOMCSSPrimitiveValue_safe17 read GetRed;
    function GetGreen(): nsIDOMCSSPrimitiveValue_safe17; safecall;
    property Green: nsIDOMCSSPrimitiveValue_safe17 read GetGreen;
    function GetBlue(): nsIDOMCSSPrimitiveValue_safe17; safecall;
    property Blue: nsIDOMCSSPrimitiveValue_safe17 read GetBlue;
  end;

  nsIDOMStyleSheetList_safe17 = interface(nsISupports_safe17)
  ['{a6cf9081-15b3-11d2-932e-00805f8add32}']
    function GetLength(): PRUint32; safecall;
    property Length: PRUint32 read GetLength;
    function Item(index: PRUint32): nsIDOMStyleSheet_safe17; safecall;
  end;

  nsIDOMWindow_safe17 = interface(nsISupports_safe17)
  ['{a6cf906b-15b3-11d2-932e-00805f8add32}']
    function GetDocument(): nsIDOMDocument_safe17; safecall;
    property Document: nsIDOMDocument_safe17 read GetDocument;
    function GetParent(): nsIDOMWindow_safe17; safecall;
    property Parent: nsIDOMWindow_safe17 read GetParent;
    function GetTop(): nsIDOMWindow_safe17; safecall;
    property Top: nsIDOMWindow_safe17 read GetTop;
    function GetScrollbars(): nsIDOMBarProp_safe17; safecall;
    property Scrollbars: nsIDOMBarProp_safe17 read GetScrollbars;
    function GetFrames(): nsIDOMWindowCollection_safe17; safecall;
    property Frames: nsIDOMWindowCollection_safe17 read GetFrames;
    procedure GetName(aName: nsAString); safecall;
    procedure SetName(const aName: nsAString); safecall;
    function GetTextZoom(): Single; safecall;
    procedure SetTextZoom(aTextZoom: Single); safecall;
    property TextZoom: Single read GetTextZoom write SetTextZoom;
    function GetScrollX(): PRInt32; safecall;
    property ScrollX: PRInt32 read GetScrollX;
    function GetScrollY(): PRInt32; safecall;
    property ScrollY: PRInt32 read GetScrollY;
    procedure ScrollTo(xScroll: PRInt32; yScroll: PRInt32); safecall;
    procedure ScrollBy(xScrollDif: PRInt32; yScrollDif: PRInt32); safecall;
    function GetSelection(): nsISelection_safe17; safecall;
    procedure ScrollByLines(numLines: PRInt32); safecall;
    procedure ScrollByPages(numPages: PRInt32); safecall;
    procedure SizeToContent(); safecall;
  end;

  nsIDOMWindow2_safe17 = interface(nsIDOMWindow_safe17)
  ['{65455132-b96a-40ec-adea-52fa22b1028c}']
    function GetWindowRoot(): nsIDOMEventTarget_safe17; safecall;
    property WindowRoot: nsIDOMEventTarget_safe17 read GetWindowRoot;
  end;

  nsIDOMWindowCollection_safe17 = interface(nsISupports_safe17)
  ['{a6cf906f-15b3-11d2-932e-00805f8add32}']
    function GetLength(): PRUint32; safecall;
    property Length: PRUint32 read GetLength;
    function Item(index: PRUint32): nsIDOMWindow_safe17; safecall;
    function NamedItem(const name: nsAString): nsIDOMWindow_safe17; safecall;
  end;

  nsIEmbeddingSiteWindow_safe17 = interface(nsISupports_safe17)
  ['{3e5432cd-9568-4bd1-8cbe-d50aba110743}']
    procedure SetDimensions(flags: PRUint32; x: PRInt32; y: PRInt32; cx: PRInt32; cy: PRInt32); safecall;
    procedure GetDimensions(flags: PRUint32; out x: PRInt32; out y: PRInt32; out cx: PRInt32; out cy: PRInt32); safecall;
    procedure SetFocus(); safecall;
    function GetVisibility(): PRBool; safecall;
    procedure SetVisibility(aVisibility: PRBool); safecall;
    property Visibility: PRBool read GetVisibility write SetVisibility;
    function GetTitle(): PWideChar; safecall;
    procedure SetTitle(const aTitle: PWideChar); safecall;
    property Title: PWideChar read GetTitle write SetTitle;
    function GetSiteWindow(): Pointer; safecall;
    property SiteWindow: Pointer read GetSiteWindow;
  end;

  nsIFactory_safe17 = interface(nsISupports_safe17)
  ['{00000001-0000-0000-c000-000000000046}']
    procedure CreateInstance(aOuter: nsISupports_safe17; const iid: TGUID; out _result); safecall;
    procedure LockFactory(lock: PRBool); safecall;
  end;

  nsIURI_safe17 = interface(nsISupports_safe17)
  ['{07a22cc0-0ce5-11d3-9331-00104ba0fd40}']
    procedure GetSpec(aSpec: nsACString); safecall;
    procedure SetSpec(const aSpec: nsACString); safecall;
    procedure GetPrePath(aPrePath: nsACString); safecall;
    procedure GetScheme(aScheme: nsACString); safecall;
    procedure SetScheme(const aScheme: nsACString); safecall;
    procedure GetUserPass(aUserPass: nsACString); safecall;
    procedure SetUserPass(const aUserPass: nsACString); safecall;
    procedure GetUsername(aUsername: nsACString); safecall;
    procedure SetUsername(const aUsername: nsACString); safecall;
    procedure GetPassword(aPassword: nsACString); safecall;
    procedure SetPassword(const aPassword: nsACString); safecall;
    procedure GetHostPort(aHostPort: nsACString); safecall;
    procedure SetHostPort(const aHostPort: nsACString); safecall;
    procedure GetHost(aHost: nsACString); safecall;
    procedure SetHost(const aHost: nsACString); safecall;
    function GetPort(): PRInt32; safecall;
    procedure SetPort(aPort: PRInt32); safecall;
    property Port: PRInt32 read GetPort write SetPort;
    procedure GetPath(aPath: nsACString); safecall;
    procedure SetPath(const aPath: nsACString); safecall;
    function Equals(other: nsIURI_safe17): PRBool; safecall;
    function SchemeIs(const scheme: PAnsiChar): PRBool; safecall;
    function Clone(): nsIURI_safe17; safecall;
    procedure Resolve(const relativePath: nsACString; _retval: nsACString); safecall;
    procedure GetAsciiSpec(aAsciiSpec: nsACString); safecall;
    procedure GetAsciiHost(aAsciiHost: nsACString); safecall;
    procedure GetOriginCharset(aOriginCharset: nsACString); safecall;
  end;

  nsIURL_safe17 = interface(nsIURI_safe17)
  ['{d6116970-8034-11d3-9399-00104ba0fd40}']
    procedure GetFilePath(aFilePath: nsACString); safecall;
    procedure SetFilePath(const aFilePath: nsACString); safecall;
    procedure GetParam(aParam: nsACString); safecall;
    procedure SetParam(const aParam: nsACString); safecall;
    procedure GetQuery(aQuery: nsACString); safecall;
    procedure SetQuery(const aQuery: nsACString); safecall;
    procedure GetRef(aRef: nsACString); safecall;
    procedure SetRef(const aRef: nsACString); safecall;
    procedure GetDirectory(aDirectory: nsACString); safecall;
    procedure SetDirectory(const aDirectory: nsACString); safecall;
    procedure GetFileName(aFileName: nsACString); safecall;
    procedure SetFileName(const aFileName: nsACString); safecall;
    procedure GetFileBaseName(aFileBaseName: nsACString); safecall;
    procedure SetFileBaseName(const aFileBaseName: nsACString); safecall;
    procedure GetFileExtension(aFileExtension: nsACString); safecall;
    procedure SetFileExtension(const aFileExtension: nsACString); safecall;
    procedure GetCommonBaseSpec(aURIToCompare: nsIURI_safe17; _retval: nsACString); safecall;
    procedure GetRelativeSpec(aURIToCompare: nsIURI_safe17; _retval: nsACString); safecall;
  end;

  nsIFileURL_safe17 = interface(nsIURL_safe17)
  ['{d26b2e2e-1dd1-11b2-88f3-8545a7ba7949}']
    function GetFile(): nsIFile_safe17; safecall;
    procedure SetFile(aFile: nsIFile_safe17); safecall;
    property _File: nsIFile_safe17 read GetFile write SetFile;
  end;

  nsIGlobalHistory_safe17 = interface(nsISupports_safe17)
  ['{9491c383-e3c4-11d2-bdbe-0050040a9b44}']
    procedure AddPage(const aURL: PAnsiChar); safecall;
    function IsVisited(const aURL: PAnsiChar): PRBool; safecall;
  end;

  nsIHistoryEntry_safe17 = interface(nsISupports_safe17)
  ['{a41661d4-1417-11d5-9882-00c04fa02f40}']
    function GetURI(): nsIURI_safe17; safecall;
    property URI: nsIURI_safe17 read GetURI;
    function GetTitle(): PWideChar; safecall;
    property Title: PWideChar read GetTitle;
    function GetIsSubFrame(): PRBool; safecall;
    property IsSubFrame: PRBool read GetIsSubFrame;
  end;

  nsIHttpChannel_safe17 = interface(nsIChannel_safe17)
  ['{9277fe09-f0cc-4cd9-bbce-581dd94b0260}']
    procedure GetRequestMethod(aRequestMethod: nsACString); safecall;
    procedure SetRequestMethod(const aRequestMethod: nsACString); safecall;
    function GetReferrer(): nsIURI_safe17; safecall;
    procedure SetReferrer(aReferrer: nsIURI_safe17); safecall;
    property Referrer: nsIURI_safe17 read GetReferrer write SetReferrer;
    function GetRequestHeader(const aHeader: nsACString): nsACString; safecall;
    procedure SetRequestHeader(const aHeader: nsACString; const aValue: nsACString; aMerge: PRBool); safecall;
    procedure VisitRequestHeaders(aVisitor: nsIHttpHeaderVisitor_safe17); safecall;
    function GetAllowPipelining(): PRBool; safecall;
    procedure SetAllowPipelining(aAllowPipelining: PRBool); safecall;
    property AllowPipelining: PRBool read GetAllowPipelining write SetAllowPipelining;
    function GetRedirectionLimit(): PRUint32; safecall;
    procedure SetRedirectionLimit(aRedirectionLimit: PRUint32); safecall;
    property RedirectionLimit: PRUint32 read GetRedirectionLimit write SetRedirectionLimit;
    function GetResponseStatus(): PRUint32; safecall;
    property ResponseStatus: PRUint32 read GetResponseStatus;
    procedure GetResponseStatusText(aResponseStatusText: nsACString); safecall;
    function GetRequestSucceeded(): PRBool; safecall;
    property RequestSucceeded: PRBool read GetRequestSucceeded;
    function GetResponseHeader(const header: nsACString): nsACString; safecall;
    procedure SetResponseHeader(const header: nsACString; const value: nsACString; merge: PRBool); safecall;
    procedure VisitResponseHeaders(aVisitor: nsIHttpHeaderVisitor_safe17); safecall;
    function IsNoStoreResponse(): PRBool; safecall;
    function IsNoCacheResponse(): PRBool; safecall;
  end;

  nsIHttpHeaderVisitor_safe17 = interface(nsISupports_safe17)
  ['{0cf40717-d7c1-4a94-8c1e-d6c9734101bb}']
    procedure VisitHeader(const aHeader: nsACString; const aValue: nsACString); safecall;
  end;

  nsIInputStream_safe17 = interface(nsISupports_safe17)
  ['{fa9c7f6c-61b3-11d4-9877-00c04fa0cf4a}']
    procedure Close(); safecall;
    function Available(): PRUint32; safecall;
    function Read(aBuf: Pchar; aCount: PRUint32): PRUint32; safecall;
    function ReadSegments(aWriter: nsWriteSegmentFun; aClosure: Pointer; aCount: PRUint32): PRUint32; safecall;
    function IsNonBlocking(): PRBool; safecall;
  end;

  nsIInterfaceRequestor_safe17 = interface(nsISupports_safe17)
  ['{033a1470-8b2a-11d3-af88-00a024ffc08c}']
    procedure GetInterface(const uuid: TGUID; out _result); safecall;
  end;

  nsIIOService_safe17 = interface(nsISupports_safe17)
  ['{bddeda3f-9020-4d12-8c70-984ee9f7935e}']
    function GetProtocolHandler(const aScheme: PAnsiChar): nsIProtocolHandler_safe17; safecall;
    function GetProtocolFlags(const aScheme: PAnsiChar): PRUint32; safecall;
    function NewURI(const aSpec: nsACString; const aOriginCharset: PAnsiChar; aBaseURI: nsIURI_safe17): nsIURI_safe17; safecall;
    function NewFileURI(aFile: nsIFile_safe17): nsIURI_safe17; safecall;
    function NewChannelFromURI(aURI: nsIURI_safe17): nsIChannel_safe17; safecall;
    function NewChannel(const aSpec: nsACString; const aOriginCharset: PAnsiChar; aBaseURI: nsIURI_safe17): nsIChannel_safe17; safecall;
    function GetOffline(): PRBool; safecall;
    procedure SetOffline(aOffline: PRBool); safecall;
    property Offline: PRBool read GetOffline write SetOffline;
    function AllowPort(aPort: PRInt32; const aScheme: PAnsiChar): PRBool; safecall;
    function ExtractScheme(const urlString: nsACString): nsACString; safecall;
  end;

  nsILoadGroup_safe17 = interface(nsIRequest_safe17)
  ['{3de0a31c-feaf-400f-9f1e-4ef71f8b20cc}']
    function GetGroupObserver(): nsIRequestObserver_safe17; safecall;
    procedure SetGroupObserver(aGroupObserver: nsIRequestObserver_safe17); safecall;
    property GroupObserver: nsIRequestObserver_safe17 read GetGroupObserver write SetGroupObserver;
    function GetDefaultLoadRequest(): nsIRequest_safe17; safecall;
    procedure SetDefaultLoadRequest(aDefaultLoadRequest: nsIRequest_safe17); safecall;
    property DefaultLoadRequest: nsIRequest_safe17 read GetDefaultLoadRequest write SetDefaultLoadRequest;
    procedure AddRequest(aRequest: nsIRequest_safe17; aContext: nsISupports_safe17); safecall;
    procedure RemoveRequest(aRequest: nsIRequest_safe17; aContext: nsISupports_safe17; aStatus: nsresult); safecall;
    function GetRequests(): nsISimpleEnumerator_safe17; safecall;
    property Requests: nsISimpleEnumerator_safe17 read GetRequests;
    function GetActiveCount(): PRUint32; safecall;
    property ActiveCount: PRUint32 read GetActiveCount;
    function GetNotificationCallbacks(): nsIInterfaceRequestor_safe17; safecall;
    procedure SetNotificationCallbacks(aNotificationCallbacks: nsIInterfaceRequestor_safe17); safecall;
    property NotificationCallbacks: nsIInterfaceRequestor_safe17 read GetNotificationCallbacks write SetNotificationCallbacks;
  end;

  nsILocalFile_safe17 = interface(nsIFile_safe17)
  ['{aa610f20-a889-11d3-8c81-000064657374}']
    procedure InitWithPath(const filePath: nsAString); safecall;
    procedure InitWithNativePath(const filePath: nsACString); safecall;
    procedure InitWithFile(aFile: nsILocalFile_safe17); safecall;
    function GetFollowLinks(): PRBool; safecall;
    procedure SetFollowLinks(aFollowLinks: PRBool); safecall;
    property FollowLinks: PRBool read GetFollowLinks write SetFollowLinks;
    function OpenNSPRFileDesc(flags: PRInt32; mode: PRInt32): PPRFileDesc; safecall;
    function OpenANSIFileDesc(const mode: PAnsiChar): PFILE; safecall;
    function Load(): PPRLibrary; safecall;
    function GetDiskSpaceAvailable(): PRInt64; safecall;
    property DiskSpaceAvailable: PRInt64 read GetDiskSpaceAvailable;
    procedure AppendRelativePath(const relativeFilePath: nsAString); safecall;
    procedure AppendRelativeNativePath(const relativeFilePath: nsACString); safecall;
    procedure GetPersistentDescriptor(aPersistentDescriptor: nsACString); safecall;
    procedure SetPersistentDescriptor(const aPersistentDescriptor: nsACString); safecall;
    procedure Reveal(); safecall;
    procedure Launch(); safecall;
    function GetRelativeDescriptor(fromFile: nsILocalFile_safe17): nsACString; safecall;
    procedure SetRelativeDescriptor(fromFile: nsILocalFile_safe17; const relativeDesc: nsACString); safecall;
  end;

  nsIMemory_safe17 = interface(nsISupports_safe17)
  ['{59e7e77a-38e4-11d4-8cf5-0060b0fc14a3}']
    function Alloc(size: size_t): Pointer; stdcall;
    function Realloc(ptr: Pointer; newSize: size_t): Pointer; stdcall;
    procedure Free(ptr: Pointer); stdcall;
    procedure HeapMinimize(immediate: PRBool); safecall;
    function IsLowMemory(): PRBool; safecall;
  end;

  nsIModule_safe17 = interface(nsISupports_safe17)
  ['{7392d032-5371-11d3-994e-00805fd26fee}']
    procedure GetClassObject(aCompMgr: nsIComponentManager_safe17; const aClass: TGUID; const aIID: TGUID; out aResult); safecall;
    procedure RegisterSelf(aCompMgr: nsIComponentManager_safe17; aLocation: nsIFile_safe17; const aLoaderStr: PAnsiChar; const aType: PAnsiChar); safecall;
    procedure UnregisterSelf(aCompMgr: nsIComponentManager_safe17; aLocation: nsIFile_safe17; const aLoaderStr: PAnsiChar); safecall;
    function CanUnload(aCompMgr: nsIComponentManager_safe17): PRBool; safecall;
  end;

  nsIObserver_safe17 = interface(nsISupports_safe17)
  ['{db242e01-e4d9-11d2-9dde-000064657374}']
    procedure Observe(aSubject: nsISupports_safe17; const aTopic: PAnsiChar; const aData: PWideChar); safecall;
  end;

  nsIObserverService_safe17 = interface(nsISupports_safe17)
  ['{d07f5192-e3d1-11d2-8acd-00105a1b8860}']
    procedure AddObserver(anObserver: nsIObserver_safe17; const aTopic: PAnsiChar; ownsWeak: PRBool); safecall;
    procedure RemoveObserver(anObserver: nsIObserver_safe17; const aTopic: PAnsiChar); safecall;
    procedure NotifyObservers(aSubject: nsISupports_safe17; const aTopic: PAnsiChar; const someData: PWideChar); safecall;
    function EnumerateObservers(const aTopic: PAnsiChar): nsISimpleEnumerator_safe17; safecall;
  end;

  nsIOutputStream_safe17 = interface(nsISupports_safe17)
  ['{0d0acd2a-61b4-11d4-9877-00c04fa0cf4a}']
    procedure Close(); safecall;
    procedure Flush(); safecall;
    function Write(const aBuf: PAnsiChar; aCount: PRUint32): PRUint32; safecall;
    function WriteFrom(aFromStream: nsIInputStream_safe17; aCount: PRUint32): PRUint32; safecall;
    function WriteSegments(aReader: nsReadSegmentFun; aClosure: Pointer; aCount: PRUint32): PRUint32; safecall;
    function IsNonBlocking(): PRBool; safecall;
  end;

  nsIPassword_safe17 = interface(nsISupports_safe17)
  ['{cf39c2b0-1e4b-11d5-a549-0010a401eb10}']
    procedure GetHost(aHost: nsACString); safecall;
    procedure GetUser(aUser: nsAString); safecall;
    procedure GetPassword(aPassword: nsAString); safecall;
  end;

  nsIPrefBranch_safe17 = interface(nsISupports_safe17)
  ['{56c35506-f14b-11d3-99d3-ddbfac2ccf65}']
    function GetRoot(): PAnsiChar; safecall;
    property Root: PAnsiChar read GetRoot;
    function GetPrefType(const aPrefName: PAnsiChar): PRInt32; safecall;
    function GetBoolPref(const aPrefName: PAnsiChar): PRBool; safecall;
    procedure SetBoolPref(const aPrefName: PAnsiChar; aValue: PRInt32); safecall;
    function GetCharPref(const aPrefName: PAnsiChar): PAnsiChar; safecall;
    procedure SetCharPref(const aPrefName: PAnsiChar; const aValue: PAnsiChar); safecall;
    function GetIntPref(const aPrefName: PAnsiChar): PRInt32; safecall;
    procedure SetIntPref(const aPrefName: PAnsiChar; aValue: PRInt32); safecall;
    procedure GetComplexValue(const aPrefName: PAnsiChar; const aType: TGUID; out aValue); safecall;
    procedure SetComplexValue(const aPrefName: PAnsiChar; const aType: TGUID; aValue: nsISupports_safe17); safecall;
    procedure ClearUserPref(const aPrefName: PAnsiChar); safecall;
    procedure LockPref(const aPrefName: PAnsiChar); safecall;
    function PrefHasUserValue(const aPrefName: PAnsiChar): PRBool; safecall;
    function PrefIsLocked(const aPrefName: PAnsiChar): PRBool; safecall;
    procedure UnlockPref(const aPrefName: PAnsiChar); safecall;
    procedure DeleteBranch(const aStartingAt: PAnsiChar); safecall;
    procedure GetChildList(const aStartingAt: PAnsiChar; out aCount: PRUint32; out aChildArray_array); safecall;
    procedure ResetBranch(const aStartingAt: PAnsiChar); safecall;
  end;

  nsIPrefLocalizedString_safe17 = interface(nsISupports_safe17)
  ['{ae419e24-1dd1-11b2-b39a-d3e5e7073802}']
    function GetData(): PWideChar; safecall;
    procedure SetData(const aData: PWideChar); safecall;
    property Data: PWideChar read GetData write SetData;
    function ToString(): PWideChar; safecall;
    procedure SetDataWithLength(length: PRUint32; const data: PWideChar); safecall;
  end;

  nsIPrefService_safe17 = interface(nsISupports_safe17)
  ['{decb9cc7-c08f-4ea5-be91-a8fc637ce2d2}']
    procedure ReadUserPrefs(aFile: nsIFile_safe17); safecall;
    procedure ResetPrefs(); safecall;
    procedure ResetUserPrefs(); safecall;
    procedure SavePrefFile(aFile: nsIFile_safe17); safecall;
    function GetBranch(const aPrefRoot: PAnsiChar): nsIPrefBranch_safe17; safecall;
    function GetDefaultBranch(const aPrefRoot: PAnsiChar): nsIPrefBranch_safe17; safecall;
  end;

  nsIPrintSession_safe17 = interface(nsISupports_safe17)
  ['{2f977d52-5485-11d4-87e2-0010a4e75ef2}']
  end;

  nsIPrintSettings_safe17 = interface(nsISupports_safe17)
  ['{83427530-f790-11d4-a869-00105a183419}']
    procedure SetPrintOptions(aType: PRInt32; aTurnOnOff: PRBool); safecall;
    function GetPrintOptions(aType: PRInt32): PRBool; safecall;
    function GetPrintOptionsBits(): PRInt32; safecall;
    procedure GetPageSizeInTwips(out aWidth: PRInt32; out aHeight: PRInt32); safecall;
    function Clone(): nsIPrintSettings_safe17; safecall;
    procedure Assign(aPS: nsIPrintSettings_safe17); safecall;
    function GetPrintSession(): nsIPrintSession_safe17; safecall;
    procedure SetPrintSession(aPrintSession: nsIPrintSession_safe17); safecall;
    property PrintSession: nsIPrintSession_safe17 read GetPrintSession write SetPrintSession;
    function GetStartPageRange(): PRInt32; safecall;
    procedure SetStartPageRange(aStartPageRange: PRInt32); safecall;
    property StartPageRange: PRInt32 read GetStartPageRange write SetStartPageRange;
    function GetEndPageRange(): PRInt32; safecall;
    procedure SetEndPageRange(aEndPageRange: PRInt32); safecall;
    property EndPageRange: PRInt32 read GetEndPageRange write SetEndPageRange;
    function GetMarginTop(): Double; safecall;
    procedure SetMarginTop(aMarginTop: Double); safecall;
    property MarginTop: Double read GetMarginTop write SetMarginTop;
    function GetMarginLeft(): Double; safecall;
    procedure SetMarginLeft(aMarginLeft: Double); safecall;
    property MarginLeft: Double read GetMarginLeft write SetMarginLeft;
    function GetMarginBottom(): Double; safecall;
    procedure SetMarginBottom(aMarginBottom: Double); safecall;
    property MarginBottom: Double read GetMarginBottom write SetMarginBottom;
    function GetMarginRight(): Double; safecall;
    procedure SetMarginRight(aMarginRight: Double); safecall;
    property MarginRight: Double read GetMarginRight write SetMarginRight;
    function GetScaling(): Double; safecall;
    procedure SetScaling(aScaling: Double); safecall;
    property Scaling: Double read GetScaling write SetScaling;
    function GetPrintBGColors(): PRBool; safecall;
    procedure SetPrintBGColors(aPrintBGColors: PRBool); safecall;
    property PrintBGColors: PRBool read GetPrintBGColors write SetPrintBGColors;
    function GetPrintBGImages(): PRBool; safecall;
    procedure SetPrintBGImages(aPrintBGImages: PRBool); safecall;
    property PrintBGImages: PRBool read GetPrintBGImages write SetPrintBGImages;
    function GetPrintRange(): PRInt16; safecall;
    procedure SetPrintRange(aPrintRange: PRInt16); safecall;
    property PrintRange: PRInt16 read GetPrintRange write SetPrintRange;
    function GetTitle(): PWideChar; safecall;
    procedure SetTitle(const aTitle: PWideChar); safecall;
    property Title: PWideChar read GetTitle write SetTitle;
    function GetDocURL(): PWideChar; safecall;
    procedure SetDocURL(const aDocURL: PWideChar); safecall;
    property DocURL: PWideChar read GetDocURL write SetDocURL;
    function GetHeaderStrLeft(): PWideChar; safecall;
    procedure SetHeaderStrLeft(const aHeaderStrLeft: PWideChar); safecall;
    property HeaderStrLeft: PWideChar read GetHeaderStrLeft write SetHeaderStrLeft;
    function GetHeaderStrCenter(): PWideChar; safecall;
    procedure SetHeaderStrCenter(const aHeaderStrCenter: PWideChar); safecall;
    property HeaderStrCenter: PWideChar read GetHeaderStrCenter write SetHeaderStrCenter;
    function GetHeaderStrRight(): PWideChar; safecall;
    procedure SetHeaderStrRight(const aHeaderStrRight: PWideChar); safecall;
    property HeaderStrRight: PWideChar read GetHeaderStrRight write SetHeaderStrRight;
    function GetFooterStrLeft(): PWideChar; safecall;
    procedure SetFooterStrLeft(const aFooterStrLeft: PWideChar); safecall;
    property FooterStrLeft: PWideChar read GetFooterStrLeft write SetFooterStrLeft;
    function GetFooterStrCenter(): PWideChar; safecall;
    procedure SetFooterStrCenter(const aFooterStrCenter: PWideChar); safecall;
    property FooterStrCenter: PWideChar read GetFooterStrCenter write SetFooterStrCenter;
    function GetFooterStrRight(): PWideChar; safecall;
    procedure SetFooterStrRight(const aFooterStrRight: PWideChar); safecall;
    property FooterStrRight: PWideChar read GetFooterStrRight write SetFooterStrRight;
    function GetHowToEnableFrameUI(): PRInt16; safecall;
    procedure SetHowToEnableFrameUI(aHowToEnableFrameUI: PRInt16); safecall;
    property HowToEnableFrameUI: PRInt16 read GetHowToEnableFrameUI write SetHowToEnableFrameUI;
    function GetIsCancelled(): PRBool; safecall;
    procedure SetIsCancelled(aIsCancelled: PRBool); safecall;
    property IsCancelled: PRBool read GetIsCancelled write SetIsCancelled;
    function GetPrintFrameTypeUsage(): PRInt16; safecall;
    procedure SetPrintFrameTypeUsage(aPrintFrameTypeUsage: PRInt16); safecall;
    property PrintFrameTypeUsage: PRInt16 read GetPrintFrameTypeUsage write SetPrintFrameTypeUsage;
    function GetPrintFrameType(): PRInt16; safecall;
    procedure SetPrintFrameType(aPrintFrameType: PRInt16); safecall;
    property PrintFrameType: PRInt16 read GetPrintFrameType write SetPrintFrameType;
    function GetPrintSilent(): PRBool; safecall;
    procedure SetPrintSilent(aPrintSilent: PRBool); safecall;
    property PrintSilent: PRBool read GetPrintSilent write SetPrintSilent;
    function GetShrinkToFit(): PRBool; safecall;
    procedure SetShrinkToFit(aShrinkToFit: PRBool); safecall;
    property ShrinkToFit: PRBool read GetShrinkToFit write SetShrinkToFit;
    function GetShowPrintProgress(): PRBool; safecall;
    procedure SetShowPrintProgress(aShowPrintProgress: PRBool); safecall;
    property ShowPrintProgress: PRBool read GetShowPrintProgress write SetShowPrintProgress;
    function GetPaperName(): PWideChar; safecall;
    procedure SetPaperName(const aPaperName: PWideChar); safecall;
    property PaperName: PWideChar read GetPaperName write SetPaperName;
    function GetPaperSizeType(): PRInt16; safecall;
    procedure SetPaperSizeType(aPaperSizeType: PRInt16); safecall;
    property PaperSizeType: PRInt16 read GetPaperSizeType write SetPaperSizeType;
    function GetPaperData(): PRInt16; safecall;
    procedure SetPaperData(aPaperData: PRInt16); safecall;
    property PaperData: PRInt16 read GetPaperData write SetPaperData;
    function GetPaperWidth(): Double; safecall;
    procedure SetPaperWidth(aPaperWidth: Double); safecall;
    property PaperWidth: Double read GetPaperWidth write SetPaperWidth;
    function GetPaperHeight(): Double; safecall;
    procedure SetPaperHeight(aPaperHeight: Double); safecall;
    property PaperHeight: Double read GetPaperHeight write SetPaperHeight;
    function GetPaperSizeUnit(): PRInt16; safecall;
    procedure SetPaperSizeUnit(aPaperSizeUnit: PRInt16); safecall;
    property PaperSizeUnit: PRInt16 read GetPaperSizeUnit write SetPaperSizeUnit;
    function GetPlexName(): PWideChar; safecall;
    procedure SetPlexName(const aPlexName: PWideChar); safecall;
    property PlexName: PWideChar read GetPlexName write SetPlexName;
    function GetPrintReversed(): PRBool; safecall;
    procedure SetPrintReversed(aPrintReversed: PRBool); safecall;
    property PrintReversed: PRBool read GetPrintReversed write SetPrintReversed;
    function GetPrintInColor(): PRBool; safecall;
    procedure SetPrintInColor(aPrintInColor: PRBool); safecall;
    property PrintInColor: PRBool read GetPrintInColor write SetPrintInColor;
    function GetPaperSize(): PRInt32; safecall;
    procedure SetPaperSize(aPaperSize: PRInt32); safecall;
    property PaperSize: PRInt32 read GetPaperSize write SetPaperSize;
    function GetOrientation(): PRInt32; safecall;
    procedure SetOrientation(aOrientation: PRInt32); safecall;
    property Orientation: PRInt32 read GetOrientation write SetOrientation;
    function GetPrintCommand(): PWideChar; safecall;
    procedure SetPrintCommand(const aPrintCommand: PWideChar); safecall;
    property PrintCommand: PWideChar read GetPrintCommand write SetPrintCommand;
    function GetNumCopies(): PRInt32; safecall;
    procedure SetNumCopies(aNumCopies: PRInt32); safecall;
    property NumCopies: PRInt32 read GetNumCopies write SetNumCopies;
    function GetPrinterName(): PWideChar; safecall;
    procedure SetPrinterName(const aPrinterName: PWideChar); safecall;
    property PrinterName: PWideChar read GetPrinterName write SetPrinterName;
    function GetPrintToFile(): PRBool; safecall;
    procedure SetPrintToFile(aPrintToFile: PRBool); safecall;
    property PrintToFile: PRBool read GetPrintToFile write SetPrintToFile;
    function GetToFileName(): PWideChar; safecall;
    procedure SetToFileName(const aToFileName: PWideChar); safecall;
    property ToFileName: PWideChar read GetToFileName write SetToFileName;
    function GetPrintPageDelay(): PRInt32; safecall;
    procedure SetPrintPageDelay(aPrintPageDelay: PRInt32); safecall;
    property PrintPageDelay: PRInt32 read GetPrintPageDelay write SetPrintPageDelay;
    function GetIsInitializedFromPrinter(): PRBool; safecall;
    procedure SetIsInitializedFromPrinter(aIsInitializedFromPrinter: PRBool); safecall;
    property IsInitializedFromPrinter: PRBool read GetIsInitializedFromPrinter write SetIsInitializedFromPrinter;
    function GetIsInitializedFromPrefs(): PRBool; safecall;
    procedure SetIsInitializedFromPrefs(aIsInitializedFromPrefs: PRBool); safecall;
    property IsInitializedFromPrefs: PRBool read GetIsInitializedFromPrefs write SetIsInitializedFromPrefs;
    procedure SetMarginInTwips(var aMargin: nsMargin); safecall;
    procedure GetMarginInTwips(var aMargin: nsMargin); safecall;
  end;

  nsIProfile_safe17 = interface(nsISupports_safe17)
  ['{02b0625a-e7f3-11d2-9f5a-006008a6efe9}']
    function GetProfileCount(): PRInt32; safecall;
    property ProfileCount: PRInt32 read GetProfileCount;
    procedure GetProfileList(out length: PRUint32; out profileNames_array); safecall;
    function ProfileExists(const profileName: PWideChar): PRBool; safecall;
    function GetCurrentProfile(): PWideChar; safecall;
    procedure SetCurrentProfile(const aCurrentProfile: PWideChar); safecall;
    property CurrentProfile: PWideChar read GetCurrentProfile write SetCurrentProfile;
    procedure ShutDownCurrentProfile(shutDownType: PRUint32); safecall;
    procedure CreateNewProfile(const profileName: PWideChar; const nativeProfileDir: PWideChar; const langcode: PWideChar; useExistingDir: PRBool); safecall;
    procedure RenameProfile(const oldName: PWideChar; const newName: PWideChar); safecall;
    procedure DeleteProfile(const name: PWideChar; canDeleteFiles: PRBool); safecall;
    procedure CloneProfile(const profileName: PWideChar); safecall;
  end;

  nsIProfileChangeStatus_safe17 = interface(nsISupports_safe17)
  ['{2f977d43-5485-11d4-87e2-0010a4e75ef2}']
    procedure VetoChange(); safecall;
    procedure ChangeFailed(); safecall;
  end;

  nsIPrompt_safe17 = interface(nsISupports_safe17)
  ['{a63f70c0-148b-11d3-9333-00104ba0fd40}']
    procedure Alert(const dialogTitle: PWideChar; const text: PWideChar); safecall;
    procedure AlertCheck(const dialogTitle: PWideChar; const text: PWideChar; const checkMsg: PWideChar; out checkValue: PRBool); safecall;
    function Confirm(const dialogTitle: PWideChar; const text: PWideChar): PRBool; safecall;
    function ConfirmCheck(const dialogTitle: PWideChar; const text: PWideChar; const checkMsg: PWideChar; out checkValue: PRBool): PRBool; safecall;
    function ConfirmEx(const dialogTitle: PWideChar; const text: PWideChar; buttonFlags: PRUint32; const button0Title: PWideChar; const button1Title: PWideChar; const button2Title: PWideChar; const checkMsg: PWideChar; out checkValue: PRBool): PRInt32; safecall;
    function Prompt(const dialogTitle: PWideChar; const text: PWideChar; out value: PWideChar; const checkMsg: PWideChar; out checkValue: PRBool): PRBool; safecall;
    function PromptPassword(const dialogTitle: PWideChar; const text: PWideChar; out password: PWideChar; const checkMsg: PWideChar; out checkValue: PRBool): PRBool; safecall;
    function PromptUsernameAndPassword(const dialogTitle: PWideChar; const text: PWideChar; out username: PWideChar; out password: PWideChar; const checkMsg: PWideChar; out checkValue: PRBool): PRBool; safecall;
    function Select(const dialogTitle: PWideChar; const text: PWideChar; count: PRUint32; const selectList_array; out outSelection: PRInt32): PRBool; safecall;
  end;

  nsIPromptService_safe17 = interface(nsISupports_safe17)
  ['{1630c61a-325e-49ca-8759-a31b16c47aa5}']
    procedure Alert(aParent: nsIDOMWindow_safe17; const aDialogTitle: PWideChar; const aText: PWideChar); safecall;
    procedure AlertCheck(aParent: nsIDOMWindow_safe17; const aDialogTitle: PWideChar; const aText: PWideChar; const aCheckMsg: PWideChar; out aCheckState: PRBool); safecall;
    function Confirm(aParent: nsIDOMWindow_safe17; const aDialogTitle: PWideChar; const aText: PWideChar): PRBool; safecall;
    function ConfirmCheck(aParent: nsIDOMWindow_safe17; const aDialogTitle: PWideChar; const aText: PWideChar; const aCheckMsg: PWideChar; out aCheckState: PRBool): PRBool; safecall;
    function ConfirmEx(aParent: nsIDOMWindow_safe17; const aDialogTitle: PWideChar; const aText: PWideChar; aButtonFlags: PRUint32; const aButton0Title: PWideChar; const aButton1Title: PWideChar; const aButton2Title: PWideChar; const aCheckMsg: PWideChar; out aCheckState: PRBool): PRInt32; safecall;
    function Prompt(aParent: nsIDOMWindow_safe17; const aDialogTitle: PWideChar; const aText: PWideChar; out aValue: PWideChar; const aCheckMsg: PWideChar; out aCheckState: PRBool): PRBool; safecall;
    function PromptUsernameAndPassword(aParent: nsIDOMWindow_safe17; const aDialogTitle: PWideChar; const aText: PWideChar; out aUsername: PWideChar; out aPassword: PWideChar; const aCheckMsg: PWideChar; out aCheckState: PRBool): PRBool; safecall;
    function PromptPassword(aParent: nsIDOMWindow_safe17; const aDialogTitle: PWideChar; const aText: PWideChar; out aPassword: PWideChar; const aCheckMsg: PWideChar; out aCheckState: PRBool): PRBool; safecall;
    function Select(aParent: nsIDOMWindow_safe17; const aDialogTitle: PWideChar; const aText: PWideChar; aCount: PRUint32; const aSelectList_array; out aOutSelection: PRInt32): PRBool; safecall;
  end;

  nsIProperties_safe17 = interface(nsISupports_safe17)
  ['{78650582-4e93-4b60-8e85-26ebd3eb14ca}']
    procedure Get(const prop: PAnsiChar; const iid: TGUID; out _result); safecall;
    procedure _Set(const prop: PAnsiChar; value: nsISupports_safe17); safecall;
    function Has(const prop: PAnsiChar): PRBool; safecall;
    procedure Undefine(const prop: PAnsiChar); safecall;
    procedure GetKeys(out count: PRUint32; out keys_array); safecall;
  end;

  nsIProtocolHandler_safe17 = interface(nsISupports_safe17)
  ['{15fd6940-8ea7-11d3-93ad-00104ba0fd40}']
    procedure GetScheme(aScheme: nsACString); safecall;
    function GetDefaultPort(): PRInt32; safecall;
    property DefaultPort: PRInt32 read GetDefaultPort;
    function GetProtocolFlags(): PRUint32; safecall;
    property ProtocolFlags: PRUint32 read GetProtocolFlags;
    function NewURI(const aSpec: nsACString; const aOriginCharset: PAnsiChar; aBaseURI: nsIURI_safe17): nsIURI_safe17; safecall;
    function NewChannel(aURI: nsIURI_safe17): nsIChannel_safe17; safecall;
    function AllowPort(port: PRInt32; const scheme: PAnsiChar): PRBool; safecall;
  end;

  nsIRequestObserver_safe17 = interface(nsISupports_safe17)
  ['{fd91e2e0-1481-11d3-9333-00104ba0fd40}']
    procedure OnStartRequest(aRequest: nsIRequest_safe17; aContext: nsISupports_safe17); safecall;
    procedure OnStopRequest(aRequest: nsIRequest_safe17; aContext: nsISupports_safe17; aStatusCode: nsresult); safecall;
  end;

  nsIScriptableInputStream_safe17 = interface(nsISupports_safe17)
  ['{a2a32f90-9b90-11d3-a189-0050041caf44}']
    procedure Close(); safecall;
    procedure Init(aInputStream: nsIInputStream_safe17); safecall;
    function Available(): PRUint32; safecall;
    function Read(aCount: PRUint32): PAnsiChar; safecall;
  end;

  nsISecurityWarningDialogs_safe17 = interface(nsISupports_safe17)
  ['{1c399d06-1dd2-11b2-bc58-c87cbcacdb78}']
    function ConfirmEnteringSecure(ctx: nsIInterfaceRequestor_safe17): PRBool; safecall;
    function ConfirmEnteringWeak(ctx: nsIInterfaceRequestor_safe17): PRBool; safecall;
    function ConfirmLeavingSecure(ctx: nsIInterfaceRequestor_safe17): PRBool; safecall;
    function ConfirmMixedMode(ctx: nsIInterfaceRequestor_safe17): PRBool; safecall;
    function ConfirmPostToInsecure(ctx: nsIInterfaceRequestor_safe17): PRBool; safecall;
    function ConfirmPostToInsecureFromSecure(ctx: nsIInterfaceRequestor_safe17): PRBool; safecall;
  end;

  nsISelection_safe17 = interface(nsISupports_safe17)
  ['{b2c7ed59-8634-4352-9e37-5484c8b6e4e1}']
    function GetAnchorNode(): nsIDOMNode_safe17; safecall;
    property AnchorNode: nsIDOMNode_safe17 read GetAnchorNode;
    function GetAnchorOffset(): PRInt32; safecall;
    property AnchorOffset: PRInt32 read GetAnchorOffset;
    function GetFocusNode(): nsIDOMNode_safe17; safecall;
    property FocusNode: nsIDOMNode_safe17 read GetFocusNode;
    function GetFocusOffset(): PRInt32; safecall;
    property FocusOffset: PRInt32 read GetFocusOffset;
    function GetIsCollapsed(): PRBool; safecall;
    property IsCollapsed: PRBool read GetIsCollapsed;
    function GetRangeCount(): PRInt32; safecall;
    property RangeCount: PRInt32 read GetRangeCount;
    function GetRangeAt(index: PRInt32): nsIDOMRange_safe17; safecall;
    procedure Collapse(parentNode: nsIDOMNode_safe17; offset: PRInt32); safecall;
    procedure Extend(parentNode: nsIDOMNode_safe17; offset: PRInt32); safecall;
    procedure CollapseToStart(); safecall;
    procedure CollapseToEnd(); safecall;
    function ContainsNode(node: nsIDOMNode_safe17; entirelyContained: PRBool): PRBool; safecall;
    procedure SelectAllChildren(parentNode: nsIDOMNode_safe17); safecall;
    procedure AddRange(range: nsIDOMRange_safe17); safecall;
    procedure RemoveRange(range: nsIDOMRange_safe17); safecall;
    procedure RemoveAllRanges(); safecall;
    procedure DeleteFromDocument(); safecall;
    procedure SelectionLanguageChange(langRTL: PRBool); safecall;
    function ToString(): PWideChar; safecall;
  end;

  nsIServiceManager_safe17 = interface(nsISupports_safe17)
  ['{8bb35ed9-e332-462d-9155-4a002ab5c958}']
    procedure GetService(const aClass: TGUID; const aIID: TGUID; out _result); safecall;
    procedure GetServiceByContractID(const aContractID: PAnsiChar; const aIID: TGUID; out _result); safecall;
    function IsServiceInstantiated(const aClass: TGUID; const aIID: TGUID): PRBool; safecall;
    function IsServiceInstantiatedByContractID(const aContractID: PAnsiChar; const aIID: TGUID): PRBool; safecall;
  end;

  nsISHistory_safe17 = interface(nsISupports_safe17)
  ['{7294fe9b-14d8-11d5-9882-00c04fa02f40}']
    function GetCount(): PRInt32; safecall;
    property Count: PRInt32 read GetCount;
    function GetIndex(): PRInt32; safecall;
    property Index: PRInt32 read GetIndex;
    function GetMaxLength(): PRInt32; safecall;
    procedure SetMaxLength(aMaxLength: PRInt32); safecall;
    property MaxLength: PRInt32 read GetMaxLength write SetMaxLength;
    function GetEntryAtIndex(index: PRInt32; modifyIndex: PRBool): nsIHistoryEntry_safe17; safecall;
    procedure PurgeHistory(numEntries: PRInt32); safecall;
    procedure AddSHistoryListener(aListener: nsISHistoryListener_safe17); safecall;
    procedure RemoveSHistoryListener(aListener: nsISHistoryListener_safe17); safecall;
    function GetSHistoryEnumerator(): nsISimpleEnumerator_safe17; safecall;
    property SHistoryEnumerator: nsISimpleEnumerator_safe17 read GetSHistoryEnumerator;
  end;

  nsISHistoryListener_safe17 = interface(nsISupports_safe17)
  ['{3b07f591-e8e1-11d4-9882-00c04fa02f40}']
    procedure OnHistoryNewEntry(aNewURI: nsIURI_safe17); safecall;
    function OnHistoryGoBack(aBackURI: nsIURI_safe17): PRBool; safecall;
    function OnHistoryGoForward(aForwardURI: nsIURI_safe17): PRBool; safecall;
    function OnHistoryReload(aReloadURI: nsIURI_safe17; aReloadFlags: PRUint32): PRBool; safecall;
    function OnHistoryGotoIndex(aIndex: PRInt32; aGotoURI: nsIURI_safe17): PRBool; safecall;
    function OnHistoryPurge(aNumEntries: PRInt32): PRBool; safecall;
  end;

  nsIStreamListener_safe17 = interface(nsIRequestObserver_safe17)
  ['{1a637020-1482-11d3-9333-00104ba0fd40}']
    procedure OnDataAvailable(aRequest: nsIRequest_safe17; aContext: nsISupports_safe17; aInputStream: nsIInputStream_safe17; aOffset: PRUint32; aCount: PRUint32); safecall;
  end;

  nsISupportsPrimitive_safe17 = interface(nsISupports_safe17)
  ['{d0d4b136-1dd1-11b2-9371-f0727ef827c0}']
    function GetType(): PRUint16; safecall;
    property _Type: PRUint16 read GetType;
  end;

  nsISupportsID_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{d18290a0-4a1c-11d3-9890-006008962422}']
    function GetData(): PGUID; safecall;
    procedure SetData(const aData: PGUID); safecall;
    property Data: PGUID read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsCString_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{d65ff270-4a1c-11d3-9890-006008962422}']
    procedure GetData(aData: nsACString); safecall;
    procedure SetData(const aData: nsACString); safecall;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsString_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{d79dc970-4a1c-11d3-9890-006008962422}']
    procedure GetData(aData: nsAString); safecall;
    procedure SetData(const aData: nsAString); safecall;
    function ToString(): PWideChar; safecall;
  end;

  nsISupportsPRBool_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{ddc3b490-4a1c-11d3-9890-006008962422}']
    function GetData(): PRBool; safecall;
    procedure SetData(aData: PRBool); safecall;
    property Data: PRBool read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsPRUint8_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{dec2e4e0-4a1c-11d3-9890-006008962422}']
    function GetData(): PRUint8; safecall;
    procedure SetData(aData: PRUint8); safecall;
    property Data: PRUint8 read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsPRUint16_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{dfacb090-4a1c-11d3-9890-006008962422}']
    function GetData(): PRUint16; safecall;
    procedure SetData(aData: PRUint16); safecall;
    property Data: PRUint16 read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsPRUint32_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{e01dc470-4a1c-11d3-9890-006008962422}']
    function GetData(): PRUint32; safecall;
    procedure SetData(aData: PRUint32); safecall;
    property Data: PRUint32 read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsPRUint64_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{e13567c0-4a1c-11d3-9890-006008962422}']
    function GetData(): PRUint64; safecall;
    procedure SetData(aData: PRUint64); safecall;
    property Data: PRUint64 read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsPRTime_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{e2563630-4a1c-11d3-9890-006008962422}']
    function GetData(): PRTime; safecall;
    procedure SetData(aData: PRTime); safecall;
    property Data: PRTime read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsChar_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{e2b05e40-4a1c-11d3-9890-006008962422}']
    function GetData(): AnsiChar; safecall;
    procedure SetData(aData: AnsiChar); safecall;
    property Data: AnsiChar read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsPRInt16_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{e30d94b0-4a1c-11d3-9890-006008962422}']
    function GetData(): PRInt16; safecall;
    procedure SetData(aData: PRInt16); safecall;
    property Data: PRInt16 read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsPRInt32_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{e36c5250-4a1c-11d3-9890-006008962422}']
    function GetData(): PRInt32; safecall;
    procedure SetData(aData: PRInt32); safecall;
    property Data: PRInt32 read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsPRInt64_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{e3cb0ff0-4a1c-11d3-9890-006008962422}']
    function GetData(): PRInt64; safecall;
    procedure SetData(aData: PRInt64); safecall;
    property Data: PRInt64 read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsFloat_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{abeaa390-4ac0-11d3-baea-00805f8a5dd7}']
    function GetData(): Single; safecall;
    procedure SetData(aData: Single); safecall;
    property Data: Single read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsDouble_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{b32523a0-4ac0-11d3-baea-00805f8a5dd7}']
    function GetData(): Double; safecall;
    procedure SetData(aData: Double); safecall;
    property Data: Double read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsVoid_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{464484f0-568d-11d3-baf8-00805f8a5dd7}']
    function GetData(): Pointer; safecall;
    procedure SetData(aData: Pointer); safecall;
    property Data: Pointer read GetData write SetData;
    function ToString(): PAnsiChar; safecall;
  end;

  nsISupportsInterfacePointer_safe17 = interface(nsISupportsPrimitive_safe17)
  ['{995ea724-1dd1-11b2-9211-c21bdd3e7ed0}']
    function GetData(): nsISupports_safe17; safecall;
    procedure SetData(aData: nsISupports_safe17); safecall;
    property Data: nsISupports_safe17 read GetData write SetData;
    function GetDataIID(): PGUID; safecall;
    procedure SetDataIID(const aDataIID: PGUID); safecall;
    property DataIID: PGUID read GetDataIID write SetDataIID;
    function ToString(): PAnsiChar; safecall;
  end;

  nsITooltipListener_safe17 = interface(nsISupports_safe17)
  ['{44b78386-1dd2-11b2-9ad2-e4eee2ca1916}']
    procedure OnShowTooltip(aXCoords: PRInt32; aYCoords: PRInt32; const aTipText: PWideChar); safecall;
    procedure OnHideTooltip(); safecall;
  end;

  nsITooltipTextProvider_safe17 = interface(nsISupports_safe17)
  ['{b128a1e6-44f3-4331-8fbe-5af360ff21ee}']
    function GetNodeText(aNode: nsIDOMNode_safe17; out aText: PWideChar): PRBool; safecall;
  end;

  nsITraceRefcnt_safe17 = interface(nsISupports_safe17)
  ['{273dc92f-0fe6-4545-96a9-21be77828039}']
    procedure LogAddRef(aPtr: Pointer; aNewRefcnt: nsrefcnt; const aTypeName: PAnsiChar; aInstanceSize: PRUint32); safecall;
    procedure LogRelease(aPtr: Pointer; aNewRefcnt: nsrefcnt; const aTypeName: PAnsiChar); safecall;
    procedure LogCtor(aPtr: Pointer; const aTypeName: PAnsiChar; aInstanceSize: PRUint32); safecall;
    procedure LogDtor(aPtr: Pointer; const aTypeName: PAnsiChar; aInstanceSize: PRUint32); safecall;
    procedure LogAddCOMPtr(aPtr: Pointer; aObject: nsISupports_safe17); safecall;
    procedure LogReleaseCOMPtr(aPtr: Pointer; aObject: nsISupports_safe17); safecall;
  end;

  nsIUnicharStreamListener_safe17 = interface(nsIRequestObserver_safe17)
  ['{4a7e9b62-fef8-400d-9865-d6820f630b4c}']
    procedure OnUnicharDataAvailable(aRequest: nsIRequest_safe17; aContext: nsISupports_safe17; const aData: nsAString); safecall;
  end;

  nsIUploadChannel_safe17 = interface(nsISupports_safe17)
  ['{ddf633d8-e9a4-439d-ad88-de636fd9bb75}']
    procedure SetUploadStream(aStream: nsIInputStream_safe17; const aContentType: nsACString; aContentLength: PRInt32); safecall;
    function GetUploadStream(): nsIInputStream_safe17; safecall;
    property UploadStream: nsIInputStream_safe17 read GetUploadStream;
  end;

  nsIURIContentListener_safe17 = interface(nsISupports_safe17)
  ['{94928ab3-8b63-11d3-989d-001083010e9b}']
    function OnStartURIOpen(aURI: nsIURI_safe17): PRBool; safecall;
    function DoContent(const aContentType: PAnsiChar; aIsContentPreferred: PRBool; aRequest: nsIRequest_safe17; out aContentHandler: nsIStreamListener_safe17): PRBool; safecall;
    function IsPreferred(const aContentType: PAnsiChar; out aDesiredContentType: PAnsiChar): PRBool; safecall;
    function CanHandleContent(const aContentType: PAnsiChar; aIsContentPreferred: PRBool; out aDesiredContentType: PAnsiChar): PRBool; safecall;
    function GetLoadCookie(): nsISupports_safe17; safecall;
    procedure SetLoadCookie(aLoadCookie: nsISupports_safe17); safecall;
    property LoadCookie: nsISupports_safe17 read GetLoadCookie write SetLoadCookie;
    function GetParentContentListener(): nsIURIContentListener_safe17; safecall;
    procedure SetParentContentListener(aParentContentListener: nsIURIContentListener_safe17); safecall;
    property ParentContentListener: nsIURIContentListener_safe17 read GetParentContentListener write SetParentContentListener;
  end;

  nsIWeakReference_safe17 = interface(nsISupports_safe17)
  ['{9188bc85-f92e-11d2-81ef-0060083a0bcf}']
    procedure QueryReferent(const uuid: TGUID; out _result); safecall;
  end;

  nsISupportsWeakReference_safe17 = interface(nsISupports_safe17)
  ['{9188bc86-f92e-11d2-81ef-0060083a0bcf}']
    function GetWeakReference(): nsIWeakReference_safe17; safecall;
  end;

  nsIWebBrowser_safe17 = interface(nsISupports_safe17)
  ['{69e5df00-7b8b-11d3-af61-00a024ffc08c}']
    procedure AddWebBrowserListener(aListener: nsIWeakReference_safe17; const aIID: TGUID); safecall;
    procedure RemoveWebBrowserListener(aListener: nsIWeakReference_safe17; const aIID: TGUID); safecall;
    function GetContainerWindow(): nsIWebBrowserChrome_safe17; safecall;
    procedure SetContainerWindow(aContainerWindow: nsIWebBrowserChrome_safe17); safecall;
    property ContainerWindow: nsIWebBrowserChrome_safe17 read GetContainerWindow write SetContainerWindow;
    function GetParentURIContentListener(): nsIURIContentListener_safe17; safecall;
    procedure SetParentURIContentListener(aParentURIContentListener: nsIURIContentListener_safe17); safecall;
    property ParentURIContentListener: nsIURIContentListener_safe17 read GetParentURIContentListener write SetParentURIContentListener;
    function GetContentDOMWindow(): nsIDOMWindow_safe17; safecall;
    property ContentDOMWindow: nsIDOMWindow_safe17 read GetContentDOMWindow;
  end;

  nsIWebBrowserChrome_safe17 = interface(nsISupports_safe17)
  ['{ba434c60-9d52-11d3-afb0-00a024ffc08c}']
    procedure SetStatus(statusType: PRUint32; const status: PWideChar); safecall;
    function GetWebBrowser(): nsIWebBrowser_safe17; safecall;
    procedure SetWebBrowser(aWebBrowser: nsIWebBrowser_safe17); safecall;
    property WebBrowser: nsIWebBrowser_safe17 read GetWebBrowser write SetWebBrowser;
    function GetChromeFlags(): PRUint32; safecall;
    procedure SetChromeFlags(aChromeFlags: PRUint32); safecall;
    property ChromeFlags: PRUint32 read GetChromeFlags write SetChromeFlags;
    procedure DestroyBrowserWindow(); safecall;
    procedure SizeBrowserTo(aCX: PRInt32; aCY: PRInt32); safecall;
    procedure ShowAsModal(); safecall;
    function IsWindowModal(): PRBool; safecall;
    procedure ExitModalEventLoop(aStatus: nsresult); safecall;
  end;

  nsIWebBrowserChromeFocus_safe17 = interface(nsISupports_safe17)
  ['{d2206418-1dd1-11b2-8e55-acddcd2bcfb8}']
    procedure FocusNextElement(); safecall;
    procedure FocusPrevElement(); safecall;
  end;

  nsIWebBrowserFind_safe17 = interface(nsISupports_safe17)
  ['{2f977d44-5485-11d4-87e2-0010a4e75ef2}']
    function FindNext(): PRBool; safecall;
    function GetSearchString(): PWideChar; safecall;
    procedure SetSearchString(const aSearchString: PWideChar); safecall;
    property SearchString: PWideChar read GetSearchString write SetSearchString;
    function GetFindBackwards(): PRBool; safecall;
    procedure SetFindBackwards(aFindBackwards: PRBool); safecall;
    property FindBackwards: PRBool read GetFindBackwards write SetFindBackwards;
    function GetWrapFind(): PRBool; safecall;
    procedure SetWrapFind(aWrapFind: PRBool); safecall;
    property WrapFind: PRBool read GetWrapFind write SetWrapFind;
    function GetEntireWord(): PRBool; safecall;
    procedure SetEntireWord(aEntireWord: PRBool); safecall;
    property EntireWord: PRBool read GetEntireWord write SetEntireWord;
    function GetMatchCase(): PRBool; safecall;
    procedure SetMatchCase(aMatchCase: PRBool); safecall;
    property MatchCase: PRBool read GetMatchCase write SetMatchCase;
    function GetSearchFrames(): PRBool; safecall;
    procedure SetSearchFrames(aSearchFrames: PRBool); safecall;
    property SearchFrames: PRBool read GetSearchFrames write SetSearchFrames;
  end;

  nsIWebBrowserFindInFrames_safe17 = interface(nsISupports_safe17)
  ['{e0f5d182-34bc-11d5-be5b-b760676c6ebc}']
    function GetCurrentSearchFrame(): nsIDOMWindow_safe17; safecall;
    procedure SetCurrentSearchFrame(aCurrentSearchFrame: nsIDOMWindow_safe17); safecall;
    property CurrentSearchFrame: nsIDOMWindow_safe17 read GetCurrentSearchFrame write SetCurrentSearchFrame;
    function GetRootSearchFrame(): nsIDOMWindow_safe17; safecall;
    procedure SetRootSearchFrame(aRootSearchFrame: nsIDOMWindow_safe17); safecall;
    property RootSearchFrame: nsIDOMWindow_safe17 read GetRootSearchFrame write SetRootSearchFrame;
    function GetSearchSubframes(): PRBool; safecall;
    procedure SetSearchSubframes(aSearchSubframes: PRBool); safecall;
    property SearchSubframes: PRBool read GetSearchSubframes write SetSearchSubframes;
    function GetSearchParentFrames(): PRBool; safecall;
    procedure SetSearchParentFrames(aSearchParentFrames: PRBool); safecall;
    property SearchParentFrames: PRBool read GetSearchParentFrames write SetSearchParentFrames;
  end;

  nsIWebBrowserFocus_safe17 = interface(nsISupports_safe17)
  ['{9c5d3c58-1dd1-11b2-a1c9-f3699284657a}']
    procedure Activate(); safecall;
    procedure Deactivate(); safecall;
    procedure SetFocusAtFirstElement(); safecall;
    procedure SetFocusAtLastElement(); safecall;
    function GetFocusedWindow(): nsIDOMWindow_safe17; safecall;
    procedure SetFocusedWindow(aFocusedWindow: nsIDOMWindow_safe17); safecall;
    property FocusedWindow: nsIDOMWindow_safe17 read GetFocusedWindow write SetFocusedWindow;
    function GetFocusedElement(): nsIDOMElement_safe17; safecall;
    procedure SetFocusedElement(aFocusedElement: nsIDOMElement_safe17); safecall;
    property FocusedElement: nsIDOMElement_safe17 read GetFocusedElement write SetFocusedElement;
  end;

  nsIWebBrowserPrint_safe17 = interface(nsISupports_safe17)
  ['{9a7ca4b0-fbba-11d4-a869-00105a183419}']
    function GetGlobalPrintSettings(): nsIPrintSettings_safe17; safecall;
    property GlobalPrintSettings: nsIPrintSettings_safe17 read GetGlobalPrintSettings;
    function GetCurrentPrintSettings(): nsIPrintSettings_safe17; safecall;
    property CurrentPrintSettings: nsIPrintSettings_safe17 read GetCurrentPrintSettings;
    function GetCurrentChildDOMWindow(): nsIDOMWindow_safe17; safecall;
    property CurrentChildDOMWindow: nsIDOMWindow_safe17 read GetCurrentChildDOMWindow;
    function GetDoingPrint(): PRBool; safecall;
    property DoingPrint: PRBool read GetDoingPrint;
    function GetDoingPrintPreview(): PRBool; safecall;
    property DoingPrintPreview: PRBool read GetDoingPrintPreview;
    function GetIsFramesetDocument(): PRBool; safecall;
    property IsFramesetDocument: PRBool read GetIsFramesetDocument;
    function GetIsFramesetFrameSelected(): PRBool; safecall;
    property IsFramesetFrameSelected: PRBool read GetIsFramesetFrameSelected;
    function GetIsIFrameSelected(): PRBool; safecall;
    property IsIFrameSelected: PRBool read GetIsIFrameSelected;
    function GetIsRangeSelection(): PRBool; safecall;
    property IsRangeSelection: PRBool read GetIsRangeSelection;
    function GetPrintPreviewNumPages(): PRInt32; safecall;
    property PrintPreviewNumPages: PRInt32 read GetPrintPreviewNumPages;
    procedure Print(aThePrintSettings: nsIPrintSettings_safe17; aWPListener: nsIWebProgressListener_safe17); safecall;
    procedure PrintPreview(aThePrintSettings: nsIPrintSettings_safe17; aChildDOMWin: nsIDOMWindow_safe17; aWPListener: nsIWebProgressListener_safe17); safecall;
    procedure PrintPreviewNavigate(aNavType: PRInt16; aPageNum: PRInt32); safecall;
    procedure Cancel(); safecall;
    procedure EnumerateDocumentNames(out aCount: PRUint32; out aResult_array); safecall;
    procedure ExitPrintPreview(); safecall;
  end;

  nsIWebBrowserSetup_safe17 = interface(nsISupports_safe17)
  ['{f15398a0-8018-11d3-af70-00a024ffc08c}']
    procedure SetProperty(aId: PRUint32; aValue: PRUint32); safecall;
  end;

  nsIWebProgress_safe17 = interface(nsISupports_safe17)
  ['{570f39d0-efd0-11d3-b093-00a024ffc08c}']
    procedure AddProgressListener(aListener: nsIWebProgressListener_safe17; aNotifyMask: PRUint32); safecall;
    procedure RemoveProgressListener(aListener: nsIWebProgressListener_safe17); safecall;
    function GetDOMWindow(): nsIDOMWindow_safe17; safecall;
    property DOMWindow: nsIDOMWindow_safe17 read GetDOMWindow;
    function GetIsLoadingDocument(): PRBool; safecall;
    property IsLoadingDocument: PRBool read GetIsLoadingDocument;
  end;

  nsIWebProgressListener_safe17 = interface(nsISupports_safe17)
  ['{570f39d1-efd0-11d3-b093-00a024ffc08c}']
    procedure OnStateChange(aWebProgress: nsIWebProgress_safe17; aRequest: nsIRequest_safe17; aStateFlags: PRUint32; aStatus: nsresult); safecall;
    procedure OnProgressChange(aWebProgress: nsIWebProgress_safe17; aRequest: nsIRequest_safe17; aCurSelfProgress: PRInt32; aMaxSelfProgress: PRInt32; aCurTotalProgress: PRInt32; aMaxTotalProgress: PRInt32); safecall;
    procedure OnLocationChange(aWebProgress: nsIWebProgress_safe17; aRequest: nsIRequest_safe17; aLocation: nsIURI_safe17); safecall;
    procedure OnStatusChange(aWebProgress: nsIWebProgress_safe17; aRequest: nsIRequest_safe17; aStatus: nsresult; const aMessage: PWideChar); safecall;
    procedure OnSecurityChange(aWebProgress: nsIWebProgress_safe17; aRequest: nsIRequest_safe17; aState: PRUint32); safecall;
  end;

  nsIWindowCreator_safe17 = interface(nsISupports_safe17)
  ['{30465632-a777-44cc-90f9-8145475ef999}']
    function CreateChromeWindow(parent: nsIWebBrowserChrome_safe17; chromeFlags: PRUint32): nsIWebBrowserChrome_safe17; safecall;
  end;

  nsIWindowWatcher_safe17 = interface(nsISupports_safe17)
  ['{002286a8-494b-43b3-8ddd-49e3fc50622b}']
    function OpenWindow(aParent: nsIDOMWindow_safe17; const aUrl: PAnsiChar; const aName: PAnsiChar; const aFeatures: PAnsiChar; aArguments: nsISupports_safe17): nsIDOMWindow_safe17; safecall;
    procedure RegisterNotification(aObserver: nsIObserver_safe17); safecall;
    procedure UnregisterNotification(aObserver: nsIObserver_safe17); safecall;
    function GetWindowEnumerator(): nsISimpleEnumerator_safe17; safecall;
    function GetNewPrompter(aParent: nsIDOMWindow_safe17): nsIPrompt_safe17; safecall;
    function GetNewAuthPrompter(aParent: nsIDOMWindow_safe17): nsIAuthPrompt_safe17; safecall;
    procedure SetWindowCreator(creator: nsIWindowCreator_safe17); safecall;
    function GetChromeForWindow(aWindow: nsIDOMWindow_safe17): nsIWebBrowserChrome_safe17; safecall;
    function GetWindowByName(const aTargetName: PWideChar; aCurrentWindow: nsIDOMWindow_safe17): nsIDOMWindow_safe17; safecall;
    function GetActiveWindow(): nsIDOMWindow_safe17; safecall;
    procedure SetActiveWindow(aActiveWindow: nsIDOMWindow_safe17); safecall;
    property ActiveWindow: nsIDOMWindow_safe17 read GetActiveWindow write SetActiveWindow;
  end;

  nsIX509Cert_safe17 = interface(nsISupports_safe17)
  ['{f0980f60-ee3d-11d4-998b-00b0d02354a0}']
    procedure GetNickname(aNickname: nsAString); safecall;
    procedure GetEmailAddress(aEmailAddress: nsAString); safecall;
    procedure GetEmailAddresses(out length: PRUint32; out addresses_array); safecall;
    function ContainsEmailAddress(const aEmailAddress: nsAString): PRBool; safecall;
    procedure GetSubjectName(aSubjectName: nsAString); safecall;
    procedure GetCommonName(aCommonName: nsAString); safecall;
    procedure GetOrganization(aOrganization: nsAString); safecall;
    procedure GetOrganizationalUnit(aOrganizationalUnit: nsAString); safecall;
    procedure GetSha1Fingerprint(aSha1Fingerprint: nsAString); safecall;
    procedure GetMd5Fingerprint(aMd5Fingerprint: nsAString); safecall;
    procedure GetTokenName(aTokenName: nsAString); safecall;
    procedure GetIssuerName(aIssuerName: nsAString); safecall;
    procedure GetSerialNumber(aSerialNumber: nsAString); safecall;
    procedure GetIssuerCommonName(aIssuerCommonName: nsAString); safecall;
    procedure GetIssuerOrganization(aIssuerOrganization: nsAString); safecall;
    procedure GetIssuerOrganizationUnit(aIssuerOrganizationUnit: nsAString); safecall;
    function GetIssuer(): nsIX509Cert_safe17; safecall;
    property Issuer: nsIX509Cert_safe17 read GetIssuer;
    function GetValidity(): nsIX509CertValidity_safe17; safecall;
    property Validity: nsIX509CertValidity_safe17 read GetValidity;
    function GetDbKey(): PAnsiChar; safecall;
    property DbKey: PAnsiChar read GetDbKey;
    function GetWindowTitle(): PAnsiChar; safecall;
    property WindowTitle: PAnsiChar read GetWindowTitle;
    function GetChain(): nsIArray_safe17; safecall;
    procedure GetUsagesArray(ignoreOcsp: PRBool; out verified: PRUint32; out count: PRUint32; out usages_array); safecall;
    procedure GetUsagesString(ignoreOcsp: PRBool; out verified: PRUint32; usages: nsAString); safecall;
    function VerifyForUsage(usage: PRUint32): PRUint32; safecall;
    function GetASN1Structure(): nsIASN1Object_safe17; safecall;
    property ASN1Structure: nsIASN1Object_safe17 read GetASN1Structure;
    procedure GetRawDER(out length: PRUint32; out data_array); safecall;
    function Equals(other: nsIX509Cert_safe17): PRBool; safecall;
  end;

  nsIX509CertDB_safe17 = interface(nsISupports_safe17)
  ['{da48b3c0-1284-11d5-ac67-000064657374}']
    function FindCertByNickname(aToken: nsISupports_safe17; const aNickname: nsAString): nsIX509Cert_safe17; safecall;
    function FindCertByDBKey(const aDBkey: PAnsiChar; aToken: nsISupports_safe17): nsIX509Cert_safe17; safecall;
    procedure FindCertNicknames(aToken: nsISupports_safe17; aType: PRUint32; out count: PRUint32; out certNameList_array); safecall;
    function FindEmailEncryptionCert(const aNickname: nsAString): nsIX509Cert_safe17; safecall;
    function FindEmailSigningCert(const aNickname: nsAString): nsIX509Cert_safe17; safecall;
    function FindCertByEmailAddress(aToken: nsISupports_safe17; const aEmailAddress: PAnsiChar): nsIX509Cert_safe17; safecall;
    procedure ImportCertificates(const data_array; length: PRUint32; _type: PRUint32; ctx: nsIInterfaceRequestor_safe17); safecall;
    procedure ImportEmailCertificate(const data_array; length: PRUint32; ctx: nsIInterfaceRequestor_safe17); safecall;
    procedure ImportServerCertificate(const data_array; length: PRUint32; ctx: nsIInterfaceRequestor_safe17); safecall;
    procedure ImportUserCertificate(const data_array; length: PRUint32; ctx: nsIInterfaceRequestor_safe17); safecall;
    procedure DeleteCertificate(aCert: nsIX509Cert_safe17); safecall;
    procedure SetCertTrust(cert: nsIX509Cert_safe17; _type: PRUint32; trust: PRUint32); safecall;
    function IsCertTrusted(cert: nsIX509Cert_safe17; certType: PRUint32; trustType: PRUint32): PRBool; safecall;
    procedure ImportCertsFromFile(aToken: nsISupports_safe17; aFile: nsILocalFile_safe17; aType: PRUint32); safecall;
    procedure ImportPKCS12File(aToken: nsISupports_safe17; aFile: nsILocalFile_safe17); safecall;
    procedure ExportPKCS12File(aToken: nsISupports_safe17; aFile: nsILocalFile_safe17; count: PRUint32; const aCerts_array); safecall;
    function GetOCSPResponders(): nsIArray_safe17; safecall;
    function GetIsOcspOn(): PRBool; safecall;
    property IsOcspOn: PRBool read GetIsOcspOn;
    function ConstructX509FromBase64(const base64: PAnsiChar): nsIX509Cert_safe17; safecall;
  end;

  nsIX509CertValidity_safe17 = interface(nsISupports_safe17)
  ['{e701dfd8-1dd1-11b2-a172-ffa6cc6156ad}']
    function GetNotBefore(): PRTime; safecall;
    property NotBefore: PRTime read GetNotBefore;
    procedure GetNotBeforeLocalTime(aNotBeforeLocalTime: nsAString); safecall;
    procedure GetNotBeforeLocalDay(aNotBeforeLocalDay: nsAString); safecall;
    procedure GetNotBeforeGMT(aNotBeforeGMT: nsAString); safecall;
    function GetNotAfter(): PRTime; safecall;
    property NotAfter: PRTime read GetNotAfter;
    procedure GetNotAfterLocalTime(aNotAfterLocalTime: nsAString); safecall;
    procedure GetNotAfterLocalDay(aNotAfterLocalDay: nsAString); safecall;
    procedure GetNotAfterGMT(aNotAfterGMT: nsAString); safecall;
  end;

implementation

end.
