Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ctrl not pressed for Ctrl-A (SendKeys of Actions API) #665

Closed
2 tasks
codingphil opened this issue Apr 21, 2017 · 23 comments
Closed
2 tasks

Ctrl not pressed for Ctrl-A (SendKeys of Actions API) #665

codingphil opened this issue Apr 21, 2017 · 23 comments
Labels

Comments

@codingphil
Copy link

codingphil commented Apr 21, 2017

Firefox Version

53.0 (64bit)
geckodriver 0.15

Platform

Windows 10 Anniversary Update (Redstone 1)

Steps to reproduce -

When sending "Ctrl-A" to Actions.sendKeys(elem, keys) the Ctrl key seems to be not pressed (just the 'a' character). The Ctrl-A is created via Keys.chord().

Sending other non-modifier special keys like Backspace works fine.

Maybe related to #233.

The following unit test fails with:
org.junit.ComparisonFailure: expected:<[]> but was:<[12345a]>

    // given
    driver.navigate().to("http://localhost/SimpleTextField.html"); // TODO: Adapt to your own local server
    WebElement textFieldElem = driver.findElementByName("textfield");
    textFieldElem.click();
    new Actions(driver).sendKeys(textFieldElem, "12345").perform();
    assertEquals("12345", textFieldElem.getAttribute("value"));
  
    // when
    List<CharSequence> keyWithModifiers = new ArrayList<CharSequence>();
    keyWithModifiers.add(Keys.CONTROL);
    keyWithModifiers.add("a");
    String ctrlA = Keys.chord(keyWithModifiers);
    new Actions(driver).sendKeys(textFieldElem, ctrlA).perform();
    new Actions(driver).sendKeys(Keys.DELETE).perform();
    
    // then
    assertEquals("", textFieldElem.getAttribute("value")); // <<=== FAILS

The same test works fine with Google Chrome.

  • A minimal HTML file
<!DOCTYPE html>
<html>
<head>
    <title>Simple Text Field</title>
</head>
<body>
    <h1>Simple Text Field</h1>
    <input type="text" name="textfield" value="">
</body>
</html>
  • A [trace level log]
