<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>144410</bug_id>
          
          <creation_ts>2015-04-29 15:06:07 -0700</creation_ts>
          <short_desc>Adding the ability to move selection by granularity on iOS.</short_desc>
          <delta_ts>2015-04-29 17:22:47 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Enrica Casucci">enrica</reporter>
          <assigned_to name="Enrica Casucci">enrica</assigned_to>
          <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1090168</commentid>
    <comment_count>0</comment_count>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2015-04-29 15:06:07 -0700</bug_when>
    <thetext>This tracks the work required.

rdar://problem/19213337</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1090171</commentid>
    <comment_count>1</comment_count>
      <attachid>251990</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2015-04-29 15:10:33 -0700</bug_when>
    <thetext>Created attachment 251990
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1090226</commentid>
    <comment_count>2</comment_count>
      <attachid>252008</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2015-04-29 16:44:20 -0700</bug_when>
    <thetext>Created attachment 252008
Patch2

With additional fixes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1090239</commentid>
    <comment_count>3</comment_count>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2015-04-29 17:22:47 -0700</bug_when>
    <thetext>Committed revision 183592.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251990</attachid>
            <date>2015-04-29 15:10:33 -0700</date>
            <delta_ts>2015-04-29 16:44:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>moveSelectionByGranularity.txt</filename>
            <type>text/plain</type>
            <size>8124</size>
            <attacher name="Enrica Casucci">enrica</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MzU4MCkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDE1LTA0LTI5ICBFbnJpY2Eg
