<?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>64878</bug_id>
          
          <creation_ts>2011-07-20 10:12:04 -0700</creation_ts>
          <short_desc>[Qt] Adopt GraphicsContext3DOpenGL.cpp and ANGLE (part 2)</short_desc>
          <delta_ts>2011-07-25 12:21:08 -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>WebKit Qt</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>
          <dependson>64877</dependson>
          <blocked>57261</blocked>
    
    <blocked>64879</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Andrew Wason">rectalogic</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cmarrin</cc>
    
    <cc>mrobinson</cc>
    
    <cc>noam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>439863</commentid>
    <comment_count>0</comment_count>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-07-20 10:12:04 -0700</bug_when>
    <thetext>This is part 2 of a 3 part migration for bug 57261 to migrate to GraphicsContext3DOpenGL.cpp for Qt.

Part 2 adopts GraphicsContext3DOpenGL.cpp and ANGLE, but does not yet implement antialiasing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440503</commentid>
    <comment_count>1</comment_count>
      <attachid>101609</attachid>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-07-21 11:19:59 -0700</bug_when>
    <thetext>Created attachment 101609
adopt GraphicsContext3DOpenGL.cpp and ANGLE</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440557</commentid>
    <comment_count>2</comment_count>
      <attachid>101609</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2011-07-21 12:04:53 -0700</bug_when>
    <thetext>Comment on attachment 101609
adopt GraphicsContext3DOpenGL.cpp and ANGLE

View in context: https://bugs.webkit.org/attachment.cgi?id=101609&amp;action=review

Comments inline.

&gt; Source/WebCore/WebCore.pro:3641
&gt; +    *g++* {
&gt; +        QMAKE_CXXFLAGS += -Wno-unused-variable
&gt; +        QMAKE_CXXFLAGS += -Wno-missing-noreturn
&gt; +        QMAKE_CXXFLAGS += -Wno-unused-function
&gt; +        QMAKE_CXXFLAGS += -Wno-parentheses
&gt; +        QMAKE_CXXFLAGS += -Wno-reorder
&gt; +        # g++ &lt; 4.3 doesn&apos;t support -Wno-type-limits
&gt; +        system( $$QMAKE_CXX --version | grep -e &quot;\\&lt;[4-9]\\.[3-9]\\.[0-9]&quot; ) {
&gt; +            QMAKE_CXXFLAGS += -Wno-type-limits
&gt; +        }

Please explain :)

&gt; Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:32
&gt; +#if ENABLE(WEBGL) &amp;&amp; !defined(QT_OPENGL_ES_2)

So, does this mean we use GraphicsContext3DQt for ES, and GraphicsContext3DOpenGL for desktop?
Maybe we should make this decision in the pro file rather than pollute the #ifdef space, especially in files shared by other ports.

&gt; Source/WebCore/platform/graphics/qt/GraphicsContext3DQt.cpp:336
&gt; +    // Always set to 1 for OpenGL ES.

Shouldn&apos;t we allow more if we&apos;re not in ES?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440630</commentid>
    <comment_count>3</comment_count>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-07-21 14:10:05 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; 
&gt; &gt; Source/WebCore/WebCore.pro:3641
&gt; &gt; +    *g++* {
&gt; &gt; +        QMAKE_CXXFLAGS += -Wno-unused-variable
&gt; &gt; +        QMAKE_CXXFLAGS += -Wno-missing-noreturn
&gt; &gt; +        QMAKE_CXXFLAGS += -Wno-unused-function
&gt; &gt; +        QMAKE_CXXFLAGS += -Wno-parentheses
&gt; &gt; +        QMAKE_CXXFLAGS += -Wno-reorder
&gt; &gt; +        # g++ &lt; 4.3 doesn&apos;t support -Wno-type-limits
&gt; &gt; +        system( $$QMAKE_CXX --version | grep -e &quot;\\&lt;[4-9]\\.[3-9]\\.[0-9]&quot; ) {
&gt; &gt; +            QMAKE_CXXFLAGS += -Wno-type-limits
&gt; &gt; +        }
&gt; 
&gt; Please explain :)

These are the g++ warnings that need to be disabled for ANGLE to build without generating warnings.
The nasty bit at the end is because g++ 4.3 generates an additional warning, and the flag to disable
that is 4.3 specific.

Let me check if all these are still needed since ANGLE has been updated since jarkko worked on this (he came up with most of that list)


&gt; &gt; Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:32
&gt; &gt; +#if ENABLE(WEBGL) &amp;&amp; !defined(QT_OPENGL_ES_2)
&gt; 
&gt; So, does this mean we use GraphicsContext3DQt for ES, and GraphicsContext3DOpenGL for desktop?
&gt; Maybe we should make this decision in the pro file rather than pollute the #ifdef space, especially in files shared by other ports.

Yes, all these changes are just for desktop. But I can&apos;t figure out how to determine if we are ES2 or desktop in the pro file - QT_OPENGL_ES_2 I believe would be defined in &lt;Qt/qconfig.h&gt; and that file is generated as part of the Qt configure/build process. If I could determine we are ES2 in the pro, then I can just not include the file in SOURCES in that case.

&gt; &gt; Source/WebCore/platform/graphics/qt/GraphicsContext3DQt.cpp:336
&gt; &gt; +    // Always set to 1 for OpenGL ES.
&gt; 
&gt; Shouldn&apos;t we allow more if we&apos;re not in ES?

Hmm, this whole ANGLE init block (including that comment) was copied from GraphicsContext3DGtk.cpp and GraphicsContext3DMac.mm (which initialize it identically).

I think the &quot;ES&quot; in the comment refers to the WebGL spec being based on ES 2.0 which only supports 1 drawing buffer - i.e. it&apos;s a requirement of the WebGL spec.

But actually that whole ANGLE initialization block in GraphicsContext3DQt.cpp needs to be wrapped in
#if !defined(QT_OPENGL_ES_2) because we&apos;re only using ANGLE for desktop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440678</commentid>
    <comment_count>4</comment_count>
      <attachid>101652</attachid>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-07-21 15:35:10 -0700</bug_when>
    <thetext>Created attachment 101652
simplified ANGLE build

Removed some flags/defines from WebCore.pro that aren&apos;t needed by the latest ANGLE.
Only initialize ANGLE if not ES2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441454</commentid>
    <comment_count>5</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2011-07-24 09:15:57 -0700</bug_when>
    <thetext>&gt; 
&gt; 
&gt; &gt; &gt; Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:32
&gt; &gt; &gt; +#if ENABLE(WEBGL) &amp;&amp; !defined(QT_OPENGL_ES_2)
&gt; &gt; 
&gt; &gt; So, does this mean we use GraphicsContext3DQt for ES, and GraphicsContext3DOpenGL for desktop?
&gt; &gt; Maybe we should make this decision in the pro file rather than pollute the #ifdef space, especially in files shared by other ports.
&gt; 
&gt; Yes, all these changes are just for desktop. But I can&apos;t figure out how to determine if we are ES2 or desktop in the pro file - QT_OPENGL_ES_2 I believe would be defined in &lt;Qt/qconfig.h&gt; and that file is generated as part of the Qt configure/build process. If I could determine we are ES2 in the pro, then I can just not include the file in SOURCES in that case.

contains(QT_CONFIG, opengles2)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441455</commentid>
    <comment_count>6</comment_count>
      <attachid>101652</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2011-07-24 09:20:05 -0700</bug_when>
    <thetext>Comment on attachment 101652
simplified ANGLE build

View in context: https://bugs.webkit.org/attachment.cgi?id=101652&amp;action=review

&gt; Source/WebCore/WebCore.pro:3637
&gt; +    *g++* {
&gt; +        QMAKE_CXXFLAGS += -Wno-unused-variable
&gt; +        QMAKE_CXXFLAGS += -Wno-missing-noreturn
&gt; +        QMAKE_CXXFLAGS += -Wno-unused-function
&gt; +        QMAKE_CXXFLAGS += -Wno-reorder
&gt; +    }

Sorry, I can&apos;t let an overarching disabling of warnings in...
We have to figure out a way to diable these for ANGLE files only, or to live with those warnings being outputted when we build the ANGLE files.

&gt; Source/WebCore/WebCore.pro:3736
&gt; +    HEADERS += \
&gt; +        $$ANGLE_DIR/src/compiler/BaseTypes.h \
&gt; +        $$ANGLE_DIR/src/compiler/Common.h \
&gt; +        $$ANGLE_DIR/src/compiler/ConstantUnion.h \
&gt; +        $$ANGLE_DIR/src/compiler/debug.h \
&gt; +        $$ANGLE_DIR/src/compiler/ExtensionBehavior.h \
&gt; +        $$ANGLE_DIR/src/compiler/ForLoopUnroll.h \
&gt; +        $$ANGLE_DIR/src/compiler/glslang.h \
&gt; +        $$ANGLE_DIR/src/compiler/glslang_tab.h \
&gt; +        $$ANGLE_DIR/src/compiler/InfoSink.h \
&gt; +        $$ANGLE_DIR/src/compiler/InitializeDll.h \
&gt; +        $$ANGLE_DIR/src/compiler/InitializeGlobals.h \
&gt; +        $$ANGLE_DIR/src/compiler/Initialize.h \
&gt; +        $$ANGLE_DIR/src/compiler/InitializeParseContext.h \
&gt; +        $$ANGLE_DIR/src/compiler/intermediate.h \
&gt; +        $$ANGLE_DIR/src/compiler/localintermediate.h \
&gt; +        $$ANGLE_DIR/src/compiler/MMap.h \
&gt; +        $$ANGLE_DIR/src/compiler/MapLongVariableNames.h \
&gt; +        $$ANGLE_DIR/src/compiler/osinclude.h \
&gt; +        $$ANGLE_DIR/src/compiler/OutputESSL.h \
&gt; +        $$ANGLE_DIR/src/compiler/OutputGLSL.h \
&gt; +        $$ANGLE_DIR/src/compiler/OutputGLSLBase.h \
&gt; +        $$ANGLE_DIR/src/compiler/OutputHLSL.h \
&gt; +        $$ANGLE_DIR/src/compiler/ParseHelper.h \
&gt; +        $$ANGLE_DIR/src/compiler/PoolAlloc.h \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/atom.h \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/compile.h \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/cpp.h \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/memory.h \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/parser.h \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/preprocess.h \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/scanner.h \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/slglobals.h \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/symbols.h \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/tokens.h \
&gt; +        $$ANGLE_DIR/src/compiler/QualifierAlive.h \
&gt; +        $$ANGLE_DIR/src/compiler/RemoveTree.h \
&gt; +        $$ANGLE_DIR/src/compiler/SearchSymbol.h \
&gt; +        $$ANGLE_DIR/src/compiler/ShHandle.h \
&gt; +        $$ANGLE_DIR/src/compiler/SymbolTable.h \
&gt; +        $$ANGLE_DIR/src/compiler/TranslatorESSL.h \
&gt; +        $$ANGLE_DIR/src/compiler/TranslatorGLSL.h \
&gt; +        $$ANGLE_DIR/src/compiler/TranslatorHLSL.h \
&gt; +        $$ANGLE_DIR/src/compiler/Types.h \
&gt; +        $$ANGLE_DIR/src/compiler/UnfoldSelect.h \
&gt; +        $$ANGLE_DIR/src/compiler/util.h \
&gt; +        $$ANGLE_DIR/src/compiler/ValidateLimitations.h \
&gt; +        $$ANGLE_DIR/src/compiler/VariableInfo.h \
&gt; +        $$ANGLE_DIR/src/compiler/VersionGLSL.h \
&gt; +
&gt; +    SOURCES += \
&gt; +        $$ANGLE_DIR/src/compiler/CodeGenGLSL.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/CodeGenHLSL.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/Compiler.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/debug.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/glslang_lex.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/glslang_tab.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/ForLoopUnroll.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/InfoSink.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/Initialize.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/InitializeDll.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/Intermediate.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/intermOut.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/IntermTraverse.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/ossource_posix.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/MapLongVariableNames.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/OutputESSL.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/OutputGLSL.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/OutputGLSLBase.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/OutputHLSL.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/parseConst.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/ParseHelper.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/PoolAlloc.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/atom.c \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/cpp.c \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/cppstruct.c \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/memory.c \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/scanner.c \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/symbols.c \
&gt; +        $$ANGLE_DIR/src/compiler/preprocessor/tokens.c \
&gt; +        $$ANGLE_DIR/src/compiler/QualifierAlive.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/RemoveTree.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/SearchSymbol.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/ShaderLang.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/SymbolTable.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/TranslatorESSL.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/TranslatorGLSL.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/TranslatorHLSL.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/UnfoldSelect.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/util.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/ValidateLimitations.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/VariableInfo.cpp \
&gt; +        $$ANGLE_DIR/src/compiler/VersionGLSL.cpp \
&gt; +

All this should be under !CONTAINS(QT_CONFIG, opengles2)

&gt; Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:32
&gt; +#if ENABLE(WEBGL) &amp;&amp; !defined(QT_OPENGL_ES_2)

See previous comment. We can put this in the .pro file under
contains(QT_CONFIG, opengles2)

&gt; Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:344
&gt; +    ::glActiveTexture(GL_TEXTURE0);

Please ask Martin Robinson to review this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441521</commentid>
    <comment_count>7</comment_count>
      <attachid>101843</attachid>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-07-24 18:15:52 -0700</bug_when>
    <thetext>Created attachment 101843
fix ANGLE compile flags