Apr 21, 2017 5:07:15 PM org.openqa.selenium.firefox.FirefoxOptions toCapabilities
INFO: Preferring the firefox binary in these options (C:\Program Files\Mozilla Firefox\firefox.exe rather than /Program Files/Mozilla Firefox/firefox.exe)
Apr 21, 2017 5:07:15 PM org.openqa.selenium.firefox.FirefoxOptions toCapabilities
INFO: Preferring the firefox binary in these options (C:\Program Files\Mozilla Firefox\firefox.exe rather than null)
Apr 21, 2017 5:07:15 PM org.openqa.selenium.firefox.FirefoxOptions toCapabilities
INFO: Preferring the firefox binary in these options (C:\Program Files\Mozilla Firefox\firefox.exe rather than /Program Files/Mozilla Firefox/firefox.exe)
Apr 21, 2017 5:07:15 PM org.openqa.selenium.firefox.FirefoxOptions toCapabilities
INFO: Preferring the firefox binary in these options (C:\Program Files\Mozilla Firefox\firefox.exe rather than null)
1492787235734	geckodriver	INFO	Listening on 127.0.0.1:33610
1492787236444	mozprofile::profile	INFO	Using profile path C:\Users\philipl\AppData\Local\Temp\rust_mozprofile.F0DcFSGb5XzF
1492787236451	geckodriver::marionette	INFO	Starting browser C:\Program Files\Mozilla Firefox\firefox.exe with args []
1492787236465	geckodriver::marionette	INFO	Connecting to Marionette on localhost:4302
1492787236954	Marionette	DEBUG	Marionette enabled via build flag and pref
1492787237951	Marionette	INFO	Listening on port 4302
1492787237968	geckodriver::marionette	DEBUG	TCP connection established
[GPU 26204] WARNING: pipe error: 109: file c:/builds/moz2_slave/m-rel-w64-00000000000000000000/build/src/ipc/chromium/src/chrome/common/ipc_channel_win.cc, line 346
1492787237992	Marionette	DEBUG	Accepted connection conn0 from 127.0.0.1:4309
1492787237997	geckodriver::marionette	DEBUG	← {"applicationType":"gecko","marionetteProtocol":3}
1492787237997	geckodriver::marionette	DEBUG	→ 411:[0,1,"newSession",{"capabilities":{"desiredCapabilities":{"browserName":"firefox","firefox_binary":{"class":"org.openqa.selenium.firefox.FirefoxBinary","extraEnv":{},"hCode":18255785,"timeout":45000},"marionette":true,"platform":"ANY","version":""},"requiredCapabilities":{"firefox_binary":{"class":"org.openqa.selenium.firefox.FirefoxBinary","extraEnv":{},"hCode":18255785,"timeout":45000}}},"sessionId":null}]
1492787238002	Marionette	TRACE	conn0 -> [0,1,"newSession",{"capabilities":{"desiredCapabilities":{"browserName":"firefox","firefox_binary":{"class":"org.openqa.selenium.firefox.FirefoxBinary","extraEnv":{},"hCode":18255785,"timeout":45000},"marionette":true,"platform":"ANY","version":""},"requiredCapabilities":{"firefox_binary":{"class":"org.openqa.selenium.firefox.FirefoxBinary","extraEnv":{},"hCode":18255785,"timeout":45000}}},"sessionId":null}]
1492787238005	Marionette	CONFIG	Matched capabilities: {"browserName":"firefox","browserVersion":"53.0","platformName":"windows_nt","platformVersion":"10.0","pageLoadStrategy":"normal","acceptInsecureCerts":false,"timeouts":{"implicit":0,"pageLoad":300000,"script":30000},"rotatable":false,"specificationLevel":0,"moz:processID":34440,"moz:profile":"C:\\Users\\philipl\\AppData\\Local\\Temp\\rust_mozprofile.F0DcFSGb5XzF","moz:accessibilityChecks":false}
1492787238046	Marionette	TRACE	conn0 <- [1,1,null,{"sessionId":"b802711d-5304-421e-bcf3-86db23ea574a","capabilities":{"browserName":"firefox","browserVersion":"53.0","platformName":"windows_nt","platformVersion":"10.0","pageLoadStrategy":"normal","acceptInsecureCerts":false,"timeouts":{"implicit":0,"pageLoad":300000,"script":30000},"rotatable":false,"specificationLevel":0,"moz:processID":34440,"moz:profile":"C:\\Users\\philipl\\AppData\\Local\\Temp\\rust_mozprofile.F0DcFSGb5XzF","moz:accessibilityChecks":false}}]
1492787238049	geckodriver::marionette	DEBUG	← [1,1,null,{"sessionId":"b802711d-5304-421e-bcf3-86db23ea574a","capabilities":{"browserName":"firefox","browserVersion":"53.0","platformName":"windows_nt","platformVersion":"10.0","pageLoadStrategy":"normal","acceptInsecureCerts":false,"timeouts":{"implicit":0,"pageLoad":300000,"script":30000},"rotatable":false,"specificationLevel":0,"moz:processID":34440,"moz:profile":"C:\\Users\\philipl\\AppData\\Local\\Temp\\rust_mozprofile.F0DcFSGb5XzF","moz:accessibilityChecks":false}}]
1492787238049	webdriver::server	DEBUG	Returning status Ok
1492787238049	webdriver::server	DEBUG	Returning body {"value": {"sessionId":"b802711d-5304-421e-bcf3-86db23ea574a","value":{"acceptInsecureCerts":false,"browserName":"firefox","browserVersion":"53.0","moz:accessibilityChecks":false,"moz:processID":34440,"moz:profile":"C:\\Users\\philipl\\AppData\\Local\\Temp\\rust_mozprofile.F0DcFSGb5XzF","pageLoadStrategy":"normal","platformName":"windows_nt","platformVersion":"10.0","rotatable":false,"specificationLevel":0,"timeouts":{"implicit":0,"pageLoad":300000,"script":30000}}}}
1492787238049	hyper::header	TRACE	Headers.set( "Content-Type", ContentType(Mime(Application, Json, [(Charset, Utf8)])) )
1492787238049	hyper::header	TRACE	Headers.set( "Cache-Control", CacheControl([NoCache]) )
1492787238049	hyper::header	TRACE	Headers.set( "Content-Length", ContentLength(471) )
1492787238049	hyper::server::response	DEBUG	writing head: Http11 Ok
1492787238049	hyper::header	TRACE	Headers.set( "Date", Date(HttpDate(Tm { tm_sec: 18, tm_min: 7, tm_hour: 15, tm_mday: 21, tm_mon: 3, tm_year: 117, tm_wday: 5, tm_yday: 110, tm_isdst: 0, tm_utcoff: 0, tm_nsec: 49004800 })) )
1492787238049	hyper::server::response	DEBUG	headers [
Headers { Connection: close
, Content-Type: application/json; charset=utf-8
, Cache-Control: no-cache
, Content-Length: 471
, Date: Fri, 21 Apr 2017 15:07:18 GMT
, }]
1492787238049	hyper::server::response	DEBUG	write 471 bytes
1492787238049	hyper::server::response	TRACE	ending
1492787238049	hyper::server	DEBUG	keep_alive = false for 127.0.0.1:4301
1492787238049	hyper::server	DEBUG	keep_alive loop ending for 127.0.0.1:4301
Apr 21, 2017 5:07:18 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C
1492787238075	hyper::server	DEBUG	Incoming stream
1492787238075	hyper::buffer	TRACE	get_buf []
1492787238075	hyper::buffer	TRACE	read_into_buf buf[0..4096]
1492787238076	hyper::buffer	TRACE	get_buf [u8; 4096][0..325]
1492787238076	hyper::http::h1	TRACE	try_parse([80, 79, 83, 84, 32, 47, 115, 101, 115, 115, 105, 111, 110, 47, 98, 56, 48, 50, 55, 49, 49, 100, 45, 53, 51, 48, 52, 45, 52, 50, 49, 101, 45, 98, 99, 102, 51, 45, 56, 54, 100, 98, 50, 51, 101, 97, 53, 55, 52, 97, 47, 117, 114, 108, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 84, 121, 112, 101, 58, 32, 97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 76, 101, 110, 103, 116, 104, 58, 32, 53, 57, 13, 10, 72, 111, 115, 116, 58, 32, 108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 75, 101, 101, 112, 45, 65, 108, 105, 118, 101, 13, 10, 85, 115, 101, 114, 45, 65, 103, 101, 110, 116, 58, 32, 65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41, 13, 10, 65, 99, 99, 101, 112, 116, 45, 69, 110, 99, 111, 100, 105, 110, 103, 58, 32, 103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101, 13, 10, 13, 10, 123, 34, 117, 114, 108, 34, 58, 34, 104, 116, 116, 112, 58, 47, 47, 108, 110, 122, 45, 116, 101, 115, 116, 115, 105, 116, 101, 47, 83, 105, 108, 107, 84, 101, 115, 116, 47, 83, 105, 109, 112, 108, 101, 84, 101, 120, 116, 70, 105, 101, 108, 100, 46, 104, 116, 109, 108, 34, 125])
1492787238076	hyper::http::h1	TRACE	Request.try_parse([Header; 100], [u8; 325])
1492787238076	hyper::http::h1	TRACE	Request.try_parse Complete(266)
1492787238076	hyper::header	TRACE	raw header: "Content-Type"=[97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56]
1492787238076	hyper::header	TRACE	raw header: "Content-Length"=[53, 57]
1492787238076	hyper::header	TRACE	raw header: "Host"=[108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48]
1492787238076	hyper::header	TRACE	raw header: "Connection"=[75, 101, 101, 112, 45, 65, 108, 105, 118, 101]
1492787238076	hyper::header	TRACE	raw header: "User-Agent"=[65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41]
1492787238076	hyper::header	TRACE	raw header: "Accept-Encoding"=[103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101]
1492787238076	hyper::server::request	DEBUG	Request Line: Post AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/url") Http11
1492787238076	hyper::server::request	DEBUG	Headers { Content-Type: application/json; charset=utf-8
, Content-Length: 59
, Host: localhost:33610
, Connection: Keep-Alive
, User-Agent: Apache-HttpClient/4.5.2 (Java/1.8.0_112)
, Accept-Encoding: gzip,deflate
, }
1492787238076	hyper::header	TRACE	Headers.set( "Connection", Connection([Close]) )
1492787238076	hyper::http::h1	TRACE	Sized read, remaining=59
1492787238076	hyper::http::h1	TRACE	Sized read: 32
1492787238076	hyper::http::h1	TRACE	Sized read, remaining=27
1492787238076	hyper::http::h1	TRACE	Sized read: 27
1492787238076	hyper::http::h1	TRACE	Sized read, remaining=0
1492787238076	webdriver::server	DEBUG	Got request POST AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/url")
1492787238076	webdriver::command	DEBUG	Got request body {"url":"http://lnz-testsite/SilkTest/SimpleTextField.html"}
1492787238077	geckodriver::marionette	DEBUG	→ 71:[0,2,"get",{"url":"http://lnz-testsite/SilkTest/SimpleTextField.html"}]
1492787238077	Marionette	TRACE	conn0 -> [0,2,"get",{"url":"http://lnz-testsite/SilkTest/SimpleTextField.html"}]
1492787238116	Marionette	TRACE	conn0 <- [1,2,null,{}]
1492787238120	geckodriver::marionette	DEBUG	← [1,2,null,{}]
1492787238120	webdriver::server	DEBUG	Returning status Ok
1492787238120	webdriver::server	DEBUG	Returning body {"value": {}}
1492787238120	hyper::header	TRACE	Headers.set( "Content-Type", ContentType(Mime(Application, Json, [(Charset, Utf8)])) )
1492787238120	hyper::header	TRACE	Headers.set( "Cache-Control", CacheControl([NoCache]) )
1492787238120	hyper::header	TRACE	Headers.set( "Content-Length", ContentLength(13) )
1492787238120	hyper::server::response	DEBUG	writing head: Http11 Ok
1492787238120	hyper::header	TRACE	Headers.set( "Date", Date(HttpDate(Tm { tm_sec: 18, tm_min: 7, tm_hour: 15, tm_mday: 21, tm_mon: 3, tm_year: 117, tm_wday: 5, tm_yday: 110, tm_isdst: 0, tm_utcoff: 0, tm_nsec: 120541400 })) )
1492787238120	hyper::server::response	DEBUG	headers [
Headers { Connection: close
, Content-Type: application/json; charset=utf-8
, Cache-Control: no-cache
, Content-Length: 13
, Date: Fri, 21 Apr 2017 15:07:18 GMT
, }]
1492787238120	hyper::server::response	DEBUG	write 13 bytes
1492787238120	hyper::server::response	TRACE	ending
1492787238121	hyper::server	DEBUG	keep_alive = false for 127.0.0.1:4315
1492787238121	hyper::server	DEBUG	keep_alive loop ending for 127.0.0.1:4315
1492787238125	hyper::server	DEBUG	Incoming stream
1492787238125	hyper::buffer	TRACE	get_buf []
1492787238125	hyper::buffer	TRACE	read_into_buf buf[0..4096]
1492787238125	hyper::buffer	TRACE	get_buf [u8; 4096][0..324]
1492787238125	hyper::http::h1	TRACE	try_parse([80, 79, 83, 84, 32, 47, 115, 101, 115, 115, 105, 111, 110, 47, 98, 56, 48, 50, 55, 49, 49, 100, 45, 53, 51, 48, 52, 45, 52, 50, 49, 101, 45, 98, 99, 102, 51, 45, 56, 54, 100, 98, 50, 51, 101, 97, 53, 55, 52, 97, 47, 101, 108, 101, 109, 101, 110, 116, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 84, 121, 112, 101, 58, 32, 97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 76, 101, 110, 103, 116, 104, 58, 32, 53, 52, 13, 10, 72, 111, 115, 116, 58, 32, 108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 75, 101, 101, 112, 45, 65, 108, 105, 118, 101, 13, 10, 85, 115, 101, 114, 45, 65, 103, 101, 110, 116, 58, 32, 65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41, 13, 10, 65, 99, 99, 101, 112, 116, 45, 69, 110, 99, 111, 100, 105, 110, 103, 58, 32, 103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101, 13, 10, 13, 10, 123, 34, 118, 97, 108, 117, 101, 34, 58, 34, 42, 91, 110, 97, 109, 101, 61, 39, 116, 101, 120, 116, 102, 105, 101, 108, 100, 39, 93, 34, 44, 34, 117, 115, 105, 110, 103, 34, 58, 34, 99, 115, 115, 32, 115, 101, 108, 101, 99, 116, 111, 114, 34, 125])
1492787238125	hyper::http::h1	TRACE	Request.try_parse([Header; 100], [u8; 324])
1492787238125	hyper::http::h1	TRACE	Request.try_parse Complete(270)
1492787238125	hyper::header	TRACE	raw header: "Content-Type"=[97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56]
1492787238125	hyper::header	TRACE	raw header: "Content-Length"=[53, 52]
1492787238125	hyper::header	TRACE	raw header: "Host"=[108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48]
1492787238125	hyper::header	TRACE	raw header: "Connection"=[75, 101, 101, 112, 45, 65, 108, 105, 118, 101]
1492787238125	hyper::header	TRACE	raw header: "User-Agent"=[65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41]
1492787238125	hyper::header	TRACE	raw header: "Accept-Encoding"=[103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101]
1492787238125	hyper::server::request	DEBUG	Request Line: Post AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/element") Http11
1492787238125	hyper::server::request	DEBUG	Headers { Content-Type: application/json; charset=utf-8
, Content-Length: 54
, Host: localhost:33610
, Connection: Keep-Alive
, User-Agent: Apache-HttpClient/4.5.2 (Java/1.8.0_112)
, Accept-Encoding: gzip,deflate
, }
1492787238125	hyper::header	TRACE	Headers.set( "Connection", Connection([Close]) )
1492787238125	hyper::http::h1	TRACE	Sized read, remaining=54
1492787238125	hyper::http::h1	TRACE	Sized read: 32
1492787238125	hyper::http::h1	TRACE	Sized read, remaining=22
1492787238125	hyper::http::h1	TRACE	Sized read: 22
1492787238125	hyper::http::h1	TRACE	Sized read, remaining=0
1492787238125	webdriver::server	DEBUG	Got request POST AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/element")
1492787238126	webdriver::command	DEBUG	Got request body {"value":"*[name='textfield']","using":"css selector"}
1492787238126	geckodriver::marionette	DEBUG	→ 74:[0,3,"findElement",{"using":"css selector","value":"*[name='textfield']"}]
1492787238129	Marionette	TRACE	conn0 -> [0,3,"findElement",{"using":"css selector","value":"*[name='textfield']"}]
1492787238135	Marionette	TRACE	conn0 <- [1,3,null,{"value":{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30","ELEMENT":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"}}]
1492787238135	geckodriver::marionette	DEBUG	← [1,3,null,{"value":{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30","ELEMENT":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"}}]
1492787238135	webdriver::server	DEBUG	Returning status Ok
1492787238136	webdriver::server	DEBUG	Returning body {"value":{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"}}
1492787238136	hyper::header	TRACE	Headers.set( "Content-Type", ContentType(Mime(Application, Json, [(Charset, Utf8)])) )
1492787238136	hyper::header	TRACE	Headers.set( "Cache-Control", CacheControl([NoCache]) )
1492787238136	hyper::header	TRACE	Headers.set( "Content-Length", ContentLength(88) )
1492787238136	hyper::server::response	DEBUG	writing head: Http11 Ok
1492787238136	hyper::header	TRACE	Headers.set( "Date", Date(HttpDate(Tm { tm_sec: 18, tm_min: 7, tm_hour: 15, tm_mday: 21, tm_mon: 3, tm_year: 117, tm_wday: 5, tm_yday: 110, tm_isdst: 0, tm_utcoff: 0, tm_nsec: 136051000 })) )
1492787238136	hyper::server::response	DEBUG	headers [
Headers { Connection: close
, Content-Type: application/json; charset=utf-8
, Cache-Control: no-cache
, Content-Length: 88
, Date: Fri, 21 Apr 2017 15:07:18 GMT
, }]
1492787238136	hyper::server::response	DEBUG	write 88 bytes
1492787238136	hyper::server::response	TRACE	ending
1492787238136	hyper::server	DEBUG	keep_alive = false for 127.0.0.1:4317
1492787238136	hyper::server	DEBUG	keep_alive loop ending for 127.0.0.1:4317
1492787238140	hyper::server	DEBUG	Incoming stream
1492787238140	hyper::buffer	TRACE	get_buf []
1492787238140	hyper::buffer	TRACE	read_into_buf buf[0..4096]
1492787238141	hyper::buffer	TRACE	get_buf [u8; 4096][0..358]
1492787238141	hyper::http::h1	TRACE	try_parse([80, 79, 83, 84, 32, 47, 115, 101, 115, 115, 105, 111, 110, 47, 98, 56, 48, 50, 55, 49, 49, 100, 45, 53, 51, 48, 52, 45, 52, 50, 49, 101, 45, 98, 99, 102, 51, 45, 56, 54, 100, 98, 50, 51, 101, 97, 53, 55, 52, 97, 47, 101, 108, 101, 109, 101, 110, 116, 47, 100, 98, 99, 48, 53, 49, 102, 102, 45, 48, 101, 53, 50, 45, 52, 98, 57, 53, 45, 98, 55, 101, 55, 45, 101, 102, 53, 98, 98, 56, 50, 56, 49, 100, 51, 48, 47, 99, 108, 105, 99, 107, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 84, 121, 112, 101, 58, 32, 97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 76, 101, 110, 103, 116, 104, 58, 32, 52, 53, 13, 10, 72, 111, 115, 116, 58, 32, 108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 75, 101, 101, 112, 45, 65, 108, 105, 118, 101, 13, 10, 85, 115, 101, 114, 45, 65, 103, 101, 110, 116, 58, 32, 65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41, 13, 10, 65, 99, 99, 101, 112, 116, 45, 69, 110, 99, 111, 100, 105, 110, 103, 58, 32, 103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101, 13, 10, 13, 10, 123, 34, 105, 100, 34, 58, 34, 100, 98, 99, 48, 53, 49, 102, 102, 45, 48, 101, 53, 50, 45, 52, 98, 57, 53, 45, 98, 55, 101, 55, 45, 101, 102, 53, 98, 98, 56, 50, 56, 49, 100, 51, 48, 34, 125])
1492787238141	hyper::http::h1	TRACE	Request.try_parse([Header; 100], [u8; 358])
1492787238141	hyper::http::h1	TRACE	Request.try_parse Complete(313)
1492787238141	hyper::header	TRACE	raw header: "Content-Type"=[97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56]
1492787238141	hyper::header	TRACE	raw header: "Content-Length"=[52, 53]
1492787238141	hyper::header	TRACE	raw header: "Host"=[108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48]
1492787238141	hyper::header	TRACE	raw header: "Connection"=[75, 101, 101, 112, 45, 65, 108, 105, 118, 101]
1492787238141	hyper::header	TRACE	raw header: "User-Agent"=[65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41]
1492787238141	hyper::header	TRACE	raw header: "Accept-Encoding"=[103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101]
1492787238141	hyper::server::request	DEBUG	Request Line: Post AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/element/dbc051ff-0e52-4b95-b7e7-ef5bb8281d30/click") Http11
1492787238141	hyper::server::request	DEBUG	Headers { Content-Type: application/json; charset=utf-8
, Content-Length: 45
, Host: localhost:33610
, Connection: Keep-Alive
, User-Agent: Apache-HttpClient/4.5.2 (Java/1.8.0_112)
, Accept-Encoding: gzip,deflate
, }
1492787238141	hyper::header	TRACE	Headers.set( "Connection", Connection([Close]) )
1492787238141	hyper::http::h1	TRACE	Sized read, remaining=45
1492787238141	hyper::http::h1	TRACE	Sized read: 32
1492787238141	hyper::http::h1	TRACE	Sized read, remaining=13
1492787238141	hyper::http::h1	TRACE	Sized read: 13
1492787238141	hyper::http::h1	TRACE	Sized read, remaining=0
1492787238141	webdriver::server	DEBUG	Got request POST AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/element/dbc051ff-0e52-4b95-b7e7-ef5bb8281d30/click")
1492787238142	webdriver::command	DEBUG	Got request body {"id":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"}
1492787238142	geckodriver::marionette	DEBUG	→ 66:[0,4,"clickElement",{"id":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"}]
1492787238143	Marionette	TRACE	conn0 -> [0,4,"clickElement",{"id":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"}]
1492787238181	Marionette	TRACE	conn0 <- [1,4,null,{}]
1492787238181	geckodriver::marionette	DEBUG	← [1,4,null,{}]
1492787238181	webdriver::server	DEBUG	Returning status Ok
1492787238181	webdriver::server	DEBUG	Returning body {"value": {}}
1492787238181	hyper::header	TRACE	Headers.set( "Content-Type", ContentType(Mime(Application, Json, [(Charset, Utf8)])) )
1492787238181	hyper::header	TRACE	Headers.set( "Cache-Control", CacheControl([NoCache]) )
1492787238181	hyper::header	TRACE	Headers.set( "Content-Length", ContentLength(13) )
1492787238181	hyper::server::response	DEBUG	writing head: Http11 Ok
1492787238181	hyper::header	TRACE	Headers.set( "Date", Date(HttpDate(Tm { tm_sec: 18, tm_min: 7, tm_hour: 15, tm_mday: 21, tm_mon: 3, tm_year: 117, tm_wday: 5, tm_yday: 110, tm_isdst: 0, tm_utcoff: 0, tm_nsec: 181584900 })) )
1492787238181	hyper::server::response	DEBUG	headers [
Headers { Connection: close
, Content-Type: application/json; charset=utf-8
, Cache-Control: no-cache
, Content-Length: 13
, Date: Fri, 21 Apr 2017 15:07:18 GMT
, }]
1492787238181	hyper::server::response	DEBUG	write 13 bytes
1492787238181	hyper::server::response	TRACE	ending
1492787238182	hyper::server	DEBUG	keep_alive = false for 127.0.0.1:4318
1492787238182	hyper::server	DEBUG	keep_alive loop ending for 127.0.0.1:4318
1492787238194	hyper::server	DEBUG	Incoming stream
1492787238194	hyper::buffer	TRACE	get_buf []
1492787238194	hyper::buffer	TRACE	read_into_buf buf[0..4096]
1492787238194	hyper::buffer	TRACE	get_buf [u8; 4096][0..1067]
1492787238194	hyper::http::h1	TRACE	try_parse([80, 79, 83, 84, 32, 47, 115, 101, 115, 115, 105, 111, 110, 47, 98, 56, 48, 50, 55, 49, 49, 100, 45, 53, 51, 48, 52, 45, 52, 50, 49, 101, 45, 98, 99, 102, 51, 45, 56, 54, 100, 98, 50, 51, 101, 97, 53, 55, 52, 97, 47, 97, 99, 116, 105, 111, 110, 115, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 84, 121, 112, 101, 58, 32, 97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 76, 101, 110, 103, 116, 104, 58, 32, 55, 57, 54, 13, 10, 72, 111, 115, 116, 58, 32, 108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 75, 101, 101, 112, 45, 65, 108, 105, 118, 101, 13, 10, 85, 115, 101, 114, 45, 65, 103, 101, 110, 116, 58, 32, 65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41, 13, 10, 65, 99, 99, 101, 112, 116, 45, 69, 110, 99, 111, 100, 105, 110, 103, 58, 32, 103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101, 13, 10, 13, 10, 123, 34, 97, 99, 116, 105, 111, 110, 115, 34, 58, 91, 123, 34, 105, 100, 34, 58, 34, 100, 101, 102, 97, 117, 108, 116, 32, 109, 111, 117, 115, 101, 34, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 111, 105, 110, 116, 101, 114, 34, 44, 34, 112, 97, 114, 97, 109, 101, 116, 101, 114, 115, 34, 58, 123, 34, 112, 111, 105, 110, 116, 101, 114, 84, 121, 112, 101, 34, 58, 34, 109, 111, 117, 115, 101, 34, 125, 44, 34, 97, 99, 116, 105, 111, 110, 115, 34, 58, 91, 123, 34, 100, 117, 114, 97, 116, 105, 111, 110, 34, 58, 49, 48, 48, 44, 34, 120, 34, 58, 48, 44, 34, 121, 34, 58, 48, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 111, 105, 110, 116, 101, 114, 77, 111, 118, 101, 34, 44, 34, 111, 114, 105, 103, 105, 110, 34, 58, 123, 34, 69, 76, 69, 77, 69, 78, 84, 34, 58, 34, 100, 98, 99, 48, 53, 49, 102, 102, 45, 48, 101, 53, 50, 45, 52, 98, 57, 53, 45, 98, 55, 101, 55, 45, 101, 102, 53, 98, 98, 56, 50, 56, 49, 100, 51, 48, 34, 44, 34, 101, 108, 101, 109, 101, 110, 116, 45, 54, 48, 54, 54, 45, 49, 49, 101, 52, 45, 97, 53, 50, 101, 45, 52, 102, 55, 51, 53, 52, 54, 54, 99, 101, 99, 102, 34, 58, 34, 100, 98, 99, 48, 53, 49, 102, 102, 45, 48, 101, 53, 50, 45, 52, 98, 57, 53, 45, 98, 55, 101, 55, 45, 101, 102, 53, 98, 98, 56, 50, 56, 49, 100, 51, 48, 34, 125, 125, 44, 123, 34, 98, 117, 116, 116, 111, 110, 34, 58, 48, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 111, 105, 110, 116, 101, 114, 68, 111, 119, 110, 34, 125, 44, 123, 34, 98, 117, 116, 116, 111, 110, 34, 58, 48, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 111, 105, 110, 116, 101, 114, 85, 112, 34, 125, 93, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 34, 44, 34, 97, 99, 116, 105, 111, 110, 115, 34, 58, 91, 123, 34, 100, 117, 114, 97, 116, 105, 111, 110, 34, 58, 48, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 97, 117, 115, 101, 34, 125, 44, 123, 34, 100, 117, 114, 97, 116, 105, 111, 110, 34, 58, 48, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 97, 117, 115, 101, 34, 125, 44, 123, 34, 100, 117, 114, 97, 116, 105, 111, 110, 34, 58, 48, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 97, 117, 115, 101, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 68, 111, 119, 110, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 49, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 85, 112, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 49, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 68, 111, 119, 110, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 50, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 85, 112, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 50, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 68, 111, 119, 110, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 51, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 85, 112, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 51, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 68, 111, 119, 110, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 52, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 85, 112, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 52, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 68, 111, 119, 110, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 53, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 85, 112, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 53, 34, 125, 93, 44, 34, 105, 100, 34, 58, 34, 100, 101, 102, 97, 117, 108, 116, 32, 107, 101, 121, 98, 111, 97, 114, 100, 34, 125, 93, 125])
1492787238194	hyper::http::h1	TRACE	Request.try_parse([Header; 100], [u8; 1067])
1492787238194	hyper::http::h1	TRACE	Request.try_parse Complete(271)
1492787238194	hyper::header	TRACE	raw header: "Content-Type"=[97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56]
1492787238194	hyper::header	TRACE	raw header: "Content-Length"=[55, 57, 54]
1492787238194	hyper::header	TRACE	raw header: "Host"=[108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48]
1492787238194	hyper::header	TRACE	raw header: "Connection"=[75, 101, 101, 112, 45, 65, 108, 105, 118, 101]
1492787238194	hyper::header	TRACE	raw header: "User-Agent"=[65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41]
1492787238194	hyper::header	TRACE	raw header: "Accept-Encoding"=[103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101]
1492787238194	hyper::server::request	DEBUG	Request Line: Post AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/actions") Http11
1492787238194	hyper::server::request	DEBUG	Headers { Content-Type: application/json; charset=utf-8
, Content-Length: 796
, Host: localhost:33610
, Connection: Keep-Alive
, User-Agent: Apache-HttpClient/4.5.2 (Java/1.8.0_112)
, Accept-Encoding: gzip,deflate
, }
1492787238194	hyper::header	TRACE	Headers.set( "Connection", Connection([Close]) )
1492787238194	hyper::http::h1	TRACE	Sized read, remaining=796
1492787238194	hyper::http::h1	TRACE	Sized read: 32
1492787238194	hyper::http::h1	TRACE	Sized read, remaining=764
1492787238194	hyper::http::h1	TRACE	Sized read: 64
1492787238194	hyper::http::h1	TRACE	Sized read, remaining=700
1492787238194	hyper::http::h1	TRACE	Sized read: 128
1492787238194	hyper::http::h1	TRACE	Sized read, remaining=572
1492787238194	hyper::http::h1	TRACE	Sized read: 256
1492787238194	hyper::http::h1	TRACE	Sized read, remaining=316
1492787238194	hyper::http::h1	TRACE	Sized read: 316
1492787238194	hyper::http::h1	TRACE	Sized read, remaining=0
1492787238194	webdriver::server	DEBUG	Got request POST AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/actions")
1492787238195	webdriver::command	DEBUG	Got request body {"actions":[{"id":"default mouse","type":"pointer","parameters":{"pointerType":"mouse"},"actions":[{"duration":100,"x":0,"y":0,"type":"pointerMove","origin":{"ELEMENT":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30","element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"}},{"button":0,"type":"pointerDown"},{"button":0,"type":"pointerUp"}]},{"type":"key","actions":[{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"type":"keyDown","value":"1"},{"type":"keyUp","value":"1"},{"type":"keyDown","value":"2"},{"type":"keyUp","value":"2"},{"type":"keyDown","value":"3"},{"type":"keyUp","value":"3"},{"type":"keyDown","value":"4"},{"type":"keyUp","value":"4"},{"type":"keyDown","value":"5"},{"type":"keyUp","value":"5"}],"id":"default keyboard"}]}
1492787238195	geckodriver::marionette	DEBUG	→ 770:[0,5,"performActions",{"actions":[{"actions":[{"duration":100,"origin":{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"},"type":"pointerMove","x":0,"y":0},{"button":0,"type":"pointerDown"},{"button":0,"type":"pointerUp"}],"id":"default mouse","parameters":{"pointerType":"mouse"},"type":"pointer"},{"actions":[{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"type":"keyDown","value":"1"},{"type":"keyUp","value":"1"},{"type":"keyDown","value":"2"},{"type":"keyUp","value":"2"},{"type":"keyDown","value":"3"},{"type":"keyUp","value":"3"},{"type":"keyDown","value":"4"},{"type":"keyUp","value":"4"},{"type":"keyDown","value":"5"},{"type":"keyUp","value":"5"}],"id":"default keyboard","type":"key"}]}]
1492787238196	Marionette	TRACE	conn0 -> [0,5,"performActions",{"actions":[{"actions":[{"duration":100,"origin":{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"},"type":"pointerMove","x":0,"y":0},{"button":0,"type":"pointerDown"},{"button":0,"type":"pointerUp"}],"id":"default mouse","parameters":{"pointerType":"mouse"},"type":"pointer"},{"actions":[{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"type":"keyDown","value":"1"},{"type":"keyUp","value":"1"},{"type":"keyDown","value":"2"},{"type":"keyUp","value":"2"},{"type":"keyDown","value":"3"},{"type":"keyUp","value":"3"},{"type":"keyDown","value":"4"},{"type":"keyUp","value":"4"},{"type":"keyDown","value":"5"},{"type":"keyUp","value":"5"}],"id":"default keyboard","type":"key"}]}]
1492787238327	Marionette	TRACE	conn0 <- [1,5,null,{}]
1492787238327	geckodriver::marionette	DEBUG	← [1,5,null,{}]
1492787238327	webdriver::server	DEBUG	Returning status Ok
1492787238327	webdriver::server	DEBUG	Returning body {"value": {}}
1492787238327	hyper::header	TRACE	Headers.set( "Content-Type", ContentType(Mime(Application, Json, [(Charset, Utf8)])) )
1492787238327	hyper::header	TRACE	Headers.set( "Cache-Control", CacheControl([NoCache]) )
1492787238327	hyper::header	TRACE	Headers.set( "Content-Length", ContentLength(13) )
1492787238327	hyper::server::response	DEBUG	writing head: Http11 Ok
1492787238328	hyper::header	TRACE	Headers.set( "Date", Date(HttpDate(Tm { tm_sec: 18, tm_min: 7, tm_hour: 15, tm_mday: 21, tm_mon: 3, tm_year: 117, tm_wday: 5, tm_yday: 110, tm_isdst: 0, tm_utcoff: 0, tm_nsec: 328056600 })) )
1492787238328	hyper::server::response	DEBUG	headers [
Headers { Connection: close
, Content-Type: application/json; charset=utf-8
, Cache-Control: no-cache
, Content-Length: 13
, Date: Fri, 21 Apr 2017 15:07:18 GMT
, }]
1492787238328	hyper::server::response	DEBUG	write 13 bytes
1492787238328	hyper::server::response	TRACE	ending
1492787238328	hyper::server	DEBUG	keep_alive = false for 127.0.0.1:4320
1492787238328	hyper::server	DEBUG	keep_alive loop ending for 127.0.0.1:4320
1492787238339	hyper::server	DEBUG	Incoming stream
1492787238340	hyper::buffer	TRACE	get_buf []
1492787238340	hyper::buffer	TRACE	read_into_buf buf[0..4096]
1492787238340	hyper::buffer	TRACE	get_buf [u8; 4096][0..277]
1492787238340	hyper::http::h1	TRACE	try_parse([80, 79, 83, 84, 32, 47, 115, 101, 115, 115, 105, 111, 110, 47, 98, 56, 48, 50, 55, 49, 49, 100, 45, 53, 51, 48, 52, 45, 52, 50, 49, 101, 45, 98, 99, 102, 51, 45, 56, 54, 100, 98, 50, 51, 101, 97, 53, 55, 52, 97, 47, 101, 120, 101, 99, 117, 116, 101, 47, 115, 121, 110, 99, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 84, 121, 112, 101, 58, 32, 97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 76, 101, 110, 103, 116, 104, 58, 32, 56, 53, 52, 53, 13, 10, 72, 111, 115, 116, 58, 32, 108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 75, 101, 101, 112, 45, 65, 108, 105, 118, 101, 13, 10, 85, 115, 101, 114, 45, 65, 103, 101, 110, 116, 58, 32, 65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41, 13, 10, 65, 99, 99, 101, 112, 116, 45, 69, 110, 99, 111, 100, 105, 110, 103, 58, 32, 103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101, 13, 10, 13, 10])
1492787238340	hyper::http::h1	TRACE	Request.try_parse([Header; 100], [u8; 277])
1492787238340	hyper::http::h1	TRACE	Request.try_parse Complete(277)
1492787238340	hyper::header	TRACE	raw header: "Content-Type"=[97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56]
1492787238340	hyper::header	TRACE	raw header: "Content-Length"=[56, 53, 52, 53]
1492787238340	hyper::header	TRACE	raw header: "Host"=[108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48]
1492787238340	hyper::header	TRACE	raw header: "Connection"=[75, 101, 101, 112, 45, 65, 108, 105, 118, 101]
1492787238340	hyper::header	TRACE	raw header: "User-Agent"=[65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41]
1492787238340	hyper::header	TRACE	raw header: "Accept-Encoding"=[103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101]
1492787238340	hyper::server::request	DEBUG	Request Line: Post AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/execute/sync") Http11
1492787238340	hyper::server::request	DEBUG	Headers { Content-Type: application/json; charset=utf-8
, Content-Length: 8545
, Host: localhost:33610
, Connection: Keep-Alive
, User-Agent: Apache-HttpClient/4.5.2 (Java/1.8.0_112)
, Accept-Encoding: gzip,deflate
, }
1492787238340	hyper::header	TRACE	Headers.set( "Connection", Connection([Close]) )
1492787238340	hyper::http::h1	TRACE	Sized read, remaining=8545
1492787238341	hyper::http::h1	TRACE	Sized read: 32
1492787238341	hyper::http::h1	TRACE	Sized read, remaining=8513
1492787238341	hyper::http::h1	TRACE	Sized read: 64
1492787238341	hyper::http::h1	TRACE	Sized read, remaining=8449
1492787238341	hyper::http::h1	TRACE	Sized read: 128
1492787238341	hyper::http::h1	TRACE	Sized read, remaining=8321
1492787238341	hyper::http::h1	TRACE	Sized read: 256
1492787238341	hyper::http::h1	TRACE	Sized read, remaining=8065
1492787238341	hyper::http::h1	TRACE	Sized read: 512
1492787238341	hyper::http::h1	TRACE	Sized read, remaining=7553
1492787238341	hyper::http::h1	TRACE	Sized read: 1024
1492787238341	hyper::http::h1	TRACE	Sized read, remaining=6529
1492787238341	hyper::http::h1	TRACE	Sized read: 2048
1492787238341	hyper::http::h1	TRACE	Sized read, remaining=4481
1492787238341	hyper::http::h1	TRACE	Sized read: 32
1492787238341	hyper::http::h1	TRACE	Sized read, remaining=4449
1492787238341	hyper::http::h1	TRACE	Sized read: 1744
1492787238341	hyper::http::h1	TRACE	Sized read, remaining=2705
1492787238341	hyper::http::h1	TRACE	Sized read: 2320
1492787238341	hyper::http::h1	TRACE	Sized read, remaining=385
1492787238341	hyper::http::h1	TRACE	Sized read: 385
1492787238341	hyper::http::h1	TRACE	Sized read, remaining=0
1492787238341	webdriver::server	DEBUG	Got request POST AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/execute/sync")
1492787238342	webdriver::command	DEBUG	Got request body {"script":"return (function(){return function(){var aa=\"function\"==typeof Object.defineProperties?Object.defineProperty:function(a,c,b){if(b.get||b.set)throw new TypeError(\"ES3 does not support getters and setters.\");a!=Array.prototype&&a!=Object.prototype&&(a[c]=b.value)},ba=\"undefined\"!=typeof window&&window===this?this:\"undefined\"!=typeof global?global:this;\nfunction e(a,c){if(c){for(var b=ba,d=a.split(\".\"),f=0;f<d.length-1;f++){var h=d[f];h in b||(b[h]={});b=b[h]}d=d[d.length-1];f=b[d];h=c(f);h!=f&&null!=h&&aa(b,d,{configurable:!0,writable:!0,value:h})}}\ne(\"String.prototype.repeat\",function(a){return a?a:function(a){var b;if(null==this)throw new TypeError(\"The 'this' value for String.prototype.repeat must not be null or undefined\");b=this+\"\";if(0>a||1342177279<a)throw new RangeError(\"Invalid count value\");a|=0;for(var d=\"\";a;)if(a&1&&(d+=b),a>>>=1)b+=b;return d}});e(\"Math.sign\",function(a){return a?a:function(a){a=Number(a);return!a||isNaN(a)?a:0<a?1:-1}});var g=this;function l(a){return\"string\"==typeof a};function m(a,c){this.a=n[a]||p;this.message=c||\"\";var b=this.a.replace(/((?:^|\\s+)[a-z])/g,function(a){return a.toUpperCase().replace(/^[\\s\\xa0]+/g,\"\")}),d=b.length-5;if(0>d||b.indexOf(\"Error\",d)!=d)b+=\"Error\";this.name=b;b=Error(this.message);b.name=this.name;this.stack=b.stack||\"\"}\n(function(){var a=Error;function c(){}c.prototype=a.prototype;m.b=a.prototype;m.prototype=new c;m.prototype.constructor=m;m.a=function(b,c,f){for(var h=Array(arguments.length-2),k=2;k<arguments.length;k++)h[k-2]=arguments[k];return a.prototype[c].apply(b,h)}})();var p=\"unknown error\",n={15:\"element not selectable\",11:\"element not visible\"};n[31]=p;n[30]=p;n[24]=\"invalid cookie domain\";n[29]=\"invalid element coordinates\";n[12]=\"invalid element state\";n[32]=\"invalid selector\";n[51]=\"invalid selector\";\nn[52]=\"invalid selector\";n[17]=\"javascript error\";n[405]=\"unsupported operation\";n[34]=\"move target out of bounds\";n[27]=\"no such alert\";n[7]=\"no such element\";n[8]=\"no such frame\";n[23]=\"no such window\";n[28]=\"script timeout\";n[33]=\"session not created\";n[10]=\"stale element reference\";n[21]=\"timeout\";n[25]=\"unable to set cookie\";n[26]=\"unexpected alert open\";n[13]=p;n[9]=\"unknown command\";m.prototype.toString=function(){return this.name+\": \"+this.message};var q=String.prototype.trim?function(a){return a.trim()}:function(a){return a.replace(/^[\\s\\xa0]+|[\\s\\xa0]+$/g,\"\")};\nfunction r(a,c){for(var b=0,d=q(String(a)).split(\".\"),f=q(String(c)).split(\".\"),h=Math.max(d.length,f.length),k=0;!b&&k<h;k++){var S=d[k]||\"\",ja=f[k]||\"\",ka=RegExp(\"(\\\\d*)(\\\\D*)\",\"g\"),la=RegExp(\"(\\\\d*)(\\\\D*)\",\"g\");do{var t=ka.exec(S)||[\"\",\"\",\"\"],u=la.exec(ja)||[\"\",\"\",\"\"];if(0==t[0].length&&0==u[0].length)break;b=v(0==t[1].length?0:parseInt(t[1],10),0==u[1].length?0:parseInt(u[1],10))||v(0==t[2].length,0==u[2].length)||v(t[2],u[2])}while(!b)}return b}function v(a,c){return a<c?-1:a>c?1:0};var w;a:{var x=g.navigator;if(x){var y=x.userAgent;if(y){w=y;break a}}w=\"\"}function z(a){return-1!=w.indexOf(a)};function ca(a,c){for(var b=a.length,d=l(a)?a.split(\"\"):a,f=0;f<b;f++)f in d&&c.call(void 0,d[f],f,a)};function A(){return z(\"iPhone\")&&!z(\"iPod\")&&!z(\"iPad\")};function B(){return z(\"Opera\")||z(\"OPR\")}function C(){return(z(\"Chrome\")||z(\"CriOS\"))&&!B()&&!z(\"Edge\")};var D=B(),E=z(\"Trident\")||z(\"MSIE\"),F=z(\"Edge\"),G=z(\"Gecko\")&&!(-1!=w.toLowerCase().indexOf(\"webkit\")&&!z(\"Edge\"))&&!(z(\"Trident\")||z(\"MSIE\"))&&!z(\"Edge\"),da=-1!=w.toLowerCase().indexOf(\"webkit\")&&!z(\"Edge\");function ea(){var a=w;if(G)return/rv\\:([^\\);]+)(\\)|;)/.exec(a);if(F)return/Edge\\/([\\d\\.]+)/.exec(a);if(E)return/\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(a);if(da)return/WebKit\\/(\\S+)/.exec(a)}function H(){var a=g.document;return a?a.documentMode:void 0}\nvar I=function(){if(D&&g.opera){var a;var c=g.opera.version;try{a=c()}catch(b){a=c}return a}a=\"\";(c=ea())&&(a=c?c[1]:\"\");return E&&(c=H(),null!=c&&c>parseFloat(a))?String(c):a}(),J={},K=g.document,L=K&&E?H()||(\"CSS1Compat\"==K.compatMode?parseInt(I,10):5):void 0;!G&&!E||E&&9<=Number(L)||G&&(J[\"1.9.1\"]||(J[\"1.9.1\"]=0<=r(I,\"1.9.1\")));E&&(J[\"9\"]||(J[\"9\"]=0<=r(I,\"9\")));var fa=z(\"Firefox\"),ga=A()||z(\"iPod\"),ha=z(\"iPad\"),M=z(\"Android\")&&!(C()||z(\"Firefox\")||B()||z(\"Silk\")),ia=C(),N=z(\"Safari\")&&!(C()||z(\"Coast\")||B()||z(\"Edge\")||z(\"Silk\")||z(\"Android\"))&&!(A()||z(\"iPad\")||z(\"iPod\"));var ma={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},na={IMG:\" \",BR:\"\\n\"};function oa(a,c,b){if(!(a.nodeName in ma))if(3==a.nodeType)b?c.push(String(a.nodeValue).replace(/(\\r\\n|\\r|\\n)/g,\"\")):c.push(a.nodeValue);else if(a.nodeName in na)c.push(na[a.nodeName]);else for(a=a.firstChild;a;)oa(a,c,b),a=a.nextSibling};function O(a){return(a=a.exec(w))?a[1]:\"\"}var pa=function(){if(fa)return O(/Firefox\\/([0-9.]+)/);if(E||F||D)return I;if(ia)return O(/Chrome\\/([0-9.]+)/);if(N&&!(A()||z(\"iPad\")||z(\"iPod\")))return O(/Version\\/([0-9.]+)/);if(ga||ha){var a=/Version\\/(\\S+).*Mobile\\/(\\S+)/.exec(w);if(a)return a[1]+\".\"+a[2]}else if(M)return(a=O(/Android\\s+([0-9.]+)/))?a:O(/Version\\/([0-9.]+)/);return\"\"}();var qa;function P(a){ra?qa(a):M?r(sa,a):r(pa,a)}var ra=function(){if(!G)return!1;var a=g.Components;if(!a)return!1;try{if(!a.classes)return!1}catch(f){return!1}var c=a.classes,a=a.interfaces,b=c[\"@mozilla.org/xpcom/version-comparator;1\"].getService(a.nsIVersionComparator),d=c[\"@mozilla.org/xre/app-info;1\"].getService(a.nsIXULAppInfo).version;qa=function(a){b.compare(d,\"\"+a)};return!0}(),Q;if(M){var ta=/Android\\s+([0-9\\.]+)/.exec(w);Q=ta?ta[1]:\"0\"}else Q=\"0\";\nvar sa=Q,ua=E&&!(8<=Number(L)),va=E&&!(9<=Number(L));M&&P(2.3);M&&P(4);N&&P(6);function R(a,c){c=c.toLowerCase();if(\"style\"==c)return wa(a.style.cssText);if(ua&&\"value\"==c&&T(a,\"INPUT\"))return a.value;if(va&&!0===a[c])return String(a.getAttribute(c));var b=a.getAttributeNode(c);return b&&b.specified?b.value:null}var xa=/[;]+(?=(?:(?:[^\"]*\"){2})*[^\"]*$)(?=(?:(?:[^']*'){2})*[^']*$)(?=(?:[^()]*\\([^()]*\\))*[^()]*$)/;\nfunction wa(a){var c=[];ca(a.split(xa),function(a){var d=a.indexOf(\":\");0<d&&(a=[a.slice(0,d),a.slice(d+1)],2==a.length&&c.push(a[0].toLowerCase(),\":\",a[1],\";\"))});c=c.join(\"\");return c=\";\"==c.charAt(c.length-1)?c:c+\";\"}function U(a,c){var b;ua&&\"value\"==c&&T(a,\"OPTION\")&&null===R(a,\"value\")?(b=[],oa(a,b,!1),b=b.join(\"\")):b=a[c];return b}function T(a,c){return!!a&&1==a.nodeType&&(!c||a.tagName.toUpperCase()==c)}\nfunction ya(a){return T(a,\"OPTION\")?!0:T(a,\"INPUT\")?(a=a.type.toLowerCase(),\"checkbox\"==a||\"radio\"==a):!1};var za={\"class\":\"className\",readonly:\"readOnly\"},V=\"async autofocus autoplay checked compact complete controls declare defaultchecked defaultselected defer disabled draggable ended formnovalidate hidden indeterminate iscontenteditable ismap itemscope loop multiple muted nohref noresize noshade novalidate nowrap open paused pubdate readonly required reversed scoped seamless seeking selected spellcheck truespeed willvalidate\".split(\" \");function Aa(a,c){var b=null,d=c.toLowerCase();if(\"style\"==d)return(b=a.style)&&!l(b)&&(b=b.cssText),b;if((\"selected\"==d||\"checked\"==d)&&ya(a)){if(!ya(a))throw new m(15,\"Element is not selectable\");var b=\"selected\",f=a.type&&a.type.toLowerCase();if(\"checkbox\"==f||\"radio\"==f)b=\"checked\";return U(a,b)?\"true\":null}var h=T(a,\"A\");if(T(a,\"IMG\")&&\"src\"==d||h&&\"href\"==d)return(b=R(a,d))&&(b=U(a,d)),b;if(\"spellcheck\"==d){b=R(a,d);if(null!==b){if(\"false\"==b.toLowerCase())return\"false\";if(\"true\"==b.toLowerCase())return\"true\"}return U(a,\nd)+\"\"}h=za[c]||c;a:if(l(V))d=l(d)&&1==d.length?V.indexOf(d,0):-1;else{for(var k=0;k<V.length;k++)if(k in V&&V[k]===d){d=k;break a}d=-1}if(0<=d)return(b=null!==R(a,c)||U(a,h))?\"true\":null;try{f=U(a,h)}catch(S){}(d=null==f)||(d=typeof f,d=\"object\"==d&&null!=f||\"function\"==d);d?b=R(a,c):b=f;return null!=b?b.toString():null}var W=[\"_\"],X=g;W[0]in X||!X.execScript||X.execScript(\"var \"+W[0]);for(var Y;W.length&&(Y=W.shift());){var Z;if(Z=!W.length)Z=void 0!==Aa;Z?X[Y]=Aa:X[Y]?X=X[Y]:X=X[Y]={}};; return this._.apply(null,arguments);}.apply({navigator:typeof window!='undefined'?window.navigator:null,document:typeof window!='undefined'?window.document:null}, arguments);}\n).apply(null, arguments);","args":[{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"},"value"]}
1492787238342	geckodriver::marionette	DEBUG	→ 8629:[0,6,"executeScript",{"args":[{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"},"value"],"newSandbox":false,"script":"return (function(){return function(){var aa=\"function\"==typeof Object.defineProperties?Object.defineProperty:function(a,c,b){if(b.get||b.set)throw new TypeError(\"ES3 does not support getters and setters.\");a!=Array.prototype&&a!=Object.prototype&&(a[c]=b.value)},ba=\"undefined\"!=typeof window&&window===this?this:\"undefined\"!=typeof global?global:this;\nfunction e(a,c){if(c){for(var b=ba,d=a.split(\".\"),f=0;f<d.length-1;f++){var h=d[f];h in b||(b[h]={});b=b[h]}d=d[d.length-1];f=b[d];h=c(f);h!=f&&null!=h&&aa(b,d,{configurable:!0,writable:!0,value:h})}}\ne(\"String.prototype.repeat\",function(a){return a?a:function(a){var b;if(null==this)throw new TypeError(\"The 'this' value for String.prototype.repeat must not be null or undefined\");b=this+\"\";if(0>a||1342177279<a)throw new RangeError(\"Invalid count value\");a|=0;for(var d=\"\";a;)if(a&1&&(d+=b),a>>>=1)b+=b;return d}});e(\"Math.sign\",function(a){return a?a:function(a){a=Number(a);return!a||isNaN(a)?a:0<a?1:-1}});var g=this;function l(a){return\"string\"==typeof a};function m(a,c){this.a=n[a]||p;this.message=c||\"\";var b=this.a.replace(/((?:^|\\s+)[a-z])/g,function(a){return a.toUpperCase().replace(/^[\\s\\xa0]+/g,\"\")}),d=b.length-5;if(0>d||b.indexOf(\"Error\",d)!=d)b+=\"Error\";this.name=b;b=Error(this.message);b.name=this.name;this.stack=b.stack||\"\"}\n(function(){var a=Error;function c(){}c.prototype=a.prototype;m.b=a.prototype;m.prototype=new c;m.prototype.constructor=m;m.a=function(b,c,f){for(var h=Array(arguments.length-2),k=2;k<arguments.length;k++)h[k-2]=arguments[k];return a.prototype[c].apply(b,h)}})();var p=\"unknown error\",n={15:\"element not selectable\",11:\"element not visible\"};n[31]=p;n[30]=p;n[24]=\"invalid cookie domain\";n[29]=\"invalid element coordinates\";n[12]=\"invalid element state\";n[32]=\"invalid selector\";n[51]=\"invalid selector\";\nn[52]=\"invalid selector\";n[17]=\"javascript error\";n[405]=\"unsupported operation\";n[34]=\"move target out of bounds\";n[27]=\"no such alert\";n[7]=\"no such element\";n[8]=\"no such frame\";n[23]=\"no such window\";n[28]=\"script timeout\";n[33]=\"session not created\";n[10]=\"stale element reference\";n[21]=\"timeout\";n[25]=\"unable to set cookie\";n[26]=\"unexpected alert open\";n[13]=p;n[9]=\"unknown command\";m.prototype.toString=function(){return this.name+\": \"+this.message};var q=String.prototype.trim?function(a){return a.trim()}:function(a){return a.replace(/^[\\s\\xa0]+|[\\s\\xa0]+$/g,\"\")};\nfunction r(a,c){for(var b=0,d=q(String(a)).split(\".\"),f=q(String(c)).split(\".\"),h=Math.max(d.length,f.length),k=0;!b&&k<h;k++){var S=d[k]||\"\",ja=f[k]||\"\",ka=RegExp(\"(\\\\d*)(\\\\D*)\",\"g\"),la=RegExp(\"(\\\\d*)(\\\\D*)\",\"g\");do{var t=ka.exec(S)||[\"\",\"\",\"\"],u=la.exec(ja)||[\"\",\"\",\"\"];if(0==t[0].length&&0==u[0].length)break;b=v(0==t[1].length?0:parseInt(t[1],10),0==u[1].length?0:parseInt(u[1],10))||v(0==t[2].length,0==u[2].length)||v(t[2],u[2])}while(!b)}return b}function v(a,c){return a<c?-1:a>c?1:0};var w;a:{var x=g.navigator;if(x){var y=x.userAgent;if(y){w=y;break a}}w=\"\"}function z(a){return-1!=w.indexOf(a)};function ca(a,c){for(var b=a.length,d=l(a)?a.split(\"\"):a,f=0;f<b;f++)f in d&&c.call(void 0,d[f],f,a)};function A(){return z(\"iPhone\")&&!z(\"iPod\")&&!z(\"iPad\")};function B(){return z(\"Opera\")||z(\"OPR\")}function C(){return(z(\"Chrome\")||z(\"CriOS\"))&&!B()&&!z(\"Edge\")};var D=B(),E=z(\"Trident\")||z(\"MSIE\"),F=z(\"Edge\"),G=z(\"Gecko\")&&!(-1!=w.toLowerCase().indexOf(\"webkit\")&&!z(\"Edge\"))&&!(z(\"Trident\")||z(\"MSIE\"))&&!z(\"Edge\"),da=-1!=w.toLowerCase().indexOf(\"webkit\")&&!z(\"Edge\");function ea(){var a=w;if(G)return/rv\\:([^\\);]+)(\\)|;)/.exec(a);if(F)return/Edge\\/([\\d\\.]+)/.exec(a);if(E)return/\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(a);if(da)return/WebKit\\/(\\S+)/.exec(a)}function H(){var a=g.document;return a?a.documentMode:void 0}\nvar I=function(){if(D&&g.opera){var a;var c=g.opera.version;try{a=c()}catch(b){a=c}return a}a=\"\";(c=ea())&&(a=c?c[1]:\"\");return E&&(c=H(),null!=c&&c>parseFloat(a))?String(c):a}(),J={},K=g.document,L=K&&E?H()||(\"CSS1Compat\"==K.compatMode?parseInt(I,10):5):void 0;!G&&!E||E&&9<=Number(L)||G&&(J[\"1.9.1\"]||(J[\"1.9.1\"]=0<=r(I,\"1.9.1\")));E&&(J[\"9\"]||(J[\"9\"]=0<=r(I,\"9\")));var fa=z(\"Firefox\"),ga=A()||z(\"iPod\"),ha=z(\"iPad\"),M=z(\"Android\")&&!(C()||z(\"Firefox\")||B()||z(\"Silk\")),ia=C(),N=z(\"Safari\")&&!(C()||z(\"Coast\")||B()||z(\"Edge\")||z(\"Silk\")||z(\"Android\"))&&!(A()||z(\"iPad\")||z(\"iPod\"));var ma={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},na={IMG:\" \",BR:\"\\n\"};function oa(a,c,b){if(!(a.nodeName in ma))if(3==a.nodeType)b?c.push(String(a.nodeValue).replace(/(\\r\\n|\\r|\\n)/g,\"\")):c.push(a.nodeValue);else if(a.nodeName in na)c.push(na[a.nodeName]);else for(a=a.firstChild;a;)oa(a,c,b),a=a.nextSibling};function O(a){return(a=a.exec(w))?a[1]:\"\"}var pa=function(){if(fa)return O(/Firefox\\/([0-9.]+)/);if(E||F||D)return I;if(ia)return O(/Chrome\\/([0-9.]+)/);if(N&&!(A()||z(\"iPad\")||z(\"iPod\")))return O(/Version\\/([0-9.]+)/);if(ga||ha){var a=/Version\\/(\\S+).*Mobile\\/(\\S+)/.exec(w);if(a)return a[1]+\".\"+a[2]}else if(M)return(a=O(/Android\\s+([0-9.]+)/))?a:O(/Version\\/([0-9.]+)/);return\"\"}();var qa;function P(a){ra?qa(a):M?r(sa,a):r(pa,a)}var ra=function(){if(!G)return!1;var a=g.Components;if(!a)return!1;try{if(!a.classes)return!1}catch(f){return!1}var c=a.classes,a=a.interfaces,b=c[\"@mozilla.org/xpcom/version-comparator;1\"].getService(a.nsIVersionComparator),d=c[\"@mozilla.org/xre/app-info;1\"].getService(a.nsIXULAppInfo).version;qa=function(a){b.compare(d,\"\"+a)};return!0}(),Q;if(M){var ta=/Android\\s+([0-9\\.]+)/.exec(w);Q=ta?ta[1]:\"0\"}else Q=\"0\";\nvar sa=Q,ua=E&&!(8<=Number(L)),va=E&&!(9<=Number(L));M&&P(2.3);M&&P(4);N&&P(6);function R(a,c){c=c.toLowerCase();if(\"style\"==c)return wa(a.style.cssText);if(ua&&\"value\"==c&&T(a,\"INPUT\"))return a.value;if(va&&!0===a[c])return String(a.getAttribute(c));var b=a.getAttributeNode(c);return b&&b.specified?b.value:null}var xa=/[;]+(?=(?:(?:[^\"]*\"){2})*[^\"]*$)(?=(?:(?:[^']*'){2})*[^']*$)(?=(?:[^()]*\\([^()]*\\))*[^()]*$)/;\nfunction wa(a){var c=[];ca(a.split(xa),function(a){var d=a.indexOf(\":\");0<d&&(a=[a.slice(0,d),a.slice(d+1)],2==a.length&&c.push(a[0].toLowerCase(),\":\",a[1],\";\"))});c=c.join(\"\");return c=\";\"==c.charAt(c.length-1)?c:c+\";\"}function U(a,c){var b;ua&&\"value\"==c&&T(a,\"OPTION\")&&null===R(a,\"value\")?(b=[],oa(a,b,!1),b=b.join(\"\")):b=a[c];return b}function T(a,c){return!!a&&1==a.nodeType&&(!c||a.tagName.toUpperCase()==c)}\nfunction ya(a){return T(a,\"OPTION\")?!0:T(a,\"INPUT\")?(a=a.type.toLowerCase(),\"checkbox\"==a||\"radio\"==a):!1};var za={\"class\":\"className\",readonly:\"readOnly\"},V=\"async autofocus autoplay checked compact complete controls declare defaultchecked defaultselected defer disabled draggable ended formnovalidate hidden indeterminate iscontenteditable ismap itemscope loop multiple muted nohref noresize noshade novalidate nowrap open paused pubdate readonly required reversed scoped seamless seeking selected spellcheck truespeed willvalidate\".split(\" \");function Aa(a,c){var b=null,d=c.toLowerCase();if(\"style\"==d)return(b=a.style)&&!l(b)&&(b=b.cssText),b;if((\"selected\"==d||\"checked\"==d)&&ya(a)){if(!ya(a))throw new m(15,\"Element is not selectable\");var b=\"selected\",f=a.type&&a.type.toLowerCase();if(\"checkbox\"==f||\"radio\"==f)b=\"checked\";return U(a,b)?\"true\":null}var h=T(a,\"A\");if(T(a,\"IMG\")&&\"src\"==d||h&&\"href\"==d)return(b=R(a,d))&&(b=U(a,d)),b;if(\"spellcheck\"==d){b=R(a,d);if(null!==b){if(\"false\"==b.toLowerCase())return\"false\";if(\"true\"==b.toLowerCase())return\"true\"}return U(a,\nd)+\"\"}h=za[c]||c;a:if(l(V))d=l(d)&&1==d.length?V.indexOf(d,0):-1;else{for(var k=0;k<V.length;k++)if(k in V&&V[k]===d){d=k;break a}d=-1}if(0<=d)return(b=null!==R(a,c)||U(a,h))?\"true\":null;try{f=U(a,h)}catch(S){}(d=null==f)||(d=typeof f,d=\"object\"==d&&null!=f||\"function\"==d);d?b=R(a,c):b=f;return null!=b?b.toString():null}var W=[\"_\"],X=g;W[0]in X||!X.execScript||X.execScript(\"var \"+W[0]);for(var Y;W.length&&(Y=W.shift());){var Z;if(Z=!W.length)Z=void 0!==Aa;Z?X[Y]=Aa:X[Y]?X=X[Y]:X=X[Y]={}};; return this._.apply(null,arguments);}.apply({navigator:typeof window!='undefined'?window.navigator:null,document:typeof window!='undefined'?window.document:null}, arguments);}\n).apply(null, arguments);","scriptTimeout":null,"specialPowers":false}]
1492787238351	Marionette	TRACE	conn0 -> [0,6,"executeScript",{"args":[{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"},"value"],"newSandbox":false,"script":"return (function(){return function(){var aa=\"function\"==typeof Object.defineProperties?Object.defineProperty:function(a,c,b){if(b.get||b.set)throw new TypeError(\"ES3 does not support getters and setters.\");a!=Array.prototype&&a!=Object.prototype&&(a[c]=b.value)},ba=\"undefined\"!=typeof window&&window===this?this:\"undefined\"!=typeof global?global:this;\nfunction e(a,c){if(c){for(var b=ba,d=a.split(\".\"),f=0;f<d.length-1;f++){var h=d[f];h in b||(b[h]={});b=b[h]}d=d[d.length-1];f=b[d];h=c(f);h!=f&&null!=h&&aa(b,d,{configurable:!0,writable:!0,value:h})}}\ne(\"String.prototype.repeat\",function(a){return a?a:function(a){var b;if(null==this)throw new TypeError(\"The 'this' value for String.prototype.repeat must not be null or undefined\");b=this+\"\";if(0>a||1342177279<a)throw new RangeError(\"Invalid count value\");a|=0;for(var d=\"\";a;)if(a&1&&(d+=b),a>>>=1)b+=b;return d}});e(\"Math.sign\",function(a){return a?a:function(a){a=Number(a);return!a||isNaN(a)?a:0<a?1:-1}});var g=this;function l(a){return\"string\"==typeof a};function m(a,c){this.a=n[a]||p;this.message=c||\"\";var b=this.a.replace(/((?:^|\\s+)[a-z])/g,function(a){return a.toUpperCase().replace(/^[\\s\\xa0]+/g,\"\")}),d=b.length-5;if(0>d||b.indexOf(\"Error\",d)!=d)b+=\"Error\";this.name=b;b=Error(this.message);b.name=this.name;this.stack=b.stack||\"\"}\n(function(){var a=Error;function c(){}c.prototype=a.prototype;m.b=a.prototype;m.prototype=new c;m.prototype.constructor=m;m.a=function(b,c,f){for(var h=Array(arguments.length-2),k=2;k<arguments.length;k++)h[k-2]=arguments[k];return a.prototype[c].apply(b,h)}})();var p=\"unknown error\",n={15:\"element not selectable\",11:\"element not visible\"};n[31]=p;n[30]=p;n[24]=\"invalid cookie domain\";n[29]=\"invalid element coordinates\";n[12]=\"invalid element state\";n[32]=\"invalid selector\";n[51]=\"invalid selector\";\nn[52]=\"invalid selector\";n[17]=\"javascript error\";n[405]=\"unsupported operation\";n[34]=\"move target out of bounds\";n[27]=\"no such alert\";n[7]=\"no such element\";n[8]=\"no such frame\";n[23]=\"no such window\";n[28]=\"script timeout\";n[33]=\"session not created\";n[10]=\"stale element reference\";n[21]=\"timeout\";n[25]=\"unable to set cookie\";n[26]=\"unexpected alert open\";n[13]=p;n[9]=\"unknown command\";m.prototype.toString=function(){return this.name+\": \"+this.message};var q=String.prototype.trim?function(a){return a.trim()}:function(a){return a.replace(/^[\\s\\xa0]+|[\\s\\xa0]+$/g,\"\")};\nfunction r(a,c){for(var b=0,d=q(String(a)).split(\".\"),f=q(String(c)).split(\".\"),h=Math.max(d.length,f.length),k=0;!b&&k<h;k++){var S=d[k]||\"\",ja=f[k]||\"\",ka=RegExp(\"(\\\\d*)(\\\\D*)\",\"g\"),la=RegExp(\"(\\\\d*)(\\\\D*)\",\"g\");do{var t=ka.exec(S)||[\"\",\"\",\"\"],u=la.exec(ja)||[\"\",\"\",\"\"];if(0==t[0].length&&0==u[0].length)break;b=v(0==t[1].length?0:parseInt(t[1],10),0==u[1].length?0:parseInt(u[1],10))||v(0==t[2].length,0==u[2].length)||v(t[2],u[2])}while(!b)}return b}function v(a,c){return a<c?-1:a>c?1:0};var w;a:{var x=g.navigator;if(x){var y=x.userAgent;if(y){w=y;break a}}w=\"\"}function z(a){return-1!=w.indexOf(a)};function ca(a,c){for(var b=a.length,d=l(a)?a.split(\"\"):a,f=0;f<b;f++)f in d&&c.call(void 0,d[f],f,a)};function A(){return z(\"iPhone\")&&!z(\"iPod\")&&!z(\"iPad\")};function B(){return z(\"Opera\")||z(\"OPR\")}function C(){return(z(\"Chrome\")||z(\"CriOS\"))&&!B()&&!z(\"Edge\")};var D=B(),E=z(\"Trident\")||z(\"MSIE\"),F=z(\"Edge\"),G=z(\"Gecko\")&&!(-1!=w.toLowerCase().indexOf(\"webkit\")&&!z(\"Edge\"))&&!(z(\"Trident\")||z(\"MSIE\"))&&!z(\"Edge\"),da=-1!=w.toLowerCase().indexOf(\"webkit\")&&!z(\"Edge\");function ea(){var a=w;if(G)return/rv\\:([^\\);]+)(\\)|;)/.exec(a);if(F)return/Edge\\/([\\d\\.]+)/.exec(a);if(E)return/\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(a);if(da)return/WebKit\\/(\\S+)/.exec(a)}function H(){var a=g.document;return a?a.documentMode:void 0}\nvar I=function(){if(D&&g.opera){var a;var c=g.opera.version;try{a=c()}catch(b){a=c}return a}a=\"\";(c=ea())&&(a=c?c[1]:\"\");return E&&(c=H(),null!=c&&c>parseFloat(a))?String(c):a}(),J={},K=g.document,L=K&&E?H()||(\"CSS1Compat\"==K.compatMode?parseInt(I,10):5):void 0;!G&&!E||E&&9<=Number(L)||G&&(J[\"1.9.1\"]||(J[\"1.9.1\"]=0<=r(I,\"1.9.1\")));E&&(J[\"9\"]||(J[\"9\"]=0<=r(I,\"9\")));var fa=z(\"Firefox\"),ga=A()||z(\"iPod\"),ha=z(\"iPad\"),M=z(\"Android\")&&!(C()||z(\"Firefox\")||B()||z(\"Silk\")),ia=C(),N=z(\"Safari\")&&!(C()||z(\"Coast\")||B()||z(\"Edge\")||z(\"Silk\")||z(\"Android\"))&&!(A()||z(\"iPad\")||z(\"iPod\"));var ma={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},na={IMG:\" \",BR:\"\\n\"};function oa(a,c,b){if(!(a.nodeName in ma))if(3==a.nodeType)b?c.push(String(a.nodeValue).replace(/(\\r\\n|\\r|\\n)/g,\"\")):c.push(a.nodeValue);else if(a.nodeName in na)c.push(na[a.nodeName]);else for(a=a.firstChild;a;)oa(a,c,b),a=a.nextSibling};function O(a){return(a=a.exec(w))?a[1]:\"\"}var pa=function(){if(fa)return O(/Firefox\\/([0-9.]+)/);if(E||F||D)return I;if(ia)return O(/Chrome\\/([0-9.]+)/);if(N&&!(A()||z(\"iPad\")||z(\"iPod\")))return O(/Version\\/([0-9.]+)/);if(ga||ha){var a=/Version\\/(\\S+).*Mobile\\/(\\S+)/.exec(w);if(a)return a[1]+\".\"+a[2]}else if(M)return(a=O(/Android\\s+([0-9.]+)/))?a:O(/Version\\/([0-9.]+)/);return\"\"}();var qa;function P(a){ra?qa(a):M?r(sa,a):r(pa,a)}var ra=function(){if(!G)return!1;var a=g.Components;if(!a)return!1;try{if(!a.classes)return!1}catch(f){return!1}var c=a.classes,a=a.interfaces,b=c[\"@mozilla.org/xpcom/version-comparator;1\"].getService(a.nsIVersionComparator),d=c[\"@mozilla.org/xre/app-info;1\"].getService(a.nsIXULAppInfo).version;qa=function(a){b.compare(d,\"\"+a)};return!0}(),Q;if(M){var ta=/Android\\s+([0-9\\.]+)/.exec(w);Q=ta?ta[1]:\"0\"}else Q=\"0\";\nvar sa=Q,ua=E&&!(8<=Number(L)),va=E&&!(9<=Number(L));M&&P(2.3);M&&P(4);N&&P(6);function R(a,c){c=c.toLowerCase();if(\"style\"==c)return wa(a.style.cssText);if(ua&&\"value\"==c&&T(a,\"INPUT\"))return a.value;if(va&&!0===a[c])return String(a.getAttribute(c));var b=a.getAttributeNode(c);return b&&b.specified?b.value:null}var xa=/[;]+(?=(?:(?:[^\"]*\"){2})*[^\"]*$)(?=(?:(?:[^']*'){2})*[^']*$)(?=(?:[^()]*\\([^()]*\\))*[^()]*$)/;\nfunction wa(a){var c=[];ca(a.split(xa),function(a){var d=a.indexOf(\":\");0<d&&(a=[a.slice(0,d),a.slice(d+1)],2==a.length&&c.push(a[0].toLowerCase(),\":\",a[1],\";\"))});c=c.join(\"\");return c=\";\"==c.charAt(c.length-1)?c:c+\";\"}function U(a,c){var b;ua&&\"value\"==c&&T(a,\"OPTION\")&&null===R(a,\"value\")?(b=[],oa(a,b,!1),b=b.join(\"\")):b=a[c];return b}function T(a,c){return!!a&&1==a.nodeType&&(!c||a.tagName.toUpperCase()==c)}\nfunction ya(a){return T(a,\"OPTION\")?!0:T(a,\"INPUT\")?(a=a.type.toLowerCase(),\"checkbox\"==a||\"radio\"==a):!1};var za={\"class\":\"className\",readonly:\"readOnly\"},V=\"async autofocus autoplay checked compact complete controls declare defaultchecked defaultselected defer disabled draggable ended formnovalidate hidden indeterminate iscontenteditable ismap itemscope loop multiple muted nohref noresize noshade novalidate nowrap open paused pubdate readonly required reversed scoped seamless seeking selected spellcheck truespeed willvalidate\".split(\" \");function Aa(a,c){var b=null,d=c.toLowerCase();if(\"style\"==d)return(b=a.style)&&!l(b)&&(b=b.cssText),b;if((\"selected\"==d||\"checked\"==d)&&ya(a)){if(!ya(a))throw new m(15,\"Element is not selectable\");var b=\"selected\",f=a.type&&a.type.toLowerCase();if(\"checkbox\"==f||\"radio\"==f)b=\"checked\";return U(a,b)?\"true\":null}var h=T(a,\"A\");if(T(a,\"IMG\")&&\"src\"==d||h&&\"href\"==d)return(b=R(a,d))&&(b=U(a,d)),b;if(\"spellcheck\"==d){b=R(a,d);if(null!==b){if(\"false\"==b.toLowerCase())return\"false\";if(\"true\"==b.toLowerCase())return\"true\"}return U(a,\nd)+\"\"}h=za[c]||c;a:if(l(V))d=l(d)&&1==d.length?V.indexOf(d,0):-1;else{for(var k=0;k<V.length;k++)if(k in V&&V[k]===d){d=k;break a}d=-1}if(0<=d)return(b=null!==R(a,c)||U(a,h))?\"true\":null;try{f=U(a,h)}catch(S){}(d=null==f)||(d=typeof f,d=\"object\"==d&&null!=f||\"function\"==d);d?b=R(a,c):b=f;return null!=b?b.toString():null}var W=[\"_\"],X=g;W[0]in X||!X.execScript||X.execScript(\"var \"+W[0]);for(var Y;W.length&&(Y=W.shift());){var Z;if(Z=!W.length)Z=void 0!==Aa;Z?X[Y]=Aa:X[Y]?X=X[Y]:X=X[Y]={}};; return this._.apply(null,arguments);}.apply({navigator:typeof window!='undefined'?window.navigator:null,document:typeof window!='undefined'?window.document:null}, arguments);}\n).apply(null, arguments);","scriptTimeout":null,"specialPowers":false}]
1492787238360	Marionette	TRACE	conn0 <- [1,6,null,{"value":"12345"}]
1492787238361	geckodriver::marionette	DEBUG	← [1,6,null,{"value":"12345"}]
1492787238361	webdriver::server	DEBUG	Returning status Ok
1492787238361	webdriver::server	DEBUG	Returning body {"value":"12345"}
1492787238361	hyper::header	TRACE	Headers.set( "Content-Type", ContentType(Mime(Application, Json, [(Charset, Utf8)])) )
1492787238361	hyper::header	TRACE	Headers.set( "Cache-Control", CacheControl([NoCache]) )
1492787238361	hyper::header	TRACE	Headers.set( "Content-Length", ContentLength(17) )
1492787238361	hyper::server::response	DEBUG	writing head: Http11 Ok
1492787238361	hyper::header	TRACE	Headers.set( "Date", Date(HttpDate(Tm { tm_sec: 18, tm_min: 7, tm_hour: 15, tm_mday: 21, tm_mon: 3, tm_year: 117, tm_wday: 5, tm_yday: 110, tm_isdst: 0, tm_utcoff: 0, tm_nsec: 361581400 })) )
1492787238361	hyper::server::response	DEBUG	headers [
Headers { Connection: close
, Content-Type: application/json; charset=utf-8
, Cache-Control: no-cache
, Content-Length: 17
, Date: Fri, 21 Apr 2017 15:07:18 GMT
, }]
1492787238361	hyper::server::response	DEBUG	write 17 bytes
1492787238361	hyper::server::response	TRACE	ending
1492787238361	hyper::server	DEBUG	keep_alive = false for 127.0.0.1:4322
1492787238361	hyper::server	DEBUG	keep_alive loop ending for 127.0.0.1:4322
1492787238367	hyper::server	DEBUG	Incoming stream
1492787238367	hyper::buffer	TRACE	get_buf []
1492787238367	hyper::buffer	TRACE	read_into_buf buf[0..4096]
1492787238368	hyper::buffer	TRACE	get_buf [u8; 4096][0..955]
1492787238368	hyper::http::h1	TRACE	try_parse([80, 79, 83, 84, 32, 47, 115, 101, 115, 115, 105, 111, 110, 47, 98, 56, 48, 50, 55, 49, 49, 100, 45, 53, 51, 48, 52, 45, 52, 50, 49, 101, 45, 98, 99, 102, 51, 45, 56, 54, 100, 98, 50, 51, 101, 97, 53, 55, 52, 97, 47, 97, 99, 116, 105, 111, 110, 115, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 84, 121, 112, 101, 58, 32, 97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 76, 101, 110, 103, 116, 104, 58, 32, 54, 56, 52, 13, 10, 72, 111, 115, 116, 58, 32, 108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 75, 101, 101, 112, 45, 65, 108, 105, 118, 101, 13, 10, 85, 115, 101, 114, 45, 65, 103, 101, 110, 116, 58, 32, 65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41, 13, 10, 65, 99, 99, 101, 112, 116, 45, 69, 110, 99, 111, 100, 105, 110, 103, 58, 32, 103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101, 13, 10, 13, 10, 123, 34, 97, 99, 116, 105, 111, 110, 115, 34, 58, 91, 123, 34, 105, 100, 34, 58, 34, 100, 101, 102, 97, 117, 108, 116, 32, 109, 111, 117, 115, 101, 34, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 111, 105, 110, 116, 101, 114, 34, 44, 34, 112, 97, 114, 97, 109, 101, 116, 101, 114, 115, 34, 58, 123, 34, 112, 111, 105, 110, 116, 101, 114, 84, 121, 112, 101, 34, 58, 34, 109, 111, 117, 115, 101, 34, 125, 44, 34, 97, 99, 116, 105, 111, 110, 115, 34, 58, 91, 123, 34, 100, 117, 114, 97, 116, 105, 111, 110, 34, 58, 49, 48, 48, 44, 34, 120, 34, 58, 48, 44, 34, 121, 34, 58, 48, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 111, 105, 110, 116, 101, 114, 77, 111, 118, 101, 34, 44, 34, 111, 114, 105, 103, 105, 110, 34, 58, 123, 34, 69, 76, 69, 77, 69, 78, 84, 34, 58, 34, 100, 98, 99, 48, 53, 49, 102, 102, 45, 48, 101, 53, 50, 45, 52, 98, 57, 53, 45, 98, 55, 101, 55, 45, 101, 102, 53, 98, 98, 56, 50, 56, 49, 100, 51, 48, 34, 44, 34, 101, 108, 101, 109, 101, 110, 116, 45, 54, 48, 54, 54, 45, 49, 49, 101, 52, 45, 97, 53, 50, 101, 45, 52, 102, 55, 51, 53, 52, 54, 54, 99, 101, 99, 102, 34, 58, 34, 100, 98, 99, 48, 53, 49, 102, 102, 45, 48, 101, 53, 50, 45, 52, 98, 57, 53, 45, 98, 55, 101, 55, 45, 101, 102, 53, 98, 98, 56, 50, 56, 49, 100, 51, 48, 34, 125, 125, 44, 123, 34, 98, 117, 116, 116, 111, 110, 34, 58, 48, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 111, 105, 110, 116, 101, 114, 68, 111, 119, 110, 34, 125, 44, 123, 34, 98, 117, 116, 116, 111, 110, 34, 58, 48, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 111, 105, 110, 116, 101, 114, 85, 112, 34, 125, 93, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 34, 44, 34, 97, 99, 116, 105, 111, 110, 115, 34, 58, 91, 123, 34, 100, 117, 114, 97, 116, 105, 111, 110, 34, 58, 48, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 97, 117, 115, 101, 34, 125, 44, 123, 34, 100, 117, 114, 97, 116, 105, 111, 110, 34, 58, 48, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 97, 117, 115, 101, 34, 125, 44, 123, 34, 100, 117, 114, 97, 116, 105, 111, 110, 34, 58, 48, 44, 34, 116, 121, 112, 101, 34, 58, 34, 112, 97, 117, 115, 101, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 68, 111, 119, 110, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 238, 128, 137, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 85, 112, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 238, 128, 137, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 68, 111, 119, 110, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 97, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 85, 112, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 97, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 68, 111, 119, 110, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 238, 128, 128, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 85, 112, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 238, 128, 128, 34, 125, 93, 44, 34, 105, 100, 34, 58, 34, 100, 101, 102, 97, 117, 108, 116, 32, 107, 101, 121, 98, 111, 97, 114, 100, 34, 125, 93, 125])
1492787238368	hyper::http::h1	TRACE	Request.try_parse([Header; 100], [u8; 955])
1492787238368	hyper::http::h1	TRACE	Request.try_parse Complete(271)
1492787238368	hyper::header	TRACE	raw header: "Content-Type"=[97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56]
1492787238368	hyper::header	TRACE	raw header: "Content-Length"=[54, 56, 52]
1492787238368	hyper::header	TRACE	raw header: "Host"=[108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48]
1492787238368	hyper::header	TRACE	raw header: "Connection"=[75, 101, 101, 112, 45, 65, 108, 105, 118, 101]
1492787238368	hyper::header	TRACE	raw header: "User-Agent"=[65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41]
1492787238368	hyper::header	TRACE	raw header: "Accept-Encoding"=[103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101]
1492787238368	hyper::server::request	DEBUG	Request Line: Post AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/actions") Http11
1492787238368	hyper::server::request	DEBUG	Headers { Content-Type: application/json; charset=utf-8
, Content-Length: 684
, Host: localhost:33610
, Connection: Keep-Alive
, User-Agent: Apache-HttpClient/4.5.2 (Java/1.8.0_112)
, Accept-Encoding: gzip,deflate
, }
1492787238368	hyper::header	TRACE	Headers.set( "Connection", Connection([Close]) )
1492787238368	hyper::http::h1	TRACE	Sized read, remaining=684
1492787238368	hyper::http::h1	TRACE	Sized read: 32
1492787238368	hyper::http::h1	TRACE	Sized read, remaining=652
1492787238368	hyper::http::h1	TRACE	Sized read: 64
1492787238368	hyper::http::h1	TRACE	Sized read, remaining=588
1492787238368	hyper::http::h1	TRACE	Sized read: 128
1492787238368	hyper::http::h1	TRACE	Sized read, remaining=460
1492787238368	hyper::http::h1	TRACE	Sized read: 256
1492787238368	hyper::http::h1	TRACE	Sized read, remaining=204
1492787238368	hyper::http::h1	TRACE	Sized read: 204
1492787238368	hyper::http::h1	TRACE	Sized read, remaining=0
1492787238368	webdriver::server	DEBUG	Got request POST AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/actions")
1492787238369	webdriver::command	DEBUG	Got request body {"actions":[{"id":"default mouse","type":"pointer","parameters":{"pointerType":"mouse"},"actions":[{"duration":100,"x":0,"y":0,"type":"pointerMove","origin":{"ELEMENT":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30","element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"}},{"button":0,"type":"pointerDown"},{"button":0,"type":"pointerUp"}]},{"type":"key","actions":[{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"type":"keyDown","value":""},{"type":"keyUp","value":""},{"type":"keyDown","value":"a"},{"type":"keyUp","value":"a"},{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard"}]}
1492787238369	geckodriver::marionette	DEBUG	→ 658:[0,7,"performActions",{"actions":[{"actions":[{"duration":100,"origin":{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"},"type":"pointerMove","x":0,"y":0},{"button":0,"type":"pointerDown"},{"button":0,"type":"pointerUp"}],"id":"default mouse","parameters":{"pointerType":"mouse"},"type":"pointer"},{"actions":[{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"type":"keyDown","value":""},{"type":"keyUp","value":""},{"type":"keyDown","value":"a"},{"type":"keyUp","value":"a"},{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard","type":"key"}]}]
1492787238370	Marionette	TRACE	conn0 -> [0,7,"performActions",{"actions":[{"actions":[{"duration":100,"origin":{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"},"type":"pointerMove","x":0,"y":0},{"button":0,"type":"pointerDown"},{"button":0,"type":"pointerUp"}],"id":"default mouse","parameters":{"pointerType":"mouse"},"type":"pointer"},{"actions":[{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"type":"keyDown","value":""},{"type":"keyUp","value":""},{"type":"keyDown","value":"a"},{"type":"keyUp","value":"a"},{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard","type":"key"}]}]
1492787238495	Marionette	TRACE	conn0 <- [1,7,null,{}]
1492787238495	geckodriver::marionette	DEBUG	← [1,7,null,{}]
1492787238495	webdriver::server	DEBUG	Returning status Ok
1492787238495	webdriver::server	DEBUG	Returning body {"value": {}}
1492787238495	hyper::header	TRACE	Headers.set( "Content-Type", ContentType(Mime(Application, Json, [(Charset, Utf8)])) )
1492787238495	hyper::header	TRACE	Headers.set( "Cache-Control", CacheControl([NoCache]) )
1492787238495	hyper::header	TRACE	Headers.set( "Content-Length", ContentLength(13) )
1492787238495	hyper::server::response	DEBUG	writing head: Http11 Ok
1492787238495	hyper::header	TRACE	Headers.set( "Date", Date(HttpDate(Tm { tm_sec: 18, tm_min: 7, tm_hour: 15, tm_mday: 21, tm_mon: 3, tm_year: 117, tm_wday: 5, tm_yday: 110, tm_isdst: 0, tm_utcoff: 0, tm_nsec: 495955800 })) )
1492787238495	hyper::server::response	DEBUG	headers [
Headers { Connection: close
, Content-Type: application/json; charset=utf-8
, Cache-Control: no-cache
, Content-Length: 13
, Date: Fri, 21 Apr 2017 15:07:18 GMT
, }]
1492787238495	hyper::server::response	DEBUG	write 13 bytes
1492787238495	hyper::server::response	TRACE	ending
1492787238496	hyper::server	DEBUG	keep_alive = false for 127.0.0.1:4323
1492787238496	hyper::server	DEBUG	keep_alive loop ending for 127.0.0.1:4323
1492787238498	hyper::server	DEBUG	Incoming stream
1492787238498	hyper::buffer	TRACE	get_buf []
1492787238498	hyper::buffer	TRACE	read_into_buf buf[0..4096]
1492787238499	hyper::buffer	TRACE	get_buf [u8; 4096][0..399]
1492787238499	hyper::http::h1	TRACE	try_parse([80, 79, 83, 84, 32, 47, 115, 101, 115, 115, 105, 111, 110, 47, 98, 56, 48, 50, 55, 49, 49, 100, 45, 53, 51, 48, 52, 45, 52, 50, 49, 101, 45, 98, 99, 102, 51, 45, 56, 54, 100, 98, 50, 51, 101, 97, 53, 55, 52, 97, 47, 97, 99, 116, 105, 111, 110, 115, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 84, 121, 112, 101, 58, 32, 97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 76, 101, 110, 103, 116, 104, 58, 32, 49, 50, 56, 13, 10, 72, 111, 115, 116, 58, 32, 108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 75, 101, 101, 112, 45, 65, 108, 105, 118, 101, 13, 10, 85, 115, 101, 114, 45, 65, 103, 101, 110, 116, 58, 32, 65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41, 13, 10, 65, 99, 99, 101, 112, 116, 45, 69, 110, 99, 111, 100, 105, 110, 103, 58, 32, 103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101, 13, 10, 13, 10, 123, 34, 97, 99, 116, 105, 111, 110, 115, 34, 58, 91, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 34, 44, 34, 97, 99, 116, 105, 111, 110, 115, 34, 58, 91, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 68, 111, 119, 110, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 238, 128, 151, 34, 125, 44, 123, 34, 116, 121, 112, 101, 34, 58, 34, 107, 101, 121, 85, 112, 34, 44, 34, 118, 97, 108, 117, 101, 34, 58, 34, 238, 128, 151, 34, 125, 93, 44, 34, 105, 100, 34, 58, 34, 100, 101, 102, 97, 117, 108, 116, 32, 107, 101, 121, 98, 111, 97, 114, 100, 34, 125, 93, 125])
1492787238499	hyper::http::h1	TRACE	Request.try_parse([Header; 100], [u8; 399])
1492787238499	hyper::http::h1	TRACE	Request.try_parse Complete(271)
1492787238499	hyper::header	TRACE	raw header: "Content-Type"=[97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56]
1492787238499	hyper::header	TRACE	raw header: "Content-Length"=[49, 50, 56]
1492787238499	hyper::header	TRACE	raw header: "Host"=[108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48]
1492787238499	hyper::header	TRACE	raw header: "Connection"=[75, 101, 101, 112, 45, 65, 108, 105, 118, 101]
1492787238499	hyper::header	TRACE	raw header: "User-Agent"=[65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41]
1492787238499	hyper::header	TRACE	raw header: "Accept-Encoding"=[103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101]
1492787238499	hyper::server::request	DEBUG	Request Line: Post AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/actions") Http11
1492787238499	hyper::server::request	DEBUG	Headers { Content-Type: application/json; charset=utf-8
, Content-Length: 128
, Host: localhost:33610
, Connection: Keep-Alive
, User-Agent: Apache-HttpClient/4.5.2 (Java/1.8.0_112)
, Accept-Encoding: gzip,deflate
, }
1492787238499	hyper::header	TRACE	Headers.set( "Connection", Connection([Close]) )
1492787238499	hyper::http::h1	TRACE	Sized read, remaining=128
1492787238499	hyper::http::h1	TRACE	Sized read: 32
1492787238499	hyper::http::h1	TRACE	Sized read, remaining=96
1492787238499	hyper::http::h1	TRACE	Sized read: 64
1492787238499	hyper::http::h1	TRACE	Sized read, remaining=32
1492787238499	hyper::http::h1	TRACE	Sized read: 32
1492787238499	hyper::http::h1	TRACE	Sized read, remaining=0
1492787238499	webdriver::server	DEBUG	Got request POST AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/actions")
1492787238500	webdriver::command	DEBUG	Got request body {"actions":[{"type":"key","actions":[{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard"}]}
1492787238500	geckodriver::marionette	DEBUG	→ 151:[0,8,"performActions",{"actions":[{"actions":[{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard","type":"key"}]}]
1492787238501	Marionette	TRACE	conn0 -> [0,8,"performActions",{"actions":[{"actions":[{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard","type":"key"}]}]
1492787238506	Marionette	TRACE	conn0 <- [1,8,null,{}]
1492787238506	geckodriver::marionette	DEBUG	← [1,8,null,{}]
1492787238506	webdriver::server	DEBUG	Returning status Ok
1492787238506	webdriver::server	DEBUG	Returning body {"value": {}}
1492787238506	hyper::header	TRACE	Headers.set( "Content-Type", ContentType(Mime(Application, Json, [(Charset, Utf8)])) )
1492787238506	hyper::header	TRACE	Headers.set( "Cache-Control", CacheControl([NoCache]) )
1492787238506	hyper::header	TRACE	Headers.set( "Content-Length", ContentLength(13) )
1492787238506	hyper::server::response	DEBUG	writing head: Http11 Ok
1492787238506	hyper::header	TRACE	Headers.set( "Date", Date(HttpDate(Tm { tm_sec: 18, tm_min: 7, tm_hour: 15, tm_mday: 21, tm_mon: 3, tm_year: 117, tm_wday: 5, tm_yday: 110, tm_isdst: 0, tm_utcoff: 0, tm_nsec: 506972900 })) )
1492787238506	hyper::server::response	DEBUG	headers [
Headers { Connection: close
, Content-Type: application/json; charset=utf-8
, Cache-Control: no-cache
, Content-Length: 13
, Date: Fri, 21 Apr 2017 15:07:18 GMT
, }]
1492787238506	hyper::server::response	DEBUG	write 13 bytes
1492787238506	hyper::server::response	TRACE	ending
1492787238506	hyper::server	DEBUG	keep_alive = false for 127.0.0.1:4324
1492787238507	hyper::server	DEBUG	keep_alive loop ending for 127.0.0.1:4324
1492787238510	hyper::server	DEBUG	Incoming stream
1492787238510	hyper::buffer	TRACE	get_buf []
1492787238510	hyper::buffer	TRACE	read_into_buf buf[0..4096]
1492787238510	hyper::buffer	TRACE	get_buf [u8; 4096][0..277]
1492787238510	hyper::http::h1	TRACE	try_parse([80, 79, 83, 84, 32, 47, 115, 101, 115, 115, 105, 111, 110, 47, 98, 56, 48, 50, 55, 49, 49, 100, 45, 53, 51, 48, 52, 45, 52, 50, 49, 101, 45, 98, 99, 102, 51, 45, 56, 54, 100, 98, 50, 51, 101, 97, 53, 55, 52, 97, 47, 101, 120, 101, 99, 117, 116, 101, 47, 115, 121, 110, 99, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 84, 121, 112, 101, 58, 32, 97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56, 13, 10, 67, 111, 110, 116, 101, 110, 116, 45, 76, 101, 110, 103, 116, 104, 58, 32, 56, 53, 52, 53, 13, 10, 72, 111, 115, 116, 58, 32, 108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 75, 101, 101, 112, 45, 65, 108, 105, 118, 101, 13, 10, 85, 115, 101, 114, 45, 65, 103, 101, 110, 116, 58, 32, 65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41, 13, 10, 65, 99, 99, 101, 112, 116, 45, 69, 110, 99, 111, 100, 105, 110, 103, 58, 32, 103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101, 13, 10, 13, 10])
1492787238510	hyper::http::h1	TRACE	Request.try_parse([Header; 100], [u8; 277])
1492787238510	hyper::http::h1	TRACE	Request.try_parse Complete(277)
1492787238510	hyper::header	TRACE	raw header: "Content-Type"=[97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, 110, 59, 32, 99, 104, 97, 114, 115, 101, 116, 61, 117, 116, 102, 45, 56]
1492787238510	hyper::header	TRACE	raw header: "Content-Length"=[56, 53, 52, 53]
1492787238510	hyper::header	TRACE	raw header: "Host"=[108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48]
1492787238510	hyper::header	TRACE	raw header: "Connection"=[75, 101, 101, 112, 45, 65, 108, 105, 118, 101]
1492787238510	hyper::header	TRACE	raw header: "User-Agent"=[65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41]
1492787238510	hyper::header	TRACE	raw header: "Accept-Encoding"=[103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101]
1492787238510	hyper::server::request	DEBUG	Request Line: Post AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/execute/sync") Http11
1492787238510	hyper::server::request	DEBUG	Headers { Content-Type: application/json; charset=utf-8
, Content-Length: 8545
, Host: localhost:33610
, Connection: Keep-Alive
, User-Agent: Apache-HttpClient/4.5.2 (Java/1.8.0_112)
, Accept-Encoding: gzip,deflate
, }
1492787238510	hyper::header	TRACE	Headers.set( "Connection", Connection([Close]) )
1492787238510	hyper::http::h1	TRACE	Sized read, remaining=8545
1492787238510	hyper::http::h1	TRACE	Sized read: 32
1492787238510	hyper::http::h1	TRACE	Sized read, remaining=8513
1492787238510	hyper::http::h1	TRACE	Sized read: 64
1492787238510	hyper::http::h1	TRACE	Sized read, remaining=8449
1492787238510	hyper::http::h1	TRACE	Sized read: 128
1492787238510	hyper::http::h1	TRACE	Sized read, remaining=8321
1492787238510	hyper::http::h1	TRACE	Sized read: 256
1492787238510	hyper::http::h1	TRACE	Sized read, remaining=8065
1492787238510	hyper::http::h1	TRACE	Sized read: 512
1492787238511	hyper::http::h1	TRACE	Sized read, remaining=7553
1492787238511	hyper::http::h1	TRACE	Sized read: 1024
1492787238511	hyper::http::h1	TRACE	Sized read, remaining=6529
1492787238511	hyper::http::h1	TRACE	Sized read: 2048
1492787238511	hyper::http::h1	TRACE	Sized read, remaining=4481
1492787238511	hyper::http::h1	TRACE	Sized read: 32
1492787238511	hyper::http::h1	TRACE	Sized read, remaining=4449
1492787238511	hyper::http::h1	TRACE	Sized read: 1744
1492787238511	hyper::http::h1	TRACE	Sized read, remaining=2705
1492787238511	hyper::http::h1	TRACE	Sized read: 1460
1492787238511	hyper::http::h1	TRACE	Sized read, remaining=1245
1492787238511	hyper::http::h1	TRACE	Sized read: 860
1492787238511	hyper::http::h1	TRACE	Sized read, remaining=385
1492787238511	hyper::http::h1	TRACE	Sized read: 385
1492787238511	hyper::http::h1	TRACE	Sized read, remaining=0
1492787238511	webdriver::server	DEBUG	Got request POST AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a/execute/sync")
1492787238511	webdriver::command	DEBUG	Got request body {"script":"return (function(){return function(){var aa=\"function\"==typeof Object.defineProperties?Object.defineProperty:function(a,c,b){if(b.get||b.set)throw new TypeError(\"ES3 does not support getters and setters.\");a!=Array.prototype&&a!=Object.prototype&&(a[c]=b.value)},ba=\"undefined\"!=typeof window&&window===this?this:\"undefined\"!=typeof global?global:this;\nfunction e(a,c){if(c){for(var b=ba,d=a.split(\".\"),f=0;f<d.length-1;f++){var h=d[f];h in b||(b[h]={});b=b[h]}d=d[d.length-1];f=b[d];h=c(f);h!=f&&null!=h&&aa(b,d,{configurable:!0,writable:!0,value:h})}}\ne(\"String.prototype.repeat\",function(a){return a?a:function(a){var b;if(null==this)throw new TypeError(\"The 'this' value for String.prototype.repeat must not be null or undefined\");b=this+\"\";if(0>a||1342177279<a)throw new RangeError(\"Invalid count value\");a|=0;for(var d=\"\";a;)if(a&1&&(d+=b),a>>>=1)b+=b;return d}});e(\"Math.sign\",function(a){return a?a:function(a){a=Number(a);return!a||isNaN(a)?a:0<a?1:-1}});var g=this;function l(a){return\"string\"==typeof a};function m(a,c){this.a=n[a]||p;this.message=c||\"\";var b=this.a.replace(/((?:^|\\s+)[a-z])/g,function(a){return a.toUpperCase().replace(/^[\\s\\xa0]+/g,\"\")}),d=b.length-5;if(0>d||b.indexOf(\"Error\",d)!=d)b+=\"Error\";this.name=b;b=Error(this.message);b.name=this.name;this.stack=b.stack||\"\"}\n(function(){var a=Error;function c(){}c.prototype=a.prototype;m.b=a.prototype;m.prototype=new c;m.prototype.constructor=m;m.a=function(b,c,f){for(var h=Array(arguments.length-2),k=2;k<arguments.length;k++)h[k-2]=arguments[k];return a.prototype[c].apply(b,h)}})();var p=\"unknown error\",n={15:\"element not selectable\",11:\"element not visible\"};n[31]=p;n[30]=p;n[24]=\"invalid cookie domain\";n[29]=\"invalid element coordinates\";n[12]=\"invalid element state\";n[32]=\"invalid selector\";n[51]=\"invalid selector\";\nn[52]=\"invalid selector\";n[17]=\"javascript error\";n[405]=\"unsupported operation\";n[34]=\"move target out of bounds\";n[27]=\"no such alert\";n[7]=\"no such element\";n[8]=\"no such frame\";n[23]=\"no such window\";n[28]=\"script timeout\";n[33]=\"session not created\";n[10]=\"stale element reference\";n[21]=\"timeout\";n[25]=\"unable to set cookie\";n[26]=\"unexpected alert open\";n[13]=p;n[9]=\"unknown command\";m.prototype.toString=function(){return this.name+\": \"+this.message};var q=String.prototype.trim?function(a){return a.trim()}:function(a){return a.replace(/^[\\s\\xa0]+|[\\s\\xa0]+$/g,\"\")};\nfunction r(a,c){for(var b=0,d=q(String(a)).split(\".\"),f=q(String(c)).split(\".\"),h=Math.max(d.length,f.length),k=0;!b&&k<h;k++){var S=d[k]||\"\",ja=f[k]||\"\",ka=RegExp(\"(\\\\d*)(\\\\D*)\",\"g\"),la=RegExp(\"(\\\\d*)(\\\\D*)\",\"g\");do{var t=ka.exec(S)||[\"\",\"\",\"\"],u=la.exec(ja)||[\"\",\"\",\"\"];if(0==t[0].length&&0==u[0].length)break;b=v(0==t[1].length?0:parseInt(t[1],10),0==u[1].length?0:parseInt(u[1],10))||v(0==t[2].length,0==u[2].length)||v(t[2],u[2])}while(!b)}return b}function v(a,c){return a<c?-1:a>c?1:0};var w;a:{var x=g.navigator;if(x){var y=x.userAgent;if(y){w=y;break a}}w=\"\"}function z(a){return-1!=w.indexOf(a)};function ca(a,c){for(var b=a.length,d=l(a)?a.split(\"\"):a,f=0;f<b;f++)f in d&&c.call(void 0,d[f],f,a)};function A(){return z(\"iPhone\")&&!z(\"iPod\")&&!z(\"iPad\")};function B(){return z(\"Opera\")||z(\"OPR\")}function C(){return(z(\"Chrome\")||z(\"CriOS\"))&&!B()&&!z(\"Edge\")};var D=B(),E=z(\"Trident\")||z(\"MSIE\"),F=z(\"Edge\"),G=z(\"Gecko\")&&!(-1!=w.toLowerCase().indexOf(\"webkit\")&&!z(\"Edge\"))&&!(z(\"Trident\")||z(\"MSIE\"))&&!z(\"Edge\"),da=-1!=w.toLowerCase().indexOf(\"webkit\")&&!z(\"Edge\");function ea(){var a=w;if(G)return/rv\\:([^\\);]+)(\\)|;)/.exec(a);if(F)return/Edge\\/([\\d\\.]+)/.exec(a);if(E)return/\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(a);if(da)return/WebKit\\/(\\S+)/.exec(a)}function H(){var a=g.document;return a?a.documentMode:void 0}\nvar I=function(){if(D&&g.opera){var a;var c=g.opera.version;try{a=c()}catch(b){a=c}return a}a=\"\";(c=ea())&&(a=c?c[1]:\"\");return E&&(c=H(),null!=c&&c>parseFloat(a))?String(c):a}(),J={},K=g.document,L=K&&E?H()||(\"CSS1Compat\"==K.compatMode?parseInt(I,10):5):void 0;!G&&!E||E&&9<=Number(L)||G&&(J[\"1.9.1\"]||(J[\"1.9.1\"]=0<=r(I,\"1.9.1\")));E&&(J[\"9\"]||(J[\"9\"]=0<=r(I,\"9\")));var fa=z(\"Firefox\"),ga=A()||z(\"iPod\"),ha=z(\"iPad\"),M=z(\"Android\")&&!(C()||z(\"Firefox\")||B()||z(\"Silk\")),ia=C(),N=z(\"Safari\")&&!(C()||z(\"Coast\")||B()||z(\"Edge\")||z(\"Silk\")||z(\"Android\"))&&!(A()||z(\"iPad\")||z(\"iPod\"));var ma={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},na={IMG:\" \",BR:\"\\n\"};function oa(a,c,b){if(!(a.nodeName in ma))if(3==a.nodeType)b?c.push(String(a.nodeValue).replace(/(\\r\\n|\\r|\\n)/g,\"\")):c.push(a.nodeValue);else if(a.nodeName in na)c.push(na[a.nodeName]);else for(a=a.firstChild;a;)oa(a,c,b),a=a.nextSibling};function O(a){return(a=a.exec(w))?a[1]:\"\"}var pa=function(){if(fa)return O(/Firefox\\/([0-9.]+)/);if(E||F||D)return I;if(ia)return O(/Chrome\\/([0-9.]+)/);if(N&&!(A()||z(\"iPad\")||z(\"iPod\")))return O(/Version\\/([0-9.]+)/);if(ga||ha){var a=/Version\\/(\\S+).*Mobile\\/(\\S+)/.exec(w);if(a)return a[1]+\".\"+a[2]}else if(M)return(a=O(/Android\\s+([0-9.]+)/))?a:O(/Version\\/([0-9.]+)/);return\"\"}();var qa;function P(a){ra?qa(a):M?r(sa,a):r(pa,a)}var ra=function(){if(!G)return!1;var a=g.Components;if(!a)return!1;try{if(!a.classes)return!1}catch(f){return!1}var c=a.classes,a=a.interfaces,b=c[\"@mozilla.org/xpcom/version-comparator;1\"].getService(a.nsIVersionComparator),d=c[\"@mozilla.org/xre/app-info;1\"].getService(a.nsIXULAppInfo).version;qa=function(a){b.compare(d,\"\"+a)};return!0}(),Q;if(M){var ta=/Android\\s+([0-9\\.]+)/.exec(w);Q=ta?ta[1]:\"0\"}else Q=\"0\";\nvar sa=Q,ua=E&&!(8<=Number(L)),va=E&&!(9<=Number(L));M&&P(2.3);M&&P(4);N&&P(6);function R(a,c){c=c.toLowerCase();if(\"style\"==c)return wa(a.style.cssText);if(ua&&\"value\"==c&&T(a,\"INPUT\"))return a.value;if(va&&!0===a[c])return String(a.getAttribute(c));var b=a.getAttributeNode(c);return b&&b.specified?b.value:null}var xa=/[;]+(?=(?:(?:[^\"]*\"){2})*[^\"]*$)(?=(?:(?:[^']*'){2})*[^']*$)(?=(?:[^()]*\\([^()]*\\))*[^()]*$)/;\nfunction wa(a){var c=[];ca(a.split(xa),function(a){var d=a.indexOf(\":\");0<d&&(a=[a.slice(0,d),a.slice(d+1)],2==a.length&&c.push(a[0].toLowerCase(),\":\",a[1],\";\"))});c=c.join(\"\");return c=\";\"==c.charAt(c.length-1)?c:c+\";\"}function U(a,c){var b;ua&&\"value\"==c&&T(a,\"OPTION\")&&null===R(a,\"value\")?(b=[],oa(a,b,!1),b=b.join(\"\")):b=a[c];return b}function T(a,c){return!!a&&1==a.nodeType&&(!c||a.tagName.toUpperCase()==c)}\nfunction ya(a){return T(a,\"OPTION\")?!0:T(a,\"INPUT\")?(a=a.type.toLowerCase(),\"checkbox\"==a||\"radio\"==a):!1};var za={\"class\":\"className\",readonly:\"readOnly\"},V=\"async autofocus autoplay checked compact complete controls declare defaultchecked defaultselected defer disabled draggable ended formnovalidate hidden indeterminate iscontenteditable ismap itemscope loop multiple muted nohref noresize noshade novalidate nowrap open paused pubdate readonly required reversed scoped seamless seeking selected spellcheck truespeed willvalidate\".split(\" \");function Aa(a,c){var b=null,d=c.toLowerCase();if(\"style\"==d)return(b=a.style)&&!l(b)&&(b=b.cssText),b;if((\"selected\"==d||\"checked\"==d)&&ya(a)){if(!ya(a))throw new m(15,\"Element is not selectable\");var b=\"selected\",f=a.type&&a.type.toLowerCase();if(\"checkbox\"==f||\"radio\"==f)b=\"checked\";return U(a,b)?\"true\":null}var h=T(a,\"A\");if(T(a,\"IMG\")&&\"src\"==d||h&&\"href\"==d)return(b=R(a,d))&&(b=U(a,d)),b;if(\"spellcheck\"==d){b=R(a,d);if(null!==b){if(\"false\"==b.toLowerCase())return\"false\";if(\"true\"==b.toLowerCase())return\"true\"}return U(a,\nd)+\"\"}h=za[c]||c;a:if(l(V))d=l(d)&&1==d.length?V.indexOf(d,0):-1;else{for(var k=0;k<V.length;k++)if(k in V&&V[k]===d){d=k;break a}d=-1}if(0<=d)return(b=null!==R(a,c)||U(a,h))?\"true\":null;try{f=U(a,h)}catch(S){}(d=null==f)||(d=typeof f,d=\"object\"==d&&null!=f||\"function\"==d);d?b=R(a,c):b=f;return null!=b?b.toString():null}var W=[\"_\"],X=g;W[0]in X||!X.execScript||X.execScript(\"var \"+W[0]);for(var Y;W.length&&(Y=W.shift());){var Z;if(Z=!W.length)Z=void 0!==Aa;Z?X[Y]=Aa:X[Y]?X=X[Y]:X=X[Y]={}};; return this._.apply(null,arguments);}.apply({navigator:typeof window!='undefined'?window.navigator:null,document:typeof window!='undefined'?window.document:null}, arguments);}\n).apply(null, arguments);","args":[{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"},"value"]}
1492787238512	geckodriver::marionette	DEBUG	→ 8629:[0,9,"executeScript",{"args":[{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"},"value"],"newSandbox":false,"script":"return (function(){return function(){var aa=\"function\"==typeof Object.defineProperties?Object.defineProperty:function(a,c,b){if(b.get||b.set)throw new TypeError(\"ES3 does not support getters and setters.\");a!=Array.prototype&&a!=Object.prototype&&(a[c]=b.value)},ba=\"undefined\"!=typeof window&&window===this?this:\"undefined\"!=typeof global?global:this;\nfunction e(a,c){if(c){for(var b=ba,d=a.split(\".\"),f=0;f<d.length-1;f++){var h=d[f];h in b||(b[h]={});b=b[h]}d=d[d.length-1];f=b[d];h=c(f);h!=f&&null!=h&&aa(b,d,{configurable:!0,writable:!0,value:h})}}\ne(\"String.prototype.repeat\",function(a){return a?a:function(a){var b;if(null==this)throw new TypeError(\"The 'this' value for String.prototype.repeat must not be null or undefined\");b=this+\"\";if(0>a||1342177279<a)throw new RangeError(\"Invalid count value\");a|=0;for(var d=\"\";a;)if(a&1&&(d+=b),a>>>=1)b+=b;return d}});e(\"Math.sign\",function(a){return a?a:function(a){a=Number(a);return!a||isNaN(a)?a:0<a?1:-1}});var g=this;function l(a){return\"string\"==typeof a};function m(a,c){this.a=n[a]||p;this.message=c||\"\";var b=this.a.replace(/((?:^|\\s+)[a-z])/g,function(a){return a.toUpperCase().replace(/^[\\s\\xa0]+/g,\"\")}),d=b.length-5;if(0>d||b.indexOf(\"Error\",d)!=d)b+=\"Error\";this.name=b;b=Error(this.message);b.name=this.name;this.stack=b.stack||\"\"}\n(function(){var a=Error;function c(){}c.prototype=a.prototype;m.b=a.prototype;m.prototype=new c;m.prototype.constructor=m;m.a=function(b,c,f){for(var h=Array(arguments.length-2),k=2;k<arguments.length;k++)h[k-2]=arguments[k];return a.prototype[c].apply(b,h)}})();var p=\"unknown error\",n={15:\"element not selectable\",11:\"element not visible\"};n[31]=p;n[30]=p;n[24]=\"invalid cookie domain\";n[29]=\"invalid element coordinates\";n[12]=\"invalid element state\";n[32]=\"invalid selector\";n[51]=\"invalid selector\";\nn[52]=\"invalid selector\";n[17]=\"javascript error\";n[405]=\"unsupported operation\";n[34]=\"move target out of bounds\";n[27]=\"no such alert\";n[7]=\"no such element\";n[8]=\"no such frame\";n[23]=\"no such window\";n[28]=\"script timeout\";n[33]=\"session not created\";n[10]=\"stale element reference\";n[21]=\"timeout\";n[25]=\"unable to set cookie\";n[26]=\"unexpected alert open\";n[13]=p;n[9]=\"unknown command\";m.prototype.toString=function(){return this.name+\": \"+this.message};var q=String.prototype.trim?function(a){return a.trim()}:function(a){return a.replace(/^[\\s\\xa0]+|[\\s\\xa0]+$/g,\"\")};\nfunction r(a,c){for(var b=0,d=q(String(a)).split(\".\"),f=q(String(c)).split(\".\"),h=Math.max(d.length,f.length),k=0;!b&&k<h;k++){var S=d[k]||\"\",ja=f[k]||\"\",ka=RegExp(\"(\\\\d*)(\\\\D*)\",\"g\"),la=RegExp(\"(\\\\d*)(\\\\D*)\",\"g\");do{var t=ka.exec(S)||[\"\",\"\",\"\"],u=la.exec(ja)||[\"\",\"\",\"\"];if(0==t[0].length&&0==u[0].length)break;b=v(0==t[1].length?0:parseInt(t[1],10),0==u[1].length?0:parseInt(u[1],10))||v(0==t[2].length,0==u[2].length)||v(t[2],u[2])}while(!b)}return b}function v(a,c){return a<c?-1:a>c?1:0};var w;a:{var x=g.navigator;if(x){var y=x.userAgent;if(y){w=y;break a}}w=\"\"}function z(a){return-1!=w.indexOf(a)};function ca(a,c){for(var b=a.length,d=l(a)?a.split(\"\"):a,f=0;f<b;f++)f in d&&c.call(void 0,d[f],f,a)};function A(){return z(\"iPhone\")&&!z(\"iPod\")&&!z(\"iPad\")};function B(){return z(\"Opera\")||z(\"OPR\")}function C(){return(z(\"Chrome\")||z(\"CriOS\"))&&!B()&&!z(\"Edge\")};var D=B(),E=z(\"Trident\")||z(\"MSIE\"),F=z(\"Edge\"),G=z(\"Gecko\")&&!(-1!=w.toLowerCase().indexOf(\"webkit\")&&!z(\"Edge\"))&&!(z(\"Trident\")||z(\"MSIE\"))&&!z(\"Edge\"),da=-1!=w.toLowerCase().indexOf(\"webkit\")&&!z(\"Edge\");function ea(){var a=w;if(G)return/rv\\:([^\\);]+)(\\)|;)/.exec(a);if(F)return/Edge\\/([\\d\\.]+)/.exec(a);if(E)return/\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(a);if(da)return/WebKit\\/(\\S+)/.exec(a)}function H(){var a=g.document;return a?a.documentMode:void 0}\nvar I=function(){if(D&&g.opera){var a;var c=g.opera.version;try{a=c()}catch(b){a=c}return a}a=\"\";(c=ea())&&(a=c?c[1]:\"\");return E&&(c=H(),null!=c&&c>parseFloat(a))?String(c):a}(),J={},K=g.document,L=K&&E?H()||(\"CSS1Compat\"==K.compatMode?parseInt(I,10):5):void 0;!G&&!E||E&&9<=Number(L)||G&&(J[\"1.9.1\"]||(J[\"1.9.1\"]=0<=r(I,\"1.9.1\")));E&&(J[\"9\"]||(J[\"9\"]=0<=r(I,\"9\")));var fa=z(\"Firefox\"),ga=A()||z(\"iPod\"),ha=z(\"iPad\"),M=z(\"Android\")&&!(C()||z(\"Firefox\")||B()||z(\"Silk\")),ia=C(),N=z(\"Safari\")&&!(C()||z(\"Coast\")||B()||z(\"Edge\")||z(\"Silk\")||z(\"Android\"))&&!(A()||z(\"iPad\")||z(\"iPod\"));var ma={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},na={IMG:\" \",BR:\"\\n\"};function oa(a,c,b){if(!(a.nodeName in ma))if(3==a.nodeType)b?c.push(String(a.nodeValue).replace(/(\\r\\n|\\r|\\n)/g,\"\")):c.push(a.nodeValue);else if(a.nodeName in na)c.push(na[a.nodeName]);else for(a=a.firstChild;a;)oa(a,c,b),a=a.nextSibling};function O(a){return(a=a.exec(w))?a[1]:\"\"}var pa=function(){if(fa)return O(/Firefox\\/([0-9.]+)/);if(E||F||D)return I;if(ia)return O(/Chrome\\/([0-9.]+)/);if(N&&!(A()||z(\"iPad\")||z(\"iPod\")))return O(/Version\\/([0-9.]+)/);if(ga||ha){var a=/Version\\/(\\S+).*Mobile\\/(\\S+)/.exec(w);if(a)return a[1]+\".\"+a[2]}else if(M)return(a=O(/Android\\s+([0-9.]+)/))?a:O(/Version\\/([0-9.]+)/);return\"\"}();var qa;function P(a){ra?qa(a):M?r(sa,a):r(pa,a)}var ra=function(){if(!G)return!1;var a=g.Components;if(!a)return!1;try{if(!a.classes)return!1}catch(f){return!1}var c=a.classes,a=a.interfaces,b=c[\"@mozilla.org/xpcom/version-comparator;1\"].getService(a.nsIVersionComparator),d=c[\"@mozilla.org/xre/app-info;1\"].getService(a.nsIXULAppInfo).version;qa=function(a){b.compare(d,\"\"+a)};return!0}(),Q;if(M){var ta=/Android\\s+([0-9\\.]+)/.exec(w);Q=ta?ta[1]:\"0\"}else Q=\"0\";\nvar sa=Q,ua=E&&!(8<=Number(L)),va=E&&!(9<=Number(L));M&&P(2.3);M&&P(4);N&&P(6);function R(a,c){c=c.toLowerCase();if(\"style\"==c)return wa(a.style.cssText);if(ua&&\"value\"==c&&T(a,\"INPUT\"))return a.value;if(va&&!0===a[c])return String(a.getAttribute(c));var b=a.getAttributeNode(c);return b&&b.specified?b.value:null}var xa=/[;]+(?=(?:(?:[^\"]*\"){2})*[^\"]*$)(?=(?:(?:[^']*'){2})*[^']*$)(?=(?:[^()]*\\([^()]*\\))*[^()]*$)/;\nfunction wa(a){var c=[];ca(a.split(xa),function(a){var d=a.indexOf(\":\");0<d&&(a=[a.slice(0,d),a.slice(d+1)],2==a.length&&c.push(a[0].toLowerCase(),\":\",a[1],\";\"))});c=c.join(\"\");return c=\";\"==c.charAt(c.length-1)?c:c+\";\"}function U(a,c){var b;ua&&\"value\"==c&&T(a,\"OPTION\")&&null===R(a,\"value\")?(b=[],oa(a,b,!1),b=b.join(\"\")):b=a[c];return b}function T(a,c){return!!a&&1==a.nodeType&&(!c||a.tagName.toUpperCase()==c)}\nfunction ya(a){return T(a,\"OPTION\")?!0:T(a,\"INPUT\")?(a=a.type.toLowerCase(),\"checkbox\"==a||\"radio\"==a):!1};var za={\"class\":\"className\",readonly:\"readOnly\"},V=\"async autofocus autoplay checked compact complete controls declare defaultchecked defaultselected defer disabled draggable ended formnovalidate hidden indeterminate iscontenteditable ismap itemscope loop multiple muted nohref noresize noshade novalidate nowrap open paused pubdate readonly required reversed scoped seamless seeking selected spellcheck truespeed willvalidate\".split(\" \");function Aa(a,c){var b=null,d=c.toLowerCase();if(\"style\"==d)return(b=a.style)&&!l(b)&&(b=b.cssText),b;if((\"selected\"==d||\"checked\"==d)&&ya(a)){if(!ya(a))throw new m(15,\"Element is not selectable\");var b=\"selected\",f=a.type&&a.type.toLowerCase();if(\"checkbox\"==f||\"radio\"==f)b=\"checked\";return U(a,b)?\"true\":null}var h=T(a,\"A\");if(T(a,\"IMG\")&&\"src\"==d||h&&\"href\"==d)return(b=R(a,d))&&(b=U(a,d)),b;if(\"spellcheck\"==d){b=R(a,d);if(null!==b){if(\"false\"==b.toLowerCase())return\"false\";if(\"true\"==b.toLowerCase())return\"true\"}return U(a,\nd)+\"\"}h=za[c]||c;a:if(l(V))d=l(d)&&1==d.length?V.indexOf(d,0):-1;else{for(var k=0;k<V.length;k++)if(k in V&&V[k]===d){d=k;break a}d=-1}if(0<=d)return(b=null!==R(a,c)||U(a,h))?\"true\":null;try{f=U(a,h)}catch(S){}(d=null==f)||(d=typeof f,d=\"object\"==d&&null!=f||\"function\"==d);d?b=R(a,c):b=f;return null!=b?b.toString():null}var W=[\"_\"],X=g;W[0]in X||!X.execScript||X.execScript(\"var \"+W[0]);for(var Y;W.length&&(Y=W.shift());){var Z;if(Z=!W.length)Z=void 0!==Aa;Z?X[Y]=Aa:X[Y]?X=X[Y]:X=X[Y]={}};; return this._.apply(null,arguments);}.apply({navigator:typeof window!='undefined'?window.navigator:null,document:typeof window!='undefined'?window.document:null}, arguments);}\n).apply(null, arguments);","scriptTimeout":null,"specialPowers":false}]
1492787238514	Marionette	TRACE	conn0 -> [0,9,"executeScript",{"args":[{"element-6066-11e4-a52e-4f735466cecf":"dbc051ff-0e52-4b95-b7e7-ef5bb8281d30"},"value"],"newSandbox":false,"script":"return (function(){return function(){var aa=\"function\"==typeof Object.defineProperties?Object.defineProperty:function(a,c,b){if(b.get||b.set)throw new TypeError(\"ES3 does not support getters and setters.\");a!=Array.prototype&&a!=Object.prototype&&(a[c]=b.value)},ba=\"undefined\"!=typeof window&&window===this?this:\"undefined\"!=typeof global?global:this;\nfunction e(a,c){if(c){for(var b=ba,d=a.split(\".\"),f=0;f<d.length-1;f++){var h=d[f];h in b||(b[h]={});b=b[h]}d=d[d.length-1];f=b[d];h=c(f);h!=f&&null!=h&&aa(b,d,{configurable:!0,writable:!0,value:h})}}\ne(\"String.prototype.repeat\",function(a){return a?a:function(a){var b;if(null==this)throw new TypeError(\"The 'this' value for String.prototype.repeat must not be null or undefined\");b=this+\"\";if(0>a||1342177279<a)throw new RangeError(\"Invalid count value\");a|=0;for(var d=\"\";a;)if(a&1&&(d+=b),a>>>=1)b+=b;return d}});e(\"Math.sign\",function(a){return a?a:function(a){a=Number(a);return!a||isNaN(a)?a:0<a?1:-1}});var g=this;function l(a){return\"string\"==typeof a};function m(a,c){this.a=n[a]||p;this.message=c||\"\";var b=this.a.replace(/((?:^|\\s+)[a-z])/g,function(a){return a.toUpperCase().replace(/^[\\s\\xa0]+/g,\"\")}),d=b.length-5;if(0>d||b.indexOf(\"Error\",d)!=d)b+=\"Error\";this.name=b;b=Error(this.message);b.name=this.name;this.stack=b.stack||\"\"}\n(function(){var a=Error;function c(){}c.prototype=a.prototype;m.b=a.prototype;m.prototype=new c;m.prototype.constructor=m;m.a=function(b,c,f){for(var h=Array(arguments.length-2),k=2;k<arguments.length;k++)h[k-2]=arguments[k];return a.prototype[c].apply(b,h)}})();var p=\"unknown error\",n={15:\"element not selectable\",11:\"element not visible\"};n[31]=p;n[30]=p;n[24]=\"invalid cookie domain\";n[29]=\"invalid element coordinates\";n[12]=\"invalid element state\";n[32]=\"invalid selector\";n[51]=\"invalid selector\";\nn[52]=\"invalid selector\";n[17]=\"javascript error\";n[405]=\"unsupported operation\";n[34]=\"move target out of bounds\";n[27]=\"no such alert\";n[7]=\"no such element\";n[8]=\"no such frame\";n[23]=\"no such window\";n[28]=\"script timeout\";n[33]=\"session not created\";n[10]=\"stale element reference\";n[21]=\"timeout\";n[25]=\"unable to set cookie\";n[26]=\"unexpected alert open\";n[13]=p;n[9]=\"unknown command\";m.prototype.toString=function(){return this.name+\": \"+this.message};var q=String.prototype.trim?function(a){return a.trim()}:function(a){return a.replace(/^[\\s\\xa0]+|[\\s\\xa0]+$/g,\"\")};\nfunction r(a,c){for(var b=0,d=q(String(a)).split(\".\"),f=q(String(c)).split(\".\"),h=Math.max(d.length,f.length),k=0;!b&&k<h;k++){var S=d[k]||\"\",ja=f[k]||\"\",ka=RegExp(\"(\\\\d*)(\\\\D*)\",\"g\"),la=RegExp(\"(\\\\d*)(\\\\D*)\",\"g\");do{var t=ka.exec(S)||[\"\",\"\",\"\"],u=la.exec(ja)||[\"\",\"\",\"\"];if(0==t[0].length&&0==u[0].length)break;b=v(0==t[1].length?0:parseInt(t[1],10),0==u[1].length?0:parseInt(u[1],10))||v(0==t[2].length,0==u[2].length)||v(t[2],u[2])}while(!b)}return b}function v(a,c){return a<c?-1:a>c?1:0};var w;a:{var x=g.navigator;if(x){var y=x.userAgent;if(y){w=y;break a}}w=\"\"}function z(a){return-1!=w.indexOf(a)};function ca(a,c){for(var b=a.length,d=l(a)?a.split(\"\"):a,f=0;f<b;f++)f in d&&c.call(void 0,d[f],f,a)};function A(){return z(\"iPhone\")&&!z(\"iPod\")&&!z(\"iPad\")};function B(){return z(\"Opera\")||z(\"OPR\")}function C(){return(z(\"Chrome\")||z(\"CriOS\"))&&!B()&&!z(\"Edge\")};var D=B(),E=z(\"Trident\")||z(\"MSIE\"),F=z(\"Edge\"),G=z(\"Gecko\")&&!(-1!=w.toLowerCase().indexOf(\"webkit\")&&!z(\"Edge\"))&&!(z(\"Trident\")||z(\"MSIE\"))&&!z(\"Edge\"),da=-1!=w.toLowerCase().indexOf(\"webkit\")&&!z(\"Edge\");function ea(){var a=w;if(G)return/rv\\:([^\\);]+)(\\)|;)/.exec(a);if(F)return/Edge\\/([\\d\\.]+)/.exec(a);if(E)return/\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(a);if(da)return/WebKit\\/(\\S+)/.exec(a)}function H(){var a=g.document;return a?a.documentMode:void 0}\nvar I=function(){if(D&&g.opera){var a;var c=g.opera.version;try{a=c()}catch(b){a=c}return a}a=\"\";(c=ea())&&(a=c?c[1]:\"\");return E&&(c=H(),null!=c&&c>parseFloat(a))?String(c):a}(),J={},K=g.document,L=K&&E?H()||(\"CSS1Compat\"==K.compatMode?parseInt(I,10):5):void 0;!G&&!E||E&&9<=Number(L)||G&&(J[\"1.9.1\"]||(J[\"1.9.1\"]=0<=r(I,\"1.9.1\")));E&&(J[\"9\"]||(J[\"9\"]=0<=r(I,\"9\")));var fa=z(\"Firefox\"),ga=A()||z(\"iPod\"),ha=z(\"iPad\"),M=z(\"Android\")&&!(C()||z(\"Firefox\")||B()||z(\"Silk\")),ia=C(),N=z(\"Safari\")&&!(C()||z(\"Coast\")||B()||z(\"Edge\")||z(\"Silk\")||z(\"Android\"))&&!(A()||z(\"iPad\")||z(\"iPod\"));var ma={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},na={IMG:\" \",BR:\"\\n\"};function oa(a,c,b){if(!(a.nodeName in ma))if(3==a.nodeType)b?c.push(String(a.nodeValue).replace(/(\\r\\n|\\r|\\n)/g,\"\")):c.push(a.nodeValue);else if(a.nodeName in na)c.push(na[a.nodeName]);else for(a=a.firstChild;a;)oa(a,c,b),a=a.nextSibling};function O(a){return(a=a.exec(w))?a[1]:\"\"}var pa=function(){if(fa)return O(/Firefox\\/([0-9.]+)/);if(E||F||D)return I;if(ia)return O(/Chrome\\/([0-9.]+)/);if(N&&!(A()||z(\"iPad\")||z(\"iPod\")))return O(/Version\\/([0-9.]+)/);if(ga||ha){var a=/Version\\/(\\S+).*Mobile\\/(\\S+)/.exec(w);if(a)return a[1]+\".\"+a[2]}else if(M)return(a=O(/Android\\s+([0-9.]+)/))?a:O(/Version\\/([0-9.]+)/);return\"\"}();var qa;function P(a){ra?qa(a):M?r(sa,a):r(pa,a)}var ra=function(){if(!G)return!1;var a=g.Components;if(!a)return!1;try{if(!a.classes)return!1}catch(f){return!1}var c=a.classes,a=a.interfaces,b=c[\"@mozilla.org/xpcom/version-comparator;1\"].getService(a.nsIVersionComparator),d=c[\"@mozilla.org/xre/app-info;1\"].getService(a.nsIXULAppInfo).version;qa=function(a){b.compare(d,\"\"+a)};return!0}(),Q;if(M){var ta=/Android\\s+([0-9\\.]+)/.exec(w);Q=ta?ta[1]:\"0\"}else Q=\"0\";\nvar sa=Q,ua=E&&!(8<=Number(L)),va=E&&!(9<=Number(L));M&&P(2.3);M&&P(4);N&&P(6);function R(a,c){c=c.toLowerCase();if(\"style\"==c)return wa(a.style.cssText);if(ua&&\"value\"==c&&T(a,\"INPUT\"))return a.value;if(va&&!0===a[c])return String(a.getAttribute(c));var b=a.getAttributeNode(c);return b&&b.specified?b.value:null}var xa=/[;]+(?=(?:(?:[^\"]*\"){2})*[^\"]*$)(?=(?:(?:[^']*'){2})*[^']*$)(?=(?:[^()]*\\([^()]*\\))*[^()]*$)/;\nfunction wa(a){var c=[];ca(a.split(xa),function(a){var d=a.indexOf(\":\");0<d&&(a=[a.slice(0,d),a.slice(d+1)],2==a.length&&c.push(a[0].toLowerCase(),\":\",a[1],\";\"))});c=c.join(\"\");return c=\";\"==c.charAt(c.length-1)?c:c+\";\"}function U(a,c){var b;ua&&\"value\"==c&&T(a,\"OPTION\")&&null===R(a,\"value\")?(b=[],oa(a,b,!1),b=b.join(\"\")):b=a[c];return b}function T(a,c){return!!a&&1==a.nodeType&&(!c||a.tagName.toUpperCase()==c)}\nfunction ya(a){return T(a,\"OPTION\")?!0:T(a,\"INPUT\")?(a=a.type.toLowerCase(),\"checkbox\"==a||\"radio\"==a):!1};var za={\"class\":\"className\",readonly:\"readOnly\"},V=\"async autofocus autoplay checked compact complete controls declare defaultchecked defaultselected defer disabled draggable ended formnovalidate hidden indeterminate iscontenteditable ismap itemscope loop multiple muted nohref noresize noshade novalidate nowrap open paused pubdate readonly required reversed scoped seamless seeking selected spellcheck truespeed willvalidate\".split(\" \");function Aa(a,c){var b=null,d=c.toLowerCase();if(\"style\"==d)return(b=a.style)&&!l(b)&&(b=b.cssText),b;if((\"selected\"==d||\"checked\"==d)&&ya(a)){if(!ya(a))throw new m(15,\"Element is not selectable\");var b=\"selected\",f=a.type&&a.type.toLowerCase();if(\"checkbox\"==f||\"radio\"==f)b=\"checked\";return U(a,b)?\"true\":null}var h=T(a,\"A\");if(T(a,\"IMG\")&&\"src\"==d||h&&\"href\"==d)return(b=R(a,d))&&(b=U(a,d)),b;if(\"spellcheck\"==d){b=R(a,d);if(null!==b){if(\"false\"==b.toLowerCase())return\"false\";if(\"true\"==b.toLowerCase())return\"true\"}return U(a,\nd)+\"\"}h=za[c]||c;a:if(l(V))d=l(d)&&1==d.length?V.indexOf(d,0):-1;else{for(var k=0;k<V.length;k++)if(k in V&&V[k]===d){d=k;break a}d=-1}if(0<=d)return(b=null!==R(a,c)||U(a,h))?\"true\":null;try{f=U(a,h)}catch(S){}(d=null==f)||(d=typeof f,d=\"object\"==d&&null!=f||\"function\"==d);d?b=R(a,c):b=f;return null!=b?b.toString():null}var W=[\"_\"],X=g;W[0]in X||!X.execScript||X.execScript(\"var \"+W[0]);for(var Y;W.length&&(Y=W.shift());){var Z;if(Z=!W.length)Z=void 0!==Aa;Z?X[Y]=Aa:X[Y]?X=X[Y]:X=X[Y]={}};; return this._.apply(null,arguments);}.apply({navigator:typeof window!='undefined'?window.navigator:null,document:typeof window!='undefined'?window.document:null}, arguments);}\n).apply(null, arguments);","scriptTimeout":null,"specialPowers":false}]
1492787238521	Marionette	TRACE	conn0 <- [1,9,null,{"value":"12345a"}]
1492787238521	geckodriver::marionette	DEBUG	← [1,9,null,{"value":"12345a"}]
1492787238522	webdriver::server	DEBUG	Returning status Ok
1492787238522	webdriver::server	DEBUG	Returning body {"value":"12345a"}
1492787238522	hyper::header	TRACE	Headers.set( "Content-Type", ContentType(Mime(Application, Json, [(Charset, Utf8)])) )
1492787238522	hyper::header	TRACE	Headers.set( "Cache-Control", CacheControl([NoCache]) )
1492787238522	hyper::header	TRACE	Headers.set( "Content-Length", ContentLength(18) )
1492787238522	hyper::server::response	DEBUG	writing head: Http11 Ok
1492787238522	hyper::header	TRACE	Headers.set( "Date", Date(HttpDate(Tm { tm_sec: 18, tm_min: 7, tm_hour: 15, tm_mday: 21, tm_mon: 3, tm_year: 117, tm_wday: 5, tm_yday: 110, tm_isdst: 0, tm_utcoff: 0, tm_nsec: 522473800 })) )
1492787238522	hyper::server::response	DEBUG	headers [
Headers { Connection: close
, Content-Type: application/json; charset=utf-8
, Cache-Control: no-cache
, Content-Length: 18
, Date: Fri, 21 Apr 2017 15:07:18 GMT
, }]
1492787238522	hyper::server::response	DEBUG	write 18 bytes
1492787238522	hyper::server::response	TRACE	ending
1492787238522	hyper::server	DEBUG	keep_alive = false for 127.0.0.1:4325
1492787238522	hyper::server	DEBUG	keep_alive loop ending for 127.0.0.1:4325
1492787238524	hyper::server	DEBUG	Incoming stream
1492787238524	hyper::buffer	TRACE	get_buf []
1492787238524	hyper::buffer	TRACE	read_into_buf buf[0..4096]
1492787238524	hyper::buffer	TRACE	get_buf [u8; 4096][0..197]
1492787238524	hyper::http::h1	TRACE	try_parse([68, 69, 76, 69, 84, 69, 32, 47, 115, 101, 115, 115, 105, 111, 110, 47, 98, 56, 48, 50, 55, 49, 49, 100, 45, 53, 51, 48, 52, 45, 52, 50, 49, 101, 45, 98, 99, 102, 51, 45, 56, 54, 100, 98, 50, 51, 101, 97, 53, 55, 52, 97, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 72, 111, 115, 116, 58, 32, 108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 75, 101, 101, 112, 45, 65, 108, 105, 118, 101, 13, 10, 85, 115, 101, 114, 45, 65, 103, 101, 110, 116, 58, 32, 65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41, 13, 10, 65, 99, 99, 101, 112, 116, 45, 69, 110, 99, 111, 100, 105, 110, 103, 58, 32, 103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101, 13, 10, 13, 10])
1492787238524	hyper::http::h1	TRACE	Request.try_parse([Header; 100], [u8; 197])
1492787238524	hyper::http::h1	TRACE	Request.try_parse Complete(197)
1492787238524	hyper::header	TRACE	raw header: "Host"=[108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48]
1492787238524	hyper::header	TRACE	raw header: "Connection"=[75, 101, 101, 112, 45, 65, 108, 105, 118, 101]
1492787238524	hyper::header	TRACE	raw header: "User-Agent"=[65, 112, 97, 99, 104, 101, 45, 72, 116, 116, 112, 67, 108, 105, 101, 110, 116, 47, 52, 46, 53, 46, 50, 32, 40, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 41]
1492787238525	hyper::header	TRACE	raw header: "Accept-Encoding"=[103, 122, 105, 112, 44, 100, 101, 102, 108, 97, 116, 101]
1492787238525	hyper::server::request	DEBUG	Request Line: Delete AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a") Http11
1492787238525	hyper::server::request	DEBUG	Headers { Host: localhost:33610
, Connection: Keep-Alive
, User-Agent: Apache-HttpClient/4.5.2 (Java/1.8.0_112)
, Accept-Encoding: gzip,deflate
, }
1492787238525	hyper::header	TRACE	Headers.set( "Connection", Connection([Close]) )
1492787238525	webdriver::server	DEBUG	Got request DELETE AbsolutePath("/session/b802711d-5304-421e-bcf3-86db23ea574a")
1492787238525	geckodriver::marionette	DEBUG	→ 49:[0,10,"quitApplication",{"flags":["eForceQuit"]}]
1492787238527	Marionette	TRACE	conn0 -> [0,10,"quitApplication",{"flags":["eForceQuit"]}]
1492787238527	Marionette	INFO	New connections will no longer be accepted
1492787238527	Marionette	TRACE	conn0 <- [1,10,null,{}]
1492787238529	geckodriver::marionette	DEBUG	← [1,10,null,{}]
1492787238529	webdriver::server	DEBUG	Deleting session
1492787238529	geckodriver::marionette	DEBUG	Stopping browser process
1492787238596	webdriver::server	DEBUG	Returning status Ok
1492787238596	webdriver::server	DEBUG	Returning body {"value": {}}
1492787238596	hyper::header	TRACE	Headers.set( "Content-Type", ContentType(Mime(Application, Json, [(Charset, Utf8)])) )
1492787238596	hyper::header	TRACE	Headers.set( "Cache-Control", CacheControl([NoCache]) )
1492787238596	hyper::header	TRACE	Headers.set( "Content-Length", ContentLength(13) )
1492787238596	hyper::server::response	DEBUG	writing head: Http11 Ok
1492787238596	hyper::header	TRACE	Headers.set( "Date", Date(HttpDate(Tm { tm_sec: 18, tm_min: 7, tm_hour: 15, tm_mday: 21, tm_mon: 3, tm_year: 117, tm_wday: 5, tm_yday: 110, tm_isdst: 0, tm_utcoff: 0, tm_nsec: 596416300 })) )
1492787238596	hyper::server::response	DEBUG	headers [
Headers { Connection: close
, Content-Type: application/json; charset=utf-8
, Cache-Control: no-cache
, Content-Length: 13
, Date: Fri, 21 Apr 2017 15:07:18 GMT
, }]
1492787238596	hyper::server::response	DEBUG	write 13 bytes
1492787238596	hyper::server::response	TRACE	ending
1492787238596	hyper::server	DEBUG	keep_alive = false for 127.0.0.1:4326
1492787238596	hyper::server	DEBUG	keep_alive loop ending for 127.0.0.1:4326
1492787238606	hyper::server	DEBUG	Incoming stream
1492787238606	hyper::buffer	TRACE	get_buf []
1492787238606	hyper::buffer	TRACE	read_into_buf buf[0..4096]
1492787238606	hyper::buffer	TRACE	get_buf [u8; 4096][0..163]
1492787238606	hyper::http::h1	TRACE	try_parse([71, 69, 84, 32, 47, 115, 104, 117, 116, 100, 111, 119, 110, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 85, 115, 101, 114, 45, 65, 103, 101, 110, 116, 58, 32, 74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50, 13, 10, 72, 111, 115, 116, 58, 32, 108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48, 13, 10, 65, 99, 99, 101, 112, 116, 58, 32, 116, 101, 120, 116, 47, 104, 116, 109, 108, 44, 32, 105, 109, 97, 103, 101, 47, 103, 105, 102, 44, 32, 105, 109, 97, 103, 101, 47, 106, 112, 101, 103, 44, 32, 42, 59, 32, 113, 61, 46, 50, 44, 32, 42, 47, 42, 59, 32, 113, 61, 46, 50, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 107, 101, 101, 112, 45, 97, 108, 105, 118, 101, 13, 10, 13, 10])
1492787238606	hyper::http::h1	TRACE	Request.try_parse([Header; 100], [u8; 163])
1492787238606	hyper::http::h1	TRACE	Request.try_parse Complete(163)
1492787238606	hyper::header	TRACE	raw header: "User-Agent"=[74, 97, 118, 97, 47, 49, 46, 56, 46, 48, 95, 49, 49, 50]
1492787238606	hyper::header	TRACE	raw header: "Host"=[108, 111, 99, 97, 108, 104, 111, 115, 116, 58, 51, 51, 54, 49, 48]
1492787238606	hyper::header	TRACE	raw header: "Accept"=[116, 101, 120, 116, 47, 104, 116, 109, 108, 44, 32, 105, 109, 97, 103, 101, 47, 103, 105, 102, 44, 32, 105, 109, 97, 103, 101, 47, 106, 112, 101, 103, 44, 32, 42, 59, 32, 113, 61, 46, 50, 44, 32, 42, 47, 42, 59, 32, 113, 61, 46, 50]
1492787238606	hyper::header	TRACE	raw header: "Connection"=[107, 101, 101, 112, 45, 97, 108, 105, 118, 101]
1492787238606	hyper::server::request	DEBUG	Request Line: Get AbsolutePath("/shutdown") Http11
1492787238606	hyper::server::request	DEBUG	Headers { User-Agent: Java/1.8.0_112
, Host: localhost:33610
, Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
, Connection: keep-alive
, }
1492787238606	hyper::header	TRACE	Headers.set( "Connection", Connection([Close]) )
1492787238606	webdriver::server	DEBUG	Got request GET AbsolutePath("/shutdown")
1492787238613	webdriver::server	DEBUG	Returning status NotFound
1492787238613	webdriver::server	DEBUG	Returning body {"value":{"error":"unknown command","message":"GET /shutdown did not match a known command","stacktrace":"stack backtrace:\n   0:   0x5ecb16 - <no info>\n   1:   0x428f24 - <no info>\n   2:   0x41e9ff - <no info>\n   3:   0x406151 - <no info>\n   4:   0x63c066 - <no info>\n   5:   0x410ad4 - <no info>\n   6:   0x637241 - <no info>\n   7: 0x767862c4 - BaseThreadInitThunk\n   8: 0x776c0609 - RtlSubscribeWnfStateChangeNotification"}}
1492787238613	hyper::header	TRACE	Headers.set( "Content-Type", ContentType(Mime(Application, Json, [(Charset, Utf8)])) )
1492787238613	hyper::header	TRACE	Headers.set( "Cache-Control", CacheControl([NoCache]) )
1492787238613	hyper::header	TRACE	Headers.set( "Content-Length", ContentLength(434) )
1492787238613	hyper::server::response	DEBUG	writing head: Http11 NotFound
1492787238613	hyper::header	TRACE	Headers.set( "Date", Date(HttpDate(Tm { tm_sec: 18, tm_min: 7, tm_hour: 15, tm_mday: 21, tm_mon: 3, tm_year: 117, tm_wday: 5, tm_yday: 110, tm_isdst: 0, tm_utcoff: 0, tm_nsec: 613428100 })) )
1492787238613	hyper::server::response	DEBUG	headers [
Headers { Connection: close
, Content-Type: application/json; charset=utf-8
, Cache-Control: no-cache
, Content-Length: 434
, Date: Fri, 21 Apr 2017 15:07:18 GMT
, }]
1492787238613	hyper::server::response	DEBUG	write 434 bytes
1492787238613	hyper::server::response	TRACE	ending
1492787238613	hyper::server	DEBUG	keep_alive = false for 127.0.0.1:4327
1492787238613	hyper::server	DEBUG	keep_alive loop ending for 127.0.0.1:4327
Apr 21, 2017 5:07:19 PM org.openqa.selenium.os.UnixProcess destroy
SEVERE: Unable to kill process with PID 51552

@saketrule
Copy link

action.send_keys(Keys.CONTROL,"a").perform() does not work as expected.

Adding a Keys.NULL at the end does.

action.send_keys(Keys.CONTROL,"a",Keys.NULL).perform()

@codingphil
Copy link
Author

Why is the behavior different from WebElement.sendKeys()?
When I perform the same test with WebElement.sendKeys() it works fine.

@codingphil
Copy link
Author

codingphil commented Apr 26, 2017

This test fails too with org.junit.ComparisonFailure: expected:<[]> but was:<[12345a]>
(geckodriver 0.16, FF 53)

    // given
    driver.navigate().to(TestPages.SIMPLETEXTFIELDPAGE);
    WebElement textFieldElem = driver.findElementByName("textfield");
    textFieldElem.click();
    new Actions(driver).sendKeys(textFieldElem, "12345").perform();
    assertEquals("12345", textFieldElem.getAttribute("value"));
  
    // when
    new Actions(driver).sendKeys(Keys.CONTROL, "a", Keys.NULL).perform();
    new Actions(driver).sendKeys(Keys.DELETE).perform();
    
    // then
    assertEquals("", textFieldElem.getAttribute("value"));

@andreastt
Copy link
Contributor

I’m sorry, it’s not clear to me from the comments so far in this thread what the problem actually is. I have some questions:

  • Does the action API work only if you append Keys.NULL at the end?
  • Does sendKeys not work at all?
  • Or does sendKeys also work if you append Keys.NULL?

@codingphil
Copy link
Author

codingphil commented Apr 28, 2017

Does the action API work only if you append Keys.NULL at the end?
Does sendKeys not work at all?
Or does sendKeys also work if you append Keys.NULL?

In general Actions.sendKeys() works fine for normal characters like "abc" (even without Keys.NULL at the end).
Pressing Ctrl-A via Actions.sendKeys() does not work.
Neither with or without the Keys.NULL.

Both test cases mentioned in the comments above fail.

Interestingly the following code without using the Actions API does work (without using Keys.NULL):

    // given
    webDriver.navigate().to(TestPages.SIMPLETEXTFIELDPAGE);
    WebElement textFieldElem = webDriver.findElementByName("textfield");
    textFieldElem.click();
    textFieldElem.sendKeys("12345");
    assertEquals("12345", textFieldElem.getAttribute("value"));
  
    // when
    List<CharSequence> keyWithModifiers = new ArrayList<CharSequence>();
    keyWithModifiers.add(Keys.CONTROL);
    keyWithModifiers.add("a");
    String ctrlA = Keys.chord(keyWithModifiers);
    textFieldElem.sendKeys(ctrlA);
    textFieldElem.sendKeys(Keys.DELETE);
    
    // then
    assertEquals("", textFieldElem.getAttribute("value"));

@elliottj
Copy link

elliottj commented May 9, 2017

Same issue on newer gecko driver.
VERSIONS
Firefox version: 53.0 (64-bit)
GeckoDriver: v0.16.1 win64
Selenium: 3.4.0 Java bindings
NetBeans: 8.1
Java jdk1.8.0_73

PLATFORM
Windows 7 64 bit 16GB RAM

CODE

        WebElement element = webDriver.findElement(By.id("search-box"));
        element.sendKeys("hello");
        Actions builder = new Actions(webDriver);
        builder.sendKeys(Keys.chord(Keys.CONTROL, "a")).perform();
        builder.sendKeys(Keys.chord(Keys.CONTROL, "c")).perform();
        webDriver.close();

EXPECTED
text "hello" availale in the system clipboard

ACTUAL
text "helloac" appears in input element.

LOG EXTRACT

1494326268054	Marionette	TRACE	conn0 -> [0,3,"findElement",{"using":"css selector","value":"#search\\-box"}]
1494326268061	Marionette	TRACE	conn0 <- [1,3,null,{"value":{"element-6066-11e4-a52e-4f735466cecf":"47bf754c-7277-46df-86e1-9436f4855f77","ELEMENT":"47bf754c-7277-46df-86e1-9436f4855f77"}}]
1494326268062	geckodriver::marionette	TRACE	� [1,3,null,{"value":{"element-6066-11e4-a52e-4f735466cecf":"47bf754c-7277-46df-86e1-9436f4855f77","ELEMENT":"47bf754c-7277-46df-86e1-9436f4855f77"}}]
1494326268062	webdriver::server	DEBUG	� 200 OK {"value":{"element-6066-11e4-a52e-4f735466cecf":"47bf754c-7277-46df-86e1-9436f4855f77"}}
1494326268075	webdriver::server	DEBUG	→ POST /session/1e564606-3df9-4d4f-b7cb-af4007beb957/element/47bf754c-7277-46df-86e1-9436f4855f77/value {"id":"47bf754c-7277-46df-86e1-9436f4855f77","text":"hello","value":["h","e","l","l","o"]}
1494326268076	geckodriver::marionette	TRACE	→ 116:[0,4,"sendKeysToElement",{"id":"47bf754c-7277-46df-86e1-9436f4855f77","text":"hello","value":["h","e","l","l","o"]}]
1494326268078	Marionette	TRACE	conn0 -> [0,4,"sendKeysToElement",{"id":"47bf754c-7277-46df-86e1-9436f4855f77","text":"hello","value":["h","e","l","l","o"]}]
1494326268143	Marionette	TRACE	conn0 <- [1,4,null,{}]
1494326268144	geckodriver::marionette	TRACE	� [1,4,null,{}]
1494326268144	webdriver::server	DEBUG	� 200 OK {"value": {}}
1494326268161	webdriver::server	DEBUG	→ POST /session/1e564606-3df9-4d4f-b7cb-af4007beb957/actions {"actions":[{"type":"key","actions":[{"type":"keyDown","value":""},{"type":"keyUp","value":""},{"type":"keyDown","value":"a"},{"type":"keyUp","value":"a"},{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard"}]}
1494326268162	geckodriver::marionette	TRACE	→ 275:[0,5,"performActions",{"actions":[{"actions":[{"type":"keyDown","value":""},{"type":"keyUp","value":""},{"type":"keyDown","value":"a"},{"type":"keyUp","value":"a"},{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard","type":"key"}]}]
1494326268164	Marionette	TRACE	conn0 -> [0,5,"performActions",{"actions":[{"actions":[{"type":"keyDown","value":""},{"type":"keyUp","value":""},{"type":"keyDown","value":"a"},{"type":"keyUp","value":"a"},{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard","type":"key"}]}]
1494326268182	Marionette	TRACE	conn0 <- [1,5,null,{}]
1494326268183	geckodriver::marionette	TRACE	� [1,5,null,{}]
1494326268183	webdriver::server	DEBUG	� 200 OK {"value": {}}
1494326268189	webdriver::server	DEBUG	→ POST /session/1e564606-3df9-4d4f-b7cb-af4007beb957/actions {"actions":[{"type":"key","actions":[{"type":"keyDown","value":""},{"type":"keyUp","value":""},{"type":"keyDown","value":"c"},{"type":"keyUp","value":"c"},{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard"}]}
1494326268190	geckodriver::marionette	TRACE	→ 275:[0,6,"performActions",{"actions":[{"actions":[{"type":"keyDown","value":""},{"type":"keyUp","value":""},{"type":"keyDown","value":"c"},{"type":"keyUp","value":"c"},{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard","type":"key"}]}]
1494326268191	Marionette	TRACE	conn0 -> [0,6,"performActions",{"actions":[{"actions":[{"type":"keyDown","value":""},{"type":"keyUp","value":""},{"type":"keyDown","value":"c"},{"type":"keyUp","value":"c"},{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard","type":"key"}]}]
1494326268213	Marionette	TRACE	conn0 <- [1,6,null,{}]
1494326268215	geckodriver::marionette	TRACE	� [1,6,null,{}]
1494326268215	webdriver::server	DEBUG	� 200 OK {"value": {}}

codingphil workaround also works for me.

@whimboo
Copy link
Collaborator

whimboo commented Jan 4, 2018

Could someone test if that is still a problem with Firefox 58 beta, or 59 Nightly?

@codingphil
Copy link
Author

codingphil commented Jan 4, 2018

The test is still failing with Firefox 58 Beta and Firefox 59 Nightly, geckodriver 0.19.1 and selenium 3.8.1.

geckodriver-trace.log

@whimboo
Copy link
Collaborator

whimboo commented Jan 4, 2018

I don't know which kind of code you were running for the trace from the last comment. Can you please highlight the part of the trace log which shows the problem?

@codingphil
Copy link
Author

codingphil commented Jan 4, 2018

The code from the original bug entry:

    // given
    driver.navigate().to("http://localhost/SimpleTextField.html"); // TODO: Adapt to your own local server
    WebElement textFieldElem = driver.findElementByName("textfield");
    textFieldElem.click();
    new Actions(driver).sendKeys(textFieldElem, "12345").perform();
    assertEquals("12345", textFieldElem.getAttribute("value"));
  
    // when
    List<CharSequence> keyWithModifiers = new ArrayList<CharSequence>();
    keyWithModifiers.add(Keys.CONTROL);
    keyWithModifiers.add("a");
    String ctrlA = Keys.chord(keyWithModifiers);
    new Actions(driver).sendKeys(textFieldElem, ctrlA).perform();
    new Actions(driver).sendKeys(Keys.DELETE).perform();
    
    // then
    assertEquals("", textFieldElem.getAttribute("value")); // <<=== FAILS

The problem is that the assert fails (no error in trace). I just added the trace if anybody needs the info.

@whimboo
Copy link
Collaborator

whimboo commented Jan 4, 2018

Now I see. This looks indeed strange in the trace:

{"type":"keyDown","value":""},{"type":"keyUp","value":""},{"type":"keyDown","value":"a"},
{"type":"keyUp","value":"a"},{"type":"keyDown","value":""},{"type":"keyUp","value":""}

The Ctrl keys gets released before pressing a, and pressed/released again afterward. Given that chord() is not part of geckodriver, it should be a problem with the Selenium binding you are using. It just generates wrong code which then gets passed to geckodriver. CC @mjzffr

@whimboo
Copy link
Collaborator

whimboo commented Jan 4, 2018

I assume code like the following will work, right?

action.keyDown(Keys.CONTROL).sendKeys("a").keyUp(Keys.CONTROL).perform();

It should make it a dupe of issue #1112.

@codingphil
Copy link
Author

codingphil commented Jan 4, 2018

Interesting is that the following code works fine.

List<CharSequence> keyWithModifiers = new ArrayList<CharSequence>();
keyWithModifiers.add(Keys.CONTROL);
keyWithModifiers.add("a");
String ctrlA = Keys.chord(keyWithModifiers);
textFieldElem.sendKeys(ctrlA);
textFieldElem.sendKeys(Keys.DELETE);

So is the chord wrong here too?

@whimboo
Copy link
Collaborator

whimboo commented Jan 4, 2018

Which code works fine? The one I posted in my last comment? Have you run that? If it works (which I believe it does) this issue is invalid, and you should file a bug for your used binding.

@codingphil
Copy link
Author

codingphil commented Jan 5, 2018

My argument was that in the code posted above (#665 (comment))
Keys.chord() works fine because it is passed to WebElement.sendKeys() so it does not seem to be a bug in the method Keys.chord().
When using Keys.chord() with the Actions API (Actions.sendKeys()) it does not work.
So where and what exactly is the bug?

@whimboo
Copy link
Collaborator

whimboo commented Jan 5, 2018

Once againcord is not part of geckodriver/webdriver, and it seems to export wrongly for actions. See the following line from your trace log:

1515067064121 webdriver::server DEBUG -> POST /session/204a18cc-522c-43e0-89c9-43f8b4ff8f06/actions {"actions":[{"id":"default mouse","type":"pointer","parameters":{"pointerType":"mouse"},"actions":[{"duration":100,"x":0,"y":0,"type":"pointerMove","origin":{"ELEMENT":"4ef273d9-927d-476f-b8cf-d63f87d97819","element-6066-11e4-a52e-4f735466cecf":"4ef273d9-927d-476f-b8cf-d63f87d97819"}},{"button":0,"type":"pointerDown"},{"button":0,"type":"pointerUp"},{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"duration":0,"type":"pause"}]},{"type":"key","actions":[{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"duration":0,"type":"pause"},{"type":"keyDown","value":""},{"type":"keyUp","value":""},{"type":"keyDown","value":"a"},{"type":"keyUp","value":"a"},{"type":"keyDown","value":""},{"type":"keyUp","value":""}],"id":"default keyboard"}]}

geckodriver/webdriver itself gets already the wrong sequence. So it's not us failing here.

Marking as dupe of issue #1112.

@whimboo whimboo closed this as completed Jan 5, 2018
@andreastt
Copy link
Contributor

I haven’t followed the conversation, but does this mean there is an upstream Selenium issue here?

@whimboo
Copy link
Collaborator

whimboo commented Jan 5, 2018

Yes, there is. @codingphil could you file an issue for that?

@duanzih
Copy link

duanzih commented Jan 12, 2018

@whimboo Are you sure it is not geckodriver issue ? I can see Chrome driver works fine with action.sendKeys(Keys.chord(Keys.CONTROL, "a")).perform(); with the same version Selenium. I think it should be a geckodriver defect. Can you confirm ?

@chris13524
Copy link

I am having a similar issue. It works fine when using the Chrome driver. But the same code for Gecko, I get this error: Failed: POST /session/0d56f0a4-cd98-42fa-bf89-4275b9ed9f08/keys did not match a known command

(I'm using Protractor)

Adding Key.NULL like this: browser.actions().sendKeys(Key.chord(Key.CONTROL, "a", Key.NULL)).perform(); does not fix the issue for me.

Doing this: browser.actions().keyDown(Key.CONTROL).sendKeys("a").keyUp(Key.CONTROL).perform(); does not fix the issue for me.

Both of those workarounds work fine in Chrome, but not in Firefox.

@whimboo
Copy link
Collaborator

whimboo commented Feb 12, 2018

First there is no end-point for keys defined in the spec:
https://w3c.github.io/webdriver/webdriver-spec.html#list-of-endpoints

As such your mentioned POST request will indeed not work. Without seeing a trace log (also in regards the other cases, I would say that this could be a Protractor problem.

Also note that the chromedriver by default does not speak the W3C protocol, while geckodriver is doing that by default. I could believe that turning on w3c mode in chromedriver would also cause a failure.

@codingphil have you had a chance to file a Selenium issue for that problem?

@sivask444
Copy link

List keyWithModifiers = new ArrayList();
keyWithModifiers.add(Keys.CONTROL);
keyWithModifiers.add("a");
String ctrlA = Keys.chord(keyWithModifiers);
findETCElement("name", webLocatorString).sendKeys(ctrlA);
findETCElement("name", webLocatorString).sendKeys(Keys.DELETE);
findETCElement("name", webLocatorString).sendKeys(userName);

can any one suggest me , this code make it as one or two lines.

@lock
Copy link

lock bot commented Aug 16, 2019

This issue has been automatically locked since there has not been any recent activity after it was closed. If you have run into an issue you think is related, please open a new issue.

@lock lock bot locked and limited conversation to collaborators Aug 16, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

8 participants