Q2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkaW5nIHRoZSBhYmlsaXR5
IHRvIG1vdmUgc2VsZWN0aW9uIGJ5IGdyYW51bGFyaXR5IG9uIGlPUy4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDQxMAorICAgICAgICByZGFyOi8v
cHJvYmxlbS8xOTIxMzMzNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vz
cy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tOgorICAgICAgICAoLVtXS0NvbnRlbnRW
aWV3IG1vdmVTZWxlY3Rpb25BdEJvdW5kYXJ5OmluRGlyZWN0aW9uOmNvbXBsZXRpb25IYW5kbGVy
Ol0pOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV2ViUGFnZVByb3h5SU9TLm1tOgorICAgICAg
ICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6Om1vdmVTZWxlY3Rpb25BdEJvdW5kYXJ5V2l0aERpcmVj
dGlvbik6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2U6Om1vdmVTZWxlY3Rpb25BdEJvdW5kYXJ5V2l0aERpcmVjdGlvbik6CisKIDIwMTUtMDQtMjkg
IEZpbGlwIFBpemxvICA8ZnBpemxvQGFwcGxlLmNvbT4KIAogICAgICAgICBKU1R5cGVJbmZvIHNo
b3VsZCBoYXZlIGFuIGlubGluZSB0eXBlIGZsYWcgdG8gaW5kaWNhdGUgaWYgZ2V0Q2FsbERhdGEo
KSBoYXMgYmVlbiBvdmVycmlkZGVuCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5oCShyZXZpc2lvbiAxODM1ODApCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
V2ViUGFnZVByb3h5LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ3MCw2ICs0NzAsNyBAQCBwdWJsaWM6
CiAgICAgdm9pZCBzZWxlY3RUZXh0V2l0aEdyYW51bGFyaXR5QXRQb2ludChjb25zdCBXZWJDb3Jl
OjpJbnRQb2ludCwgV2ViQ29yZTo6VGV4dEdyYW51bGFyaXR5LCBzdGQ6OmZ1bmN0aW9uPHZvaWQg
KENhbGxiYWNrQmFzZTo6RXJyb3IpPik7CiAgICAgdm9pZCBzZWxlY3RQb3NpdGlvbkF0UG9pbnQo
Y29uc3QgV2ViQ29yZTo6SW50UG9pbnQsIHN0ZDo6ZnVuY3Rpb248dm9pZCAoQ2FsbGJhY2tCYXNl
OjpFcnJvcik+KTsKICAgICB2b2lkIHNlbGVjdFBvc2l0aW9uQXRCb3VuZGFyeVdpdGhEaXJlY3Rp
b24oY29uc3QgV2ViQ29yZTo6SW50UG9pbnQsIFdlYkNvcmU6OlRleHRHcmFudWxhcml0eSwgV2Vi
Q29yZTo6U2VsZWN0aW9uRGlyZWN0aW9uLCBzdGQ6OmZ1bmN0aW9uPHZvaWQgKENhbGxiYWNrQmFz
ZTo6RXJyb3IpPik7CisgICAgdm9pZCBtb3ZlU2VsZWN0aW9uQXRCb3VuZGFyeVdpdGhEaXJlY3Rp
b24oV2ViQ29yZTo6VGV4dEdyYW51bGFyaXR5LCBXZWJDb3JlOjpTZWxlY3Rpb25EaXJlY3Rpb24s
IHN0ZDo6ZnVuY3Rpb248dm9pZChDYWxsYmFja0Jhc2U6OkVycm9yKT4pOwogICAgIHZvaWQgYmVn
aW5TZWxlY3Rpb25JbkRpcmVjdGlvbihXZWJDb3JlOjpTZWxlY3Rpb25EaXJlY3Rpb24sIHN0ZDo6
ZnVuY3Rpb248dm9pZCAodWludDY0X3QsIENhbGxiYWNrQmFzZTo6RXJyb3IpPik7CiAgICAgdm9p
ZCB1cGRhdGVTZWxlY3Rpb25XaXRoRXh0ZW50UG9pbnQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQs
IHN0ZDo6ZnVuY3Rpb248dm9pZCAodWludDY0X3QsIENhbGxiYWNrQmFzZTo6RXJyb3IpPik7CiAg
ICAgdm9pZCByZXF1ZXN0QXV0b2NvcnJlY3Rpb25EYXRhKGNvbnN0IFN0cmluZyYgdGV4dEZvckF1
dG9jb3JyZWN0aW9uLCBzdGQ6OmZ1bmN0aW9uPHZvaWQgKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpG
bG9hdFJlY3Q+JiwgY29uc3QgU3RyaW5nJiwgZG91YmxlLCB1aW50NjRfdCwgQ2FsbGJhY2tCYXNl
OjpFcnJvcik+KTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50
Vmlld0ludGVyYWN0aW9uLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCShyZXZpc2lvbiAxODM1ODApCisrKyBT
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQko
d29ya2luZyBjb3B5KQpAQCAtMTk5Miw2ICsxOTkyLDE2IEBAIC0gKHZvaWQpc2VsZWN0UG9zaXRp
b25BdEJvdW5kYXJ5OihVSVRleHQKICAgICB9KTsKIH0KIAorLSAodm9pZCltb3ZlU2VsZWN0aW9u
QXRCb3VuZGFyeTooVUlUZXh0R3JhbnVsYXJpdHkpZ3JhbnVsYXJpdHkgaW5EaXJlY3Rpb246KFVJ
VGV4dERpcmVjdGlvbilkaXJlY3Rpb24gY29tcGxldGlvbkhhbmRsZXI6KHZvaWQgKF4pKHZvaWQp
KWNvbXBsZXRpb25IYW5kbGVyCit7CisgICAgVUlXS1NlbGVjdGlvbkNvbXBsZXRpb25IYW5kbGVy
IHNlbGVjdGlvbkhhbmRsZXIgPSBbY29tcGxldGlvbkhhbmRsZXIgY29weV07CisgICAgCisgICAg
X3BhZ2UtPm1vdmVTZWxlY3Rpb25BdEJvdW5kYXJ5V2l0aERpcmVjdGlvbih0b1dLVGV4dEdyYW51
bGFyaXR5KGdyYW51bGFyaXR5KSwgdG9XS1NlbGVjdGlvbkRpcmVjdGlvbihkaXJlY3Rpb24pLCBb
c2VsZWN0aW9uSGFuZGxlcl0oV2ViS2l0OjpDYWxsYmFja0Jhc2U6OkVycm9yIGVycm9yKSB7Cisg
ICAgICAgIHNlbGVjdGlvbkhhbmRsZXIoKTsKKyAgICAgICAgW3NlbGVjdGlvbkhhbmRsZXIgcmVs
ZWFzZV07CisgICAgfSk7Cit9CisKIC0gKHZvaWQpc2VsZWN0VGV4dFdpdGhHcmFudWxhcml0eToo
VUlUZXh0R3JhbnVsYXJpdHkpZ3JhbnVsYXJpdHkgYXRQb2ludDooQ0dQb2ludClwb2ludCBjb21w
bGV0aW9uSGFuZGxlcjoodm9pZCAoXikodm9pZCkpY29tcGxldGlvbkhhbmRsZXIKIHsKICAgICBV
SVdLU2VsZWN0aW9uQ29tcGxldGlvbkhhbmRsZXIgc2VsZWN0aW9uSGFuZGxlciA9IFtjb21wbGV0
aW9uSGFuZGxlciBjb3B5XTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV2Vi
UGFnZVByb3h5SU9TLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9p
b3MvV2ViUGFnZVByb3h5SU9TLm1tCShyZXZpc2lvbiAxODM1ODApCisrKyBTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDUy
LDYgKzQ1MiwxNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6c2VsZWN0UG9zaXRpb25BdEJvdW5kCiAg
ICAgbV9wcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZWxlY3RQb3NpdGlvbkF0Qm91
bmRhcnlXaXRoRGlyZWN0aW9uKHBvaW50LCBzdGF0aWNfY2FzdDx1aW50MzJfdD4oZ3JhbnVsYXJp
dHkpLCBzdGF0aWNfY2FzdDx1aW50MzJfdD4oZGlyZWN0aW9uKSwgY2FsbGJhY2tJRCksIG1fcGFn
ZUlEKTsKIH0KIAordm9pZCBXZWJQYWdlUHJveHk6Om1vdmVTZWxlY3Rpb25BdEJvdW5kYXJ5V2l0
aERpcmVjdGlvbihXZWJDb3JlOjpUZXh0R3JhbnVsYXJpdHkgZ3JhbnVsYXJpdHksIFdlYkNvcmU6
OlNlbGVjdGlvbkRpcmVjdGlvbiBkaXJlY3Rpb24sIHN0ZDo6ZnVuY3Rpb248dm9pZChDYWxsYmFj
a0Jhc2U6OkVycm9yKT4gY2FsbGJhY2tGdW5jdGlvbikKK3sKKyAgICBpZiAoIWlzVmFsaWQoKSkg
eworICAgICAgICBjYWxsYmFja0Z1bmN0aW9uKENhbGxiYWNrQmFzZTo6RXJyb3I6OlVua25vd24p
OworICAgICAgICByZXR1cm47CisgICAgfQorICAgIAorICAgIHVpbnQ2NF90IGNhbGxiYWNrSUQg
PSBtX2NhbGxiYWNrcy5wdXQoV1RGOjptb3ZlKGNhbGxiYWNrRnVuY3Rpb24pLCBtX3Byb2Nlc3Mt
PnRocm90dGxlcigpLmJhY2tncm91bmRBY3Rpdml0eVRva2VuKCkpOworICAgIG1fcHJvY2Vzcy0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6TW92ZVNlbGVjdGlvbkF0Qm91bmRhcnlXaXRoRGlyZWN0
aW9uKHN0YXRpY19jYXN0PHVpbnQzMl90PihncmFudWxhcml0eSksIHN0YXRpY19jYXN0PHVpbnQz
Ml90PihkaXJlY3Rpb24pLCBjYWxsYmFja0lEKSwgbV9wYWdlSUQpOworfQorICAgIAogdm9pZCBX
ZWJQYWdlUHJveHk6OnNlbGVjdFBvc2l0aW9uQXRQb2ludChjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCBwb2ludCwgc3RkOjpmdW5jdGlvbjx2b2lkIChDYWxsYmFja0Jhc2U6OkVycm9yKT4gY2FsbGJh
Y2tGdW5jdGlvbikKIHsKICAgICBpZiAoIWlzVmFsaWQoKSkgewpJbmRleDogU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCShyZXZpc2lvbiAxODM1ODApCisrKyBT
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCSh3b3JraW5nIGNvcHkp
CkBAIC01MDAsNiArNTAwLDcgQEAgcHVibGljOgogICAgIHZvaWQgbW92ZVNlbGVjdGlvbkJ5T2Zm
c2V0KGludDMyX3Qgb2Zmc2V0LCB1aW50NjRfdCBjYWxsYmFja0lEKTsKICAgICB2b2lkIHNlbGVj
dFRleHRXaXRoR3JhbnVsYXJpdHlBdFBvaW50KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgdWlu
dDMyX3QgZ3JhbnVsYXJpdHksIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwogICAgIHZvaWQgc2VsZWN0
UG9zaXRpb25BdEJvdW5kYXJ5V2l0aERpcmVjdGlvbihjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYs
IHVpbnQzMl90IGdyYW51bGFyaXR5LCB1aW50MzJfdCBkaXJlY3Rpb24sIHVpbnQ2NF90IGNhbGxi
YWNrSUQpOworICAgIHZvaWQgbW92ZVNlbGVjdGlvbkF0Qm91bmRhcnlXaXRoRGlyZWN0aW9uKHVp
bnQzMl90IGdyYW51bGFyaXR5LCB1aW50MzJfdCBkaXJlY3Rpb24sIHVpbnQ2NF90IGNhbGxiYWNr
SUQpOwogICAgIHZvaWQgc2VsZWN0UG9zaXRpb25BdFBvaW50KGNvbnN0IFdlYkNvcmU6OkludFBv
aW50JiwgdWludDY0X3QgY2FsbGJhY2tJRCk7CiAgICAgdm9pZCBiZWdpblNlbGVjdGlvbkluRGly
ZWN0aW9uKHVpbnQzMl90IGRpcmVjdGlvbiwgdWludDY0X3QgY2FsbGJhY2tJRCk7CiAgICAgdm9p
ZCB1cGRhdGVTZWxlY3Rpb25XaXRoRXh0ZW50UG9pbnQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQm
LCB1aW50NjRfdCBjYWxsYmFja0lEKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCShyZXZpc2lvbiAxODM1ODAp
CisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5p
bgkod29ya2luZyBjb3B5KQpAQCAtNjYsNiArNjYsNyBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlIExl
Z2FjeVJlY2VpdmVyIHsKICAgICBNb3ZlU2VsZWN0aW9uQnlPZmZzZXQoaW50MzJfdCBvZmZzZXQs
IHVpbnQ2NF90IGNhbGxiYWNrSUQpCiAgICAgU2VsZWN0VGV4dFdpdGhHcmFudWxhcml0eUF0UG9p
bnQoV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQsIHVpbnQzMl90IGdyYW51bGFyaXR5LCB1aW50NjRf
dCBjYWxsYmFja0lEKQogICAgIFNlbGVjdFBvc2l0aW9uQXRCb3VuZGFyeVdpdGhEaXJlY3Rpb24o
V2ViQ29yZTo6SW50UG9pbnQgcG9pbnQsIHVpbnQzMl90IGdyYW51bGFyaXR5LCB1aW50MzJfdCBk
aXJlY3Rpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpCisgICAgTW92ZVNlbGVjdGlvbkF0Qm91bmRh
cnlXaXRoRGlyZWN0aW9uKHVpbnQzMl90IGdyYW51bGFyaXR5LCB1aW50MzJfdCBkaXJlY3Rpb24s
IHVpbnQ2NF90IGNhbGxiYWNrSUQpCiAgICAgU2VsZWN0UG9zaXRpb25BdFBvaW50KFdlYkNvcmU6
OkludFBvaW50IHBvaW50LCB1aW50NjRfdCBjYWxsYmFja0lEKQogICAgIEJlZ2luU2VsZWN0aW9u
SW5EaXJlY3Rpb24odWludDMyX3QgZGlyZWN0aW9uLCB1aW50NjRfdCBjYWxsYmFja0lEKQogICAg
IFVwZGF0ZVNlbGVjdGlvbldpdGhFeHRlbnRQb2ludChXZWJDb3JlOjpJbnRQb2ludCBwb2ludCwg
dWludDY0X3QgY2FsbGJhY2tJRCkKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9pb3MvV2ViUGFnZUlPUy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0JKHJldmlzaW9uIDE4MzU4MCkKKysrIFNv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtMTY5NSw2ICsxNjk1LDIwIEBAIHZvaWQgV2ViUGFnZTo6c2VsZWN0UG9zaXRp
b25BdEJvdW5kYXJ5V2kKICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlZvaWRDYWxs
YmFjayhjYWxsYmFja0lEKSk7CiB9CiAKK3ZvaWQgV2ViUGFnZTo6bW92ZVNlbGVjdGlvbkF0Qm91
bmRhcnlXaXRoRGlyZWN0aW9uKHVpbnQzMl90IGdyYW51bGFyaXR5LCB1aW50MzJfdCBkaXJlY3Rp
b24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpCit7CisgICAgRnJhbWUmIGZyYW1lID0gbV9wYWdlLT5m
b2N1c0NvbnRyb2xsZXIoKS5mb2N1c2VkT3JNYWluRnJhbWUoKTsKKyAgICAKKyAgICBpZiAoIWZy
YW1lLnNlbGVjdGlvbigpLnNlbGVjdGlvbigpLmlzTm9uZSgpKSB7CisgICAgICAgIGJvb2wgaXNG
b3J3YXJkID0gKGRpcmVjdGlvbiA9PSBEaXJlY3Rpb25Gb3J3YXJkIHx8IGRpcmVjdGlvbiA9PSBE
aXJlY3Rpb25SaWdodCk7CisgICAgICAgIFZpc2libGVQb3NpdGlvbiBwb3NpdGlvbiA9IChpc0Zv
cndhcmQpID8gZnJhbWUuc2VsZWN0aW9uKCkuc2VsZWN0aW9uKCkudmlzaWJsZUVuZCgpIDogZnJh
bWUuc2VsZWN0aW9uKCkuc2VsZWN0aW9uKCkudmlzaWJsZVN0YXJ0KCk7CisgICAgICAgIHBvc2l0
aW9uID0gcG9zaXRpb25PZk5leHRCb3VuZGFyeU9mR3JhbnVsYXJpdHkocG9zaXRpb24sIHN0YXRp
Y19jYXN0PFdlYkNvcmU6OlRleHRHcmFudWxhcml0eT4oZ3JhbnVsYXJpdHkpLCBzdGF0aWNfY2Fz
dDxTZWxlY3Rpb25EaXJlY3Rpb24+KGRpcmVjdGlvbikpOworICAgICAgICBpZiAocG9zaXRpb24u
aXNOb3ROdWxsKCkpCisgICAgICAgICAgICBmcmFtZS5zZWxlY3Rpb24oKS5zZXRTZWxlY3RlZFJh
bmdlKFJhbmdlOjpjcmVhdGUoKmZyYW1lLmRvY3VtZW50KCksIHBvc2l0aW9uLCBwb3NpdGlvbiku
cHRyKCksIGlzRm9yd2FyZD8gVVBTVFJFQU0gOiBET1dOU1RSRUFNLCB0cnVlKTsKKyAgICB9Cisg
ICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpWb2lkQ2FsbGJhY2soY2FsbGJhY2tJRCkp
OworfQorCiB2b2lkIFdlYlBhZ2U6OnNlbGVjdFRleHRXaXRoR3JhbnVsYXJpdHlBdFBvaW50KGNv
bnN0IFdlYkNvcmU6OkludFBvaW50JiBwb2ludCwgdWludDMyX3QgZ3JhbnVsYXJpdHksIHVpbnQ2
NF90IGNhbGxiYWNrSUQpCiB7CiAgICAgRnJhbWUmIGZyYW1lID0gbV9wYWdlLT5mb2N1c0NvbnRy
b2xsZXIoKS5mb2N1c2VkT3JNYWluRnJhbWUoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252008</attachid>
            <date>2015-04-29 16:44:20 -0700</date>
            <delta_ts>2015-04-29 17:00:11 -0700</delta_ts>
            <desc>Patch2</desc>
            <filename>moveSelectionByGranularity.txt</filename>
            <type>text/plain</type>
            <size>10555</size>
            <attacher name="Enrica Casucci">enrica</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MzU4OSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI2IEBACisyMDE1LTA0LTI5ICBFbnJpY2Eg