(In reply to comment #6)
&gt; 
&gt; Sorry, I can&apos;t let an overarching disabling of warnings in...
&gt; We have to figure out a way to diable these for ANGLE files only,
&gt; or to live with those warnings being outputted when we build the ANGLE files.

I defined a new compiler in QMAKE_EXTRA_COMPILERS, which is just QMAKE_CXX but with the extra warnings turned off and is used only for the ANGLE source files.

&gt; All this should be under !CONTAINS(QT_CONFIG, opengles2)
&gt;
&gt; &gt; Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:32
&gt; &gt; +#if ENABLE(WEBGL) &amp;&amp; !defined(QT_OPENGL_ES_2)
&gt; 
&gt; See previous comment. We can put this in the .pro file under
&gt; contains(QT_CONFIG, opengles2)

Both are done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441523</commentid>
    <comment_count>8</comment_count>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-07-24 18:18:20 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:344
&gt; &gt; +    ::glActiveTexture(GL_TEXTURE0);
&gt; 
&gt; Please ask Martin Robinson to review this.

Martin, could you review this part? Previously this was glActiveTexture(0) which is invalid and generated GL error GL_INVALID_ENUM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441529</commentid>
    <comment_count>9</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-07-24 18:38:27 -0700</bug_when>
    <thetext>CCing Chris Marrin who probably has some more insightful comments than I can provide.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441535</commentid>
    <comment_count>10</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2011-07-24 19:32:11 -0700</bug_when>
    <thetext>I&apos;m fine with all the Qt parts, the only thing I&apos;m not comfortable reviewing is the change in initialization of (In reply to comment #8)
&gt; (In reply to comment #6)
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:344
&gt; &gt; &gt; +    ::glActiveTexture(GL_TEXTURE0);
&gt; &gt; 
&gt; &gt; Please ask Martin Robinson to review this.
&gt; 
&gt; Martin, could you review this part? Previously this was glActiveTexture(0) which is invalid and generated GL error GL_INVALID_ENUM

This is the only change to non-Qt-specific code; I&apos;m fine with the Qt-specific changes after the latest patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441662</commentid>
    <comment_count>11</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2011-07-25 08:31:41 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #6)
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:344
&gt; &gt; &gt; +    ::glActiveTexture(GL_TEXTURE0);
&gt; &gt; 
&gt; &gt; Please ask Martin Robinson to review this.
&gt; 
&gt; Martin, could you review this part? Previously this was glActiveTexture(0) which is invalid and generated GL error GL_INVALID_ENUM

Also one option is to submit this as a different patch, it seems somewhat parallel to the rest of this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441670</commentid>
    <comment_count>12</comment_count>
      <attachid>101872</attachid>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-07-25 08:46:56 -0700</bug_when>
    <thetext>Created attachment 101872
remove unrelated glActiveTexture fix

(In reply to comment #11)
&gt; 
&gt; Also one option is to submit this as a different patch, 
&gt; it seems somewhat parallel to the rest of this patch.

Yes, it&apos;s orthogonal. I&apos;ve removed it and will submit it under another bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441680</commentid>
    <comment_count>13</comment_count>
    <who name="Andrew Wason">rectalogic</who>
    <bug_when>2011-07-25 08:56:31 -0700</bug_when>
    <thetext>Moving the glActiveTexture fix to bug 65115</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441793</commentid>
    <comment_count>14</comment_count>
      <attachid>101872</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-25 12:21:03 -0700</bug_when>
    <thetext>Comment on attachment 101872
remove unrelated glActiveTexture fix

Clearing flags on attachment: 101872

Committed r91694: &lt;http://trac.webkit.org/changeset/91694&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441794</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-25 12:21:08 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101609</attachid>
            <date>2011-07-21 11:19:59 -0700</date>
            <delta_ts>2011-07-21 15:35:10 -0700</delta_ts>
            <desc>adopt GraphicsContext3DOpenGL.cpp and ANGLE</desc>
            <filename>part2.diff</filename>
            <type>text/plain</type>
            <size>14904</size>
            <attacher name="Andrew Wason">rectalogic</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjODI0NTFmLi5lZGYyNGZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjQg
QEAKIDIwMTEtMDctMjEgIEFuZHJldyBXYXNvbiAgPHJlY3RhbG9naWNAcmVjdGFsb2dpYy5jb20+
CiAKKyAgICAgICAgW1F0XSBBZG9wdCBHcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAgYW5kIEFO
R0xFIChwYXJ0IDIpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD02NDg3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEV4aXN0aW5nIFdlYkdMIGxheW91dCB0ZXN0cyBzaG91bGQgdGVzdCB0aGlzLgorCisgICAg
ICAgIEFkb3B0IEdyYXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcCBhbmQgQU5HTEUgY29tcGlsZXIg
Zm9yIFF0LgorCisgICAgICAgICogV2ViQ29yZS5wcm86IEJ1aWxkIEFOR0xFIGNvbXBpbGVyIGFu
ZCBHcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvQU5HTEVXZWJLaXRCcmlkZ2UuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHQzRC5oOiBFeHBvc2UgZXhpc2luZyBBTkdMRVdlYktpdEJyaWRnZSBjb21waWxl
ciBtZW1iZXIgZm9yIFF0LgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFw
aGljc0NvbnRleHQzRE9wZW5HTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHQzRDo6cHJlcGFyZVRleHR1cmUpOiBGaXggaW52YWxpZCBnbEFjdGl2ZXRleHR1cmUoMCkuCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RRdC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRDo6R3JhcGhpY3NDb250ZXh0M0QpOiBJ
bml0aWFsaXplIEFOR0xFIHJlc291cmNlcy4KKworMjAxMS0wNy0yMSAgQW5kcmV3IFdhc29uICA8
cmVjdGFsb2dpY0ByZWN0YWxvZ2ljLmNvbT4KKwogICAgICAgICBbUXRdIEFkb3B0IGV4aXN0aW5n
IEdyYXBoaWNzQ29udGV4dDNEIG1lbWJlcnMgKHBhcnQgMSkKICAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0ODc3CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUucHJvIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggZDVj
NzM1ZC4uZDg3NDJlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8KKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8KQEAgLTM1ODgsNiArMzU4OCw3IEBAIGNvbnRh
aW5zKERFRklORVMsIEVOQUJMRV9XRUJHTD0xKSB7CiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdM
VW5pZm9ybUxvY2F0aW9uLmggXAogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTFZlcnRleEFycmF5
T2JqZWN0T0VTLmggXAogICAgICAgICBodG1sL2NhbnZhcy9XZWJLaXRMb3NlQ29udGV4dC5oIFwK
KyAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvQU5HTEVXZWJLaXRCcmlkZ2UuaCBcCiAgICAgICAg
IHBsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5oIFwKICAgICAgICAgcGxhdGZvcm0vZ3Jh
cGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaCBcCiAgICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL2dw
dS9EcmF3aW5nQnVmZmVyLmggXApAQCAtMzU5Nyw2ICszNTk4LDcgQEAgY29udGFpbnMoREVGSU5F
UywgRU5BQkxFX1dFQkdMPTEpIHsKICAgICAgICAgU09VUkNFUyArPSBcCiAgICAgICAgICAgICBi
aW5kaW5ncy9qcy9KU1dlYkdMUmVuZGVyaW5nQ29udGV4dEN1c3RvbS5jcHAKICAgICB9CisKICAg
ICBTT1VSQ0VTICs9IFwKICAgICAgICAgaHRtbC9jYW52YXMvQ2FudmFzQ29udGV4dEF0dHJpYnV0
ZXMuY3BwIFwKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xPYmplY3QuY3BwIFwKQEAgLTM2MTcs
MTQgKzM2MTksMTI4IEBAIGNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9XRUJHTD0xKSB7CiAgICAg
ICAgIGh0bWwvY2FudmFzL1dlYkdMVW5pZm9ybUxvY2F0aW9uLmNwcCBcCiAgICAgICAgIGh0bWwv
Y2FudmFzL1dlYkdMVmVydGV4QXJyYXlPYmplY3RPRVMuY3BwIFwKICAgICAgICAgaHRtbC9jYW52
YXMvV2ViS2l0TG9zZUNvbnRleHQuY3BwIFwKKyAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvQU5H
TEVXZWJLaXRCcmlkZ2UuY3BwIFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3ND
b250ZXh0M0QuY3BwIFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0RyYXdpbmdCdWZm
ZXIuY3BwIFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L3F0L0RyYXdpbmdCdWZmZXJR
dC5jcHAgXAorICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0
M0RPcGVuR0wuY3BwIFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvRXh0ZW5zaW9uczNE
UXQuY3BwIFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RR
dC5jcHAKIAogICAgIElOQ0xVREVQQVRIICs9ICQkUFdEL3BsYXRmb3JtL2dyYXBoaWNzL2dwdQog
CisgICAgKmcrKyogeworICAgICAgICBRTUFLRV9DWFhGTEFHUyArPSAtV25vLXVudXNlZC12YXJp
YWJsZQorICAgICAgICBRTUFLRV9DWFhGTEFHUyArPSAtV25vLW1pc3Npbmctbm9yZXR1cm4KKyAg
ICAgICAgUU1BS0VfQ1hYRkxBR1MgKz0gLVduby11bnVzZWQtZnVuY3Rpb24KKyAgICAgICAgUU1B
S0VfQ1hYRkxBR1MgKz0gLVduby1wYXJlbnRoZXNlcworICAgICAgICBRTUFLRV9DWFhGTEFHUyAr
PSAtV25vLXJlb3JkZXIKKyAgICAgICAgIyBnKysgPCA0LjMgZG9lc24ndCBzdXBwb3J0IC1Xbm8t
dHlwZS1saW1pdHMKKyAgICAgICAgc3lzdGVtKCAkJFFNQUtFX0NYWCAtLXZlcnNpb24gfCBncmVw
IC1lICJcXDxbNC05XVxcLlszLTldXFwuWzAtOV0iICkgeworICAgICAgICAgICAgUU1BS0VfQ1hY
RkxBR1MgKz0gLVduby10eXBlLWxpbWl0cworICAgICAgICB9CisgICAgfQorCisgICAgREVGSU5F
UyArPSBZWUVOQUJMRV9OTFM9MCBZWUxUWVBFX0lTX1RSSVZJQUw9MAorCisgICAgQU5HTEVfRElS
ID0gJCRyZXBsYWNlKFBXRCwgIldlYkNvcmUiLCAiVGhpcmRQYXJ0eS9BTkdMRSIpCisKKyAgICBJ
TkNMVURFUEFUSCArPSAkJEFOR0xFX0RJUi9zcmMgJCRBTkdMRV9ESVIvaW5jbHVkZQorCisgICAg
SEVBREVSUyArPSBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9CYXNlVHlwZXMu
aCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Db21tb24uaCBcCisgICAgICAg
ICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Db25zdGFudFVuaW9uLmggXAorICAgICAgICAkJEFO
R0xFX0RJUi9zcmMvY29tcGlsZXIvZGVidWcuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9j
b21waWxlci9FeHRlbnNpb25CZWhhdmlvci5oIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2Nv
bXBpbGVyL0Zvckxvb3BVbnJvbGwuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxl
ci9nbHNsYW5nLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvZ2xzbGFuZ190
YWIuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9JbmZvU2luay5oIFwKKyAg
ICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL0luaXRpYWxpemVEbGwuaCBcCisgICAgICAg
ICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Jbml0aWFsaXplR2xvYmFscy5oIFwKKyAgICAgICAg
JCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL0luaXRpYWxpemUuaCBcCisgICAgICAgICQkQU5HTEVf
RElSL3NyYy9jb21waWxlci9Jbml0aWFsaXplUGFyc2VDb250ZXh0LmggXAorICAgICAgICAkJEFO
R0xFX0RJUi9zcmMvY29tcGlsZXIvaW50ZXJtZWRpYXRlLmggXAorICAgICAgICAkJEFOR0xFX0RJ
Ui9zcmMvY29tcGlsZXIvbG9jYWxpbnRlcm1lZGlhdGUuaCBcCisgICAgICAgICQkQU5HTEVfRElS
L3NyYy9jb21waWxlci9NTWFwLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
TWFwTG9uZ1ZhcmlhYmxlTmFtZXMuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxl
ci9vc2luY2x1ZGUuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9PdXRwdXRF
U1NMLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvT3V0cHV0R0xTTC5oIFwK
KyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL091dHB1dEdMU0xCYXNlLmggXAorICAg
ICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvT3V0cHV0SExTTC5oIFwKKyAgICAgICAgJCRB
TkdMRV9ESVIvc3JjL2NvbXBpbGVyL1BhcnNlSGVscGVyLmggXAorICAgICAgICAkJEFOR0xFX0RJ
Ui9zcmMvY29tcGlsZXIvUG9vbEFsbG9jLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29t
cGlsZXIvcHJlcHJvY2Vzc29yL2F0b20uaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21w
aWxlci9wcmVwcm9jZXNzb3IvY29tcGlsZS5oIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2Nv
bXBpbGVyL3ByZXByb2Nlc3Nvci9jcHAuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21w
aWxlci9wcmVwcm9jZXNzb3IvbWVtb3J5LmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29t
cGlsZXIvcHJlcHJvY2Vzc29yL3BhcnNlci5oIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2Nv
bXBpbGVyL3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9z
cmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3NjYW5uZXIuaCBcCisgICAgICAgICQkQU5HTEVfRElS
L3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3Ivc2xnbG9iYWxzLmggXAorICAgICAgICAkJEFOR0xF
X0RJUi9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3N5bWJvbHMuaCBcCisgICAgICAgICQkQU5H
TEVfRElSL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvdG9rZW5zLmggXAorICAgICAgICAkJEFO
R0xFX0RJUi9zcmMvY29tcGlsZXIvUXVhbGlmaWVyQWxpdmUuaCBcCisgICAgICAgICQkQU5HTEVf
RElSL3NyYy9jb21waWxlci9SZW1vdmVUcmVlLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMv
Y29tcGlsZXIvU2VhcmNoU3ltYm9sLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGls
ZXIvU2hIYW5kbGUuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9TeW1ib2xU
YWJsZS5oIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JFU1NM
LmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVHJhbnNsYXRvckdMU0wuaCBc
CisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9UcmFuc2xhdG9ySExTTC5oIFwKKyAg
ICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1R5cGVzLmggXAorICAgICAgICAkJEFOR0xF
X0RJUi9zcmMvY29tcGlsZXIvVW5mb2xkU2VsZWN0LmggXAorICAgICAgICAkJEFOR0xFX0RJUi9z
cmMvY29tcGlsZXIvdXRpbC5oIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1Zh
bGlkYXRlTGltaXRhdGlvbnMuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9W
YXJpYWJsZUluZm8uaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9WZXJzaW9u
R0xTTC5oIFwKKworICAgIFNPVVJDRVMgKz0gXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29t
cGlsZXIvQ29kZUdlbkdMU0wuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVy
L0NvZGVHZW5ITFNMLmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Db21w
aWxlci5jcHAgXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvZGVidWcuY3BwIFwK
KyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4LmNwcCBcCisgICAg
ICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9nbHNsYW5nX3RhYi5jcHAgXAorICAgICAgICAk
JEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvRm9yTG9vcFVucm9sbC5jcHAgXAorICAgICAgICAkJEFO
R0xFX0RJUi9zcmMvY29tcGlsZXIvSW5mb1NpbmsuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIv
c3JjL2NvbXBpbGVyL0luaXRpYWxpemUuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2Nv
bXBpbGVyL0luaXRpYWxpemVEbGwuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBp
bGVyL0ludGVybWVkaWF0ZS5jcHAgXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
aW50ZXJtT3V0LmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9JbnRlcm1U
cmF2ZXJzZS5jcHAgXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvb3Nzb3VyY2Vf
cG9zaXguY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL01hcExvbmdWYXJp
YWJsZU5hbWVzLmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9PdXRwdXRF
U1NMLmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9PdXRwdXRHTFNMLmNw
cCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9PdXRwdXRHTFNMQmFzZS5jcHAg
XAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvT3V0cHV0SExTTC5jcHAgXAorICAg
ICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvcGFyc2VDb25zdC5jcHAgXAorICAgICAgICAk
JEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvUGFyc2VIZWxwZXIuY3BwIFwKKyAgICAgICAgJCRBTkdM
RV9ESVIvc3JjL2NvbXBpbGVyL1Bvb2xBbGxvYy5jcHAgXAorICAgICAgICAkJEFOR0xFX0RJUi9z
cmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2F0b20uYyBcCisgICAgICAgICQkQU5HTEVfRElSL3Ny
Yy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3BwLmMgXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMv
Y29tcGlsZXIvcHJlcHJvY2Vzc29yL2NwcHN0cnVjdC5jIFwKKyAgICAgICAgJCRBTkdMRV9ESVIv
c3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9tZW1vcnkuYyBcCisgICAgICAgICQkQU5HTEVfRElS
L3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3Ivc2Nhbm5lci5jIFwKKyAgICAgICAgJCRBTkdMRV9E
SVIvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zeW1ib2xzLmMgXAorICAgICAgICAkJEFOR0xF
X0RJUi9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3Rva2Vucy5jIFwKKyAgICAgICAgJCRBTkdM
RV9ESVIvc3JjL2NvbXBpbGVyL1F1YWxpZmllckFsaXZlLmNwcCBcCisgICAgICAgICQkQU5HTEVf
RElSL3NyYy9jb21waWxlci9SZW1vdmVUcmVlLmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3Ny
Yy9jb21waWxlci9TZWFyY2hTeW1ib2wuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2Nv
bXBpbGVyL1NoYWRlckxhbmcuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVy
L1N5bWJvbFRhYmxlLmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9UcmFu
c2xhdG9yRVNTTC5jcHAgXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVHJhbnNs
YXRvckdMU0wuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1RyYW5zbGF0
b3JITFNMLmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9VbmZvbGRTZWxl
Y3QuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL3V0aWwuY3BwIFwKKyAg
ICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1ZhbGlkYXRlTGltaXRhdGlvbnMuY3BwIFwK
KyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1ZhcmlhYmxlSW5mby5jcHAgXAorICAg
ICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVmVyc2lvbkdMU0wuY3BwIFwKKwogICAgIENP
TkZJRyArPSBvcGVuZ2wtc2hpbXMKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvQU5HTEVXZWJLaXRCcmlkZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0FOR0xFV2ViS2l0QnJpZGdlLmgKaW5kZXggYTlkMjIzOC4uMGY0YmY3ZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQU5HTEVXZWJLaXRC
cmlkZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9BTkdMRVdlYktp
dEJyaWRnZS5oCkBAIC0yOSw3ICsyOSw5IEBACiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIK
ICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAKLSNpZiAhUExBVEZPUk0oR1RLKQorI2lm
IFBMQVRGT1JNKFFUKQorI2luY2x1ZGUgIkFOR0xFL2luY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5n
LmgiCisjZWxpZiAhUExBVEZPUk0oR1RLKQogI2luY2x1ZGUgIkFOR0xFL1NoYWRlckxhbmcuaCIK
ICNlbHNlCiAjaW5jbHVkZSAiU2hhZGVyTGFuZy5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmgKaW5kZXggNWU0N2VmMy4uZjg2
YTJmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhp
Y3NDb250ZXh0M0QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHQzRC5oCkBAIC00Myw3ICs0Myw3IEBACiAjdW5kZWYgVkVSU0lPTgogI2VuZGlm
CiAKLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEdUSykKKyNpZiBQTEFURk9STShNQUMp
IHx8IFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oUVQpCiAjaW5jbHVkZSAiQU5HTEVXZWJLaXRC
cmlkZ2UuaCIKICNlbmRpZgogCkBAIC01MDEsNyArNTAxLDcgQEAgcHVibGljOgogCiAgICAgUGFz
c1JlZlB0cjxEcmF3aW5nQnVmZmVyPiBjcmVhdGVEcmF3aW5nQnVmZmVyKGNvbnN0IEludFNpemUm
ID0gSW50U2l6ZSgpKTsKICAgICAKLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKENIUk9N
SVVNKSB8fCBQTEFURk9STShHVEspCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShDSFJP
TUlVTSkgfHwgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShRVCkKICAgICAvLyBXaXRoIG11bHRp
c2FtcGxpbmcgb24sIGJsaXQgZnJvbSBtdWx0aXNhbXBsZUZCTyB0byByZWd1bGFyIEZCTy4KICAg
ICB2b2lkIHByZXBhcmVUZXh0dXJlKCk7CiAjZW5kaWYKQEAgLTg4OSw3ICs4ODksNyBAQCBwdWJs
aWM6CiAgICAgICAgICAgICAgICAgICAgIEFscGhhT3AgYWxwaGFPcCwKICAgICAgICAgICAgICAg
ICAgICAgdm9pZCogZGVzdGluYXRpb25EYXRhKTsKIAotI2lmIFBMQVRGT1JNKE1BQykgfHwgUExB
VEZPUk0oR1RLKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9S
TShRVCkKICAgICAvLyBUYWtlIGludG8gYWNjb3VudCB0aGUgdXNlcidzIHJlcXVlc3RlZCBjb250
ZXh0IGNyZWF0aW9uIGF0dHJpYnV0ZXMsCiAgICAgLy8gaW4gcGFydGljdWxhciBzdGVuY2lsIGFu
ZCBhbnRpYWxpYXMsIGFuZCBkZXRlcm1pbmUgd2hpY2ggY291bGQgb3IKICAgICAvLyBjb3VsZCBu
b3QgYmUgaG9ub3JlZCBiYXNlZCBvbiB0aGUgY2FwYWJpbGl0aWVzIG9mIHRoZSBPcGVuR0wKQEAg
LTkxNywxMyArOTE3LDEyIEBAIHB1YmxpYzoKICAgICB9IFNoYWRlclNvdXJjZUVudHJ5OwogICAg
IEhhc2hNYXA8UGxhdGZvcm0zRE9iamVjdCwgU2hhZGVyU291cmNlRW50cnk+IG1fc2hhZGVyU291
cmNlTWFwOwogCisgICAgQU5HTEVXZWJLaXRCcmlkZ2UgbV9jb21waWxlcjsKICNpZiBQTEFURk9S
TShRVCkKICAgICBmcmllbmQgY2xhc3MgRXh0ZW5zaW9uczNEUXQ7CiAgICAgT3duUHRyPEV4dGVu
c2lvbnMzRFF0PiBtX2V4dGVuc2lvbnM7CiAjZWxzZQogICAgIGZyaWVuZCBjbGFzcyBFeHRlbnNp
b25zM0RPcGVuR0w7Ci0gICAgQU5HTEVXZWJLaXRCcmlkZ2UgbV9jb21waWxlcjsKLQogICAgIE93
blB0cjxFeHRlbnNpb25zM0RPcGVuR0w+IG1fZXh0ZW5zaW9uczsKICNlbmRpZgogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250
ZXh0M0RPcGVuR0wuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3Blbmds
L0dyYXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcAppbmRleCBmZDcyMDczLi5lYjFhZTNiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3ND
b250ZXh0M0RPcGVuR0wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAKQEAgLTI1LDcgKzI1LDExIEBACiAK
ICNpbmNsdWRlICJjb25maWcuaCIKIAotI2lmIEVOQUJMRShXRUJHTCkKKyNpZiBQTEFURk9STShR
VCkKKyNpbmNsdWRlIDxRdEdsb2JhbD4KKyNlbmRpZgorCisjaWYgRU5BQkxFKFdFQkdMKSAmJiAh
ZGVmaW5lZChRVF9PUEVOR0xfRVNfMikKIAogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgi
CiAKQEAgLTUwLDYgKzU0LDggQEAKICNpbmNsdWRlIDxPcGVuR0wvZ2wuaD4KICNlbGlmIFBMQVRG
T1JNKEdUSykKICNpbmNsdWRlICJPcGVuR0xTaGltcy5oIgorI2VsaWYgUExBVEZPUk0oUVQpCisj
aW5jbHVkZSA8Y2Fpcm8vT3BlbkdMU2hpbXMuaD4KICNlbmRpZgogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CkBAIC0xMTYsNiArMTIyLDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6cmVhZFJlbmRl
cmluZ1Jlc3VsdHModW5zaWduZWQgY2hhciAqcGl4ZWxzLCBpbnQgcGl4ZWxzU2kKICAgICAgICAg
OjpnbEJpbmRGcmFtZWJ1ZmZlckVYVChHTF9GUkFNRUJVRkZFUl9FWFQsIG1fYm91bmRGQk8pOwog
fQogCisjaWYgIVBMQVRGT1JNKFFUKQogdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6cGFpbnRSZW5k
ZXJpbmdSZXN1bHRzVG9DYW52YXMoQ2FudmFzUmVuZGVyaW5nQ29udGV4dCogY29udGV4dCkKIHsK
ICAgICBIVE1MQ2FudmFzRWxlbWVudCogY2FudmFzID0gY29udGV4dC0+Y2FudmFzKCk7CkBAIC0x
NDIsNiArMTQ5LDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6cGFpbnRSZW5kZXJpbmdSZXN1
bHRzVG9DYW52YXMoQ2FudmFzUmVuZGVyaW5nQ29udGV4dCogY28KICAgICBwYWludFRvQ2FudmFz
KHBpeGVscy5nZXQoKSwgbV9jdXJyZW50V2lkdGgsIG1fY3VycmVudEhlaWdodCwKICAgICAgICAg
ICAgICAgICAgIGNhbnZhcy0+d2lkdGgoKSwgY2FudmFzLT5oZWlnaHQoKSwgaW1hZ2VCdWZmZXIt
PmNvbnRleHQoKS0+cGxhdGZvcm1Db250ZXh0KCkpOwogfQorI2VuZGlmCiAKIFBhc3NSZWZQdHI8
SW1hZ2VEYXRhPiBHcmFwaGljc0NvbnRleHQzRDo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9JbWFn
ZURhdGEoKQogewpAQCAtMzMzLDcgKzM0MSw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0M0Q6OnBy
ZXBhcmVUZXh0dXJlKCkKICAgICAgICAgOjpnbEJsaXRGcmFtZWJ1ZmZlckVYVCgwLCAwLCBtX2N1
cnJlbnRXaWR0aCwgbV9jdXJyZW50SGVpZ2h0LCAwLCAwLCBtX2N1cnJlbnRXaWR0aCwgbV9jdXJy
ZW50SGVpZ2h0LCBHTF9DT0xPUl9CVUZGRVJfQklULCBHTF9MSU5FQVIpOwogICAgIH0KICAgICA6
OmdsQmluZEZyYW1lYnVmZmVyRVhUKEdMX0ZSQU1FQlVGRkVSX0VYVCwgbV9mYm8pOwotICAgIDo6
Z2xBY3RpdmVUZXh0dXJlKDApOworICAgIDo6Z2xBY3RpdmVUZXh0dXJlKEdMX1RFWFRVUkUwKTsK
ICAgICA6OmdsQmluZFRleHR1cmUoR0xfVEVYVFVSRV8yRCwgbV9jb21wb3NpdG9yVGV4dHVyZSk7
CiAgICAgOjpnbENvcHlUZXhJbWFnZTJEKEdMX1RFWFRVUkVfMkQsIDAsIG1faW50ZXJuYWxDb2xv
ckZvcm1hdCwgMCwgMCwgbV9jdXJyZW50V2lkdGgsIG1fY3VycmVudEhlaWdodCwgMCk7CiAgICAg
OjpnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIG1fYm91bmRUZXh0dXJlMCk7CkBAIC0xNTE1
LDEyICsxNTIzLDE0IEBAIGJvb2wgR3JhcGhpY3NDb250ZXh0M0Q6OmxheWVyQ29tcG9zaXRlZCgp
IGNvbnN0CiAgICAgcmV0dXJuIG1fbGF5ZXJDb21wb3NpdGVkOwogfQogCisjaWYgIVBMQVRGT1JN
KFFUKQogRXh0ZW5zaW9uczNEKiBHcmFwaGljc0NvbnRleHQzRDo6Z2V0RXh0ZW5zaW9ucygpCiB7
CiAgICAgaWYgKCFtX2V4dGVuc2lvbnMpCiAgICAgICAgIG1fZXh0ZW5zaW9ucyA9IGFkb3B0UHRy
KG5ldyBFeHRlbnNpb25zM0RPcGVuR0wodGhpcykpOwogICAgIHJldHVybiBtX2V4dGVuc2lvbnMu
Z2V0KCk7CiB9CisjZW5kaWYKIAogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCmluZGV4IGQxMTZi
YWYuLjk3YWUxOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCkBAIC0yNzAsNyArMjcwLDcgQEAg
R3JhcGhpY3NDb250ZXh0M0Q6OkdyYXBoaWNzQ29udGV4dDNEKEdyYXBoaWNzQ29udGV4dDNEOjpB
dHRyaWJ1dGVzIGF0dHJzLCBIb3N0V2kKICAgICAsIG1fbGF5ZXJDb21wb3NpdGVkKGZhbHNlKQog
ICAgICwgbV9pbnRlcm5hbENvbG9yRm9ybWF0KDApCiAgICAgLCBtX2JvdW5kRkJPKDApCi0gICAg
LCBtX2FjdGl2ZVRleHR1cmUoMCkKKyAgICAsIG1fYWN0aXZlVGV4dHVyZShHTF9URVhUVVJFMCkK
ICAgICAsIG1fYm91bmRUZXh0dXJlMCgwKQogICAgICwgbV9tdWx0aXNhbXBsZUZCTygwKQogICAg
ICwgbV9tdWx0aXNhbXBsZURlcHRoU3RlbmNpbEJ1ZmZlcigwKQpAQCAtMzIwLDYgKzMyMCwyMiBA
QCBHcmFwaGljc0NvbnRleHQzRDo6R3JhcGhpY3NDb250ZXh0M0QoR3JhcGhpY3NDb250ZXh0M0Q6
OkF0dHJpYnV0ZXMgYXR0cnMsIEhvc3RXaQogICAgIG1fYm91bmRGQk8gPSBtX2ZibzsKICAgICBn
bEJpbmRGcmFtZWJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVIsIG1fZmJvKTsK
ICAgICBnbENsZWFyQ29sb3IoMC4wLCAwLjAsIDAuMCwgMC4wKTsKKworICAgIC8vIEFOR0xFIGlu
aXRpYWxpemF0aW9uLgorICAgIFNoQnVpbHRJblJlc291cmNlcyBBTkdMRVJlc291cmNlczsKKyAg
ICBTaEluaXRCdWlsdEluUmVzb3VyY2VzKCZBTkdMRVJlc291cmNlcyk7CisKKyAgICBnZXRJbnRl
Z2VydihHcmFwaGljc0NvbnRleHQzRDo6TUFYX1ZFUlRFWF9BVFRSSUJTLCAmQU5HTEVSZXNvdXJj
ZXMuTWF4VmVydGV4QXR0cmlicyk7CisgICAgZ2V0SW50ZWdlcnYoR3JhcGhpY3NDb250ZXh0M0Q6
Ok1BWF9WRVJURVhfVU5JRk9STV9WRUNUT1JTLCAmQU5HTEVSZXNvdXJjZXMuTWF4VmVydGV4VW5p
Zm9ybVZlY3RvcnMpOworICAgIGdldEludGVnZXJ2KEdyYXBoaWNzQ29udGV4dDNEOjpNQVhfVkFS
WUlOR19WRUNUT1JTLCAmQU5HTEVSZXNvdXJjZXMuTWF4VmFyeWluZ1ZlY3RvcnMpOworICAgIGdl
dEludGVnZXJ2KEdyYXBoaWNzQ29udGV4dDNEOjpNQVhfVkVSVEVYX1RFWFRVUkVfSU1BR0VfVU5J
VFMsICZBTkdMRVJlc291cmNlcy5NYXhWZXJ0ZXhUZXh0dXJlSW1hZ2VVbml0cyk7CisgICAgZ2V0
SW50ZWdlcnYoR3JhcGhpY3NDb250ZXh0M0Q6Ok1BWF9DT01CSU5FRF9URVhUVVJFX0lNQUdFX1VO
SVRTLCAmQU5HTEVSZXNvdXJjZXMuTWF4Q29tYmluZWRUZXh0dXJlSW1hZ2VVbml0cyk7IAorICAg
IGdldEludGVnZXJ2KEdyYXBoaWNzQ29udGV4dDNEOjpNQVhfVEVYVFVSRV9JTUFHRV9VTklUUywg
JkFOR0xFUmVzb3VyY2VzLk1heFRleHR1cmVJbWFnZVVuaXRzKTsKKyAgICBnZXRJbnRlZ2VydihH
cmFwaGljc0NvbnRleHQzRDo6TUFYX0ZSQUdNRU5UX1VOSUZPUk1fVkVDVE9SUywgJkFOR0xFUmVz
b3VyY2VzLk1heEZyYWdtZW50VW5pZm9ybVZlY3RvcnMpOworCisgICAgLy8gQWx3YXlzIHNldCB0
byAxIGZvciBPcGVuR0wgRVMuCisgICAgQU5HTEVSZXNvdXJjZXMuTWF4RHJhd0J1ZmZlcnMgPSAx
OworICAgIG1fY29tcGlsZXIuc2V0UmVzb3VyY2VzKEFOR0xFUmVzb3VyY2VzKTsKIH0KIAogR3Jh
cGhpY3NDb250ZXh0M0Q6On5HcmFwaGljc0NvbnRleHQzRCgpCkBAIC0zNjMsNiArMzc5LDcgQEAg
dm9pZCBHcmFwaGljc0NvbnRleHQzRDo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9DYW52YXMoQ2Fu
dmFzUmVuZGVyaW5nQ29udGV4dCogY28KICAgICBtX2ludGVybmFsLT5wYWludChwYWludGVyLCAw
LCAwKTsKIH0KIAorI2lmIGRlZmluZWQoUVRfT1BFTkdMX0VTXzIpCiBQYXNzUmVmUHRyPEltYWdl
RGF0YT4gR3JhcGhpY3NDb250ZXh0M0Q6OnBhaW50UmVuZGVyaW5nUmVzdWx0c1RvSW1hZ2VEYXRh
KCkKIHsKICAgICAvLyBGSVhNRTogVGhpcyBuZWVkcyB0byBiZSBpbXBsZW1lbnRlZCBmb3IgcHJv
cGVyIG5vbi1wcmVtdWx0aXBsaWVkLWFscGhhCkBAIC0xNDc2LDYgKzE0OTMsNyBAQCBib29sIEdy
YXBoaWNzQ29udGV4dDNEOjpsYXllckNvbXBvc2l0ZWQoKSBjb25zdAogewogICAgIHJldHVybiBt
X2xheWVyQ29tcG9zaXRlZDsKIH0KKyNlbmRpZgogCiBFeHRlbnNpb25zM0QqIEdyYXBoaWNzQ29u
dGV4dDNEOjpnZXRFeHRlbnNpb25zKCkKIHsK
</data>
<flag name="review"
          id="96582"
          type_id="1"
          status="-"
          setter="noam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101652</attachid>
            <date>2011-07-21 15:35:10 -0700</date>
            <delta_ts>2011-07-24 18:15:52 -0700</delta_ts>
            <desc>simplified ANGLE build</desc>
            <filename>part2.diff</filename>
            <type>text/plain</type>
            <size>14651</size>
            <attacher name="Andrew Wason">rectalogic</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjODI0NTFmLi5lZGYyNGZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjQg
QEAKIDIwMTEtMDctMjEgIEFuZHJldyBXYXNvbiAgPHJlY3RhbG9naWNAcmVjdGFsb2dpYy5jb20+
CiAKKyAgICAgICAgW1F0XSBBZG9wdCBHcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAgYW5kIEFO
R0xFIChwYXJ0IDIpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD02NDg3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEV4aXN0aW5nIFdlYkdMIGxheW91dCB0ZXN0cyBzaG91bGQgdGVzdCB0aGlzLgorCisgICAg
ICAgIEFkb3B0IEdyYXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcCBhbmQgQU5HTEUgY29tcGlsZXIg
Zm9yIFF0LgorCisgICAgICAgICogV2ViQ29yZS5wcm86IEJ1aWxkIEFOR0xFIGNvbXBpbGVyIGFu
ZCBHcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvQU5HTEVXZWJLaXRCcmlkZ2UuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHQzRC5oOiBFeHBvc2UgZXhpc2luZyBBTkdMRVdlYktpdEJyaWRnZSBjb21waWxl
ciBtZW1iZXIgZm9yIFF0LgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFw
aGljc0NvbnRleHQzRE9wZW5HTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHQzRDo6cHJlcGFyZVRleHR1cmUpOiBGaXggaW52YWxpZCBnbEFjdGl2ZXRleHR1cmUoMCkuCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RRdC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRDo6R3JhcGhpY3NDb250ZXh0M0QpOiBJ
bml0aWFsaXplIEFOR0xFIHJlc291cmNlcy4KKworMjAxMS0wNy0yMSAgQW5kcmV3IFdhc29uICA8
cmVjdGFsb2dpY0ByZWN0YWxvZ2ljLmNvbT4KKwogICAgICAgICBbUXRdIEFkb3B0IGV4aXN0aW5n
IEdyYXBoaWNzQ29udGV4dDNEIG1lbWJlcnMgKHBhcnQgMSkKICAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0ODc3CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUucHJvIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggZDVj
NzM1ZC4uN2QxNzI5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8KKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8KQEAgLTM1ODgsNiArMzU4OCw3IEBAIGNvbnRh
aW5zKERFRklORVMsIEVOQUJMRV9XRUJHTD0xKSB7CiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdM
VW5pZm9ybUxvY2F0aW9uLmggXAogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTFZlcnRleEFycmF5
T2JqZWN0T0VTLmggXAogICAgICAgICBodG1sL2NhbnZhcy9XZWJLaXRMb3NlQ29udGV4dC5oIFwK
KyAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvQU5HTEVXZWJLaXRCcmlkZ2UuaCBcCiAgICAgICAg
IHBsYXRmb3JtL2dyYXBoaWNzL0V4dGVuc2lvbnMzRC5oIFwKICAgICAgICAgcGxhdGZvcm0vZ3Jh
cGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaCBcCiAgICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL2dw
dS9EcmF3aW5nQnVmZmVyLmggXApAQCAtMzU5Nyw2ICszNTk4LDcgQEAgY29udGFpbnMoREVGSU5F
UywgRU5BQkxFX1dFQkdMPTEpIHsKICAgICAgICAgU09VUkNFUyArPSBcCiAgICAgICAgICAgICBi
aW5kaW5ncy9qcy9KU1dlYkdMUmVuZGVyaW5nQ29udGV4dEN1c3RvbS5jcHAKICAgICB9CisKICAg
ICBTT1VSQ0VTICs9IFwKICAgICAgICAgaHRtbC9jYW52YXMvQ2FudmFzQ29udGV4dEF0dHJpYnV0
ZXMuY3BwIFwKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xPYmplY3QuY3BwIFwKQEAgLTM2MTcs
MTQgKzM2MTksMTIxIEBAIGNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9XRUJHTD0xKSB7CiAgICAg
ICAgIGh0bWwvY2FudmFzL1dlYkdMVW5pZm9ybUxvY2F0aW9uLmNwcCBcCiAgICAgICAgIGh0bWwv
Y2FudmFzL1dlYkdMVmVydGV4QXJyYXlPYmplY3RPRVMuY3BwIFwKICAgICAgICAgaHRtbC9jYW52
YXMvV2ViS2l0TG9zZUNvbnRleHQuY3BwIFwKKyAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvQU5H
TEVXZWJLaXRCcmlkZ2UuY3BwIFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3ND
b250ZXh0M0QuY3BwIFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0RyYXdpbmdCdWZm
ZXIuY3BwIFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L3F0L0RyYXdpbmdCdWZmZXJR
dC5jcHAgXAorICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0
M0RPcGVuR0wuY3BwIFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvRXh0ZW5zaW9uczNE
UXQuY3BwIFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RR
dC5jcHAKIAogICAgIElOQ0xVREVQQVRIICs9ICQkUFdEL3BsYXRmb3JtL2dyYXBoaWNzL2dwdQog
CisgICAgKmcrKyogeworICAgICAgICBRTUFLRV9DWFhGTEFHUyArPSAtV25vLXVudXNlZC12YXJp
YWJsZQorICAgICAgICBRTUFLRV9DWFhGTEFHUyArPSAtV25vLW1pc3Npbmctbm9yZXR1cm4KKyAg
ICAgICAgUU1BS0VfQ1hYRkxBR1MgKz0gLVduby11bnVzZWQtZnVuY3Rpb24KKyAgICAgICAgUU1B
S0VfQ1hYRkxBR1MgKz0gLVduby1yZW9yZGVyCisgICAgfQorCisgICAgQU5HTEVfRElSID0gJCRy
ZXBsYWNlKFBXRCwgIldlYkNvcmUiLCAiVGhpcmRQYXJ0eS9BTkdMRSIpCisKKyAgICBJTkNMVURF
UEFUSCArPSAkJEFOR0xFX0RJUi9zcmMgJCRBTkdMRV9ESVIvaW5jbHVkZQorCisgICAgSEVBREVS
UyArPSBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9CYXNlVHlwZXMuaCBcCisg
ICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Db21tb24uaCBcCisgICAgICAgICQkQU5H
TEVfRElSL3NyYy9jb21waWxlci9Db25zdGFudFVuaW9uLmggXAorICAgICAgICAkJEFOR0xFX0RJ
Ui9zcmMvY29tcGlsZXIvZGVidWcuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxl
ci9FeHRlbnNpb25CZWhhdmlvci5oIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVy
L0Zvckxvb3BVbnJvbGwuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9nbHNs
YW5nLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvZ2xzbGFuZ190YWIuaCBc
CisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9JbmZvU2luay5oIFwKKyAgICAgICAg
JCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL0luaXRpYWxpemVEbGwuaCBcCisgICAgICAgICQkQU5H
TEVfRElSL3NyYy9jb21waWxlci9Jbml0aWFsaXplR2xvYmFscy5oIFwKKyAgICAgICAgJCRBTkdM
RV9ESVIvc3JjL2NvbXBpbGVyL0luaXRpYWxpemUuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3Ny
Yy9jb21waWxlci9Jbml0aWFsaXplUGFyc2VDb250ZXh0LmggXAorICAgICAgICAkJEFOR0xFX0RJ
Ui9zcmMvY29tcGlsZXIvaW50ZXJtZWRpYXRlLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMv
Y29tcGlsZXIvbG9jYWxpbnRlcm1lZGlhdGUuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9j
b21waWxlci9NTWFwLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvTWFwTG9u
Z1ZhcmlhYmxlTmFtZXMuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9vc2lu
Y2x1ZGUuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9PdXRwdXRFU1NMLmgg
XAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvT3V0cHV0R0xTTC5oIFwKKyAgICAg
ICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL091dHB1dEdMU0xCYXNlLmggXAorICAgICAgICAk
JEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvT3V0cHV0SExTTC5oIFwKKyAgICAgICAgJCRBTkdMRV9E
SVIvc3JjL2NvbXBpbGVyL1BhcnNlSGVscGVyLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMv
Y29tcGlsZXIvUG9vbEFsbG9jLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
cHJlcHJvY2Vzc29yL2F0b20uaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvY29tcGlsZS5oIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVy
L3ByZXByb2Nlc3Nvci9jcHAuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9w
cmVwcm9jZXNzb3IvbWVtb3J5LmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
cHJlcHJvY2Vzc29yL3BhcnNlci5oIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVy
L3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29t
cGlsZXIvcHJlcHJvY2Vzc29yL3NjYW5uZXIuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9j
b21waWxlci9wcmVwcm9jZXNzb3Ivc2xnbG9iYWxzLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9z
cmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3N5bWJvbHMuaCBcCisgICAgICAgICQkQU5HTEVfRElS
L3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvdG9rZW5zLmggXAorICAgICAgICAkJEFOR0xFX0RJ
Ui9zcmMvY29tcGlsZXIvUXVhbGlmaWVyQWxpdmUuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3Ny
Yy9jb21waWxlci9SZW1vdmVUcmVlLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGls
ZXIvU2VhcmNoU3ltYm9sLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvU2hI
YW5kbGUuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9TeW1ib2xUYWJsZS5o
IFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JFU1NMLmggXAor
ICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVHJhbnNsYXRvckdMU0wuaCBcCisgICAg
ICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9UcmFuc2xhdG9ySExTTC5oIFwKKyAgICAgICAg
JCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1R5cGVzLmggXAorICAgICAgICAkJEFOR0xFX0RJUi9z
cmMvY29tcGlsZXIvVW5mb2xkU2VsZWN0LmggXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29t
cGlsZXIvdXRpbC5oIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1ZhbGlkYXRl
TGltaXRhdGlvbnMuaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9WYXJpYWJs
ZUluZm8uaCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9WZXJzaW9uR0xTTC5o
IFwKKworICAgIFNPVVJDRVMgKz0gXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
Q29kZUdlbkdMU0wuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL0NvZGVH
ZW5ITFNMLmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Db21waWxlci5j
cHAgXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvZGVidWcuY3BwIFwKKyAgICAg
ICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL2dsc2xhbmdfbGV4LmNwcCBcCisgICAgICAgICQk
QU5HTEVfRElSL3NyYy9jb21waWxlci9nbHNsYW5nX3RhYi5jcHAgXAorICAgICAgICAkJEFOR0xF
X0RJUi9zcmMvY29tcGlsZXIvRm9yTG9vcFVucm9sbC5jcHAgXAorICAgICAgICAkJEFOR0xFX0RJ
Ui9zcmMvY29tcGlsZXIvSW5mb1NpbmsuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2Nv
bXBpbGVyL0luaXRpYWxpemUuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVy
L0luaXRpYWxpemVEbGwuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL0lu
dGVybWVkaWF0ZS5jcHAgXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvaW50ZXJt
T3V0LmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9JbnRlcm1UcmF2ZXJz
ZS5jcHAgXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvb3Nzb3VyY2VfcG9zaXgu
Y3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL01hcExvbmdWYXJpYWJsZU5h
bWVzLmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9PdXRwdXRFU1NMLmNw
cCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9PdXRwdXRHTFNMLmNwcCBcCisg
ICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9PdXRwdXRHTFNMQmFzZS5jcHAgXAorICAg
ICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvT3V0cHV0SExTTC5jcHAgXAorICAgICAgICAk
JEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvcGFyc2VDb25zdC5jcHAgXAorICAgICAgICAkJEFOR0xF
X0RJUi9zcmMvY29tcGlsZXIvUGFyc2VIZWxwZXIuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIv
c3JjL2NvbXBpbGVyL1Bvb2xBbGxvYy5jcHAgXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29t
cGlsZXIvcHJlcHJvY2Vzc29yL2F0b20uYyBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21w
aWxlci9wcmVwcm9jZXNzb3IvY3BwLmMgXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL2NwcHN0cnVjdC5jIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2Nv
bXBpbGVyL3ByZXByb2Nlc3Nvci9tZW1vcnkuYyBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9j
b21waWxlci9wcmVwcm9jZXNzb3Ivc2Nhbm5lci5jIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3Jj
L2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zeW1ib2xzLmMgXAorICAgICAgICAkJEFOR0xFX0RJUi9z
cmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3Rva2Vucy5jIFwKKyAgICAgICAgJCRBTkdMRV9ESVIv
c3JjL2NvbXBpbGVyL1F1YWxpZmllckFsaXZlLmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3Ny
Yy9jb21waWxlci9SZW1vdmVUcmVlLmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21w
aWxlci9TZWFyY2hTeW1ib2wuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVy
L1NoYWRlckxhbmcuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1N5bWJv
bFRhYmxlLmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9UcmFuc2xhdG9y
RVNTTC5jcHAgXAorICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVHJhbnNsYXRvckdM
U0wuY3BwIFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JITFNM
LmNwcCBcCisgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9VbmZvbGRTZWxlY3QuY3Bw
IFwKKyAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL3V0aWwuY3BwIFwKKyAgICAgICAg
JCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1ZhbGlkYXRlTGltaXRhdGlvbnMuY3BwIFwKKyAgICAg
ICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1ZhcmlhYmxlSW5mby5jcHAgXAorICAgICAgICAk
JEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVmVyc2lvbkdMU0wuY3BwIFwKKwogICAgIENPTkZJRyAr
PSBvcGVuZ2wtc2hpbXMKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvQU5HTEVXZWJLaXRCcmlkZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0FOR0xFV2ViS2l0QnJpZGdlLmgKaW5kZXggYTlkMjIzOC4uMGY0YmY3ZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQU5HTEVXZWJLaXRCcmlkZ2Uu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9BTkdMRVdlYktpdEJyaWRn
ZS5oCkBAIC0yOSw3ICsyOSw5IEBACiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKICNpbmNs
dWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAKLSNpZiAhUExBVEZPUk0oR1RLKQorI2lmIFBMQVRG
T1JNKFFUKQorI2luY2x1ZGUgIkFOR0xFL2luY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmgiCisj
ZWxpZiAhUExBVEZPUk0oR1RLKQogI2luY2x1ZGUgIkFOR0xFL1NoYWRlckxhbmcuaCIKICNlbHNl
CiAjaW5jbHVkZSAiU2hhZGVyTGFuZy5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmgKaW5kZXggNWU0N2VmMy4uZjg2YTJmOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250
ZXh0M0QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0Nv
bnRleHQzRC5oCkBAIC00Myw3ICs0Myw3IEBACiAjdW5kZWYgVkVSU0lPTgogI2VuZGlmCiAKLSNp
ZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEdUSykKKyNpZiBQTEFURk9STShNQUMpIHx8IFBM
QVRGT1JNKEdUSykgfHwgUExBVEZPUk0oUVQpCiAjaW5jbHVkZSAiQU5HTEVXZWJLaXRCcmlkZ2Uu
aCIKICNlbmRpZgogCkBAIC01MDEsNyArNTAxLDcgQEAgcHVibGljOgogCiAgICAgUGFzc1JlZlB0
cjxEcmF3aW5nQnVmZmVyPiBjcmVhdGVEcmF3aW5nQnVmZmVyKGNvbnN0IEludFNpemUmID0gSW50
U2l6ZSgpKTsKICAgICAKLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKENIUk9NSVVNKSB8
fCBQTEFURk9STShHVEspCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShDSFJPTUlVTSkg
fHwgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShRVCkKICAgICAvLyBXaXRoIG11bHRpc2FtcGxp
bmcgb24sIGJsaXQgZnJvbSBtdWx0aXNhbXBsZUZCTyB0byByZWd1bGFyIEZCTy4KICAgICB2b2lk
IHByZXBhcmVUZXh0dXJlKCk7CiAjZW5kaWYKQEAgLTg4OSw3ICs4ODksNyBAQCBwdWJsaWM6CiAg
ICAgICAgICAgICAgICAgICAgIEFscGhhT3AgYWxwaGFPcCwKICAgICAgICAgICAgICAgICAgICAg
dm9pZCogZGVzdGluYXRpb25EYXRhKTsKIAotI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0o
R1RLKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShRVCkK
ICAgICAvLyBUYWtlIGludG8gYWNjb3VudCB0aGUgdXNlcidzIHJlcXVlc3RlZCBjb250ZXh0IGNy
ZWF0aW9uIGF0dHJpYnV0ZXMsCiAgICAgLy8gaW4gcGFydGljdWxhciBzdGVuY2lsIGFuZCBhbnRp
YWxpYXMsIGFuZCBkZXRlcm1pbmUgd2hpY2ggY291bGQgb3IKICAgICAvLyBjb3VsZCBub3QgYmUg
aG9ub3JlZCBiYXNlZCBvbiB0aGUgY2FwYWJpbGl0aWVzIG9mIHRoZSBPcGVuR0wKQEAgLTkxNywx
MyArOTE3LDEyIEBAIHB1YmxpYzoKICAgICB9IFNoYWRlclNvdXJjZUVudHJ5OwogICAgIEhhc2hN
YXA8UGxhdGZvcm0zRE9iamVjdCwgU2hhZGVyU291cmNlRW50cnk+IG1fc2hhZGVyU291cmNlTWFw
OwogCisgICAgQU5HTEVXZWJLaXRCcmlkZ2UgbV9jb21waWxlcjsKICNpZiBQTEFURk9STShRVCkK
ICAgICBmcmllbmQgY2xhc3MgRXh0ZW5zaW9uczNEUXQ7CiAgICAgT3duUHRyPEV4dGVuc2lvbnMz
RFF0PiBtX2V4dGVuc2lvbnM7CiAjZWxzZQogICAgIGZyaWVuZCBjbGFzcyBFeHRlbnNpb25zM0RP
cGVuR0w7Ci0gICAgQU5HTEVXZWJLaXRCcmlkZ2UgbV9jb21waWxlcjsKLQogICAgIE93blB0cjxF
eHRlbnNpb25zM0RPcGVuR0w+IG1fZXh0ZW5zaW9uczsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RP
cGVuR0wuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBo
aWNzQ29udGV4dDNET3BlbkdMLmNwcAppbmRleCBmZDcyMDczLi5lYjFhZTNiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0
M0RPcGVuR0wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5n
bC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAKQEAgLTI1LDcgKzI1LDExIEBACiAKICNpbmNs
dWRlICJjb25maWcuaCIKIAotI2lmIEVOQUJMRShXRUJHTCkKKyNpZiBQTEFURk9STShRVCkKKyNp
bmNsdWRlIDxRdEdsb2JhbD4KKyNlbmRpZgorCisjaWYgRU5BQkxFKFdFQkdMKSAmJiAhZGVmaW5l
ZChRVF9PUEVOR0xfRVNfMikKIAogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dDNELmgiCiAKQEAg
LTUwLDYgKzU0LDggQEAKICNpbmNsdWRlIDxPcGVuR0wvZ2wuaD4KICNlbGlmIFBMQVRGT1JNKEdU
SykKICNpbmNsdWRlICJPcGVuR0xTaGltcy5oIgorI2VsaWYgUExBVEZPUk0oUVQpCisjaW5jbHVk
ZSA8Y2Fpcm8vT3BlbkdMU2hpbXMuaD4KICNlbmRpZgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBA
IC0xMTYsNiArMTIyLDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6cmVhZFJlbmRlcmluZ1Jl
c3VsdHModW5zaWduZWQgY2hhciAqcGl4ZWxzLCBpbnQgcGl4ZWxzU2kKICAgICAgICAgOjpnbEJp
bmRGcmFtZWJ1ZmZlckVYVChHTF9GUkFNRUJVRkZFUl9FWFQsIG1fYm91bmRGQk8pOwogfQogCisj
aWYgIVBMQVRGT1JNKFFUKQogdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6cGFpbnRSZW5kZXJpbmdS
ZXN1bHRzVG9DYW52YXMoQ2FudmFzUmVuZGVyaW5nQ29udGV4dCogY29udGV4dCkKIHsKICAgICBI
VE1MQ2FudmFzRWxlbWVudCogY2FudmFzID0gY29udGV4dC0+Y2FudmFzKCk7CkBAIC0xNDIsNiAr
MTQ5LDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9D
YW52YXMoQ2FudmFzUmVuZGVyaW5nQ29udGV4dCogY28KICAgICBwYWludFRvQ2FudmFzKHBpeGVs
cy5nZXQoKSwgbV9jdXJyZW50V2lkdGgsIG1fY3VycmVudEhlaWdodCwKICAgICAgICAgICAgICAg
ICAgIGNhbnZhcy0+d2lkdGgoKSwgY2FudmFzLT5oZWlnaHQoKSwgaW1hZ2VCdWZmZXItPmNvbnRl
eHQoKS0+cGxhdGZvcm1Db250ZXh0KCkpOwogfQorI2VuZGlmCiAKIFBhc3NSZWZQdHI8SW1hZ2VE
YXRhPiBHcmFwaGljc0NvbnRleHQzRDo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9JbWFnZURhdGEo
KQogewpAQCAtMzMzLDcgKzM0MSw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0M0Q6OnByZXBhcmVU
ZXh0dXJlKCkKICAgICAgICAgOjpnbEJsaXRGcmFtZWJ1ZmZlckVYVCgwLCAwLCBtX2N1cnJlbnRX
aWR0aCwgbV9jdXJyZW50SGVpZ2h0LCAwLCAwLCBtX2N1cnJlbnRXaWR0aCwgbV9jdXJyZW50SGVp
Z2h0LCBHTF9DT0xPUl9CVUZGRVJfQklULCBHTF9MSU5FQVIpOwogICAgIH0KICAgICA6OmdsQmlu
ZEZyYW1lYnVmZmVyRVhUKEdMX0ZSQU1FQlVGRkVSX0VYVCwgbV9mYm8pOwotICAgIDo6Z2xBY3Rp
dmVUZXh0dXJlKDApOworICAgIDo6Z2xBY3RpdmVUZXh0dXJlKEdMX1RFWFRVUkUwKTsKICAgICA6
OmdsQmluZFRleHR1cmUoR0xfVEVYVFVSRV8yRCwgbV9jb21wb3NpdG9yVGV4dHVyZSk7CiAgICAg
OjpnbENvcHlUZXhJbWFnZTJEKEdMX1RFWFRVUkVfMkQsIDAsIG1faW50ZXJuYWxDb2xvckZvcm1h
dCwgMCwgMCwgbV9jdXJyZW50V2lkdGgsIG1fY3VycmVudEhlaWdodCwgMCk7CiAgICAgOjpnbEJp
bmRUZXh0dXJlKEdMX1RFWFRVUkVfMkQsIG1fYm91bmRUZXh0dXJlMCk7CkBAIC0xNTE1LDEyICsx
NTIzLDE0IEBAIGJvb2wgR3JhcGhpY3NDb250ZXh0M0Q6OmxheWVyQ29tcG9zaXRlZCgpIGNvbnN0
CiAgICAgcmV0dXJuIG1fbGF5ZXJDb21wb3NpdGVkOwogfQogCisjaWYgIVBMQVRGT1JNKFFUKQog
RXh0ZW5zaW9uczNEKiBHcmFwaGljc0NvbnRleHQzRDo6Z2V0RXh0ZW5zaW9ucygpCiB7CiAgICAg
aWYgKCFtX2V4dGVuc2lvbnMpCiAgICAgICAgIG1fZXh0ZW5zaW9ucyA9IGFkb3B0UHRyKG5ldyBF
eHRlbnNpb25zM0RPcGVuR0wodGhpcykpOwogICAgIHJldHVybiBtX2V4dGVuc2lvbnMuZ2V0KCk7
CiB9CisjZW5kaWYKIAogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHQzRFF0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCmluZGV4IGQxMTZiYWYuLjdl
NDE4NzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dy
YXBoaWNzQ29udGV4dDNEUXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCkBAIC0yNzAsNyArMjcwLDcgQEAgR3JhcGhp
Y3NDb250ZXh0M0Q6OkdyYXBoaWNzQ29udGV4dDNEKEdyYXBoaWNzQ29udGV4dDNEOjpBdHRyaWJ1
dGVzIGF0dHJzLCBIb3N0V2kKICAgICAsIG1fbGF5ZXJDb21wb3NpdGVkKGZhbHNlKQogICAgICwg
bV9pbnRlcm5hbENvbG9yRm9ybWF0KDApCiAgICAgLCBtX2JvdW5kRkJPKDApCi0gICAgLCBtX2Fj
dGl2ZVRleHR1cmUoMCkKKyAgICAsIG1fYWN0aXZlVGV4dHVyZShHTF9URVhUVVJFMCkKICAgICAs
IG1fYm91bmRUZXh0dXJlMCgwKQogICAgICwgbV9tdWx0aXNhbXBsZUZCTygwKQogICAgICwgbV9t
dWx0aXNhbXBsZURlcHRoU3RlbmNpbEJ1ZmZlcigwKQpAQCAtMzIwLDYgKzMyMCwyNCBAQCBHcmFw
aGljc0NvbnRleHQzRDo6R3JhcGhpY3NDb250ZXh0M0QoR3JhcGhpY3NDb250ZXh0M0Q6OkF0dHJp
YnV0ZXMgYXR0cnMsIEhvc3RXaQogICAgIG1fYm91bmRGQk8gPSBtX2ZibzsKICAgICBnbEJpbmRG
cmFtZWJ1ZmZlcihHcmFwaGljc0NvbnRleHQzRDo6RlJBTUVCVUZGRVIsIG1fZmJvKTsKICAgICBn
bENsZWFyQ29sb3IoMC4wLCAwLjAsIDAuMCwgMC4wKTsKKworI2lmICFkZWZpbmVkKFFUX09QRU5H
TF9FU18yKQorICAgIC8vIEFOR0xFIGluaXRpYWxpemF0aW9uLgorICAgIFNoQnVpbHRJblJlc291
cmNlcyBBTkdMRVJlc291cmNlczsKKyAgICBTaEluaXRCdWlsdEluUmVzb3VyY2VzKCZBTkdMRVJl
c291cmNlcyk7CisKKyAgICBnZXRJbnRlZ2VydihHcmFwaGljc0NvbnRleHQzRDo6TUFYX1ZFUlRF
WF9BVFRSSUJTLCAmQU5HTEVSZXNvdXJjZXMuTWF4VmVydGV4QXR0cmlicyk7CisgICAgZ2V0SW50
ZWdlcnYoR3JhcGhpY3NDb250ZXh0M0Q6Ok1BWF9WRVJURVhfVU5JRk9STV9WRUNUT1JTLCAmQU5H
TEVSZXNvdXJjZXMuTWF4VmVydGV4VW5pZm9ybVZlY3RvcnMpOworICAgIGdldEludGVnZXJ2KEdy
YXBoaWNzQ29udGV4dDNEOjpNQVhfVkFSWUlOR19WRUNUT1JTLCAmQU5HTEVSZXNvdXJjZXMuTWF4
VmFyeWluZ1ZlY3RvcnMpOworICAgIGdldEludGVnZXJ2KEdyYXBoaWNzQ29udGV4dDNEOjpNQVhf
VkVSVEVYX1RFWFRVUkVfSU1BR0VfVU5JVFMsICZBTkdMRVJlc291cmNlcy5NYXhWZXJ0ZXhUZXh0
dXJlSW1hZ2VVbml0cyk7CisgICAgZ2V0SW50ZWdlcnYoR3JhcGhpY3NDb250ZXh0M0Q6Ok1BWF9D
T01CSU5FRF9URVhUVVJFX0lNQUdFX1VOSVRTLCAmQU5HTEVSZXNvdXJjZXMuTWF4Q29tYmluZWRU
ZXh0dXJlSW1hZ2VVbml0cyk7IAorICAgIGdldEludGVnZXJ2KEdyYXBoaWNzQ29udGV4dDNEOjpN
QVhfVEVYVFVSRV9JTUFHRV9VTklUUywgJkFOR0xFUmVzb3VyY2VzLk1heFRleHR1cmVJbWFnZVVu
aXRzKTsKKyAgICBnZXRJbnRlZ2VydihHcmFwaGljc0NvbnRleHQzRDo6TUFYX0ZSQUdNRU5UX1VO
SUZPUk1fVkVDVE9SUywgJkFOR0xFUmVzb3VyY2VzLk1heEZyYWdtZW50VW5pZm9ybVZlY3RvcnMp
OworCisgICAgLy8gQWx3YXlzIHNldCB0byAxIGZvciBPcGVuR0wgRVMuCisgICAgQU5HTEVSZXNv
dXJjZXMuTWF4RHJhd0J1ZmZlcnMgPSAxOworICAgIG1fY29tcGlsZXIuc2V0UmVzb3VyY2VzKEFO
R0xFUmVzb3VyY2VzKTsKKyNlbmRpZgogfQogCiBHcmFwaGljc0NvbnRleHQzRDo6fkdyYXBoaWNz
Q29udGV4dDNEKCkKQEAgLTM2Myw2ICszODEsNyBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpw
YWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhDYW52YXNSZW5kZXJpbmdDb250ZXh0KiBjbwog
ICAgIG1faW50ZXJuYWwtPnBhaW50KHBhaW50ZXIsIDAsIDApOwogfQogCisjaWYgZGVmaW5lZChR
VF9PUEVOR0xfRVNfMikKIFBhc3NSZWZQdHI8SW1hZ2VEYXRhPiBHcmFwaGljc0NvbnRleHQzRDo6
cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9JbWFnZURhdGEoKQogewogICAgIC8vIEZJWE1FOiBUaGlz
IG5lZWRzIHRvIGJlIGltcGxlbWVudGVkIGZvciBwcm9wZXIgbm9uLXByZW11bHRpcGxpZWQtYWxw
aGEKQEAgLTE0NzYsNiArMTQ5NSw3IEBAIGJvb2wgR3JhcGhpY3NDb250ZXh0M0Q6OmxheWVyQ29t
cG9zaXRlZCgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fbGF5ZXJDb21wb3NpdGVkOwogfQorI2Vu
ZGlmCiAKIEV4dGVuc2lvbnMzRCogR3JhcGhpY3NDb250ZXh0M0Q6OmdldEV4dGVuc2lvbnMoKQog
ewo=
</data>
<flag name="review"
          id="96634"
          type_id="1"
          status="-"
          setter="noam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101843</attachid>
            <date>2011-07-24 18:15:52 -0700</date>
            <delta_ts>2011-07-25 08:46:56 -0700</delta_ts>
            <desc>fix ANGLE compile flags</desc>
            <filename>part2.diff</filename>
            <type>text/plain</type>
            <size>15490</size>
            <attacher name="Andrew Wason">rectalogic</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjYTMzNTE5Li4xNTY3ODQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIg
QEAKKzIwMTEtMDctMjQgIEFuZHJldyBXYXNvbiAgPHJlY3RhbG9naWNAcmVjdGFsb2dpYy5jb20+
CisKKyAgICAgICAgW1F0XSBBZG9wdCBHcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAgYW5kIEFO
R0xFIChwYXJ0IDIpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD02NDg3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEV4aXN0aW5nIFdlYkdMIGxheW91dCB0ZXN0cyBzaG91bGQgdGVzdCB0aGlzLgorCisgICAg
ICAgIEFkb3B0IEdyYXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcCBhbmQgQU5HTEUgY29tcGlsZXIg
Zm9yIFF0LgorCisgICAgICAgICogV2ViQ29yZS5wcm86IEJ1aWxkIEFOR0xFIGNvbXBpbGVyIGFu
ZCBHcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvQU5HTEVXZWJLaXRCcmlkZ2UuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHQzRC5oOiBFeHBvc2UgZXhpc2luZyBBTkdMRVdlYktpdEJyaWRnZSBjb21waWxl
ciBtZW1iZXIgZm9yIFF0LgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFw
aGljc0NvbnRleHQzRE9wZW5HTC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHQzRDo6cHJlcGFyZVRleHR1cmUpOiBGaXggaW52YWxpZCBnbEFjdGl2ZXRleHR1cmUoMCkuCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RRdC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRDo6R3JhcGhpY3NDb250ZXh0M0QpOiBJ
bml0aWFsaXplIEFOR0xFIHJlc291cmNlcy4KKwogMjAxMS0wNy0yNCAgUm9iIEJ1aXMgIDxyYnVp
c0ByaW0uY29tPgogCiAgICAgICAgIFNWRyA8dXNlPiBlbGVtZW50IGlzIG5vdCByZXBvc2l0aW9u
ZWQgd2hlbiBtb3ZlZCB0byB4PTAgeT0wIHRocm91Z2ggc2NyaXB0IApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnBybwppbmRl
eCAwYWEzMzA0Li43MTdiYTNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnBy
bworKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnBybwpAQCAtMzU5Miw2ICszNTkyLDcgQEAg
Y29udGFpbnMoREVGSU5FUywgRU5BQkxFX1dFQkdMPTEpIHsKICAgICAgICAgaHRtbC9jYW52YXMv
V2ViR0xVbmlmb3JtTG9jYXRpb24uaCBcCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYkdMVmVydGV4
QXJyYXlPYmplY3RPRVMuaCBcCiAgICAgICAgIGh0bWwvY2FudmFzL1dlYktpdExvc2VDb250ZXh0
LmggXAorICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9BTkdMRVdlYktpdEJyaWRnZS5oIFwKICAg
ICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvRXh0ZW5zaW9uczNELmggXAogICAgICAgICBwbGF0Zm9y
bS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oIFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3B1L0RyYXdpbmdCdWZmZXIuaCBcCkBAIC0zNjAxLDYgKzM2MDIsNyBAQCBjb250YWlucyhE
RUZJTkVTLCBFTkFCTEVfV0VCR0w9MSkgewogICAgICAgICBTT1VSQ0VTICs9IFwKICAgICAgICAg
ICAgIGJpbmRpbmdzL2pzL0pTV2ViR0xSZW5kZXJpbmdDb250ZXh0Q3VzdG9tLmNwcAogICAgIH0K
KwogICAgIFNPVVJDRVMgKz0gXAogICAgICAgICBodG1sL2NhbnZhcy9DYW52YXNDb250ZXh0QXR0
cmlidXRlcy5jcHAgXAogICAgICAgICBodG1sL2NhbnZhcy9XZWJHTE9iamVjdC5jcHAgXApAQCAt
MzYyMSw2ICszNjIzLDcgQEAgY29udGFpbnMoREVGSU5FUywgRU5BQkxFX1dFQkdMPTEpIHsKICAg
ICAgICAgaHRtbC9jYW52YXMvV2ViR0xVbmlmb3JtTG9jYXRpb24uY3BwIFwKICAgICAgICAgaHRt
bC9jYW52YXMvV2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5jcHAgXAogICAgICAgICBodG1sL2Nh
bnZhcy9XZWJLaXRMb3NlQ29udGV4dC5jcHAgXAorICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9B
TkdMRVdlYktpdEJyaWRnZS5jcHAgXAogICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHQzRC5jcHAgXAogICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvRHJhd2luZ0J1
ZmZlci5jcHAgXAogICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9ncHUvcXQvRHJhd2luZ0J1ZmZl
clF0LmNwcCBcCkBAIC0zNjI5LDYgKzM2MzIsMTI5IEBAIGNvbnRhaW5zKERFRklORVMsIEVOQUJM
RV9XRUJHTD0xKSB7CiAKICAgICBJTkNMVURFUEFUSCArPSAkJFBXRC9wbGF0Zm9ybS9ncmFwaGlj
cy9ncHUKIAorICAgICFjb250YWlucyhRVF9DT05GSUcsIG9wZW5nbGVzMikgeworICAgICAgICBT
T1VSQ0VTICs9IFwKKyAgICAgICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGlj
c0NvbnRleHQzRE9wZW5HTC5jcHAKKworICAgICAgICBBTkdMRV9ESVIgPSAkJHJlcGxhY2UoUFdE
LCAiV2ViQ29yZSIsICJUaGlyZFBhcnR5L0FOR0xFIikKKworICAgICAgICBJTkNMVURFUEFUSCAr
PSAkJEFOR0xFX0RJUi9zcmMgJCRBTkdMRV9ESVIvaW5jbHVkZQorCisgICAgICAgIEFOR0xFX0hF
QURFUlMgKz0gXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL0Jhc2VUeXBl
cy5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Db21tb24uaCBcCisg
ICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvQ29uc3RhbnRVbmlvbi5oIFwKKyAg
ICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9kZWJ1Zy5oIFwKKyAgICAgICAgICAg
ICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9FeHRlbnNpb25CZWhhdmlvci5oIFwKKyAgICAgICAg
ICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Gb3JMb29wVW5yb2xsLmggXAorICAgICAgICAg
ICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL2dsc2xhbmcuaCBcCisgICAgICAgICAgICAkJEFO
R0xFX0RJUi9zcmMvY29tcGlsZXIvZ2xzbGFuZ190YWIuaCBcCisgICAgICAgICAgICAkJEFOR0xF
X0RJUi9zcmMvY29tcGlsZXIvSW5mb1NpbmsuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9z
cmMvY29tcGlsZXIvSW5pdGlhbGl6ZURsbC5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3Ny
Yy9jb21waWxlci9Jbml0aWFsaXplR2xvYmFscy5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElS
L3NyYy9jb21waWxlci9Jbml0aWFsaXplLmggXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3Jj
L2NvbXBpbGVyL0luaXRpYWxpemVQYXJzZUNvbnRleHQuaCBcCisgICAgICAgICAgICAkJEFOR0xF
X0RJUi9zcmMvY29tcGlsZXIvaW50ZXJtZWRpYXRlLmggXAorICAgICAgICAgICAgJCRBTkdMRV9E
SVIvc3JjL2NvbXBpbGVyL2xvY2FsaW50ZXJtZWRpYXRlLmggXAorICAgICAgICAgICAgJCRBTkdM
RV9ESVIvc3JjL2NvbXBpbGVyL01NYXAuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMv
Y29tcGlsZXIvTWFwTG9uZ1ZhcmlhYmxlTmFtZXMuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJ
Ui9zcmMvY29tcGlsZXIvb3NpbmNsdWRlLmggXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3Jj
L2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9hdG9tLmggXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIv
c3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9jb21waWxlLmggXAorICAgICAgICAgICAgJCRBTkdM
RV9ESVIvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9jcHAuaCBcCisgICAgICAgICAgICAkJEFO
R0xFX0RJUi9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL21lbW9yeS5oIFwKKyAgICAgICAgICAg
ICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvcGFyc2VyLmggXAorICAgICAg
ICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzLmgg
XAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zY2Fu
bmVyLmggXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nv
ci9zbGdsb2JhbHMuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvcHJl
cHJvY2Vzc29yL3N5bWJvbHMuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGls
ZXIvcHJlcHJvY2Vzc29yL3Rva2Vucy5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9j
b21waWxlci9PdXRwdXRFU1NMLmggXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBp
bGVyL091dHB1dEdMU0wuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
T3V0cHV0R0xTTEJhc2UuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
T3V0cHV0SExTTC5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9QYXJz
ZUhlbHBlci5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Qb29sQWxs
b2MuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvUXVhbGlmaWVyQWxp
dmUuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvUmVtb3ZlVHJlZS5o
IFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9TZWFyY2hTeW1ib2wuaCBc
CisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvU2hIYW5kbGUuaCBcCisgICAg
ICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvU3ltYm9sVGFibGUuaCBcCisgICAgICAg
ICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVHJhbnNsYXRvckVTU0wuaCBcCisgICAgICAg
ICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVHJhbnNsYXRvckdMU0wuaCBcCisgICAgICAg
ICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVHJhbnNsYXRvckhMU0wuaCBcCisgICAgICAg
ICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVHlwZXMuaCBcCisgICAgICAgICAgICAkJEFO
R0xFX0RJUi9zcmMvY29tcGlsZXIvVW5mb2xkU2VsZWN0LmggXAorICAgICAgICAgICAgJCRBTkdM
RV9ESVIvc3JjL2NvbXBpbGVyL3V0aWwuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMv
Y29tcGlsZXIvVmFsaWRhdGVMaW1pdGF0aW9ucy5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElS
L3NyYy9jb21waWxlci9WYXJpYWJsZUluZm8uaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9z
cmMvY29tcGlsZXIvVmVyc2lvbkdMU0wuaAorCisgICAgICAgIEhFQURFUlMgKz0gJCRBTkdMRV9I
RUFERVJTCisKKyAgICAgICAgQU5HTEVfU09VUkNFUyArPSBcCisgICAgICAgICAgICAkJEFOR0xF
X0RJUi9zcmMvY29tcGlsZXIvQ29kZUdlbkdMU0wuY3BwIFwKKyAgICAgICAgICAgICQkQU5HTEVf
RElSL3NyYy9jb21waWxlci9Db2RlR2VuSExTTC5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9E
SVIvc3JjL2NvbXBpbGVyL0NvbXBpbGVyLmNwcCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9z
cmMvY29tcGlsZXIvZGVidWcuY3BwIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21w
aWxlci9Gb3JMb29wVW5yb2xsLmNwcCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29t
cGlsZXIvZ2xzbGFuZ19sZXguY3BwIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21w
aWxlci9nbHNsYW5nX3RhYi5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBp
bGVyL0luZm9TaW5rLmNwcCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
SW5pdGlhbGl6ZS5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL0lu
aXRpYWxpemVEbGwuY3BwIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9J
bnRlcm1lZGlhdGUuY3BwIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9p
bnRlcm1PdXQuY3BwIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9JbnRl
cm1UcmF2ZXJzZS5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL01h
cExvbmdWYXJpYWJsZU5hbWVzLmNwcCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29t
cGlsZXIvb3Nzb3VyY2VfcG9zaXguY3BwIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9j
b21waWxlci9PdXRwdXRFU1NMLmNwcCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29t
cGlsZXIvT3V0cHV0R0xTTC5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBp
bGVyL091dHB1dEdMU0xCYXNlLmNwcCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29t
cGlsZXIvT3V0cHV0SExTTC5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBp
bGVyL3BhcnNlQ29uc3QuY3BwIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxl
ci9QYXJzZUhlbHBlci5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVy
L1Bvb2xBbGxvYy5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1F1
YWxpZmllckFsaXZlLmNwcCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
UmVtb3ZlVHJlZS5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1Nl
YXJjaFN5bWJvbC5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1No
YWRlckxhbmcuY3BwIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9TeW1i
b2xUYWJsZS5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1RyYW5z
bGF0b3JFU1NMLmNwcCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVHJh
bnNsYXRvckdMU0wuY3BwIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9U
cmFuc2xhdG9ySExTTC5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVy
L1VuZm9sZFNlbGVjdC5jcHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVy
L3V0aWwuY3BwIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9WYWxpZGF0
ZUxpbWl0YXRpb25zLmNwcCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
VmFyaWFibGVJbmZvLmNwcCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
VmVyc2lvbkdMU0wuY3BwCisKKyAgICAgICAgU09VUkNFUyArPSBcCisgICAgICAgICAgICAkJEFO
R0xFX0RJUi9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2F0b20uYyBcCisgICAgICAgICAgICAk
JEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL2NwcC5jIFwKKyAgICAgICAgICAg
ICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9wcmVwcm9jZXNzb3IvY3Bwc3RydWN0LmMgXAorICAg
ICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9tZW1vcnkuYyBc
CisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3NjYW5u
ZXIuYyBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29y
L3N5bWJvbHMuYyBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvcHJlcHJv
Y2Vzc29yL3Rva2Vucy5jCisKKyAgICAgICAgKmcrKyogeworICAgICAgICAgICAgQU5HTEVfQ0ZM
QUdTICs9IC1Xbm8tdW51c2VkLXZhcmlhYmxlCisgICAgICAgICAgICBBTkdMRV9DRkxBR1MgKz0g
LVduby1taXNzaW5nLW5vcmV0dXJuCisgICAgICAgICAgICBBTkdMRV9DRkxBR1MgKz0gLVduby11
bnVzZWQtZnVuY3Rpb24KKyAgICAgICAgICAgIEFOR0xFX0NGTEFHUyArPSAtV25vLXJlb3JkZXIK
KworICAgICAgICAgICAgYW5nbGVfY3h4LmNvbW1hbmRzID0gJCRRTUFLRV9DWFggLWMgJChDWFhG
TEFHUykgJCRBTkdMRV9DRkxBR1MgJChJTkNQQVRIKSAke1FNQUtFX0ZJTEVfSU59IC1vICR7UU1B
S0VfRklMRV9PVVR9CisgICAgICAgICAgICBhbmdsZV9jeHgub3V0cHV0ICA9ICQkT0JKRUNUU19E
SVIvJHtRTUFLRV9GSUxFX0JBU0V9JCRRTUFLRV9FWFRfT0JKCisgICAgICAgICAgICBhbmdsY19j
eHguZGVwZW5kZW5jeV90eXBlID0gVFlQRV9DCisgICAgICAgICAgICBhbmdsZV9jeHguZGVwZW5k
cyA9ICQkQU5HTEVfSEVBREVSUworICAgICAgICAgICAgYW5nbGVfY3h4LmlucHV0ID0gQU5HTEVf
U09VUkNFUworICAgICAgICAgICAgUU1BS0VfRVhUUkFfQ09NUElMRVJTICs9IGFuZ2xlX2N4eAor
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgU09VUkNFUyArPSAkJEFOR0xFX1NPVVJDRVMK
KyAgICAgICAgfQorICAgIH0KKwogICAgIENPTkZJRyArPSBvcGVuZ2wtc2hpbXMKIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQU5HTEVXZWJLaXRCcmlk
Z2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0FOR0xFV2ViS2l0QnJpZGdl
LmgKaW5kZXggYTlkMjIzOC4uMGY0YmY3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvQU5HTEVXZWJLaXRCcmlkZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9BTkdMRVdlYktpdEJyaWRnZS5oCkBAIC0yOSw3ICsyOSw5IEBACiAj
aW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+
CiAKLSNpZiAhUExBVEZPUk0oR1RLKQorI2lmIFBMQVRGT1JNKFFUKQorI2luY2x1ZGUgIkFOR0xF
L2luY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmgiCisjZWxpZiAhUExBVEZPUk0oR1RLKQogI2lu
Y2x1ZGUgIkFOR0xFL1NoYWRlckxhbmcuaCIKICNlbHNlCiAjaW5jbHVkZSAiU2hhZGVyTGFuZy5o
IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3ND
b250ZXh0M0QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29u
dGV4dDNELmgKaW5kZXggNWU0N2VmMy4uZjg2YTJmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5oCkBAIC00Myw3ICs0Myw3
IEBACiAjdW5kZWYgVkVSU0lPTgogI2VuZGlmCiAKLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRG
T1JNKEdUSykKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0o
UVQpCiAjaW5jbHVkZSAiQU5HTEVXZWJLaXRCcmlkZ2UuaCIKICNlbmRpZgogCkBAIC01MDEsNyAr
NTAxLDcgQEAgcHVibGljOgogCiAgICAgUGFzc1JlZlB0cjxEcmF3aW5nQnVmZmVyPiBjcmVhdGVE
cmF3aW5nQnVmZmVyKGNvbnN0IEludFNpemUmID0gSW50U2l6ZSgpKTsKICAgICAKLSNpZiBQTEFU
Rk9STShNQUMpIHx8IFBMQVRGT1JNKENIUk9NSVVNKSB8fCBQTEFURk9STShHVEspCisjaWYgUExB
VEZPUk0oTUFDKSB8fCBQTEFURk9STShDSFJPTUlVTSkgfHwgUExBVEZPUk0oR1RLKSB8fCBQTEFU
Rk9STShRVCkKICAgICAvLyBXaXRoIG11bHRpc2FtcGxpbmcgb24sIGJsaXQgZnJvbSBtdWx0aXNh
bXBsZUZCTyB0byByZWd1bGFyIEZCTy4KICAgICB2b2lkIHByZXBhcmVUZXh0dXJlKCk7CiAjZW5k
aWYKQEAgLTg4OSw3ICs4ODksNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICAgICAgICAgIEFscGhh
T3AgYWxwaGFPcCwKICAgICAgICAgICAgICAgICAgICAgdm9pZCogZGVzdGluYXRpb25EYXRhKTsK
IAotI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oR1RLKQorI2lmIFBMQVRGT1JNKE1BQykg
fHwgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShRVCkKICAgICAvLyBUYWtlIGludG8gYWNjb3Vu
dCB0aGUgdXNlcidzIHJlcXVlc3RlZCBjb250ZXh0IGNyZWF0aW9uIGF0dHJpYnV0ZXMsCiAgICAg
Ly8gaW4gcGFydGljdWxhciBzdGVuY2lsIGFuZCBhbnRpYWxpYXMsIGFuZCBkZXRlcm1pbmUgd2hp
Y2ggY291bGQgb3IKICAgICAvLyBjb3VsZCBub3QgYmUgaG9ub3JlZCBiYXNlZCBvbiB0aGUgY2Fw
YWJpbGl0aWVzIG9mIHRoZSBPcGVuR0wKQEAgLTkxNywxMyArOTE3LDEyIEBAIHB1YmxpYzoKICAg
ICB9IFNoYWRlclNvdXJjZUVudHJ5OwogICAgIEhhc2hNYXA8UGxhdGZvcm0zRE9iamVjdCwgU2hh
ZGVyU291cmNlRW50cnk+IG1fc2hhZGVyU291cmNlTWFwOwogCisgICAgQU5HTEVXZWJLaXRCcmlk
Z2UgbV9jb21waWxlcjsKICNpZiBQTEFURk9STShRVCkKICAgICBmcmllbmQgY2xhc3MgRXh0ZW5z
aW9uczNEUXQ7CiAgICAgT3duUHRyPEV4dGVuc2lvbnMzRFF0PiBtX2V4dGVuc2lvbnM7CiAjZWxz
ZQogICAgIGZyaWVuZCBjbGFzcyBFeHRlbnNpb25zM0RPcGVuR0w7Ci0gICAgQU5HTEVXZWJLaXRC
cmlkZ2UgbV9jb21waWxlcjsKLQogICAgIE93blB0cjxFeHRlbnNpb25zM0RPcGVuR0w+IG1fZXh0
ZW5zaW9uczsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0wuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcApp
bmRleCBmZDcyMDczLi5kOTFmYjY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0M0RPcGVuR0wuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5H
TC5jcHAKQEAgLTI1LDYgKzI1LDEwIEBACiAKICNpbmNsdWRlICJjb25maWcuaCIKIAorI2lmIFBM
QVRGT1JNKFFUKQorI2luY2x1ZGUgPFF0R2xvYmFsPgorI2VuZGlmCisKICNpZiBFTkFCTEUoV0VC
R0wpCiAKICNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQzRC5oIgpAQCAtNTAsNiArNTQsOCBAQAog
I2luY2x1ZGUgPE9wZW5HTC9nbC5oPgogI2VsaWYgUExBVEZPUk0oR1RLKQogI2luY2x1ZGUgIk9w
ZW5HTFNoaW1zLmgiCisjZWxpZiBQTEFURk9STShRVCkKKyNpbmNsdWRlIDxjYWlyby9PcGVuR0xT
aGltcy5oPgogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTExNiw2ICsxMjIsNyBA
QCB2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpyZWFkUmVuZGVyaW5nUmVzdWx0cyh1bnNpZ25lZCBj
aGFyICpwaXhlbHMsIGludCBwaXhlbHNTaQogICAgICAgICA6OmdsQmluZEZyYW1lYnVmZmVyRVhU
KEdMX0ZSQU1FQlVGRkVSX0VYVCwgbV9ib3VuZEZCTyk7CiB9CiAKKyNpZiAhUExBVEZPUk0oUVQp
CiB2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhD
YW52YXNSZW5kZXJpbmdDb250ZXh0KiBjb250ZXh0KQogewogICAgIEhUTUxDYW52YXNFbGVtZW50
KiBjYW52YXMgPSBjb250ZXh0LT5jYW52YXMoKTsKQEAgLTE0Miw2ICsxNDksNyBAQCB2b2lkIEdy
YXBoaWNzQ29udGV4dDNEOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhDYW52YXNSZW5k
ZXJpbmdDb250ZXh0KiBjbwogICAgIHBhaW50VG9DYW52YXMocGl4ZWxzLmdldCgpLCBtX2N1cnJl
bnRXaWR0aCwgbV9jdXJyZW50SGVpZ2h0LAogICAgICAgICAgICAgICAgICAgY2FudmFzLT53aWR0
aCgpLCBjYW52YXMtPmhlaWdodCgpLCBpbWFnZUJ1ZmZlci0+Y29udGV4dCgpLT5wbGF0Zm9ybUNv
bnRleHQoKSk7CiB9CisjZW5kaWYKIAogUGFzc1JlZlB0cjxJbWFnZURhdGE+IEdyYXBoaWNzQ29u
dGV4dDNEOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0ltYWdlRGF0YSgpCiB7CkBAIC0zMzMsNyAr
MzQxLDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6cHJlcGFyZVRleHR1cmUoKQogICAgICAg
ICA6OmdsQmxpdEZyYW1lYnVmZmVyRVhUKDAsIDAsIG1fY3VycmVudFdpZHRoLCBtX2N1cnJlbnRI
ZWlnaHQsIDAsIDAsIG1fY3VycmVudFdpZHRoLCBtX2N1cnJlbnRIZWlnaHQsIEdMX0NPTE9SX0JV
RkZFUl9CSVQsIEdMX0xJTkVBUik7CiAgICAgfQogICAgIDo6Z2xCaW5kRnJhbWVidWZmZXJFWFQo
R0xfRlJBTUVCVUZGRVJfRVhULCBtX2Zibyk7Ci0gICAgOjpnbEFjdGl2ZVRleHR1cmUoMCk7Cisg
ICAgOjpnbEFjdGl2ZVRleHR1cmUoR0xfVEVYVFVSRTApOwogICAgIDo6Z2xCaW5kVGV4dHVyZShH
TF9URVhUVVJFXzJELCBtX2NvbXBvc2l0b3JUZXh0dXJlKTsKICAgICA6OmdsQ29weVRleEltYWdl
MkQoR0xfVEVYVFVSRV8yRCwgMCwgbV9pbnRlcm5hbENvbG9yRm9ybWF0LCAwLCAwLCBtX2N1cnJl
bnRXaWR0aCwgbV9jdXJyZW50SGVpZ2h0LCAwKTsKICAgICA6OmdsQmluZFRleHR1cmUoR0xfVEVY
VFVSRV8yRCwgbV9ib3VuZFRleHR1cmUwKTsKQEAgLTE1MTUsMTIgKzE1MjMsMTQgQEAgYm9vbCBH
cmFwaGljc0NvbnRleHQzRDo6bGF5ZXJDb21wb3NpdGVkKCkgY29uc3QKICAgICByZXR1cm4gbV9s
YXllckNvbXBvc2l0ZWQ7CiB9CiAKKyNpZiAhUExBVEZPUk0oUVQpCiBFeHRlbnNpb25zM0QqIEdy
YXBoaWNzQ29udGV4dDNEOjpnZXRFeHRlbnNpb25zKCkKIHsKICAgICBpZiAoIW1fZXh0ZW5zaW9u
cykKICAgICAgICAgbV9leHRlbnNpb25zID0gYWRvcHRQdHIobmV3IEV4dGVuc2lvbnMzRE9wZW5H
TCh0aGlzKSk7CiAgICAgcmV0dXJuIG1fZXh0ZW5zaW9ucy5nZXQoKTsKIH0KKyNlbmRpZgogCiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBo
aWNzQ29udGV4dDNEUXQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQv
R3JhcGhpY3NDb250ZXh0M0RRdC5jcHAKaW5kZXggZDExNmJhZi4uN2U0MTg3MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0M0RR
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3ND
b250ZXh0M0RRdC5jcHAKQEAgLTI3MCw3ICsyNzAsNyBAQCBHcmFwaGljc0NvbnRleHQzRDo6R3Jh
cGhpY3NDb250ZXh0M0QoR3JhcGhpY3NDb250ZXh0M0Q6OkF0dHJpYnV0ZXMgYXR0cnMsIEhvc3RX
aQogICAgICwgbV9sYXllckNvbXBvc2l0ZWQoZmFsc2UpCiAgICAgLCBtX2ludGVybmFsQ29sb3JG
b3JtYXQoMCkKICAgICAsIG1fYm91bmRGQk8oMCkKLSAgICAsIG1fYWN0aXZlVGV4dHVyZSgwKQor
ICAgICwgbV9hY3RpdmVUZXh0dXJlKEdMX1RFWFRVUkUwKQogICAgICwgbV9ib3VuZFRleHR1cmUw
KDApCiAgICAgLCBtX211bHRpc2FtcGxlRkJPKDApCiAgICAgLCBtX211bHRpc2FtcGxlRGVwdGhT
dGVuY2lsQnVmZmVyKDApCkBAIC0zMjAsNiArMzIwLDI0IEBAIEdyYXBoaWNzQ29udGV4dDNEOjpH
cmFwaGljc0NvbnRleHQzRChHcmFwaGljc0NvbnRleHQzRDo6QXR0cmlidXRlcyBhdHRycywgSG9z
dFdpCiAgICAgbV9ib3VuZEZCTyA9IG1fZmJvOwogICAgIGdsQmluZEZyYW1lYnVmZmVyKEdyYXBo
aWNzQ29udGV4dDNEOjpGUkFNRUJVRkZFUiwgbV9mYm8pOwogICAgIGdsQ2xlYXJDb2xvcigwLjAs
IDAuMCwgMC4wLCAwLjApOworCisjaWYgIWRlZmluZWQoUVRfT1BFTkdMX0VTXzIpCisgICAgLy8g
QU5HTEUgaW5pdGlhbGl6YXRpb24uCisgICAgU2hCdWlsdEluUmVzb3VyY2VzIEFOR0xFUmVzb3Vy
Y2VzOworICAgIFNoSW5pdEJ1aWx0SW5SZXNvdXJjZXMoJkFOR0xFUmVzb3VyY2VzKTsKKworICAg
IGdldEludGVnZXJ2KEdyYXBoaWNzQ29udGV4dDNEOjpNQVhfVkVSVEVYX0FUVFJJQlMsICZBTkdM
RVJlc291cmNlcy5NYXhWZXJ0ZXhBdHRyaWJzKTsKKyAgICBnZXRJbnRlZ2VydihHcmFwaGljc0Nv
bnRleHQzRDo6TUFYX1ZFUlRFWF9VTklGT1JNX1ZFQ1RPUlMsICZBTkdMRVJlc291cmNlcy5NYXhW
ZXJ0ZXhVbmlmb3JtVmVjdG9ycyk7CisgICAgZ2V0SW50ZWdlcnYoR3JhcGhpY3NDb250ZXh0M0Q6
Ok1BWF9WQVJZSU5HX1ZFQ1RPUlMsICZBTkdMRVJlc291cmNlcy5NYXhWYXJ5aW5nVmVjdG9ycyk7
CisgICAgZ2V0SW50ZWdlcnYoR3JhcGhpY3NDb250ZXh0M0Q6Ok1BWF9WRVJURVhfVEVYVFVSRV9J
TUFHRV9VTklUUywgJkFOR0xFUmVzb3VyY2VzLk1heFZlcnRleFRleHR1cmVJbWFnZVVuaXRzKTsK
KyAgICBnZXRJbnRlZ2VydihHcmFwaGljc0NvbnRleHQzRDo6TUFYX0NPTUJJTkVEX1RFWFRVUkVf
SU1BR0VfVU5JVFMsICZBTkdMRVJlc291cmNlcy5NYXhDb21iaW5lZFRleHR1cmVJbWFnZVVuaXRz
KTsgCisgICAgZ2V0SW50ZWdlcnYoR3JhcGhpY3NDb250ZXh0M0Q6Ok1BWF9URVhUVVJFX0lNQUdF
X1VOSVRTLCAmQU5HTEVSZXNvdXJjZXMuTWF4VGV4dHVyZUltYWdlVW5pdHMpOworICAgIGdldElu
dGVnZXJ2KEdyYXBoaWNzQ29udGV4dDNEOjpNQVhfRlJBR01FTlRfVU5JRk9STV9WRUNUT1JTLCAm
QU5HTEVSZXNvdXJjZXMuTWF4RnJhZ21lbnRVbmlmb3JtVmVjdG9ycyk7CisKKyAgICAvLyBBbHdh
eXMgc2V0IHRvIDEgZm9yIE9wZW5HTCBFUy4KKyAgICBBTkdMRVJlc291cmNlcy5NYXhEcmF3QnVm
ZmVycyA9IDE7CisgICAgbV9jb21waWxlci5zZXRSZXNvdXJjZXMoQU5HTEVSZXNvdXJjZXMpOwor
I2VuZGlmCiB9CiAKIEdyYXBoaWNzQ29udGV4dDNEOjp+R3JhcGhpY3NDb250ZXh0M0QoKQpAQCAt
MzYzLDYgKzM4MSw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0M0Q6OnBhaW50UmVuZGVyaW5nUmVz
dWx0c1RvQ2FudmFzKENhbnZhc1JlbmRlcmluZ0NvbnRleHQqIGNvCiAgICAgbV9pbnRlcm5hbC0+
cGFpbnQocGFpbnRlciwgMCwgMCk7CiB9CiAKKyNpZiBkZWZpbmVkKFFUX09QRU5HTF9FU18yKQog
UGFzc1JlZlB0cjxJbWFnZURhdGE+IEdyYXBoaWNzQ29udGV4dDNEOjpwYWludFJlbmRlcmluZ1Jl
c3VsdHNUb0ltYWdlRGF0YSgpCiB7CiAgICAgLy8gRklYTUU6IFRoaXMgbmVlZHMgdG8gYmUgaW1w
bGVtZW50ZWQgZm9yIHByb3BlciBub24tcHJlbXVsdGlwbGllZC1hbHBoYQpAQCAtMTQ3Niw2ICsx
NDk1LDcgQEAgYm9vbCBHcmFwaGljc0NvbnRleHQzRDo6bGF5ZXJDb21wb3NpdGVkKCkgY29uc3QK
IHsKICAgICByZXR1cm4gbV9sYXllckNvbXBvc2l0ZWQ7CiB9CisjZW5kaWYKIAogRXh0ZW5zaW9u
czNEKiBHcmFwaGljc0NvbnRleHQzRDo6Z2V0RXh0ZW5zaW9ucygpCiB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101872</attachid>
            <date>2011-07-25 08:46:56 -0700</date>
            <delta_ts>2011-07-25 12:21:03 -0700</delta_ts>
            <desc>remove unrelated glActiveTexture fix</desc>
            <filename>part2.diff</filename>
            <type>text/plain</type>
            <size>14852</size>
            <attacher name="Andrew Wason">rectalogic</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjYTMzNTE5Li4xMGUyOWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEg
QEAKKzIwMTEtMDctMjQgIEFuZHJldyBXYXNvbiAgPHJlY3RhbG9naWNAcmVjdGFsb2dpYy5jb20+
CisKKyAgICAgICAgW1F0XSBBZG9wdCBHcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAgYW5kIEFO
R0xFIChwYXJ0IDIpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD02NDg3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEV4aXN0aW5nIFdlYkdMIGxheW91dCB0ZXN0cyBzaG91bGQgdGVzdCB0aGlzLgorCisgICAg
ICAgIEFkb3B0IEdyYXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcCBhbmQgQU5HTEUgY29tcGlsZXIg
Zm9yIFF0LgorCisgICAgICAgICogV2ViQ29yZS5wcm86IEJ1aWxkIEFOR0xFIGNvbXBpbGVyIGFu
ZCBHcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvQU5HTEVXZWJLaXRCcmlkZ2UuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHQzRC5oOiBFeHBvc2UgZXhpc2luZyBBTkdMRVdlYktpdEJyaWRnZSBjb21waWxl
ciBtZW1iZXIgZm9yIFF0LgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFw
aGljc0NvbnRleHQzRE9wZW5HTC5jcHA6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvcXQv
R3JhcGhpY3NDb250ZXh0M0RRdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHQzRDo6R3JhcGhpY3NDb250ZXh0M0QpOiBJbml0aWFsaXplIEFOR0xFIHJlc291cmNlcy4KKwog
MjAxMS0wNy0yNCAgUm9iIEJ1aXMgIDxyYnVpc0ByaW0uY29tPgogCiAgICAgICAgIFNWRyA8dXNl
PiBlbGVtZW50IGlzIG5vdCByZXBvc2l0aW9uZWQgd2hlbiBtb3ZlZCB0byB4PTAgeT0wIHRocm91
Z2ggc2NyaXB0IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8gYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnBybwppbmRleCAwYWEzMzA0Li43MTdiYTNkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnBybworKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnBybwpAQCAtMzU5Miw2ICszNTkyLDcgQEAgY29udGFpbnMoREVGSU5FUywgRU5BQkxFX1dFQkdM
PTEpIHsKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xVbmlmb3JtTG9jYXRpb24uaCBcCiAgICAg
ICAgIGh0bWwvY2FudmFzL1dlYkdMVmVydGV4QXJyYXlPYmplY3RPRVMuaCBcCiAgICAgICAgIGh0
bWwvY2FudmFzL1dlYktpdExvc2VDb250ZXh0LmggXAorICAgICAgICBwbGF0Zm9ybS9ncmFwaGlj
cy9BTkdMRVdlYktpdEJyaWRnZS5oIFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvRXh0ZW5z
aW9uczNELmggXAogICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5o
IFwKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L0RyYXdpbmdCdWZmZXIuaCBcCkBAIC0z
NjAxLDYgKzM2MDIsNyBAQCBjb250YWlucyhERUZJTkVTLCBFTkFCTEVfV0VCR0w9MSkgewogICAg
ICAgICBTT1VSQ0VTICs9IFwKICAgICAgICAgICAgIGJpbmRpbmdzL2pzL0pTV2ViR0xSZW5kZXJp
bmdDb250ZXh0Q3VzdG9tLmNwcAogICAgIH0KKwogICAgIFNPVVJDRVMgKz0gXAogICAgICAgICBo
dG1sL2NhbnZhcy9DYW52YXNDb250ZXh0QXR0cmlidXRlcy5jcHAgXAogICAgICAgICBodG1sL2Nh
bnZhcy9XZWJHTE9iamVjdC5jcHAgXApAQCAtMzYyMSw2ICszNjIzLDcgQEAgY29udGFpbnMoREVG
SU5FUywgRU5BQkxFX1dFQkdMPTEpIHsKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xVbmlmb3Jt
TG9jYXRpb24uY3BwIFwKICAgICAgICAgaHRtbC9jYW52YXMvV2ViR0xWZXJ0ZXhBcnJheU9iamVj
dE9FUy5jcHAgXAogICAgICAgICBodG1sL2NhbnZhcy9XZWJLaXRMb3NlQ29udGV4dC5jcHAgXAor
ICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9BTkdMRVdlYktpdEJyaWRnZS5jcHAgXAogICAgICAg
ICBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQzRC5jcHAgXAogICAgICAgICBwbGF0
Zm9ybS9ncmFwaGljcy9ncHUvRHJhd2luZ0J1ZmZlci5jcHAgXAogICAgICAgICBwbGF0Zm9ybS9n
cmFwaGljcy9ncHUvcXQvRHJhd2luZ0J1ZmZlclF0LmNwcCBcCkBAIC0zNjI5LDYgKzM2MzIsMTI5
IEBAIGNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9XRUJHTD0xKSB7CiAKICAgICBJTkNMVURFUEFU
SCArPSAkJFBXRC9wbGF0Zm9ybS9ncmFwaGljcy9ncHUKIAorICAgICFjb250YWlucyhRVF9DT05G
SUcsIG9wZW5nbGVzMikgeworICAgICAgICBTT1VSQ0VTICs9IFwKKyAgICAgICAgICAgIHBsYXRm
b3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAKKworICAgICAg
ICBBTkdMRV9ESVIgPSAkJHJlcGxhY2UoUFdELCAiV2ViQ29yZSIsICJUaGlyZFBhcnR5L0FOR0xF
IikKKworICAgICAgICBJTkNMVURFUEFUSCArPSAkJEFOR0xFX0RJUi9zcmMgJCRBTkdMRV9ESVIv
aW5jbHVkZQorCisgICAgICAgIEFOR0xFX0hFQURFUlMgKz0gXAorICAgICAgICAgICAgJCRBTkdM
RV9ESVIvc3JjL2NvbXBpbGVyL0Jhc2VUeXBlcy5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElS
L3NyYy9jb21waWxlci9Db21tb24uaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29t
cGlsZXIvQ29uc3RhbnRVbmlvbi5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21w
aWxlci9kZWJ1Zy5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9FeHRl
bnNpb25CZWhhdmlvci5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9G
b3JMb29wVW5yb2xsLmggXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL2ds
c2xhbmcuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvZ2xzbGFuZ190
YWIuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvSW5mb1NpbmsuaCBc
CisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvSW5pdGlhbGl6ZURsbC5oIFwK
KyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Jbml0aWFsaXplR2xvYmFscy5o
IFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Jbml0aWFsaXplLmggXAor
ICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL0luaXRpYWxpemVQYXJzZUNvbnRl
eHQuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvaW50ZXJtZWRpYXRl
LmggXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL2xvY2FsaW50ZXJtZWRp
YXRlLmggXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL01NYXAuaCBcCisg
ICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvTWFwTG9uZ1ZhcmlhYmxlTmFtZXMu
aCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvb3NpbmNsdWRlLmggXAor
ICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9hdG9tLmgg
XAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9jb21w
aWxlLmggXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nv
ci9jcHAuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvcHJlcHJvY2Vz
c29yL21lbW9yeS5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9wcmVw
cm9jZXNzb3IvcGFyc2VyLmggXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVy
L3ByZXByb2Nlc3Nvci9wcmVwcm9jZXNzLmggXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3Jj
L2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zY2FubmVyLmggXAorICAgICAgICAgICAgJCRBTkdMRV9E
SVIvc3JjL2NvbXBpbGVyL3ByZXByb2Nlc3Nvci9zbGdsb2JhbHMuaCBcCisgICAgICAgICAgICAk
JEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3N5bWJvbHMuaCBcCisgICAgICAg
ICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3Rva2Vucy5oIFwKKyAg
ICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9PdXRwdXRFU1NMLmggXAorICAgICAg
ICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL091dHB1dEdMU0wuaCBcCisgICAgICAgICAg
ICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvT3V0cHV0R0xTTEJhc2UuaCBcCisgICAgICAgICAg
ICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvT3V0cHV0SExTTC5oIFwKKyAgICAgICAgICAgICQk
QU5HTEVfRElSL3NyYy9jb21waWxlci9QYXJzZUhlbHBlci5oIFwKKyAgICAgICAgICAgICQkQU5H
TEVfRElSL3NyYy9jb21waWxlci9Qb29sQWxsb2MuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJ
Ui9zcmMvY29tcGlsZXIvUXVhbGlmaWVyQWxpdmUuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJ
Ui9zcmMvY29tcGlsZXIvUmVtb3ZlVHJlZS5oIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3Ny
Yy9jb21waWxlci9TZWFyY2hTeW1ib2wuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMv
Y29tcGlsZXIvU2hIYW5kbGUuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGls
ZXIvU3ltYm9sVGFibGUuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
VHJhbnNsYXRvckVTU0wuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
VHJhbnNsYXRvckdMU0wuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
VHJhbnNsYXRvckhMU0wuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIv
VHlwZXMuaCBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVW5mb2xkU2Vs
ZWN0LmggXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL3V0aWwuaCBcCisg
ICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVmFsaWRhdGVMaW1pdGF0aW9ucy5o
IFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9WYXJpYWJsZUluZm8uaCBc
CisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVmVyc2lvbkdMU0wuaAorCisg
ICAgICAgIEhFQURFUlMgKz0gJCRBTkdMRV9IRUFERVJTCisKKyAgICAgICAgQU5HTEVfU09VUkNF
UyArPSBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvQ29kZUdlbkdMU0wu
Y3BwIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Db2RlR2VuSExTTC5j
cHAgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL0NvbXBpbGVyLmNwcCBc
CisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvZGVidWcuY3BwIFwKKyAgICAg
ICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9Gb3JMb29wVW5yb2xsLmNwcCBcCisgICAg
ICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvZ2xzbGFuZ19sZXguY3BwIFwKKyAgICAg
ICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9nbHNsYW5nX3RhYi5jcHAgXAorICAgICAg
ICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL0luZm9TaW5rLmNwcCBcCisgICAgICAgICAg
ICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvSW5pdGlhbGl6ZS5jcHAgXAorICAgICAgICAgICAg
JCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL0luaXRpYWxpemVEbGwuY3BwIFwKKyAgICAgICAgICAg
ICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9JbnRlcm1lZGlhdGUuY3BwIFwKKyAgICAgICAgICAg
ICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9pbnRlcm1PdXQuY3BwIFwKKyAgICAgICAgICAgICQk
QU5HTEVfRElSL3NyYy9jb21waWxlci9JbnRlcm1UcmF2ZXJzZS5jcHAgXAorICAgICAgICAgICAg
JCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL01hcExvbmdWYXJpYWJsZU5hbWVzLmNwcCBcCisgICAg
ICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvb3Nzb3VyY2VfcG9zaXguY3BwIFwKKyAg
ICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9PdXRwdXRFU1NMLmNwcCBcCisgICAg
ICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvT3V0cHV0R0xTTC5jcHAgXAorICAgICAg
ICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL091dHB1dEdMU0xCYXNlLmNwcCBcCisgICAg
ICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvT3V0cHV0SExTTC5jcHAgXAorICAgICAg
ICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL3BhcnNlQ29uc3QuY3BwIFwKKyAgICAgICAg
ICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9QYXJzZUhlbHBlci5jcHAgXAorICAgICAgICAg
ICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1Bvb2xBbGxvYy5jcHAgXAorICAgICAgICAgICAg
JCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1F1YWxpZmllckFsaXZlLmNwcCBcCisgICAgICAgICAg
ICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvUmVtb3ZlVHJlZS5jcHAgXAorICAgICAgICAgICAg
JCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1NlYXJjaFN5bWJvbC5jcHAgXAorICAgICAgICAgICAg
JCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1NoYWRlckxhbmcuY3BwIFwKKyAgICAgICAgICAgICQk
QU5HTEVfRElSL3NyYy9jb21waWxlci9TeW1ib2xUYWJsZS5jcHAgXAorICAgICAgICAgICAgJCRB
TkdMRV9ESVIvc3JjL2NvbXBpbGVyL1RyYW5zbGF0b3JFU1NMLmNwcCBcCisgICAgICAgICAgICAk
JEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVHJhbnNsYXRvckdMU0wuY3BwIFwKKyAgICAgICAgICAg
ICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9UcmFuc2xhdG9ySExTTC5jcHAgXAorICAgICAgICAg
ICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL1VuZm9sZFNlbGVjdC5jcHAgXAorICAgICAgICAg
ICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBpbGVyL3V0aWwuY3BwIFwKKyAgICAgICAgICAgICQkQU5H
TEVfRElSL3NyYy9jb21waWxlci9WYWxpZGF0ZUxpbWl0YXRpb25zLmNwcCBcCisgICAgICAgICAg
ICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVmFyaWFibGVJbmZvLmNwcCBcCisgICAgICAgICAg
ICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvVmVyc2lvbkdMU0wuY3BwCisKKyAgICAgICAgU09V
UkNFUyArPSBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvcHJlcHJvY2Vz
c29yL2F0b20uYyBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMvY29tcGlsZXIvcHJlcHJv
Y2Vzc29yL2NwcC5jIFwKKyAgICAgICAgICAgICQkQU5HTEVfRElSL3NyYy9jb21waWxlci9wcmVw
cm9jZXNzb3IvY3Bwc3RydWN0LmMgXAorICAgICAgICAgICAgJCRBTkdMRV9ESVIvc3JjL2NvbXBp
bGVyL3ByZXByb2Nlc3Nvci9tZW1vcnkuYyBcCisgICAgICAgICAgICAkJEFOR0xFX0RJUi9zcmMv
Y29tcGlsZXIvcHJlcHJvY2Vzc29yL3NjYW5uZXIuYyBcCisgICAgICAgICAgICAkJEFOR0xFX0RJ
Ui9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3N5bWJvbHMuYyBcCisgICAgICAgICAgICAkJEFO
R0xFX0RJUi9zcmMvY29tcGlsZXIvcHJlcHJvY2Vzc29yL3Rva2Vucy5jCisKKyAgICAgICAgKmcr
KyogeworICAgICAgICAgICAgQU5HTEVfQ0ZMQUdTICs9IC1Xbm8tdW51c2VkLXZhcmlhYmxlCisg
ICAgICAgICAgICBBTkdMRV9DRkxBR1MgKz0gLVduby1taXNzaW5nLW5vcmV0dXJuCisgICAgICAg
ICAgICBBTkdMRV9DRkxBR1MgKz0gLVduby11bnVzZWQtZnVuY3Rpb24KKyAgICAgICAgICAgIEFO
R0xFX0NGTEFHUyArPSAtV25vLXJlb3JkZXIKKworICAgICAgICAgICAgYW5nbGVfY3h4LmNvbW1h
bmRzID0gJCRRTUFLRV9DWFggLWMgJChDWFhGTEFHUykgJCRBTkdMRV9DRkxBR1MgJChJTkNQQVRI
KSAke1FNQUtFX0ZJTEVfSU59IC1vICR7UU1BS0VfRklMRV9PVVR9CisgICAgICAgICAgICBhbmds
ZV9jeHgub3V0cHV0ICA9ICQkT0JKRUNUU19ESVIvJHtRTUFLRV9GSUxFX0JBU0V9JCRRTUFLRV9F
WFRfT0JKCisgICAgICAgICAgICBhbmdsY19jeHguZGVwZW5kZW5jeV90eXBlID0gVFlQRV9DCisg
ICAgICAgICAgICBhbmdsZV9jeHguZGVwZW5kcyA9ICQkQU5HTEVfSEVBREVSUworICAgICAgICAg
ICAgYW5nbGVfY3h4LmlucHV0ID0gQU5HTEVfU09VUkNFUworICAgICAgICAgICAgUU1BS0VfRVhU
UkFfQ09NUElMRVJTICs9IGFuZ2xlX2N4eAorICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAg
U09VUkNFUyArPSAkJEFOR0xFX1NPVVJDRVMKKyAgICAgICAgfQorICAgIH0KKwogICAgIENPTkZJ
RyArPSBvcGVuZ2wtc2hpbXMKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvQU5HTEVXZWJLaXRCcmlkZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0FOR0xFV2ViS2l0QnJpZGdlLmgKaW5kZXggYTlkMjIzOC4uMGY0YmY3ZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQU5HTEVXZWJLaXRCcmlk
Z2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9BTkdMRVdlYktpdEJy
aWRnZS5oCkBAIC0yOSw3ICsyOSw5IEBACiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKICNp
bmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAKLSNpZiAhUExBVEZPUk0oR1RLKQorI2lmIFBM
QVRGT1JNKFFUKQorI2luY2x1ZGUgIkFOR0xFL2luY2x1ZGUvR0xTTEFORy9TaGFkZXJMYW5nLmgi
CisjZWxpZiAhUExBVEZPUk0oR1RLKQogI2luY2x1ZGUgIkFOR0xFL1NoYWRlckxhbmcuaCIKICNl
bHNlCiAjaW5jbHVkZSAiU2hhZGVyTGFuZy5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0M0QuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dDNELmgKaW5kZXggNWU0N2VmMy4uZjg2YTJm
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3ND
b250ZXh0M0QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHQzRC5oCkBAIC00Myw3ICs0Myw3IEBACiAjdW5kZWYgVkVSU0lPTgogI2VuZGlmCiAK
LSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEdUSykKKyNpZiBQTEFURk9STShNQUMpIHx8
IFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oUVQpCiAjaW5jbHVkZSAiQU5HTEVXZWJLaXRCcmlk
Z2UuaCIKICNlbmRpZgogCkBAIC01MDEsNyArNTAxLDcgQEAgcHVibGljOgogCiAgICAgUGFzc1Jl
ZlB0cjxEcmF3aW5nQnVmZmVyPiBjcmVhdGVEcmF3aW5nQnVmZmVyKGNvbnN0IEludFNpemUmID0g
SW50U2l6ZSgpKTsKICAgICAKLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKENIUk9NSVVN
KSB8fCBQTEFURk9STShHVEspCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShDSFJPTUlV
TSkgfHwgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShRVCkKICAgICAvLyBXaXRoIG11bHRpc2Ft
cGxpbmcgb24sIGJsaXQgZnJvbSBtdWx0aXNhbXBsZUZCTyB0byByZWd1bGFyIEZCTy4KICAgICB2
b2lkIHByZXBhcmVUZXh0dXJlKCk7CiAjZW5kaWYKQEAgLTg4OSw3ICs4ODksNyBAQCBwdWJsaWM6
CiAgICAgICAgICAgICAgICAgICAgIEFscGhhT3AgYWxwaGFPcCwKICAgICAgICAgICAgICAgICAg
ICAgdm9pZCogZGVzdGluYXRpb25EYXRhKTsKIAotI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZP
Uk0oR1RLKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShR
VCkKICAgICAvLyBUYWtlIGludG8gYWNjb3VudCB0aGUgdXNlcidzIHJlcXVlc3RlZCBjb250ZXh0
IGNyZWF0aW9uIGF0dHJpYnV0ZXMsCiAgICAgLy8gaW4gcGFydGljdWxhciBzdGVuY2lsIGFuZCBh
bnRpYWxpYXMsIGFuZCBkZXRlcm1pbmUgd2hpY2ggY291bGQgb3IKICAgICAvLyBjb3VsZCBub3Qg
YmUgaG9ub3JlZCBiYXNlZCBvbiB0aGUgY2FwYWJpbGl0aWVzIG9mIHRoZSBPcGVuR0wKQEAgLTkx
NywxMyArOTE3LDEyIEBAIHB1YmxpYzoKICAgICB9IFNoYWRlclNvdXJjZUVudHJ5OwogICAgIEhh
c2hNYXA8UGxhdGZvcm0zRE9iamVjdCwgU2hhZGVyU291cmNlRW50cnk+IG1fc2hhZGVyU291cmNl
TWFwOwogCisgICAgQU5HTEVXZWJLaXRCcmlkZ2UgbV9jb21waWxlcjsKICNpZiBQTEFURk9STShR
VCkKICAgICBmcmllbmQgY2xhc3MgRXh0ZW5zaW9uczNEUXQ7CiAgICAgT3duUHRyPEV4dGVuc2lv
bnMzRFF0PiBtX2V4dGVuc2lvbnM7CiAjZWxzZQogICAgIGZyaWVuZCBjbGFzcyBFeHRlbnNpb25z
M0RPcGVuR0w7Ci0gICAgQU5HTEVXZWJLaXRCcmlkZ2UgbV9jb21waWxlcjsKLQogICAgIE93blB0
cjxFeHRlbnNpb25zM0RPcGVuR0w+IG1fZXh0ZW5zaW9uczsKICNlbmRpZgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0
M0RPcGVuR0wuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dy
YXBoaWNzQ29udGV4dDNET3BlbkdMLmNwcAppbmRleCBmZDcyMDczLi5kMjM2MzE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250
ZXh0M0RPcGVuR0wuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29w
ZW5nbC9HcmFwaGljc0NvbnRleHQzRE9wZW5HTC5jcHAKQEAgLTI1LDYgKzI1LDEwIEBACiAKICNp
bmNsdWRlICJjb25maWcuaCIKIAorI2lmIFBMQVRGT1JNKFFUKQorI2luY2x1ZGUgPFF0R2xvYmFs
PgorI2VuZGlmCisKICNpZiBFTkFCTEUoV0VCR0wpCiAKICNpbmNsdWRlICJHcmFwaGljc0NvbnRl
eHQzRC5oIgpAQCAtNTAsNiArNTQsOCBAQAogI2luY2x1ZGUgPE9wZW5HTC9nbC5oPgogI2VsaWYg
UExBVEZPUk0oR1RLKQogI2luY2x1ZGUgIk9wZW5HTFNoaW1zLmgiCisjZWxpZiBQTEFURk9STShR
VCkKKyNpbmNsdWRlIDxjYWlyby9PcGVuR0xTaGltcy5oPgogI2VuZGlmCiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKQEAgLTExNiw2ICsxMjIsNyBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpyZWFk
UmVuZGVyaW5nUmVzdWx0cyh1bnNpZ25lZCBjaGFyICpwaXhlbHMsIGludCBwaXhlbHNTaQogICAg
ICAgICA6OmdsQmluZEZyYW1lYnVmZmVyRVhUKEdMX0ZSQU1FQlVGRkVSX0VYVCwgbV9ib3VuZEZC
Tyk7CiB9CiAKKyNpZiAhUExBVEZPUk0oUVQpCiB2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpwYWlu
dFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZhcyhDYW52YXNSZW5kZXJpbmdDb250ZXh0KiBjb250ZXh0
KQogewogICAgIEhUTUxDYW52YXNFbGVtZW50KiBjYW52YXMgPSBjb250ZXh0LT5jYW52YXMoKTsK
QEAgLTE0Miw2ICsxNDksNyBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpwYWludFJlbmRlcmlu
Z1Jlc3VsdHNUb0NhbnZhcyhDYW52YXNSZW5kZXJpbmdDb250ZXh0KiBjbwogICAgIHBhaW50VG9D
YW52YXMocGl4ZWxzLmdldCgpLCBtX2N1cnJlbnRXaWR0aCwgbV9jdXJyZW50SGVpZ2h0LAogICAg
ICAgICAgICAgICAgICAgY2FudmFzLT53aWR0aCgpLCBjYW52YXMtPmhlaWdodCgpLCBpbWFnZUJ1
ZmZlci0+Y29udGV4dCgpLT5wbGF0Zm9ybUNvbnRleHQoKSk7CiB9CisjZW5kaWYKIAogUGFzc1Jl
ZlB0cjxJbWFnZURhdGE+IEdyYXBoaWNzQ29udGV4dDNEOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNU
b0ltYWdlRGF0YSgpCiB7CkBAIC0xNTE1LDEyICsxNTIzLDE0IEBAIGJvb2wgR3JhcGhpY3NDb250
ZXh0M0Q6OmxheWVyQ29tcG9zaXRlZCgpIGNvbnN0CiAgICAgcmV0dXJuIG1fbGF5ZXJDb21wb3Np
dGVkOwogfQogCisjaWYgIVBMQVRGT1JNKFFUKQogRXh0ZW5zaW9uczNEKiBHcmFwaGljc0NvbnRl
eHQzRDo6Z2V0RXh0ZW5zaW9ucygpCiB7CiAgICAgaWYgKCFtX2V4dGVuc2lvbnMpCiAgICAgICAg
IG1fZXh0ZW5zaW9ucyA9IGFkb3B0UHRyKG5ldyBFeHRlbnNpb25zM0RPcGVuR0wodGhpcykpOwog
ICAgIHJldHVybiBtX2V4dGVuc2lvbnMuZ2V0KCk7CiB9CisjZW5kaWYKIAogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0NvbnRleHQz
RFF0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29u
dGV4dDNEUXQuY3BwCmluZGV4IGQxMTZiYWYuLjdlNDE4NzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzQ29udGV4dDNEUXQu
Y3BwCkBAIC0yNzAsNyArMjcwLDcgQEAgR3JhcGhpY3NDb250ZXh0M0Q6OkdyYXBoaWNzQ29udGV4
dDNEKEdyYXBoaWNzQ29udGV4dDNEOjpBdHRyaWJ1dGVzIGF0dHJzLCBIb3N0V2kKICAgICAsIG1f
bGF5ZXJDb21wb3NpdGVkKGZhbHNlKQogICAgICwgbV9pbnRlcm5hbENvbG9yRm9ybWF0KDApCiAg
ICAgLCBtX2JvdW5kRkJPKDApCi0gICAgLCBtX2FjdGl2ZVRleHR1cmUoMCkKKyAgICAsIG1fYWN0
aXZlVGV4dHVyZShHTF9URVhUVVJFMCkKICAgICAsIG1fYm91bmRUZXh0dXJlMCgwKQogICAgICwg
bV9tdWx0aXNhbXBsZUZCTygwKQogICAgICwgbV9tdWx0aXNhbXBsZURlcHRoU3RlbmNpbEJ1ZmZl
cigwKQpAQCAtMzIwLDYgKzMyMCwyNCBAQCBHcmFwaGljc0NvbnRleHQzRDo6R3JhcGhpY3NDb250
ZXh0M0QoR3JhcGhpY3NDb250ZXh0M0Q6OkF0dHJpYnV0ZXMgYXR0cnMsIEhvc3RXaQogICAgIG1f
Ym91bmRGQk8gPSBtX2ZibzsKICAgICBnbEJpbmRGcmFtZWJ1ZmZlcihHcmFwaGljc0NvbnRleHQz
RDo6RlJBTUVCVUZGRVIsIG1fZmJvKTsKICAgICBnbENsZWFyQ29sb3IoMC4wLCAwLjAsIDAuMCwg
MC4wKTsKKworI2lmICFkZWZpbmVkKFFUX09QRU5HTF9FU18yKQorICAgIC8vIEFOR0xFIGluaXRp
YWxpemF0aW9uLgorICAgIFNoQnVpbHRJblJlc291cmNlcyBBTkdMRVJlc291cmNlczsKKyAgICBT
aEluaXRCdWlsdEluUmVzb3VyY2VzKCZBTkdMRVJlc291cmNlcyk7CisKKyAgICBnZXRJbnRlZ2Vy
dihHcmFwaGljc0NvbnRleHQzRDo6TUFYX1ZFUlRFWF9BVFRSSUJTLCAmQU5HTEVSZXNvdXJjZXMu
TWF4VmVydGV4QXR0cmlicyk7CisgICAgZ2V0SW50ZWdlcnYoR3JhcGhpY3NDb250ZXh0M0Q6Ok1B
WF9WRVJURVhfVU5JRk9STV9WRUNUT1JTLCAmQU5HTEVSZXNvdXJjZXMuTWF4VmVydGV4VW5pZm9y
bVZlY3RvcnMpOworICAgIGdldEludGVnZXJ2KEdyYXBoaWNzQ29udGV4dDNEOjpNQVhfVkFSWUlO
R19WRUNUT1JTLCAmQU5HTEVSZXNvdXJjZXMuTWF4VmFyeWluZ1ZlY3RvcnMpOworICAgIGdldElu
dGVnZXJ2KEdyYXBoaWNzQ29udGV4dDNEOjpNQVhfVkVSVEVYX1RFWFRVUkVfSU1BR0VfVU5JVFMs
ICZBTkdMRVJlc291cmNlcy5NYXhWZXJ0ZXhUZXh0dXJlSW1hZ2VVbml0cyk7CisgICAgZ2V0SW50
ZWdlcnYoR3JhcGhpY3NDb250ZXh0M0Q6Ok1BWF9DT01CSU5FRF9URVhUVVJFX0lNQUdFX1VOSVRT
LCAmQU5HTEVSZXNvdXJjZXMuTWF4Q29tYmluZWRUZXh0dXJlSW1hZ2VVbml0cyk7IAorICAgIGdl
dEludGVnZXJ2KEdyYXBoaWNzQ29udGV4dDNEOjpNQVhfVEVYVFVSRV9JTUFHRV9VTklUUywgJkFO
R0xFUmVzb3VyY2VzLk1heFRleHR1cmVJbWFnZVVuaXRzKTsKKyAgICBnZXRJbnRlZ2VydihHcmFw
aGljc0NvbnRleHQzRDo6TUFYX0ZSQUdNRU5UX1VOSUZPUk1fVkVDVE9SUywgJkFOR0xFUmVzb3Vy
Y2VzLk1heEZyYWdtZW50VW5pZm9ybVZlY3RvcnMpOworCisgICAgLy8gQWx3YXlzIHNldCB0byAx
IGZvciBPcGVuR0wgRVMuCisgICAgQU5HTEVSZXNvdXJjZXMuTWF4RHJhd0J1ZmZlcnMgPSAxOwor
ICAgIG1fY29tcGlsZXIuc2V0UmVzb3VyY2VzKEFOR0xFUmVzb3VyY2VzKTsKKyNlbmRpZgogfQog
CiBHcmFwaGljc0NvbnRleHQzRDo6fkdyYXBoaWNzQ29udGV4dDNEKCkKQEAgLTM2Myw2ICszODEs
NyBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpwYWludFJlbmRlcmluZ1Jlc3VsdHNUb0NhbnZh
cyhDYW52YXNSZW5kZXJpbmdDb250ZXh0KiBjbwogICAgIG1faW50ZXJuYWwtPnBhaW50KHBhaW50
ZXIsIDAsIDApOwogfQogCisjaWYgZGVmaW5lZChRVF9PUEVOR0xfRVNfMikKIFBhc3NSZWZQdHI8
SW1hZ2VEYXRhPiBHcmFwaGljc0NvbnRleHQzRDo6cGFpbnRSZW5kZXJpbmdSZXN1bHRzVG9JbWFn
ZURhdGEoKQogewogICAgIC8vIEZJWE1FOiBUaGlzIG5lZWRzIHRvIGJlIGltcGxlbWVudGVkIGZv
ciBwcm9wZXIgbm9uLXByZW11bHRpcGxpZWQtYWxwaGEKQEAgLTE0NzYsNiArMTQ5NSw3IEBAIGJv
b2wgR3JhcGhpY3NDb250ZXh0M0Q6OmxheWVyQ29tcG9zaXRlZCgpIGNvbnN0CiB7CiAgICAgcmV0
dXJuIG1fbGF5ZXJDb21wb3NpdGVkOwogfQorI2VuZGlmCiAKIEV4dGVuc2lvbnMzRCogR3JhcGhp
Y3NDb250ZXh0M0Q6OmdldEV4dGVuc2lvbnMoKQogewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>