gZu      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                  ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t NoneKAn opaque type representing a Google Chrome extension. Values of this type  are passed to the   field. Load a .crx file as a . Load raw .crx data as a . None:A typeclass to convert types to profile preference values 4An error occured while attempting to parse a profile's preference file. LA profile preference value. This is the subset of JSON values that excludes  arrays, objects, and null. 1Represents a profile that has been prepared for D network transmission. The profile cannot be modified in this form. MThis structure allows you to construct and manipulate profiles in pure code, ; deferring execution of IO operations until the profile is "prepared". This H type is shared by both Firefox and Opera profiles; when a distinction D must be made, the phantom type parameter is used to differentiate. 8A mapping from relative destination filepaths to source 9 filepaths found on the filesystem. When the profile is 9 prepared, these source filepaths will be moved to their , destinations within the profile directory. 4Using the destination path as the key ensures that / there is one unique source path going to each  destination path. 5A map of Firefox preferences. These are the settings  found in the profile'!s prefs.js, and entries found in  about:config !2Retrieve a preference from a profile by key name. "HAdd a new preference entry to a profile, overwriting any existing entry  with the same key. #FDelete an existing preference entry from a profile. This operation is  silent if the preference wasn' t found. $FAdd a file to the profile directory. The first argument is the source N of the file on the local filesystem. The second argument is the destination E as a path relative to a profile directory. Overwrites any file that , previously pointed to the same destination %LDelete a file from the profile directory. The first argument is the name of $ file within the profile directory. &EDetermines if a profile contains the given file, specified as a path $ relative to the profile directory. 'BAdd a new extension to the profile. The file path should refer to : a .xpi file or an extension directory on the filesystem. (EDelete an existing extension from the profile. The string parameter J should refer to an .xpi file or directory located within the extensions N directory of the profile. This operation has no effect if the extension was  never added to the profile. )GDetermines if a profile contains the given extension. specified as an  .xpi file or directory name *<Takes the union of two profiles. This is the union of their HashMap  fields. + Modifies the   field of a profile. , Modifies the  field of a profile -JEfficiently load an existing profile from disk and prepare it for network  transmission. .BPrepare a zip file of a profile on disk for network transmission. F This function is very efficient at loading large profiles from disk. /=Prepare a zip archive of a profile for network transmission. 0>Prepare a ByteString of raw zip data for network transmission 6 !"#$%&'()*+,-./0uvwxyz{|}~ !"#$%&'()*+,-./0 !"#'()$%&*,+-./0, !"#$%&'()*+,-./0uvwxyz{|}~None1'Phantom type used in the parameters of  and  2;Default Firefox Profile, used when no profile is supplied. 3LLoad an existing profile from the file system. Any prepared changes made to  the - will have no effect to the profile on disk. =To make automated browser run smoothly, preferences found in  2\ are automatically merged into the preferences of the on-disk-- profile. The on-disk profile'/s preference will override those found in the  default profile. 44Prepare a firefox profile for network transmission. G Internally, this function constructs a Firefox profile within a temp K directory, archives it as a zip file, and then base64 encodes the zipped 6 data. The temporary directory is deleted afterwards. BNOTE: because this function has to copy the profile files into a Q a temp directory before zip archiving them, this operation is likely to be slow 4 for large profiles. In such a case, consider using - or  . instead. 5+Apply a function on a default profile, and C prepare the result. The Profile passed to the handler function is @ the default profile used by sessions when Nothing is specified 6JConvenience function to load an existing Firefox profile from disk, apply K a handler function, and then prepare the result for network transmission.  NOTE: like 40, the same caveat about large profiles applies. 123456$ !"#$&'()*+,-./0123456$1 2"!#'()$&*,+4536-./0123456 Safe-Infered 7,An error occured when parsing a JSON value. 9Construct a singleton JSON  from a key and value. :Construct a 2-element JSON $ from a pair of keys and a pair of  values. ;Construct a 3-element JSON ' from a triple of keys and a triple of  values. < Parse a lazy  as a top-level JSON , then convert it to an  instance of .. =Convert a JSON  to an instance of . >%This operator is a wrapper over Aeson's  operator. ? Parse a JSON 7 as a pair. The first two string arguments specify the F keys to extract from the object. The third string is the name of the / calling function, for better error reporting. @BParse a JSON Object as a triple. The first three string arguments M specify the keys to extract from the object. The fourth string is the name 6 of the calling function, for better error reporting. A'Convert an attoparsec parser result to WD. B"Convert an Aeson parser result to WD. 789:;<=>?@AB 789:;<=>?@AB ><=9:;?@AB78 789:;<=>?@AB Safe-Infered1C!Indicates log verbosity. Used in 1 and d configuration. M!Available settings for the proxy | field N7Manually specify proxy hosts as hostname:port strings. 4 Note that behavior is undefined for empty strings. R.Use a proxy auto-config file specified by URL WMRepresents platform options supported by WebDriver. The value Any represents  no preference. _JThis constructor simultaneously specifies which browser the session will C use, while also providing browser-specific configuration. Default / configuration is provided for each browser by , , ,  , etc. This library uses  as its  browser configuration, when no  browser choice is specified. e%Server-side path to the Opera binary fWhich Opera product we're using, e.g. "desktop",  "core" g2Whether the Opera instance should stay open after 5 we close the session. If false, closing the session  closes the browser. h2Whether to auto-start the Opera binary. If false, 1 OperaDriver will wait for a connection from the # browser. By default this is True. iWhether to use Opera's alternative implicit wait 5 implementation. It will use an in-browser heuristic 1 to guess when a page has finished loading. This 3 feature is experimental, and disabled by default. j$(*nix only) which X display to use. k1Path to the launcher binary to use. The launcher 0 is a gateway between OperaDriver and the Opera / browser. If Nothing, OperaDriver will use the % launcher supplied with the package. l6The port we should use to connect to Opera. If Just 0 2 , use a random port. If Nothing, use the default  Opera port. The default  constructor uses * Just 0, since Nothing is likely to cause address already in use errors. m,The host Opera should connect to. Unless you're  starting Opera manually you won' t need this. n)Command-line arguments to pass to Opera. o6Where to send the log output. If Nothing, logging is  disabled. p"Log level preference. Defaults to I r9Whether to skip the protected mode check. If set, tests ; may become flaky, unresponsive, or browsers may hang. If ; not set, and protected mode settings are not the same for 3 all zones, an exception will be thrown on driver  construction. t5Version of the Chrome Webdriver server server to use )for more information on chromedriver see   3http://code.google.com/p/selenium/wiki/ChromeDriver u0Server-side path to Chrome binary. If Nothing, & use a sensible system-based default. v/A list of command-line options to pass to the  Chrome binary. wA list of extensions to use. y(The firefox profile to use. If Nothing, 6 a default temporary profile is automatically created  and used. zFirefox logging preference {1Server-side path to Firefox binary. If Nothing, & use a sensible system-based default. |BA structure describing the capabilities of a session. This record serves dual roles.  It'@s used to specify the desired capabilities for a session before it'Bs created. In this usage, fields that are set to Nothing indicate 0that we have no preference for that capability. # When received from the server , it' s used to >describe the actual capabilities given to us by the WebDriver ?server. Here a value of Nothing indicates that the server doesn't Fsupport the capability. Thus, for Maybe Bool fields, both Nothing and BJust False indicate a lack of support for the desired capability. ~.Browser choice and browser specific settings. Browser version to use. -Platform on which the browser should run. Proxy configuration settings. 6Whether the session supports executing JavaScript via   executeJS and asyncJS. 7Whether the session supports taking screenshots of the  current page with the  screenshot command 4Whether the session can interact with modal popups, . such as window.alert and window.confirm via   acceptAlerts,  dismissAlerts, etc. 8Whether the session can interact with database storage. 1Whether the session can set and query the browser's  location context with  setLocation and  getLocation. <Whether the session can interact with the application cache  . -Whether the session can query for the browser's ( connectivity and disable it if desired :Whether the session supports CSS selectors when searching  for elements. Whether Web Storage (getKey, setKey, etc) support is  enabled /Whether the session can rotate the current page' s current  layout between Portrait and  Landscape orientations. ;Whether the session should accept all SSL certs by default 7Whether the session is capable of generating native OS $ events when simulating user input. .Default capabilities. This is the same as the  instance, but with ' less polymorphism. By default, we use  of an unspecified   with default system-wide  settings on whatever  is available C . All Maybe Bool capabilities are set to Nothing (no preference). Same as /, but with all Maybe Bool capabilities set to  Just True. IDefault Firefox settings. All Maybe fields are set to Nothing. ffLogPref  is set to I. MDefault Chrome settings. All Maybe fields are set to Nothing, no options are ( specified, and no extensions are used. Default IE settings. r is set to True.  Default Opera settings. See the d! constructor for more details on  individual defaults. bCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~UCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~U|}~_xsqdcba`yz{tuvwrefghijklmnopW^]\[ZYXMVUTRNSOPQCLKJIHGFEDC LKJIHGFEDM VUTRNSOPQW^]\[ZYX_xsqdcba`yz{tuvwrefghijklmnop|}~None GA command requiring a session ID was attempted when no session ID was  available. MAn opaque identifier for a WebDriver session. These handles are produced by Lthe server on session creation, and act to identify a session in progress. @Information about a WebDriver session. This structure is passed implicitly through all WD1 computations, and is also used to configure the WD monad before execution. ,Host name of the WebDriver server for this  session Port number of the server /An opaque reference identifying the session to  use with WD commands. . A value of Nothing indicates that a session  hasn't been created yet.  Sessions can be created within WD via    , or created  and closed automatically with    GA class for monads that can handle wire protocol requests. This is the A operation underlying all of the high-level commands exported in  Test.WebDriver.Commands0. For more information on the wire protocol see   7http://code.google.com/p/selenium/wiki/JsonWireProtocol AA class for monads that carry a WebDriver session with them. The D MonadBaseControl superclass is used for exception handling through  the lifted-base package. >A default session connects to localhost on port 4444, and hasn't been 3initialized server-side. This value is the same as  but with a less polymorphic type. %HTTP request method URL of request $JSON parameters passed in the body / of the request. Note that, as a special case, * () will result in an empty request body. %The JSON result of the HTTP request.    Safe-InferedGAn individual stack frame from the stack trace provided by the server  during a FailedCommand. FDetailed information about the failed command provided by the server. The error message. The session associated with  the exception. $A screen shot of the focused window  when the exception occured,  if provided. The class in which the exception  was raised, if provided.  A stack trace of the exception. 3The type of failed command exception that occured. CThis exception encapsulates a broad variety of exceptions that can  occur when a command fails.  A server-side exception occured 7A command was sent to the WebDriver server that it didn' t recognize. HTTP connection errors. 2An unexpected HTTP status was sent by the server. An invalid URL was given ;Constructs a FailedCommandInfo from only an error message.  Convenience function to throw a  locally with no server-side  info present. BProvides a readable printout of the error information, useful for  logging. E: Safe-Infered978978 Safe-Infered @An exception representing the failure of an expected condition. throws 2. This is nice for writing your own abstractions. IAn expected condition. This function allows you to express assertions in * your explicit wait. This function raises  if the given / boolean is False, and otherwise does nothing. :Apply a monadic predicate to every element in a list, and  that  at least one succeeds. :Apply a monadic predicate to every element in a list, and  that all  succeed. GWait until either the given action succeeds or the timeout is reached. 7 The action will be retried every .25 seconds until no  or   / exceptions occur. If the timeout is reached,  then a . exception will be raised. The timeout value  is expressed in seconds.  Similar to 3 but allows you to also specify the poll frequency  of the WDC action. The frequency is expressed as an integer in microseconds. Like =, but retries the action until it fails or until the timeout  is exceeded. Like 3, but retries the action until it either fails or  until the timeout is exceeded. Convenience function to catch   exceptions  and perform some action.  Example: 5 waitUntil 5 (getText <=< findElem $ ByCSS ".class")  `onTimeout` return ""    NonekAn HTML 5 storage type A mouse button A screen orientation HSpecifies element(s) within a DOM tree using various selection methods. "(Note: multiple classes are not  allowed. For more control, use ) .An opaque identifier for a web page element. NCookies are delicious delicacies. When sending cookies to the server, a value Q of Nothing indicates that the server should use a default value. When receiving Q cookies from the server, a value of Nothing indicates that the server is unable  to specify the value. path of this cookie.  if Nothing, defaults to / domain of this cookie.  if Nothing, the current pages  domain is used Is this cookie secure? Expiry date expressed as  seconds since the Unix epoch  Nothing indicates that the  cookie never expires +An opaque identifier for a browser window Specifies the frame used by # /focus on the first frame, or the main document  if iframes are used.  focus on a frame   focus on a frame by name or ID  An existential wrapper for any " instance. This allows us to pass 8 parameters of many different types to Javascript code. *Get information from the server as a JSON . For more information  about this object see   ?http://code.google.com/p/selenium/wiki/JsonWireProtocol#/status $Create a new session with the given |. This command ; resets the current session ID to that of the new session. -Retrieve a list of active sessions and their |. Get the actual | of the current session. >Close the current session and the browser associated with it. HSets the amount of time we implicitly wait when searching for elements. HSets the amount of time we wait for an asynchronous script to return a  result. OSets the amount of time to wait for a page to finish loading before throwing a  exception "Gets the URL of the current page. #Opens a new page by the given URL. )Navigate forward in the browser history. *Navigate backward in the browser history. Refresh the current page BInject a snippet of Javascript into the page for execution in the @context of the currently selected frame. The executed script is Eassumed to be synchronous and the result of evaluating the script is 3returned and converted to an instance of FromJSON. @The first parameter defines arguments to pass to the javascript =function. Arguments of type Element will be converted to the Gcorresponding DOM element. Likewise, any elements in the script result ,will be returned to the client as Elements. @The second parameter defines the script itself in the form of a Gfunction body. The value returned by that function will be returned to Dthe client. The function will be invoked with the provided argument Dlist and the values may be accessed via the arguments object in the order specified. JExecutes a snippet of Javascript code asynchronously. This function works  similarly to 2, except that the Javascript is passed a callback Efunction as its final argument. The script should call this function Mto signal that it has finished executing, passing to it a value that will be Kreturned as the result of asyncJS. A result of Nothing indicates that the #Javascript function timed out (see ) 5Grab a screenshot of the current page as a PNG image #:Switch focus to the frame specified by the FrameSelector. $ A special 5 that always refers to the currently focused window.  This is also used by the  instance. %1Returns a handle to the currently focused window &7Returns a list of all windows available to the session (Closes the given window )7Maximizes the current window if not already maximized **Get the dimensions of the current window. +*Set the dimensions of the current window. ,+Get the coordinates of the current window. -+Set the coordinates of the current window. .ACreates a Cookie with only a name and value specified. All other J fields are set to Nothing, which tells the server to use default values. /2Retrieve all cookies visible to the current page. 0FSet a cookie. If the cookie path is not specified, it will default to "/". H Likewise, if the domain is omitted, it will default to the current page's  domain 17Delete a cookie. This will do nothing is the cookie isn't visible to the  current page. 20Delete all visible cookies on the current page. 3Get the current page source 4#Get the title of the current page. 5>Find an element on the page using the given element selector. 6;Find all elements on the page matching the given selector. 7-Return the element that currently has focus. 87Search for an element using the given element as root. 9HFind all elements matching a selector, using the given element as root. :IDescribe the element. Returns a JSON object whose meaning is currently & undefined by the WebDriver protocol. ;Click on an element. <LSubmit a form element. This may be applied to descendents of a form element  as well. =*Get all visible text within this element. >LSend a sequence of keystrokes to an element. All modifier keys are released L at the end of the function. For more information about modifier keys, see   ]http://code.google.com/p/selenium/wiki/JsonWireProtocol#/session/:sessionId/element/:id/value ?Similar to sendKeys, but doesn'#t implicitly release modifier keys E afterwards. This allows you to combine modifiers with mouse clicks. @*Return the tag name of the given element. A&Clear a textarea or text input element' s value. B&Determine if the element is selected. C%Determine if the element is enabled. D'Determine if the element is displayed. E Retrieve the value of an element' s attribute F Retrieve the value of an element's computed CSS property GRetrieve an element's current position. HRetrieve an element's current size. IADetermines if two element identifiers refer to the same element. JCDetermines if two element identifiers refer to different elements. KBGet the current screen orientation for rotatable display devices. LBSet the current screen orientation for rotatable display devices. M!Get the text of an alert dialog. N0Sends keystrokes to Javascript prompt() dialog. O.Accepts the currently displayed alert dialog. P0Dismisses the currently displayed alert dialog. QFMoves the mouse to the given position relative to the active element. R2Moves the mouse to the center of a given element. SEMoves the mouse to the given position relative to the given element. TAClick at the current mouse position with the given mouse button. UIPerform the given action with the left mouse button held down. The mouse ' is automatically released afterwards. VIPress and hold the left mouse button down. Note that undefined behavior 2 occurs if the next mouse command is not mouseUp. WRelease the left mouse button. X,Double click at the current mouse location. Y3Single tap on the touch screen at the given element' s location. ZEEmulates pressing a finger down on the screen at the given location. [BEmulates removing a finger from the screen at the given location. \>Emulates moving a finger on the screen to the given location. ]?Emulate finger-based touch scroll. Use this function if you don' t care where  the scroll begins ^MEmulate finger-based touch scroll, starting from the given location relative  to the given element. _*Emulate a double click on a touch device. `(Emulate a long click on a touch device. aGEmulate a flick on the touch screen. The coordinates indicate x and y 5 velocity, respectively. Use this function if you don't care where the  flick starts. b%Emulate a flick on the touch screen. c5Get the current geographical location of the device. d5Set the current geographical location of the device. e;Uploads a file from the local filesystem by its file path. f4Uploads a raw bytestring with associated file info. g8Lowest level interface to the file uploading mechanism. 1 This allows you to specify the exact details of $ the zip entry sent across network. h6Get the current number of keys in a web storage area. i0Get a list of all keys from a web storage area. j1Delete all keys within a given web storage area. kCGet the value associated with a key in the given web storage area. @ Unset keys result in empty strings, since the Web Storage spec G makes no distinction between the empty string and an undefined value. l)Set a key in the given web storage area. m-Delete a key in the given web storage area.       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abflick velocity )a location relative to the given element the given element cdef'File path to use with this bytestring. Modification time  (in seconds since Unix epoch). 'The file contents as a lazy ByteString ghijklm      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklm345689;<=>?AEFGHBCD@7:IJ  $%(&')*+,-#   ./012MNOPQRSTVWUXhijklmKLcdYZ[\]^_`ab !"efgu      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklm NonenMA monadic interface to the WebDriver server. This monad is a simple, strict  layer over <, threading session information between sequential commands p Executes a n computation within the  monad, using the given  . qLike p?, but automatically creates a session beforehand and closes it - afterwards. This is a very common use case. rLocally sets a  for use within the given n action. ? The state of the outer action is unaffected by this function. M This function is useful if you need to work with multiple sessions at once. sFA finalizer ensuring that the session is always closed at the end of  the given n' action, regardless of any exceptions. t A variant of s' that only closes the session when an I asynchronous exception is thrown, but otherwise leaves the session open  if the action was successful. nopqrstnopqrstnopqrst nopqrstNone78CDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     $.nono|}~W^]\[ZYXMVUTRNSOPQ_xsqdcba`yz{tuvwrefghijklmnopCLKJIHGFED$     .78  Safe-Infered"78CDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstcnopqrst|}~W^]\[ZYXMVUTRNSOPQ_xsqdcba`yz{tuvwrefghijklmnopCLKJIHGFED !"#$%&'()*+,,-./012233456789:;<=>?@ABCDEFGHIJKLLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ F                                                         ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o o p  q r stuvwxyz{|}~                webdriver-0.3.3Test.WebDriver.ClassesTest.WebDriver.Commands.WaitTest.WebDriver.Firefox.ProfileTest.WebDriver.Chrome.ExtensionTest.WebDriver.Common.ProfileTest.WebDriver.JSONTest.WebDriver.CapabilitiesTest.WebDriver.ExceptionsTest.WebDriver.CommandsTest.WebDriver.MonadTest.WebdriverchromeExtensionsTest.WebDriver createSession runSessionTest.WebDriver.InternalTest.WebDriver.Types HTTP-4000.2.3Network.HTTP.BaseHEADPUTGETPOSTDELETEOPTIONSTRACECONNECTCustom RequestMethod cond-0.4.0.1Control.ConditionalnotM<&&><||>ifMdirectory-1.1.0.2System.Directory removeFileChromeExtension loadExtensionloadRawExtensionToPreftoPrefProfileParseError ProfilePrefPrefBool PrefString PrefDouble PrefIntegerPreparedProfileProfile profileFiles profilePrefsgetPrefaddPref deletePrefaddFile deleteFilehasFile addExtensiondeleteExtension hasExtension unionProfilesonProfilePrefsonProfileFilesprepareLoadedProfile_prepareZippedProfileprepareZipArchive prepareRawZipFirefoxdefaultProfile loadProfileprepareProfileprepareTempProfileprepareLoadedProfileBadJSONsinglepairtriple parseJSON' fromJSON'!: parsePair parseTriple apResultToWDaesonResultToWDLogPrefLogAll LogFinestLogFinerLogFine LogConfigLogInfo LogWarning LogSevereLogOff ProxyTypeManualftpProxysslProxy httpProxyPAC autoConfigUrl AutoDetectUseSystemSettingsNoProxyPlatformAnyUnixLinuxMacVistaXPWindowsBrowserAndroidIPadIPhoneHTMLUnitOpera operaBinary operaProduct operaDetachoperaAutoStart operaIdle operaDisplay operaLauncher operaPort operaHost operaOptions operaLogFile operaLogPrefIEignoreProtectedModeSettingsChromechromeDriverVersion chromeBinary chromeOptions ffProfile ffLogPrefffBinary CapabilitiesbrowserversionplatformproxyjavascriptEnabledtakesScreenshot handlesAlertsdatabaseEnabledlocationContextEnabledapplicationCacheEnabledbrowserConnectionEnabledcssSelectorsEnabledwebStorageEnabled rotatableacceptSSLCerts nativeEvents defaultCapsallCapsfirefoxchromeieoperahtmlUnitiPhoneiPadandroid NoSessionId SessionId WDSessionwdHostwdPortwdSessId WebDriver doCommand SessionState getSession putSession modifySessiondefaultSession doSessCommand StackFrame sfFileName sfClassName sfMethodName sfLineNumberFailedCommandInfoerrMsgerrSess errScreenerrClasserrStackFailedCommandTypeMethodNotAllowedInvalidXPathSelectorReturnTypeInvalidXPathSelectorMoveTargetOutOfBoundsInvalidSelectorIMEEngineActivationFailedIMENotAvailableInvalidElementCoordinates ScriptTimeout NoAlertOpenUnexpectedAlertOpenUnableToSetCookieInvalidCookieDomain NoSuchWindowTimeoutXPathLookupErrorJavascriptErrorElementIsNotSelectable UnknownErrorInvalidElementStateElementNotVisibleStaleElementReference UnknownFrame NoSuchFrame NoSuchElement FailedCommand ServerErrorUnknownCommand HTTPConnErrorHTTPStatusUnknown InvalidURLmkFailedCommandInfo failedCommand ExpectFailed unexpectedexpect expectAny expectAll waitUntil waitUntil' waitWhile waitWhile' onTimeoutWebStorageTypeSessionStorage LocalStorage MouseButton RightButton MiddleButton LeftButton OrientationPortrait LandscapeSelectorByXPathByCSSByPartialLinkText ByLinkTextByTagByClassByNameByIdElementCookiecookName cookValuecookPath cookDomain cookSecure cookExpiry WindowHandle FrameSelector DefaultFrame WithElementWithName WithIndexJSArg serverStatussessionsgetCaps closeSessionsetImplicitWaitsetScriptTimeoutsetPageLoadTimeout getCurrentURLopenPageforwardbackrefresh executeJSasyncJS screenshotavailableIMEEnginesactiveIMEEnginecheckIMEActive activateIME deactivateIME focusFrame currentWindowgetCurrentWindowwindows focusWindow closeWindowmaximize getWindowSize setWindowSize getWindowPos setWindowPosmkCookiecookies setCookie deleteCookiedeleteVisibleCookies getSourcegetTitlefindElem findElems activeElem findElemFrom findElemsFromelemInfoclicksubmitgetTextsendKeys sendRawKeystagName clearInput isSelected isEnabled isDisplayedattrcssPropelemPoselemSize<==>getOrientationsetOrientation getAlertText replyToAlert acceptAlert dismissAlertmoveTo moveToCenter moveToFrom clickWith withMouseDown mouseDownmouseUp doubleClick touchClick touchDowntouchUp touchMove touchScrolltouchScrollFromtouchDoubleClicktouchLongClick touchFlicktouchFlickFrom getLocation setLocation uploadFile uploadRawFileuploadZipEntry storageSize getAllKeys deleteAllKeysgetKeysetKey deleteKeyWDrunWD withSession finallyClosecloseOnException $fToPrefFixed $fToPrefRatio $fToPrefFloat$fToPrefDouble$fToPrefWord64$fToPrefWord32$fToPrefWord16 $fToPrefWord8 $fToPrefWord $fToPrefInt64 $fToPrefInt32 $fToPrefInt16 $fToPrefInt8 $fToPrefInt$fToPrefInteger $fToPrefBool $fToPref[] $fToPrefText$fExceptionProfileParseError$fFromJSONProfilePref$fToJSONProfilePref$fToJSONPreparedProfile$fFromJSONPreparedProfile aeson-0.6.0.2Data.Aeson.Types.Internalobjectbytestring-0.9.2.1Data.ByteString.Lazy.Internal ByteStringValueData.Aeson.Types.ClassFromJSON.:Object$fExceptionBadJSONdata-default-0.4.0 Data.DefaultDefault$fFromJSONLogPref$fToJSONLogPref$fDefaultLogPref$fToJSONProxyType$fFromJSONProxyType$fFromJSONPlatform$fToJSONPlatform$fFromJSONBrowser$fToJSONBrowser$fDefaultBrowser$fFromJSONCapabilities$fToJSONCapabilities$fDefaultCapabilitiesdef$fWebDriverRWST$fSessionStateRWST$fWebDriverRWST0$fSessionStateRWST0$fWebDriverErrorT$fSessionStateErrorT$fWebDriverReaderT$fSessionStateReaderT$fWebDriverWriterT$fSessionStateWriterT$fWebDriverIdentityT$fSessionStateIdentityT$fWebDriverMaybeT$fSessionStateMaybeT$fWebDriverStateT$fSessionStateStateT$fWebDriverStateT0$fSessionStateStateT0$fExceptionNoSessionId$fDefaultWDSession$fShowFailedCommandInfomkWDUri mkRequest handleHTTPErrhandleHTTPResp handleJSONErr$fFromJSONStackFrame$fFromJSONFailedCommandInfo$fShowStackFrame$fExceptionFailedCommand$fExceptionServerError$fExceptionUnknownCommand$fExceptionHTTPConnError$fExceptionHTTPStatusUnknown$fExceptionInvalidURL$fFromJSONWDResponse$fExceptionExpectFailedToJSON$fFromJSONMouseButton$fToJSONMouseButton$fFromJSONOrientation$fToJSONOrientation$fToJSONSelector$fToJSONElement$fFromJSONElement$fFromJSONCookie$fDefaultWindowHandle$fToJSONFrameSelector $fToJSONJSArg$fToJSONCookieghc-prim GHC.TypesIO $fWebDriverWD$fSessionStateWD$fMonadBaseControlIOWD$fMonadBaseIOWD