Q2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkaW5nIHRoZSBhYmlsaXR5
IHRvIG1vdmUgc2VsZWN0aW9uIGJ5IGdyYW51bGFyaXR5IG9uIGlPUy4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDQxMAorICAgICAgICByZGFyOi8v
cHJvYmxlbS8xOTIxMzMzNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyBjb3JyZWN0bHkgc2V0cyBfdXNpbmdHZXN0dXJlRm9y
U2VsZWN0aW9uIGZvciBhbGwKKyAgICAgICAgdGhlIGZ1bmN0aW9ucyB0aGF0IGNoYW5nZSB0aGUg
c2VsZWN0aW9uIHdpdGggYSBnZXN0dXJlLgorICAgICAgICBUaGlzIHdheSB3ZSBtYWtlIHN1cmUg
dGhhdCB0aGUgc2VsZWN0aW9uIGRyYXdpbmcgaXMgbm90IGRlbGF5ZWQKKyAgICAgICAgdW50aWwg
dGhlIG5leHQgdGltZSB3ZSBwYWludC4KKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5t
bToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBtb3ZlU2VsZWN0aW9uQXRCb3VuZGFyeTppbkRp
cmVjdGlvbjpjb21wbGV0aW9uSGFuZGxlcjpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dl
YlBhZ2VQcm94eUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojptb3ZlU2Vs
ZWN0aW9uQXRCb3VuZGFyeVdpdGhEaXJlY3Rpb24pOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVz
c2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1t
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjptb3ZlU2VsZWN0aW9uQXRCb3VuZGFyeVdpdGhE
aXJlY3Rpb24pOgorCiAyMDE1LTA0LTI5ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBw
bGUuY29tPgogCiAgICAgICAgIFVJIHByb2Nlc3Mgc29tZXRpbWVzIGNyYXNoZXMgdW5kZXIgX3Rh
a2VWaWV3U25hcHNob3Qgd2hlbiB0aGUgd2luZG93IGlzIG9mZi1zY3JlZW4KSW5kZXg6IFNvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgJKHJldmlzaW9uIDE4MzU4MCkKKysrIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAkod29ya2luZyBjb3B5KQpAQCAt
NDcwLDYgKzQ3MCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNlbGVjdFRleHRXaXRoR3JhbnVsYXJp
dHlBdFBvaW50KGNvbnN0IFdlYkNvcmU6OkludFBvaW50LCBXZWJDb3JlOjpUZXh0R3JhbnVsYXJp
dHksIHN0ZDo6ZnVuY3Rpb248dm9pZCAoQ2FsbGJhY2tCYXNlOjpFcnJvcik+KTsKICAgICB2b2lk
IHNlbGVjdFBvc2l0aW9uQXRQb2ludChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCwgc3RkOjpmdW5j
dGlvbjx2b2lkIChDYWxsYmFja0Jhc2U6OkVycm9yKT4pOwogICAgIHZvaWQgc2VsZWN0UG9zaXRp
b25BdEJvdW5kYXJ5V2l0aERpcmVjdGlvbihjb25zdCBXZWJDb3JlOjpJbnRQb2ludCwgV2ViQ29y
ZTo6VGV4dEdyYW51bGFyaXR5LCBXZWJDb3JlOjpTZWxlY3Rpb25EaXJlY3Rpb24sIHN0ZDo6ZnVu
Y3Rpb248dm9pZCAoQ2FsbGJhY2tCYXNlOjpFcnJvcik+KTsKKyAgICB2b2lkIG1vdmVTZWxlY3Rp
b25BdEJvdW5kYXJ5V2l0aERpcmVjdGlvbihXZWJDb3JlOjpUZXh0R3JhbnVsYXJpdHksIFdlYkNv
cmU6OlNlbGVjdGlvbkRpcmVjdGlvbiwgc3RkOjpmdW5jdGlvbjx2b2lkKENhbGxiYWNrQmFzZTo6
RXJyb3IpPik7CiAgICAgdm9pZCBiZWdpblNlbGVjdGlvbkluRGlyZWN0aW9uKFdlYkNvcmU6OlNl
bGVjdGlvbkRpcmVjdGlvbiwgc3RkOjpmdW5jdGlvbjx2b2lkICh1aW50NjRfdCwgQ2FsbGJhY2tC
YXNlOjpFcnJvcik+KTsKICAgICB2b2lkIHVwZGF0ZVNlbGVjdGlvbldpdGhFeHRlbnRQb2ludChj
b25zdCBXZWJDb3JlOjpJbnRQb2ludCwgc3RkOjpmdW5jdGlvbjx2b2lkICh1aW50NjRfdCwgQ2Fs
bGJhY2tCYXNlOjpFcnJvcik+KTsKICAgICB2b2lkIHJlcXVlc3RBdXRvY29ycmVjdGlvbkRhdGEo
Y29uc3QgU3RyaW5nJiB0ZXh0Rm9yQXV0b2NvcnJlY3Rpb24sIHN0ZDo6ZnVuY3Rpb248dm9pZCAo
Y29uc3QgVmVjdG9yPFdlYkNvcmU6OkZsb2F0UmVjdD4mLCBjb25zdCBTdHJpbmcmLCBkb3VibGUs
IHVpbnQ2NF90LCBDYWxsYmFja0Jhc2U6OkVycm9yKT4pOwpJbmRleDogU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0J
KHJldmlzaW9uIDE4MzU4MCkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250
ZW50Vmlld0ludGVyYWN0aW9uLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xOTc0LDMwICsxOTc0LDUy
IEBAIC0gKHZvaWQpcmVxdWVzdEF1dG9jb3JyZWN0aW9uUmVjdHNGb3JTdHIKIAogLSAodm9pZClz
ZWxlY3RQb3NpdGlvbkF0UG9pbnQ6KENHUG9pbnQpcG9pbnQgY29tcGxldGlvbkhhbmRsZXI6KHZv
aWQgKF4pKHZvaWQpKWNvbXBsZXRpb25IYW5kbGVyCiB7CisgICAgX3VzaW5nR2VzdHVyZUZvclNl
bGVjdGlvbiA9IFlFUzsKICAgICBVSVdLU2VsZWN0aW9uQ29tcGxldGlvbkhhbmRsZXIgc2VsZWN0
aW9uSGFuZGxlciA9IFtjb21wbGV0aW9uSGFuZGxlciBjb3B5XTsKKyAgICBSZXRhaW5QdHI8V0tD
b250ZW50Vmlldz4gdmlldyA9IHNlbGY7CiAgICAgCi0gICAgX3BhZ2UtPnNlbGVjdFBvc2l0aW9u
QXRQb2ludChXZWJDb3JlOjpJbnRQb2ludChwb2ludCksIFtzZWxlY3Rpb25IYW5kbGVyXShXZWJL
aXQ6OkNhbGxiYWNrQmFzZTo6RXJyb3IgZXJyb3IpIHsKKyAgICBfcGFnZS0+c2VsZWN0UG9zaXRp
b25BdFBvaW50KFdlYkNvcmU6OkludFBvaW50KHBvaW50KSwgW3ZpZXcsIHNlbGVjdGlvbkhhbmRs
ZXJdKFdlYktpdDo6Q2FsbGJhY2tCYXNlOjpFcnJvciBlcnJvcikgewogICAgICAgICBzZWxlY3Rp
b25IYW5kbGVyKCk7CisgICAgICAgIHZpZXctPl91c2luZ0dlc3R1cmVGb3JTZWxlY3Rpb24gPSBO
TzsKICAgICAgICAgW3NlbGVjdGlvbkhhbmRsZXIgcmVsZWFzZV07CiAgICAgfSk7CiB9CiAKIC0g
KHZvaWQpc2VsZWN0UG9zaXRpb25BdEJvdW5kYXJ5OihVSVRleHRHcmFudWxhcml0eSlncmFudWxh
cml0eSBpbkRpcmVjdGlvbjooVUlUZXh0RGlyZWN0aW9uKWRpcmVjdGlvbiBmcm9tUG9pbnQ6KENH
UG9pbnQpcG9pbnQgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQgKF4pKHZvaWQpKWNvbXBsZXRpb25I
YW5kbGVyCiB7CisgICAgX3VzaW5nR2VzdHVyZUZvclNlbGVjdGlvbiA9IFlFUzsKKyAgICBVSVdL
U2VsZWN0aW9uQ29tcGxldGlvbkhhbmRsZXIgc2VsZWN0aW9uSGFuZGxlciA9IFtjb21wbGV0aW9u
SGFuZGxlciBjb3B5XTsKKyAgICBSZXRhaW5QdHI8V0tDb250ZW50Vmlldz4gdmlldyA9IHNlbGY7
CisgICAgCisgICAgX3BhZ2UtPnNlbGVjdFBvc2l0aW9uQXRCb3VuZGFyeVdpdGhEaXJlY3Rpb24o
V2ViQ29yZTo6SW50UG9pbnQocG9pbnQpLCB0b1dLVGV4dEdyYW51bGFyaXR5KGdyYW51bGFyaXR5
KSwgdG9XS1NlbGVjdGlvbkRpcmVjdGlvbihkaXJlY3Rpb24pLCBbdmlldywgc2VsZWN0aW9uSGFu
ZGxlcl0oV2ViS2l0OjpDYWxsYmFja0Jhc2U6OkVycm9yIGVycm9yKSB7CisgICAgICAgIHNlbGVj
dGlvbkhhbmRsZXIoKTsKKyAgICAgICAgdmlldy0+X3VzaW5nR2VzdHVyZUZvclNlbGVjdGlvbiA9
IE5POworICAgICAgICBbc2VsZWN0aW9uSGFuZGxlciByZWxlYXNlXTsKKyAgICB9KTsKK30KKwor
LSAodm9pZCltb3ZlU2VsZWN0aW9uQXRCb3VuZGFyeTooVUlUZXh0R3JhbnVsYXJpdHkpZ3JhbnVs
YXJpdHkgaW5EaXJlY3Rpb246KFVJVGV4dERpcmVjdGlvbilkaXJlY3Rpb24gY29tcGxldGlvbkhh
bmRsZXI6KHZvaWQgKF4pKHZvaWQpKWNvbXBsZXRpb25IYW5kbGVyCit7CisgICAgX3VzaW5nR2Vz
dHVyZUZvclNlbGVjdGlvbiA9IFlFUzsKICAgICBVSVdLU2VsZWN0aW9uQ29tcGxldGlvbkhhbmRs
ZXIgc2VsZWN0aW9uSGFuZGxlciA9IFtjb21wbGV0aW9uSGFuZGxlciBjb3B5XTsKKyAgICBSZXRh
aW5QdHI8V0tDb250ZW50Vmlldz4gdmlldyA9IHNlbGY7CiAgICAgCi0gICAgX3BhZ2UtPnNlbGVj
dFBvc2l0aW9uQXRCb3VuZGFyeVdpdGhEaXJlY3Rpb24oV2ViQ29yZTo6SW50UG9pbnQocG9pbnQp
LCB0b1dLVGV4dEdyYW51bGFyaXR5KGdyYW51bGFyaXR5KSwgdG9XS1NlbGVjdGlvbkRpcmVjdGlv
bihkaXJlY3Rpb24pLCBbc2VsZWN0aW9uSGFuZGxlcl0oV2ViS2l0OjpDYWxsYmFja0Jhc2U6OkVy
cm9yIGVycm9yKSB7CisgICAgX3BhZ2UtPm1vdmVTZWxlY3Rpb25BdEJvdW5kYXJ5V2l0aERpcmVj
dGlvbih0b1dLVGV4dEdyYW51bGFyaXR5KGdyYW51bGFyaXR5KSwgdG9XS1NlbGVjdGlvbkRpcmVj
dGlvbihkaXJlY3Rpb24pLCBbdmlldywgc2VsZWN0aW9uSGFuZGxlcl0oV2ViS2l0OjpDYWxsYmFj
a0Jhc2U6OkVycm9yIGVycm9yKSB7CiAgICAgICAgIHNlbGVjdGlvbkhhbmRsZXIoKTsKKyAgICAg
ICAgdmlldy0+X3VzaW5nR2VzdHVyZUZvclNlbGVjdGlvbiA9IE5POwogICAgICAgICBbc2VsZWN0
aW9uSGFuZGxlciByZWxlYXNlXTsKICAgICB9KTsKIH0KIAogLSAodm9pZClzZWxlY3RUZXh0V2l0
aEdyYW51bGFyaXR5OihVSVRleHRHcmFudWxhcml0eSlncmFudWxhcml0eSBhdFBvaW50OihDR1Bv
aW50KXBvaW50IGNvbXBsZXRpb25IYW5kbGVyOih2b2lkICheKSh2b2lkKSljb21wbGV0aW9uSGFu
ZGxlcgogeworICAgIF91c2luZ0dlc3R1cmVGb3JTZWxlY3Rpb24gPSBZRVM7CiAgICAgVUlXS1Nl
bGVjdGlvbkNvbXBsZXRpb25IYW5kbGVyIHNlbGVjdGlvbkhhbmRsZXIgPSBbY29tcGxldGlvbkhh
bmRsZXIgY29weV07CisgICAgUmV0YWluUHRyPFdLQ29udGVudFZpZXc+IHZpZXcgPSBzZWxmOwog
Ci0gICAgX3BhZ2UtPnNlbGVjdFRleHRXaXRoR3JhbnVsYXJpdHlBdFBvaW50KFdlYkNvcmU6Oklu
dFBvaW50KHBvaW50KSwgdG9XS1RleHRHcmFudWxhcml0eShncmFudWxhcml0eSksIFtzZWxlY3Rp
b25IYW5kbGVyXShXZWJLaXQ6OkNhbGxiYWNrQmFzZTo6RXJyb3IgZXJyb3IpIHsKKyAgICBfcGFn
ZS0+c2VsZWN0VGV4dFdpdGhHcmFudWxhcml0eUF0UG9pbnQoV2ViQ29yZTo6SW50UG9pbnQocG9p
bnQpLCB0b1dLVGV4dEdyYW51bGFyaXR5KGdyYW51bGFyaXR5KSwgW3ZpZXcsIHNlbGVjdGlvbkhh
bmRsZXJdKFdlYktpdDo6Q2FsbGJhY2tCYXNlOjpFcnJvciBlcnJvcikgewogICAgICAgICBzZWxl
Y3Rpb25IYW5kbGVyKCk7CisgICAgICAgIHZpZXctPl91c2luZ0dlc3R1cmVGb3JTZWxlY3Rpb24g
PSBOTzsKICAgICAgICAgW3NlbGVjdGlvbkhhbmRsZXIgcmVsZWFzZV07CiAgICAgfSk7CiB9Cklu
ZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5t
bQkocmV2aXNpb24gMTgzNTgwKQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJQ
YWdlUHJveHlJT1MubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ1Miw2ICs0NTIsMTcgQEAgdm9pZCBX
ZWJQYWdlUHJveHk6OnNlbGVjdFBvc2l0aW9uQXRCb3VuZAogICAgIG1fcHJvY2Vzcy0+c2VuZChN
ZXNzYWdlczo6V2ViUGFnZTo6U2VsZWN0UG9zaXRpb25BdEJvdW5kYXJ5V2l0aERpcmVjdGlvbihw
b2ludCwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGdyYW51bGFyaXR5KSwgc3RhdGljX2Nhc3Q8dWlu
dDMyX3Q+KGRpcmVjdGlvbiksIGNhbGxiYWNrSUQpLCBtX3BhZ2VJRCk7CiB9CiAKK3ZvaWQgV2Vi
UGFnZVByb3h5Ojptb3ZlU2VsZWN0aW9uQXRCb3VuZGFyeVdpdGhEaXJlY3Rpb24oV2ViQ29yZTo6
VGV4dEdyYW51bGFyaXR5IGdyYW51bGFyaXR5LCBXZWJDb3JlOjpTZWxlY3Rpb25EaXJlY3Rpb24g
ZGlyZWN0aW9uLCBzdGQ6OmZ1bmN0aW9uPHZvaWQoQ2FsbGJhY2tCYXNlOjpFcnJvcik+IGNhbGxi
YWNrRnVuY3Rpb24pCit7CisgICAgaWYgKCFpc1ZhbGlkKCkpIHsKKyAgICAgICAgY2FsbGJhY2tG
dW5jdGlvbihDYWxsYmFja0Jhc2U6OkVycm9yOjpVbmtub3duKTsKKyAgICAgICAgcmV0dXJuOwor
ICAgIH0KKyAgICAKKyAgICB1aW50NjRfdCBjYWxsYmFja0lEID0gbV9jYWxsYmFja3MucHV0KFdU
Rjo6bW92ZShjYWxsYmFja0Z1bmN0aW9uKSwgbV9wcm9jZXNzLT50aHJvdHRsZXIoKS5iYWNrZ3Jv
dW5kQWN0aXZpdHlUb2tlbigpKTsKKyAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2U6Ok1vdmVTZWxlY3Rpb25BdEJvdW5kYXJ5V2l0aERpcmVjdGlvbihzdGF0aWNfY2FzdDx1aW50
MzJfdD4oZ3JhbnVsYXJpdHkpLCBzdGF0aWNfY2FzdDx1aW50MzJfdD4oZGlyZWN0aW9uKSwgY2Fs
bGJhY2tJRCksIG1fcGFnZUlEKTsKK30KKyAgICAKIHZvaWQgV2ViUGFnZVByb3h5OjpzZWxlY3RQ
b3NpdGlvbkF0UG9pbnQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQsIHN0ZDo6ZnVuY3Rp
b248dm9pZCAoQ2FsbGJhY2tCYXNlOjpFcnJvcik+IGNhbGxiYWNrRnVuY3Rpb24pCiB7CiAgICAg
aWYgKCFpc1ZhbGlkKCkpIHsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuaAkocmV2aXNpb24gMTgzNTgwKQorKysgU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtNTAwLDYgKzUwMCw3IEBA
IHB1YmxpYzoKICAgICB2b2lkIG1vdmVTZWxlY3Rpb25CeU9mZnNldChpbnQzMl90IG9mZnNldCwg
dWludDY0X3QgY2FsbGJhY2tJRCk7CiAgICAgdm9pZCBzZWxlY3RUZXh0V2l0aEdyYW51bGFyaXR5
QXRQb2ludChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIHVpbnQzMl90IGdyYW51bGFyaXR5LCB1
aW50NjRfdCBjYWxsYmFja0lEKTsKICAgICB2b2lkIHNlbGVjdFBvc2l0aW9uQXRCb3VuZGFyeVdp
dGhEaXJlY3Rpb24oY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCB1aW50MzJfdCBncmFudWxhcml0
eSwgdWludDMyX3QgZGlyZWN0aW9uLCB1aW50NjRfdCBjYWxsYmFja0lEKTsKKyAgICB2b2lkIG1v
dmVTZWxlY3Rpb25BdEJvdW5kYXJ5V2l0aERpcmVjdGlvbih1aW50MzJfdCBncmFudWxhcml0eSwg
dWludDMyX3QgZGlyZWN0aW9uLCB1aW50NjRfdCBjYWxsYmFja0lEKTsKICAgICB2b2lkIHNlbGVj
dFBvc2l0aW9uQXRQb2ludChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIHVpbnQ2NF90IGNhbGxi
YWNrSUQpOwogICAgIHZvaWQgYmVnaW5TZWxlY3Rpb25JbkRpcmVjdGlvbih1aW50MzJfdCBkaXJl
Y3Rpb24sIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwogICAgIHZvaWQgdXBkYXRlU2VsZWN0aW9uV2l0
aEV4dGVudFBvaW50KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgdWludDY0X3QgY2FsbGJhY2tJ
RCk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNz
YWdlcy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5tZXNzYWdlcy5pbgkocmV2aXNpb24gMTgzNTgwKQorKysgU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAg
LTY2LDYgKzY2LDcgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZSBMZWdhY3lSZWNlaXZlciB7CiAgICAg
TW92ZVNlbGVjdGlvbkJ5T2Zmc2V0KGludDMyX3Qgb2Zmc2V0LCB1aW50NjRfdCBjYWxsYmFja0lE
KQogICAgIFNlbGVjdFRleHRXaXRoR3JhbnVsYXJpdHlBdFBvaW50KFdlYkNvcmU6OkludFBvaW50
IHBvaW50LCB1aW50MzJfdCBncmFudWxhcml0eSwgdWludDY0X3QgY2FsbGJhY2tJRCkKICAgICBT
ZWxlY3RQb3NpdGlvbkF0Qm91bmRhcnlXaXRoRGlyZWN0aW9uKFdlYkNvcmU6OkludFBvaW50IHBv
aW50LCB1aW50MzJfdCBncmFudWxhcml0eSwgdWludDMyX3QgZGlyZWN0aW9uLCB1aW50NjRfdCBj
YWxsYmFja0lEKQorICAgIE1vdmVTZWxlY3Rpb25BdEJvdW5kYXJ5V2l0aERpcmVjdGlvbih1aW50
MzJfdCBncmFudWxhcml0eSwgdWludDMyX3QgZGlyZWN0aW9uLCB1aW50NjRfdCBjYWxsYmFja0lE
KQogICAgIFNlbGVjdFBvc2l0aW9uQXRQb2ludChXZWJDb3JlOjpJbnRQb2ludCBwb2ludCwgdWlu
dDY0X3QgY2FsbGJhY2tJRCkKICAgICBCZWdpblNlbGVjdGlvbkluRGlyZWN0aW9uKHVpbnQzMl90
IGRpcmVjdGlvbiwgdWludDY0X3QgY2FsbGJhY2tJRCkKICAgICBVcGRhdGVTZWxlY3Rpb25XaXRo
RXh0ZW50UG9pbnQoV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQsIHVpbnQ2NF90IGNhbGxiYWNrSUQp
CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1Mu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9X
ZWJQYWdlSU9TLm1tCShyZXZpc2lvbiAxODM1ODApCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0JKHdvcmtpbmcgY29weSkKQEAgLTE2OTUsNiAr
MTY5NSwyMCBAQCB2b2lkIFdlYlBhZ2U6OnNlbGVjdFBvc2l0aW9uQXRCb3VuZGFyeVdpCiAgICAg
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpWb2lkQ2FsbGJhY2soY2FsbGJhY2tJRCkpOwog
fQogCit2b2lkIFdlYlBhZ2U6Om1vdmVTZWxlY3Rpb25BdEJvdW5kYXJ5V2l0aERpcmVjdGlvbih1
aW50MzJfdCBncmFudWxhcml0eSwgdWludDMyX3QgZGlyZWN0aW9uLCB1aW50NjRfdCBjYWxsYmFj
a0lEKQoreworICAgIEZyYW1lJiBmcmFtZSA9IG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuZm9j
dXNlZE9yTWFpbkZyYW1lKCk7CisgICAgCisgICAgaWYgKCFmcmFtZS5zZWxlY3Rpb24oKS5zZWxl
Y3Rpb24oKS5pc05vbmUoKSkgeworICAgICAgICBib29sIGlzRm9yd2FyZCA9IChkaXJlY3Rpb24g
PT0gRGlyZWN0aW9uRm9yd2FyZCB8fCBkaXJlY3Rpb24gPT0gRGlyZWN0aW9uUmlnaHQpOworICAg
ICAgICBWaXNpYmxlUG9zaXRpb24gcG9zaXRpb24gPSAoaXNGb3J3YXJkKSA/IGZyYW1lLnNlbGVj
dGlvbigpLnNlbGVjdGlvbigpLnZpc2libGVFbmQoKSA6IGZyYW1lLnNlbGVjdGlvbigpLnNlbGVj
dGlvbigpLnZpc2libGVTdGFydCgpOworICAgICAgICBwb3NpdGlvbiA9IHBvc2l0aW9uT2ZOZXh0
Qm91bmRhcnlPZkdyYW51bGFyaXR5KHBvc2l0aW9uLCBzdGF0aWNfY2FzdDxXZWJDb3JlOjpUZXh0
R3JhbnVsYXJpdHk+KGdyYW51bGFyaXR5KSwgc3RhdGljX2Nhc3Q8U2VsZWN0aW9uRGlyZWN0aW9u
PihkaXJlY3Rpb24pKTsKKyAgICAgICAgaWYgKHBvc2l0aW9uLmlzTm90TnVsbCgpKQorICAgICAg
ICAgICAgZnJhbWUuc2VsZWN0aW9uKCkuc2V0U2VsZWN0ZWRSYW5nZShSYW5nZTo6Y3JlYXRlKCpm
cmFtZS5kb2N1bWVudCgpLCBwb3NpdGlvbiwgcG9zaXRpb24pLnB0cigpLCBpc0ZvcndhcmQ/IFVQ
U1RSRUFNIDogRE9XTlNUUkVBTSwgdHJ1ZSk7CisgICAgfQorICAgIHNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6Vm9pZENhbGxiYWNrKGNhbGxiYWNrSUQpKTsKK30KKwogdm9pZCBXZWJQYWdl
OjpzZWxlY3RUZXh0V2l0aEdyYW51bGFyaXR5QXRQb2ludChjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYgcG9pbnQsIHVpbnQzMl90IGdyYW51bGFyaXR5LCB1aW50NjRfdCBjYWxsYmFja0lEKQogewog
ICAgIEZyYW1lJiBmcmFtZSA9IG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuZm9jdXNlZE9yTWFp
bkZyYW1lKCk7Cg==
</data>
<flag name="review"
          id="276835"
          type_id="1"
          status="+"
          setter="benjamin"
    />
          </attachment>
      

    </bug>

</bugzilla>