ELF@P@8 @@@@88888((($0$(((TTTDDPtd4h4h4hQtdRtd(((""/lib/ld-linux-aarch64.so.1GNU.a i~LԠ;GNUA$/w(ǗHZ[ĕ (} kpg 7sNii] z  ~ T\Z %&  | " ?h C,   =w   ~V To 0 }L , P > d Gao J{PVq'G>s rR9VR 2  ,x.1K&$,do gr;  Kzi"Ci=U  {Q1T g>Q X 2F%) >|l+j]G; /" p" o" " m7" l _ITM_deregisterTMCloneTable__gmon_start___ITM_registerTMCloneTablev4l2_writev4l2_munmapv4l2_openv4l2_ioctlv4l2_closev4l2_readv4l2_mmapglGenVertexArraysglGetQueryObjectuivglGenQueriesglEndQueryglBindVertexArrayglDeleteQueriesglBeginQuery_ZN5QFileD1Ev_ZN15QSocketNotifierC1ExNS_4TypeEP7QObject_ZN9QIODevice4readEPcx_ZN9QListData7disposeEPNS_4DataE_ZN7QObject7connectEPKS_PKcS1_S3_N2Qt14ConnectionTypeE_ZN10QArrayData10deallocateEPS_mm_ZN7QObject11eventFilterEPS_P6QEvent_ZNK5QFile4sizeEv_ZNK7QString3argERKS_i5QChar_ZN7QObject11customEventEP6QEvent_ZN7QString6appendERKS__ZN7QObject10childEventEP11QChildEvent_ZNK11QObjectData17dynamicMetaObjectEv_Z9qt_assertPKcS0_i_ZN7QString13toUtf8_helperERKS__ZN5QFile11setFileNameERK7QString_ZN6QTimerC1EP7QObject_ZNK7QString3argEyii5QChar_ZN8QVariantD1Ev_ZN10QByteArrayC1EPKci_ZNK7QString3argExii5QChar_ZN6QTimer5startEi_ZN11QFileDevice4seekEx_ZNK7QString7indexOfE5QChariN2Qt15CaseSensitivityE_ZN5QFileC1Ev_ZNK7QString5toIntEPbi_ZNK7QString8toDoubleEPb_ZN6QTimer11setIntervalEi_ZN16QCoreApplication9argumentsEv_ZN7QString16fromAscii_helperEPKci_ZN8QVariantC1Ei_ZN8QVariantC1Ej_ZNK8QVariant3cmpERKS__ZN11QMetaObject10ConnectionD1Ev_ZNK9QIODevice6isOpenEv_ZNK7QString10startsWithERKS_N2Qt15CaseSensitivityE_ZN7QObject16disconnectNotifyERK11QMetaMethod_ZN7QObject13connectNotifyERK11QMetaMethod_ZN10QByteArray11reallocDataEj6QFlagsIN10QArrayData16AllocationOptionEE_Z13qFlagLocationPKc_Z21qRegisterResourceDataiPKhS0_S0__ZNK8QVariant5toIntEPb_Z23qUnregisterResourceDataiPKhS0_S0__ZNK7QString6toUIntEPbi_ZN5QFile4openE6QFlagsIN9QIODevice12OpenModeFlagEE_ZN7QString14compare_helperEPK5QChariPKciN2Qt15CaseSensitivityE_ZN7QString15fromUtf8_helperEPKci_ZN16QCoreApplication4quitEv_ZNK11QFileDevice3posEv_ZN7QObject10timerEventEP11QTimerEvent_Z11qt_assert_xPKcS0_S0_i_ZN7QStringaSERKS__ZNK7QString3midEii_ZN9QListData6detachEi_ZN10QArrayData11shared_nullE_ZN14QSurfaceFormat16setDefaultFormatERKS__ZN20QOpenGLShaderProgram15setUniformValueEii_ZN14QSurfaceFormatD1Ev_ZN16QOpenGLFunctionsC2Ev_ZNK14QOpenGLContext10isOpenGLESEv_ZN20QOpenGLShaderProgramC1EP7QObject_ZN20QOpenGLShaderProgram23addShaderFromSourceCodeE6QFlagsIN13QOpenGLShader13ShaderTypeBitEERK7QString_ZN14QSurfaceFormat10setProfileENS_20OpenGLContextProfileE_ZN14QSurfaceFormat17setRenderableTypeENS_14RenderableTypeE_ZN15QGuiApplication25setApplicationDisplayNameERK7QString_ZN14QSurfaceFormatC1Ev_ZNK14QOpenGLContext12hasExtensionERK10QByteArray_ZN20QOpenGLShaderProgram4bindEv_ZN20QOpenGLShaderProgram16removeAllShadersEv_ZN14QSurfaceFormat18setDepthBufferSizeEi_ZNK6QColor3redEv_ZNK9QKeyEvent9modifiersEv_ZN14QSurfaceFormat10setVersionEii_ZNK6QColor4blueEv_ZNK20QOpenGLShaderProgram15uniformLocationEPKc_ZN5QIconD1Ev_ZNK6QColor5greenEv_ZNK8QPalette5brushENS_10ColorGroupENS_9ColorRoleE_ZN5QIconC1ERK7QString_ZN16QOpenGLFunctions25initializeOpenGLFunctionsEv_ZN13QOpenGLWidget16staticMetaObjectE_ZN7QWidget13dragMoveEventEP14QDragMoveEvent_ZNK7QWidget15minimumSizeHintEv_ZNK7QWidget13sharedPainterEv_ZN7QWidget11changeEventEP6QEvent_ZN7QWidget15keyReleaseEventEP9QKeyEvent_ZNK13QOpenGLWidget11paintEngineEv_ZN13QOpenGLWidget9setFormatERK14QSurfaceFormat_ZN7QWidget14setFocusPolicyEN2Qt11FocusPolicyE_ZNK7QWidget11initPainterEP8QPainter_ZThn16_NK13QOpenGLWidget6metricEN12QPaintDevice17PaintDeviceMetricE_ZNK7QWidget7actionsEv_ZN7QWidget13keyPressEventEP9QKeyEvent_ZN7QWidget9hideEventEP10QHideEvent_ZN11QScrollArea12setAlignmentE6QFlagsIN2Qt13AlignmentFlagEE_ZN7QWidget14setMinimumSizeEii_ZN13QOpenGLWidget11qt_metacastEPKc_ZN7QWidget18focusNextPrevChildEb_ZN7QWidget6updateEv_ZNK7QWidget17hasHeightForWidthEv_ZN12QActionGroup9addActionEP7QAction_ZN7QWidget9showEventEP10QShowEvent_ZN5QMenu7addMenuEPS__ZN6QFrame13setFrameShapeENS_5ShapeE_ZNK13QOpenGLWidget7contextEv_ZN13QOpenGLWidget11makeCurrentEv_ZTI13QOpenGLWidget_ZN11QScrollArea18setWidgetResizableEb_ZN7QWidget9addActionEP7QAction_ZN13QOpenGLWidget5eventEP6QEvent_ZN5QMenuC1ERK7QStringP7QWidget_ZN13QOpenGLWidget11qt_metacallEN11QMetaObject4CallEiPPv_ZN7QWidget10enterEventEP6QEvent_ZN7QWidget11tabletEventEP12QTabletEvent_ZNK7QWidget12isFullScreenEv_ZNK7QWidget16inputMethodQueryEN2Qt16InputMethodQueryE_ZThn16_NK7QWidget11initPainterEP8QPainter_ZN7QAction10setCheckedEb_ZThn16_NK7QWidget7devTypeEv_ZN7QWidget15mousePressEventEP11QMouseEvent_ZNK7QAction9isCheckedEv_ZN7QWidget4showEv_ZNK7QWidget7devTypeEv_ZN7QWidget14showFullScreenEv_ZN11QScrollAreaC1EP7QWidget_ZN5QMenuC1EP7QWidget_ZN7QWidget14mouseMoveEventEP11QMouseEvent_ZN7QWidget16setSizeIncrementEii_ZNK7QWidget14backgroundRoleEv_ZNK7QWidget6windowEv_ZN7QWidget16inputMethodEventEP17QInputMethodEvent_ZThn16_NK13QOpenGLWidget11paintEngineEv_ZN7QWidget10leaveEventEP6QEvent_ZN7QWidget6resizeERK5QSize_ZN5QMenu4execERK6QPointP7QAction_ZNK11QScrollArea15widgetResizableEv_ZN7QActionC1ERK7QStringP7QObject_ZN12QApplication13setWindowIconERK5QIcon_ZN13QOpenGLWidgetC2EP7QWidget6QFlagsIN2Qt10WindowTypeEE_ZN7QWidget13focusOutEventEP11QFocusEvent_ZN7QWidget11actionEventEP12QActionEvent_ZThn16_NK7QWidget13sharedPainterEv_ZN13QOpenGLWidget11resizeEventEP12QResizeEvent_ZN7QWidget10closeEventEP11QCloseEvent_ZN5QMenuD1Ev_ZN7QWidget9dropEventEP10QDropEvent_ZN13QOpenGLWidget10paintEventEP11QPaintEvent_ZThn16_NK13QOpenGLWidget10redirectedEP6QPoint_ZNK7QAction4dataEv_ZN7QWidget11nativeEventERK10QByteArrayPvPl_ZN7QWidget17mouseReleaseEventEP11QMouseEvent_ZN5QMenu9addActionERK7QString_ZN7QWidget10setVisibleEb_ZNK13QOpenGLWidget10redirectedEP6QPoint_ZNK7QWidget7paletteEv_ZN12QApplicationC1ERiPPci_ZNK7QWidget8sizeHintEv_ZN12QApplication4execEv_ZN7QAction7setDataERK8QVariant_ZN12QApplicationD1Ev_ZN7QWidget12focusInEventEP11QFocusEvent_ZN7QAction12setCheckableEb_ZN7QWidget14dragLeaveEventEP15QDragLeaveEvent_ZN12QActionGroupC1EP7QObject_ZN7QWidget10wheelEventEP11QWheelEvent_ZN7QWidget9moveEventEP10QMoveEvent_ZN11QScrollArea9setWidgetEP7QWidget_ZNK7QWidget14heightForWidthEi_ZNK13QOpenGLWidget6metricEN12QPaintDevice17PaintDeviceMetricE_ZN7QWidget10showNormalEv_ZN7QWidget14dragEnterEventEP15QDragEnterEvent_ZN13QOpenGLWidgetD2Ev_ZTVN10__cxxabiv121__vmi_class_type_infoE_ZSt20__throw_length_errorPKc_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_appendEPKcm_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE15_M_replace_coldEPcmPKcmm_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm_Znam_ZTVN10__cxxabiv117__class_type_infoE_ZdlPv__gxx_personality_v0_ZdaPv_Znwm_ZSt24__throw_out_of_range_fmtPKcz_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv_ZSt19__throw_logic_errorPKc_Unwind_Resumesetsockoptputsperrorstrncpy__strcpy_chk__stack_chk_fail__printf_chkfreebindputcharmemmovemmap64socket__getauxvalstrlenrand__cxa_atexit__sprintf_chk__fprintf_chkmalloc__libc_start_mainstderrlisten__cxa_finalize__open64_2strerrorcallocacceptmemcmpmemsetmemcpyfwritestrcmp__errno_locationabort__stack_chk_guardlibv4l2.so.0libGL.so.1libQt5Core.so.5libQt5Gui.so.5libQt5Widgets.so.5libstdc++.so.6libgcc_s.so.1libc.so.6ld-linux-aarch64.so.1GLIBC_2.17GCC_3.0Qt_5CXXABI_1.3GLIBCXX_3.4GLIBCXX_3.4.20GLIBC_2.34$ORIGIN/../../lib/libv4l2:$ORIGIN/../../lib/libv4lconvert   o  W P&y & %H@ӯkt)p %e0 5%(`08@@H\X`hxxء 8Ph(8HȢXhx(@XpУ(80HHX`hxxؤ 8Ph(8HȥXhx(@XpЦ(80HHX`hxxا 8Ph(8HȨXhx(@XpЩ(8(H8XHh`xx8Xp(8ȫHXhx(@Xpج((@8XHpXhxȭ8 0 80H@XPhpX` x@8PH`PpXx (@P`px(x @xP`p 0@P(`8pP`hpx0 @0XP`pȮ 0@P `8pHXp 0@`p 08@HXp 0@X`PhXp`x(8HXhx ((@0PHXXpx@P@-@.@`XY./8@@dHXP`0.h.PLO(k lx`D lXP 08)H3PXED3`@(9@`@@đ@@$0@8lH `,o(` )Q(PBp-x@J@L +LLJ D0m8`XpxH&l`9h  @%(H@4P`x@G@&@@8 * `(DA8@Xpp !D@-KmL`8/Hd` X 0HhP`Xh6`h$p0@ 5@ (08@HPX`PhpxPpx@%%Ph|\Ph (r0:8HP`hMpxk=6[A?; (d0pfxWHp      (@`hpx !"#$&'()* +(,0-8.H/P0X1h2p3x45789<>@BCDEFG I(J@KPLXNhOpQxRSTUVXYZ]^_ `0a8b@cHeXg`ihjlmnopqstuwxy z({@}H~P`h08HXhp0HP`hx (0@PXhpx (8@x6:;=?AH M(P0W8[@\HdPfXh`khrpvx (08@HPX` {{_{^B    հbB ְfB" ְjBB ְnBb ְrB ְvB ְzB ְ~B ְB ְB" ְBB ְBb ְB ְB ְB ְB ְB ְB" ְBB ְBb ְB ְB ְB ְB ְB ְB" ְBB ְBb ְB ְB ְB ְB ְB ְB" ְBB ְBb ְB ְB ְB ְB ְC ְC" ְ CB ְCb ְC ְC ְC ְC ְ"C ְ&C" ְ*CB ְ.Cb ְ2C cDG{a`!`bR`?{S[_TT`@9 9c`C`?VT`aT`jv8`j48c`C`?֟ITb_TT@9`91bC&_T˖˵aT`ju8`9 VT@9`9c`C`?ւ`a_T`jt8`j68 &D@SA[B{Ĩ@SA[B{Ĩ_֣cDG{a`!`KR`?֣cDG{a`!`bNR`?֣cDG{a`!`OR`?֣cDG{a`!`eR`?֣cDG{a`!`vR`?֣cDG{a`!`BR`?֣cDG{a`!`"R`?֣cDG{a`!`"R`?֣cDG{a`!`BR`?֣cDG{a`!bR`?֤$E{ЀB`9!9@:GR?֠F{?{.GB  ! { S[cks3c-G;Rrs@Ҥ4D?֡!E ?֢BpE7@?֡!E+ ?ֳsC!2s`?֣cCCF(R/c`?c c B0  c*'!RhfaRa?SRD#? R37;!}?)})}?)})_`?֢B\E3@?֡!C ?֡!G ?D#?֡! ?֡!hG ??֠HD?@3RA)KkMjT3!D)))b)`RVECRg +)))))@#b`6R@ @`41TnqT@AsA)KkJT*?֡!d7*?֢B!d6#b 6@<R @5 @A@`?A@sA)Kk T@@7<`4 qT@!R`Ba$Q?qT0qT(qTqT47?=R#C ??<` @ `|*?ֺB!#ya6@R?\R*?B!#c6@#Ac`7C#@ ?R!F ?'@{T!T!HE ?#@?@?+@!TG ?;@!G ?֠GT@B![T c-*3@SA[BcCkDsE{Ǩ_*?֢B@!`0a`6|RM*C?֡!}c 7*C?֡!tc@r6C#c6SAAROAxrSB5OR,S#c7@cF?A`?/*+@RBD@?S@m7W@t7BD!R+@@?֣cFbR*`?֡!C ?7@chC`?B9#9q`qTo4qTB`ECA@@?֢BCGA@?֢B DKA@?+@BD@?SA3AsB9?q#9q@qTC+@@+ 3@/ @3 @7 @; @? F֮C EOC9EZ3Eе>D2 q TqTBq C ?BkA(q(T q( Tq(TBq @ ? @bBB`AR@?@B@T?kAsB@T?֟ qT@@?A`?*@@?7B@(qT0q(T B0qHT BQBq 0QBq 04Q Bq 04Q Bq 0BBBE@@?֣cDR*`?֣cEBR*`?@еJG^*^3@?֢BCaR@?@qDzT;A!R%9w BCR7@@?֡!(G@ ?֢BF@?֢BGR@?@^*^?@BxG@?3@?֢BF!R@?֟ qcT5'@D_7A@[H@!+9^5AAP5 qTqPDzTД~DRRkTP!4'@~RqT{T*!@#RbR҄hz?`T{TP9a  h:kTPqT{T*@bRH8!@Bҥhz?՝5PP!G!@4CvU#W#    /@PKPR`? 'QWqTPc qTqTP4{Tq*!#!@T5 [Tax``4T@ :^5PkT@'@BG@?@BŠ?@D!,&^57@!HC ?֠G?*@!8E ?ax`DaTP4{T*C3BEB0@qmT'@b@@bTx`cRC6Ac@]*]**cF@" `?]B\D*" @?OAONkT!RO99@s"Fc@" `?@" o`?_AWC9g99B9k99C9o99#C9s99k@6JqT R 99cE9ci9?kT!Rc)999gi9@kT Rg)999@JkT R 99@?1TJ?kT R 99@!G ?waR+3)))))))))s@#! '?֣cE@BR`?D9:6?@!`'?ֶVF3@RR?CRR?#@3@??@?#@@@nD??@3@?3@еD?oB@BR`?C*#S97sB ?#9_7OCCA_C<_@<?R_C<4=R@sTcG`?@C O9ҁ !'@<=0 ]X5C+D?x17!R ra0T5ARjaT 7`07(787777rR@̊@!'\q"Ɋ! ('9\qĊ!(+9\qD/9$qyT(qTq\Sˊ@!(C \dqC393@sRC`?O7D R?jT@tD ]@"\+@@R5@RsGk\k2TcZdC5SRShrB?(qhoT? qT?quTA4J9"$Q'QRRR  %5?qT? qh$TqAz㇟_qTk#T*|?i$+@ARB4E@?֖*C?ւB!_6#N^6wLC{sGRFDJB9|cc#c@J(jB(kTFqT qT!5a7a@4RQqTa5!R7Rc@RkT*Fi>DhB9|cccJDcNFq(T qT!5(_ q T@ B)q@q$Qq) T640qT(qT qATRb @cJDaB9c|c(qIT0qT4QqTB657b@b5RHb@?kTRb @RcB9|BQqTn&F97"F9a7az@&F97"F9$Q7az@R#RR#RRRR*`c@$Q2@?kaTB9c@?kaTa4a@"Rzb9f@a54"Ra@f@zb9:@_q@TaB9dJDa@*f@5a@*f@wR9)a@f@a@f@a@f@5$Q_qT*bH! D "Cс!G{CcSc@9[ @'`:@b6q`T4B)!LC#`A ?ց!E`A@ ?@rG!! @R?@T!Ta6@'F9*@06k@?q(MTw4.@qITI4b.@_q)ETB$Q_qDTB9D43F96k@qIxT$QqxT39E96ckk@(qOT qlTq)lTQq(T`@yqA|T!D  ?փk@ qTTqhTRC4bA)!ЗrG!@R?րk@ q`ThTqT4`@!T#@OAÊĎ@ C`B9q`T`C9oq2T1T!$Q?qvT@? q`-T?q -T?q|S A?1`vT!$Q?qT"@ ";@3!$Q?qT52505N@R@R{a!D   ?? qT;@#@ R9ŠÎ@`?@*&5qwTa!E6@a!C ?f0EAR#"cB R?֡@cUa!E6@a!C ?f0E#"cB RAR?z qT RRQR   `B9kT~~*@6` @*!@R!?րk@qT qTQqTR55lRm$QqHT~~@5`  @d0qHT(qiTc@!R!@R?րk@qɉT$Qq T6RRc4QqTRRu5c@6RRFcQqTcD)`@c c|-cn@+$QR?qhT`B9 $QR?q(~T`C9#F9!}7qT@4`.@a!D ?@!@R!?$QR?q(vT`@0qT4QqhT` @R$Q R?knTvc$QqlTRRbRR6R6RRR qTbB)V`@b$QR?qsT`B9?0qT!4Q?qST QqT`@ha!D @ ?3a!D ` ?-!$Q?q Ta!E;@a!C ?f0E*#"c`B AR?ַ3F9_6a!ER8@a!C ?f0E*#"cB AR?ֲ$QR?q(T`B9!Q?qJTU? qLT@|S#Qq$Gz@b? qwT;@@ ;@R6RC|S|S`(D?@5qT1PT@? q` TH~T?q Ta 4@@bQxS_q dGz߀Ҁq@0cUa!ER7@a!C ?f0E*#"cB AR?Z`(D?@`5q T1AJTA4a!E7@a!C ?f0E*#"cB AR?ֻ9<wG4a!E7@a!C ?f0E*#"c B AR?)? qTB)a!E6@a!C ?f0E#"c B RAR? ҡa!ER7@a!C ?f0E*#"cB AR?ya!ER7@a!C ?f0E*#"c B AR?֘`Gck?a!E ?`G@@BaTa!D ?`G?O{a!GS[ck+# @v*D2=zZE~y9C~x3E~~~~qTC@q@T"@!ˊc@`?{@*@4?@5q T1T`G@@BT+@SA[BcCkD{ƨ_;4a!E4@a!C ?f0E*#"cB AR?S@ ?#c"RB AR?C@qT"@3Oa@,=!QÌ<Jn?b9?|МG! !R?a!CKC/?K@ @41Ttq T@@| ?bBF3@? aR?RK'a!xD!R+@?K@ @`41TNqT`G3R3˪r`F`$D;`Da!LC`EtД>D`G7`D?  C* ?@ $Ҡ?oA&T @ow@s~˿B9IT@c!!`B`?#_@A"T @_g@~c'@B9c* ?K@Tg@@T?@T@IT_ȭT@`?O A`T @OW@SC9@@T?_@@T?o@@T?@#@T?O@7@ ?*?K*B{K@ @41TqTO@@T?sG@5uеFtЀ"?ց" ?@@a!ER?a!F ? @ ?! AR?K/@`?K@ @@41TpqT@ ?3@@? aR?K'+@!R@?K@ @41TQq@T`G`D#`D   {a!8E @ ? @{¨p>D  bBG{CS@]C@bBxG@?bb@`aAcAbD@<cAP}c#@) @BKKB^bb`Gz{#~  xxba@@B!T{ASBpD`G?bBG{CSc[ck s @@'bBG|G@?aR`?y9C C ? @ @41T:q TwFv" !?‚"@@"?@{{ER`?zZF@?ЁR?  ? @ @` 41Tq T"`#?ւ"$?R`?@?`nDa!TC ?6avDuE?`bF97uVDaD?aD?aD?`&F9`7`"F96aD?aD?cc8D`?a!pF ?`G'@@BAT{ESF[GcHkIsJ_arD?a~DuVD?azDuE?aD? @ccDA`?r @ccDA`?֖aD?ֽa!pF ?`G'@@B`T`G?a!D ?a!D ?bBG{CS4R[@C@t:bBD@?bBD*@?6`Gtb9@@BAT{ASB[C_a!E4@a!lD ?@C@A@q)TccF!B@B|S`?@@4@a?\T@B cARd0E?a!PC ?a!F R ?a!PC ?`G@@B T`G?C@`TccDG!bR`?a!D ? a!G{ S [cksA#@_BA4a! G ?a!E ?bBC@?tFs u"%?&?eECR?a!Fs ?w`k@$Q?qI9TqTqhTqT4`@`wwFvC?7?`7ak@ $Qq)T`A?qT?q9T?qT4a@aKa!C ?`cF97y9cFu# `KBR8RQq T` D)a@ |?0qIT!4Q?q(Ta@aKa!C ?`cF9 56y9cFu# 8RRC ?*`{!?ցa{a+6t cctCJB`?`k@$Q?q)+T q`/TTQqhT`@nDrDq.T@g` A+zD! ~Dna zp@9! p9bBGx@?@` A+bBtEx@?`KA-5`;@qT`G_@@B5T@{LSM[NcOkPsQ_0q T4Qqi TwFwvC?ր6bBE@??6tfCuwA?ֿ Ta!ExwA5@?e0EAR*B ?ak@ $Qq(T`B9u# 4y9cFu# R`n@9?(q(TK $a!C ?`cF9@7y9cFu# Rt *JBf!Q?qTaD)b@! !|aK@`cF97y9cF*u# 8RRT(qiT`@ qTrDnDBxS@gzD! ~D` An zp@9! p9bBGx@?@` AbBtEx@?`;@qTssGc`WAa!EtE`z`@ ?`WA@bBLC`z`@?`Gca[A@e<?A!F ?R @{¨PF  AA4AA4PFRCBBDO{A!GS[#cksH@/#@ҿ2=#~~~~~~@?`j@$QqT&` tHAA!C ?֟`j@$QqT @E@LC@E@0E\F[{CZZ?D0 q Tq T@q @# ?@'@(qHT q( TqHT@q @ ?@7@B`AR?7@@T@?'@c@T@?@* ? @`N@?*`?ր7@@8@(qT0qT@#@ ?@'@(q T0qHT@Q@q 0Q@q 04Q@q 04Q@q 0R`D9k T*x@@`@A!HE ?@(qhT qTq TQ?q T@RR%RRRRR#E9E9E9R)S)@HC **?` @BBE@?A!G ?CctF*bN@`?BBFR@?@G@@BT@{VSW[XcYkZs[C_0qhT@4Q@q 04R)S)@V)@ q`T qTS)R@TДE??@G@@B@T@G?RTДEA!D ?{S@GaH9@ҡ6aNA`B?k( T`A+/"9` 4tJB45aj@u $QqT?q T?qT?qT4@6R*VTДDc?`5@̍R r?k@Ts? 53LR@ͪr7z?kaT;?y@?֠ 5@q TCcEDЄF&c@!Ҁ?3B7B;B?BA!F ?+B/B@GB@Ba*TSA{ƨ_`"H96`A+/"95A!G ?֢?0qT!4Q?qT@6R**b AHA!`F ?aj@`z4!$Q?qTB9kT~~*@6 @*?(qTR6R!Q?qHT D)6R@! |CcEDЄFc@!%?֪?֠43B7B;B?BRXE*W2E@B%AR?@4UеDRBK4`J@_qB?@6@*ARB&?3B7B{n@6R*+B/B3B7Bx? 5`j@RC$QGqT?LRͪr@zAT`@X@@?`5@qT?ր5?5#@*{ 4kTR" 4UеDkT cK`J@*C<?@6@EDЄ0EB&@AR?3B7B;B?BCBGB)R6RJ#@5'@`j@uqh T qH TQq TRZ5@@)BBF@?*A)*DЄG?`j@Z$QqiTaNA!aNA!D ?`JA4Q`J` 4+B/B3B7B;B?BCBGB*` xzaHB'@KkT5`D9kHT*d `@czcEХGHB?$Q?q(T@~ӡ@@: @RZ5@@(q(TRR0qIT4Qq(T @RCcEDЄFbc@!`'?@E*EХ0E*@ARB(?s@G+/37;?CG?A!F ?  CBBG{S##unDA@A!G ?BBlF@?*BBF?q@?A!F ?b_@]BBxG@?BBHG@?@G@@BҡT{BSC#@CPGA!F ?@G@@BҀT@G?A!D ?{CS@G[cxk s tj@@'ҟ"q TT qTR4SA)@QzS_qGz4V֢DzA?*?vbF9fYhZV 7*@?Hq ?TT? q`9TT? q@)T?q`6T?q3T`:@q DT`H96aNA`B?kT R`"9 @G'@@B&T{ESF[GcHkIsJ_@R r?k+TT?dqTHQ?k *T?`q.TCcdG*bA*FHFa"?A!(F`A ?@CcpG!#@R`?@TA!)T) ?**@SA!`){è@RPrG@SA{è_{S[h@? qTT?qhT4@e:@q@T`H96bNA`B_kT"9qTqGz@T!$Q?qTR*`" 6Rczaq`TDEҀ?`j@$QqTaNA!aNA!D ?aJA?q T`" "RlDpDq`TxSBRxDc |DlBxa4!QaJSA[B{Ĩ_ $QqTe:@5RqTcA5R`" *R"9RB9k T*e:@*`" czaqTd CctC`BHB`?ֻ` AJ@!@ ?aRA a4b"F9`rAaJDa&F9" 67a*F9"a7A4 6 7b^ACc0FBb^bXb 5^!7aZABBG!aZAXa 5Z@7`VAUG`VZ` 5  A!FR ?"9qGzTbB`" #R!$Q_qP9B?qiTcARR6Rk? qaT@M`"H96"9qTA!lEwB ?vvAA!dC ? T@e:@aj@A7a*F97A45bfACchFBbfbXb5f7RRqbbACcdGBbbbXbb4UG`VAz`VC `VZ`4?aVA 6`j@Za(qT qHTq TQqhT)a*F9D7A4D$5bjACc0GBbjbXb5j 75cnADFccnXc5DnBBE@?֤0qT4QqHT BBF@?A!GbZA`j@c&F9!xb q TH Tq T@ 4BB0Fd^A@dGA!FBxd"bbAxb6bnA!xb 6BB0GcjABxc)b2F96?q`Tq@T29A!G ? R`:9SA[B{Ĩ_46 7C45kb@74bnACcFBbnbXbB5ncnADFccnXc#5*n$Qq(TBB0Fd^A@dGA!FBxdbbAxb9bnA!xb6BB0GcjABxc!99b2F9b6?qT qAT`2F9@6bnACcFBbnbXb"5nd4@7.BBhFcfABxcBBhFcfABxc  _       P>D     {@  @@41TBwqT @{¨_`@ @!{¨PD{@  @@41T*wqT @{¨_`@ @A{¨PD ATP>D_{S@C@TBBEt @?a@ @# T" BB}_T`@ 41Tvq@TSA{¨_Cc$D`?`@ 5SA{¨PC {kS[c@AA+s_T @ T` T!T@?iTA!E ?@`TCc$D`?@ TTCc$D`?֘@TA!q T74R?Q E %x qmT@yEFC@c@{@B!h!B_8_xx"x?!T @7@p7O@=qB$@zG@T!   _==xODNGN^N^<T@qB+ @z[3{@+@3@0A[@{@4_@?_A?_B^=?F=>=3=2\=:lO:DNGN[[<T@B+[3{^@+@3@0A[@{@4]@_A]B_=F=O=3=R)+[3{+@3@[@{@ȂR   AAy R7?q!*Bj9c_TAT3@ 7@ K@kT@;V)WU) @ kaTAAAA#A'A R:B@?x@_qO@F=D@z=|A=xB=|C= TȂRAAy R7?q!*Bj9c_TH@T@Q3@ 7@ K@k!TAAAA#A'ARA!G@"@c! TSA[B{ƨ_RBKEC@o{@@yc@BFRc{S?S@Ec@{@@R)+[3{6+@3@[@{@!@~1 x ?#T4*W&D*z R?֔!@!!kTA RAAAA RA@G#'?A RA#A'A  {Q2HGS[@*@!}ScJ9J9B]4Q*2rSCCRG{}f|S-rS<KRR&[4NQE7O+7B;B?B* R*/) *C *RG{ )3R;+@)R)@&5 hu<@= ^huhu<~~N?TN O&q H':N ?<ONN?ATN&?<>@3>._<aTO<\rNqNsNvNxNxn~n~NpNpn(  i!x!?@T"|ixBib(i!x kKzT?i!xi!x!?@T)AJ? T R_/@R`14]s@_{A@}rR]sBz_{C@}rzB_q-T@9azxA4 R_8q.K$x R*R K+(?Tja8hzx 5?8TRk%xk J kT_8qL T *M}@ k T)E*@ T`.T+@ *4[@9qT(@9$ @9> @9  K"@91@9kQ0@9 (@9N  Q!QQK0 aKK BK<1<>."+K!K+"+ 0 >ggKQKFKN~ND 1><AK&"& B <> N N "K " ) ?N^N;^N<T&@9 q@TqT( @9$@9>%@9  K"1@91=@9kQ0I@9 (U@9(*Z=!Z%xJ_8q TJ *M}@Ry kT7@!! byS!BQ33`?@GCDO@3@53@"@y}! @yJ87ZR <kTZ y@ HTO)[@R_1 *;@C@*@$  @@9B qj!8!k(T?kT^R3A7A;A?ACAGA GA@BT*SA[B{ƨ_( @9$@9>@9  K"!@91)@9kQ01@9 (9@9N(@9$!@9>1@9  K"A@91Q@9kQ0a@9 (q@9BA@JBCׇN@y~n]sN K>|nuN9|N}nsn؇unrnއtnцyNwNsNWynrNZvntNއuNvNZyNxN~nxnއNqNqn@ ! h"xB_@TH|!ixHih!(!i"x? k KzTh"x?i"xB_@T@JT/@R`5"RC@CGD@C@   !yxR7?q!"Bj 8 TR")A_AT M * *%x ) R;?;@@?DB@RG ! _q!B"x@T"@y@8 <6?y!TkA! aT RR_R)Q);@) @kT *&@)LB_kTCAGAR._@& G37;?CG??{C[|"BGSc~Sk *VE6s |@C@'!@@*@#9*C9*#/#*@Rs?qT@#@ G!ˡ'@@B T{E*SF[GcHkIsJ_ֆ@)?@#9& @@ @#@C9|))}SIE)c *@D2@_@@G)#9@Sx#@C9c b*@@2Sx?qT@#9/@*@C9#@* @cms*`2sz G?   {@S[*c**k**s *AS@!!Gs~S @@%@D3G@%@E @D3 *C9#O6 ? q(T G@@B! T{D *SE[FcGkHsI_ք@yG@~S@B#@x@EA@|S cC9*)/$`7 R@FG@*@D)@C9@@ 6/@?qT@&IG@* @*#@@C9@ @   G?      "=_ NB@n=$ @ !@KRDr?kT)T$ˊR$r?k@TiTHR(r?kTT*R*r?kT*R*r?kaTACR_DRDhr?kTTC(RCr?k T(TCRCjr?kTiRjr?kaTA>=N=RɊR$Fr?k T(TQ?k TB@#c|SCRDRDr?kTTFRDr?k! TB@#c|SCR,?kT@?kT_|R#HRCr?kT TKRCr?k! TA DCRD RDr?kT TQ?kTCRCr?kTAD CR"R"˪r?kTA =N<RB@#c|SCRTɊR!x D&r?kATC@#aRTiRĊr?k@TɊR$Ʀr?kTC@#aRrcQ?kTDA CRhRec??kTADC  R[!!=N<RUCRCr?kT@k`TR_֡@R?kT4(@kT @k_{S3sbk*99G[**c**+{B****s ?`64QT+@SA[BcCkD{ƨ_$R`!?pq TC@BkAT`R __!!`Rpq0_{S G@u@cB)| C 5&@|S@ɊR_ qArɊRkFra D)dIzxSi*@!QeA)?k/(D_qaCS?*!R 7c"@$`RkC!_~B)a& @A .#Z "@*@!Q~B@*'2_}'2_|'2_{"2Aq"2Aq"2Aq"2A?'a?@ ;N nBTBR"Frk AT[TBRB(rkTbR0qT4Q_qMT&@KR"rk@sTh5TBR"Frk`>THNTBRB(rkZTBRB(rkhT"+RBrkDTHCTB@QRRk-T`@{gRRR@FRR R? >4#@KR"rk@yT,TBRBHrk@#TbRDRDHrkH@TDRD rk@TIZTDRDrk`TDRD(rk@TDRDrkT@Q RqT" R q`T q9T#B)`@t'R@R#@"HR"rk@lTITBRBrk5T(TBRB rk`7TbRDRD rkTDRfx$rk@TQk"T q9Th3Tq(/T`34#A)`@olR@&RRR R?ֺ#@"HR"rk bTTBRBrk T R" RKR$Frk`TTDRD(rkT q;T q(1TqhKT 14#A)`@jGR@ RRR R?֑#@KR"rk aT TBRBHrkT/TBRB rkT RDRD rkxD\kTB@kT q`4Th%TqHET`%4#A)`@ egR!RR@ RR R?dbRDRDrkTiTD*R$rkTKT@QkVT q1T q%Tq?T%4#A)`@`R@QkT\QkAT   q.T(Tq=T 4#A)`@@^'R!RR@R R?.#@KR"rk@\TTBRBHrk@TDTBRB rk TbRbRHR(rkTH#TDRD(rkTBRBHrk T qT#B)`@XglR RR@BRR R?{A@0E!`1 q(Tq3T 4#A)KR"FrkT(TBRB(rkTBRB(rk(*T"+RBrkT/TB@QkT q@!T Tq;T@4#A)BR"FrkT$TBRB(rk,TBRB(rkTKR"FrkTITDQk TD\QkTBDQk`Tq" R#RB qT7TqT4#A)bRDR$Frk@TTDRD(rkTTKR"FrkThETBQkTBk TBQkTBRB(rk`=T TBRB rkT RCRC rki;TCRCrkTBRBrkTKRDrk TH)TXQkTTBRcx"FrkTBR"Frk TTBRB(rkATbR RBRB(rk`;T'TBRB rk TbR$Qq)TRR qAT#@R$QqTRRRR`@`?'RRR@BFRR R?6$Qq)TRR%bR$QqTRRe"RRR8$QqTRR$QqTRRbR$Qq)TRRwԙR"r _qTRR RHR(rkT#A)#B)=QkT$HR$rkT\kT"+RrkT:F(R&rk TTKRFrk@T#TG*RGrkTI0T@Qk T$HRcxDrkaT$QqhT#A)" R#B)b#B)#B)#B)O#B).#B)zB(R"rk RTC(R#rkTKRCrk`TTD*RDrkTI)Tc@Qk@T#HRxCrkTlB(R"rk R`TD(R$rkTKRDrkTTF*RFrk@T'T@QkTU"HR"Frk@ThTDQkTBQk`THR(rk T RHR(rk T#HR#rkTc\kT"+RRrRkTB(R"rkbRaTB(R"rkbR!T RԙR"rb _qiT qT#@R qT#@RH qT#@R qaT#@R q!T#@R qT#@RcXk TTdQk`Tc\Qk@T|DRcx$rkTFRFrk`TiTD RDrkTBRrk`ThHR(rk TbRXkTTQkT\QkTWXk TTQk`T\Qk@TLbRkTk TC qT#@R$QqT#A)"R qTKR"Frk`Th TCQkTC\QkTBDQk T&DRrkTTCRCrkTiRÊrk@TCRCrkTDRrk@T TDRDrkTiRĊrkTDRDrkTFRrkTTcxk!TqBRBHrkTCRx#rkTP RRRTDRDrkTiRĊrk T?kT@k@Tc?k@T?kTƤ?k@T RbRRRC?kTB@k@TD?kaT"HR"Frk TB\kTC R#Frk TC(RCrkT@k TD(RDrkTD R$FrkTxck!TcxƨkT bR5bRH3Z   {C Rb@`")BT@ar@?`@`(@R ?"B@D@?`j@a(q(T qH TqH T4 @BR"ƦrkTHTB(R'rkTITBR"Frk`TTB,QkTCkTBQkT#A)y0qT4QqT @HR!Ʀrk T) THRArk THRArkTARHrkTRR`@`'RRR@BFRR R?{A@0E!1QqT @AR!Frk@T THR!ƦrkTTHRArk T!CkAT @BR"FrkTTB(R'rk T(TBR"rkTTBQk TBkT#A)A(R'rk TA(R'rk)TAR!FrkT THR!Ʀrk`T!,kTA(RAJrkAT   RR`@gRRR@FRR R?֡HRBrkTITHRBrkT#A)BRHrk`ThTBR"ƦrkT(TB(RBJrk@THR"ƦrkT#A)A(R'rk TTAR!rk`T T!QkT!RRkToHRBrkTBCkT#A)[HR!FrkT!k T!QkTHR"Ʀrk TBRHrkaT#A)F",QkT"@QkT!@QkTHR"FrkTBk@TBQkT<BR"rk@TTB@kT#A)AR!rkTT"QkT!QkTx!@kaTt!@RRk THR"ƦrkT#A)jBR"rkAT#A)dݲ{C Rb@`B$BT@ar@?`@#@R ?"B@D@?`j@a(qT qH TqT4 @"RrkTT"RrkT#A)`@gR!RR@ RR R?{A@0E!10qT4QqhT @!Rrk T)T!RR rRk`TR rkiT!R rk@TT!(RʪrkT!\RRk@TQq(T @!RrkTT!RR rRkT`@glR RR@BRR R?ֹ @"RrkTiT"R rk!T#A)!Rrk TRRRR`@'R!R@R RR R?֘RR`@lR&R@#A)!RRrRkT!QkT!R*rk`TR!+rkT!RrkTwBQkT"R rk T T"(RʪrkTB\kT#A)"(Rʪrk`T"R T rkTªR" rk@T+RʪrkT#A)!Qk T!R*rkTR!+rk`T!RRrRkTABQkT"R*rk`TªR"+rkT"RŠrkAT#A)!QkT!R rkT(T!(RʪrkT!\kT RR! rRkT rkT#A)PªR" rkT#A)kȱ۱   C!G{S[cksB"@w5 A!`D ?BE!2@?!DBFC ?!F; ?ZG >6#3!R@?g@C@Cg @?41Tbq?T{GaR4`?!k@G ?? q |ThvT?q{T4!s@F#CRCRR? k@ q`yTsTqxT4!w@cRCRR? k@ qwTqTqhvT`}4!@RCRR?!#F9sERCRR/`? k@(qh[T qTqvTz4!{@R/@CRR? k@qUT@4!@R@CRR? 3F9 7 k@qpTҀ4!@  R@CRR? k@qPT@4!@# R@CRR? k@q(NT@4!@ @CRCRR?!'F9cRCRR`? k@qJT@4!@@RCRR?RG?s@ @P41TNaqPTo@ @P41TEaqPTk@ @P41Tc@B!Ҁ?cEЄF9c@B!Ҁ?еD?cDG!`XR`?еD?еD/@????!D ?еDеD@?@?@?W/@?֥@еD? @?еD@?@?еD?еD?ևеD @?@?@?@?ֵеD@?еD@?еD?еDеD?֫еD?֡еDIеDеDеDеDsеDkеDi{CS R[*Frck?k0T(T R Fr?k@-T?k@&T R&r?k@TWRR*R R Ʀr?k TFR@r?k"T R@r?kT7RR*R$Qq "TRRWR8R`@4@R ?`@aB`3@ Ru@?`j@ q`TTqT4A)`@aA'REf R@RRR R?!??`@@/@ R ?`@a"B.@ R@? ˊR Frk`T T$QkT#TQz ?k T!??`@+@@R ?`@a&B +@ R@? ˊR Frk TT$QkTTz QkT{AcDSB[C!kE R Ʀrk THT RFrkT`j@ q`TTqT4A)$`@aA@'R@f RRRR R? R Ʀrk THT RFrk T`j@ qTTqT4A)`@a"A@ 'R@f RRRR R?֚$QqTRRjFR@rkT`j@ qT(TqHT 4A)`Aa@9 'R(@FR@rkT`j@ qT TqT 4A)`Aa@:@'R(@ R@rkT`j@ q Th TqT` 4A)`@aA R@rkAT`j@ qTh TqT` 4A)`@a"A qTB)`j@u q@THTqT@4jA)ZYZ Y `j@u q T TqT 4fA)9?q:Z: WR*$QqITRRr$QqTRRL$QqTRR$Qq)TRR$QqiTRR$QqTRR`j@u q TTqH T4jA)Z_qY9Y  k T kT7RR*R qT@@$QqiTRR qaTB)$QqITRR q!TB) qTB)d qTB). qTB)@ qTB) qTB)ZYZ Y b qTB){CS[@*@R ?`@aB@ Ru@?`j@ q T Tq T 4A)`@aA 'REf R@RRR R?!@?`@ @ R ?`@a"B @ R@?R Frk TTQkT$kaT`j@ q THTqh T 4A)*|Sb@!|`A b 'RH@f RRRR R?{ASB![C$QqITRR`j@ q@T(TqT 4A)|S`@aA'R@ qTB)$Qq TRRRR$Qq)TRR qTB)|S qTB)*|SRRR=F{CS@ @R ?`@aB@@ Rt@?`j@qT q TQRqHT@`@@@R@?`j@ q T( TqT 4A)`@aA'REf R@RRR R?!?`@@ R ?`@a"B@ R@?`j@qhT q TQRqHT@`@@@R@?aj@`A? q TT?q T 4A) @bURBUr!|A   a@A 'RDRR(@R RR?{ASB@! ց@$Qq)TRR$QRqHT"@$QRqT"@"$Q_qT?0qT!4Q?q(T@bURRBUrR!|AB) qTB)@RR? qT`?qiTn@? qTD)bUR@BUr! RR!|!|A@fy{CS[@`*@R ?`@aB@@ Ru@?`j@q T qh TQRqHT@`@`@@R@?`j@ qT TqT 4A)`@aA`'REf R@RRR R?!?`@@ R ?`@a"B@ R@?R ƦrkTTR&rk T$k!Taj@`A? q TT?qh T 4A)@!|Sa@ 'R(@f RRRR R?`@ @R@R@?{ASB![C֡@$QqiTRR$QRqT"@`j@ qTTqhT4A)`@aA'R@ qTB)"$Q_qT`?0qT!4Q?qT@RR!|S$QqiTRR qTB)? qaTB) ?qITn@RR!|SRR? qTD)R@R! !|!|Sl {CS@ @R ?`@aB @ Rt@?`j@qT qTQRqhT@!|S`@@@R@?`j@ qThTqT`4A)|S`@aA'R!RR@R RR?`@`@R@R@?{ASBE! ց@!|S$QRq(T"@!|S$QqTRR qTB)|S6IR   {CS@g*@R ?`@aB g@ Ru@?AR`j@A rk8TTA(RArk(T TARA(rkT0T!+RArkT(CT!@QkA TqAT qVTQRqhT@!|S`@a@@R@?`j@ qIT;TqhHT;5RRHR(rk6TTARA(rk TARH&TArkTARArkTqFT qHZTQRqhT@!|S`@`\@@R@?`j@ qUTNTqUTN4A)`@aAZglRA*R!rk(TTKR!rk@T'T!@QkTz!\Qk@Tq;T qUTQRqT@`UR@Ur!|!a`@@V@@R@?`j@ qJTHCTqhIT@C4A)`@aAT'RQA RArk@TTiRrkTGTARArkTARArkTARrkaTq2T q(ITQRqhT@!|S`@O@@R@?`j@ q@ET(<TqDT <4A)`@aA@NgR!R@LqH7T qHJTQRqHT@`@ L@@R@?`j@ qCT(<TqhBT <4A)`@aAJGR@ R.!+Rrk T!QkT!HR!rkT!\kTq*T qh?TQRqhT@!|S`@F@@R@?`@E@!RR@?`j@ q;TH7Tq;T@74A)`@aA DlR&R@ RRRR?`@B@RR@?q$T q(=TQRqhT@!|S`@@@@R@?`j@ q@:TH.Tq9T@.4A)`@aA>lR&R@!DQk`TH<T!@QkT"\kT!QkTq'T q8TQRqhT@!|S`@;@@R@?`j@ q6T)TqH6T)4A)`@aA`9'R!R@AHrkATqH T q3TQRqhT@!|S`@6@@R@?`@ 6@!RR@?`j@ q*T TqH*T 4A)`@aA`4glR R@!HR!FrkTHT!@Qk`T2T!QkT!,kTARz!rkTqT q()TQRqhT@!|S`@/@@R@?`j@ q%TTqH%T4A)`@aA-R&R@Iq(T q(*TQRqhT@!|S`@+@@R@?`j@ q`$ThTq#T`4A)`@aA*lR&R@*qT q!TQRqHT@`@'@@R@?`j@ q "T(Tq!T 4A)`@aA@&'RR@ $QqTA)`@aA$gRR@RRR R?`@@#@R@R@?{ASB@!`E$QRq(T"@!|SԙR!r ?qT?ARz!Fr_kT!QkT6$QRqHT"@!|So$QRqT"@!|S$QRqT"@!|S$QRqHT"@`UR@Ur!|!a$$QRqT"@!|Sr$QRqT"@!|SL$QRqT"@ qTB)$QRqT"@!|S$QRqT"@!|S$QRqhT"@I$QRqT"@!|S$QqTRR$QqITRR($Qq)TRR$Qq TRR$Qq TRR$QqTRR$Qq)TRRG$Qq)TRR$QqTRR$Qq TRRF$QqTRR@!|SP qTB)A(R!rkT qTB) qTB) qATB)( qTB) qTB)@!|S @!|S@!|S@ qTB) qTB)X qTB)3 qTB)@!|Sm@!|S@!|SE qATB)N@!|S3@@!|S@`UR@Ur!|!aY!\kT!k`TE!\kTA{CS@*@R ?`@aB@@ R@?HR ƦrkTHT@(R'rk@T@RT Frk@TT@kT@(R@Jrk! T `j@tqT qh TQRqhT@!|S`@@@R@?`j@ qT TqhT 4A)`@aAgR2HRArk TTARHrkTT,kT+k!T!CkT`j@tqT qhTQRqHT@`@ @@R@?`j@ q@ TTqT4A)`@aA` 'R@RRRR R?{ASBE!ց@!|S@$QqiTRR$QqiTRR rkTTQk TQkT$QRqT"@$QRqT"@!|S qTB) qATB)@kTl+H<{CS@@*@R ?`@aB@@ R@? RrkTiT R rk TQkT R rk TT (RʪrkT\k!Taj@`? q`T T?qT 4A)`@aA@'R RrkA Taj@`? qTh T?qTa 4A)`@aAgR@!RRRR R?{ASBE!aj@`? qT(T?q(T!4A)`@aA lR&R@RRR R?aj@`? qTT?qT4A)`@aA`glR R@? qTB)? qTB)? qTB)!$Q?qITRR!$Q?qTRR!$Q?qTRR!$Q?q)TRRQkIT R*rkTR +rk@T RrkTu? qATB)zR rkT}@{!GS h@"@O qTTq(T 4 @<qT@@#QxSq$Gz@<qTgv:@c6 5u@`B1@TcGkosc@w~Bf@)cCKR`?C'QGqTRC@$QqT@C@q`LTqaT@ 4"LRR@qUT@kT*Czcqh$T#Bz#h"@kTu"@  @`?ַ@*5qhDTd@@@4bBab ` #@#@b~e?D@kTkAoAsA`A@ `:F9`7Caj@?(qhT? qT?qTA4@?֠6aj@?(qT? qT?qT!Q?q>T@scAgAGOA@BaVT SA{Ũ_$QqiT qT@<qTB)Xaj@:9?(qT? qhT?q T!Q?q(:T@q?0qT!4Q?q8T @Euj@@*q2T2qT6Qq7T @!LC* ?@0E*BAR?@#T![BSAcCkDsE{Ǩ_֔  zSu*o ?`u* ?`Zo@@@TB<_q  JE??? ҁ   {S0@sJE`?րZ@`?SA{¨ {RrSX@(cG`?*`Z@SA{¨_{!Scx@<cDx<`?4SARcC{Ǩ_k@7.@ C) )$@4[Rs&D@  Q3R?kTkCTWL)R?@{kT7@"$@@L)!c||9_kT[BsE RkDSAcC{Ǩ_7@3@_ q`TqT7@ɊRCr!@?kɊRFr$CzTg@!xSgc@!xScqTg@!|Sgc@!|Sc{S[@!G ?<HTT j38SA[B{è_֠@9B9j38SA[B{è_T!E` ? c$D`?֓@j38SA[B{è_!dD) ?!E- ?q_   {!D * ?֠7 @R{¨_`~|!` @ h`{¨_*? qTT?qT?qTABʈRC !yI9_?q T?qT!.A# $@ ! @9a9e9_!.@ $@!0@0\9_!-A $@!@9Q9U9_!.Ac $@y!@9!yI9M9_!@.AC $@ !@y1yi9_  *?qT T? qT?qAT! /A# $@ ! @9a9e9_!4?qT!.A $@!@y)yY9_!.@ $@!0@0\9_֢RAr Q9_!.$@@!@9 P9T9_!/*?q@T? qT?qaT!`/Ac $@y!@9!yI9M9_A"RC !yI9_!/A $@!0@1]9_A¨RC !yI9_ cG{cd@GS[s ?<T T`h58@?T@@_6HTR@h!8uB@h68Au`T@`a `@v!RFk9G$D   Ք65a@?T`@:@ Tb @_TRh!8`@zh:8|@?a@˟Tb@T` @_hT$@`T@`?b@zR_h:8`@A@kHG@@B! T[FSEsI{DcG_@99?b@FGc/$Ҡ?ֹ@9@h!8b@үh T!E ?c$D`?@jFcGc/$Ҡ?@uBh68AuTc$D`?kG@@ҠTkG?G@@T!dD ?G@@aT!dD ?!dDc ?G@@BS[ks T!E- ?G@@BkT!dD) ?!E ?@@kT!D ?!E ?@@@T{AS}A97SA{¨_@Fc/Ҡ?`@th48SA{¨_`@a9 `"SA{¨_!E ?!D ? {S[c!@0#@GDsrG@CH(T`*Ts)h38@T!҆!dD` ?!dD` ?!dD` ?!dD` ?!E ?!D ?!dD` ?!dD` ?  {SG[cAk@A9}.@T#ПtTpTv@!G ?!(,Ta@`"T` @TD "Tc$D`?a@w?h78#!֢G!@=P~a@@_*TcD֢G`?@cT!D@A@`@th48a@A`@Ta @? T!!R!Ar`@a9@SA[B{Ĩ_\IT`@6`Tb @HTB`<D@A@`@vh68a@68Tb@6<T` @(T dҠ?"AS!dD` ?!E ?!D ?!dD` ?!dD` ?!dD` ?!dD` ?!dD` ?!dD` ?CѡBG!`{C!S*[d C@BC@Dh!@y`y`@v rh68a@ˠ TB@qT< T`@4@Tb @TBB @ `@th48G@@BT{ASB[CC_%T6A`Tb @HTRh!xa@v ?h68a@@qT@qT@5$iTb@6(_T` @#T@?_T` @T ?C r@0@Dh!`0v`@h68a@ˡT,Tb@40_T` @ T?#c>D#FGҠ?#@Tb@6_T,Tb@40_` T` @T?C@Dh!@`_T` @c T>C@Dh!@`[c#FGҠ?#@fc?#c?#F#Gc4DҠ?#@m,Tb@60_ATDc@?#$iTb@6(_!Thc ?#c>##Ҟy>#G?#G@@T!dD` ?!E ?@@T!D ?#G@@AT!dD` ?#G@@ҡT!dD` ?#G@@T!dD` ?#G@@aT!dD` ?#G@@T!dD` ?#G@@!T!dD` ?#G@@ҁT!dD` ?  {S*[A}$7T`6`@@99U9 777 7t07T(787 @7tH7TP7X7SA[B{è_֠!@ @9"9e96a@( 5Tb@6,.T` @TC@Dh!p@`p`@vh68T_6a@<2T`@4@*Tb @HTB@B @ `@th48SA[B{è_a@0-Tb@64&T` @H$TC@Dh!P@`P`@vh684W6a@4i+Tb@68@#T` @( TC@Dh!`@```@vh68O6a@ $T`@6!Tb @TBRbrh!`@vh68tG6a@)"Tb@6@T` @hT@3C@@yDh!`y`@vh68T?6a@ !Tb@6T` @HT 3C@@yDh!`y`@vh684/6a@Tb@6@T` @(T3C@0@Dh!`0`@vh6876a@,Tb@60T` @ T@C@Dh!@``@vh68'6a@8iTb@6<T` @TC@Dh!p@`p`@vh686a@6<@a p@r`@vh686Fa9A6FcdҠ?Fc@Ҡ?FcҠ?FcҠ?Fc@Ҡ?֠Fc3Ҡ?Fc 3Ҡ?^Fc@3Ҡ?=Fc`3Ҡ?FcҠ?FcҠ?G-kQҪґ!E ?!D ?!dD` ?!dD` ?!dD` ?!dD` ?!dD` ?!dD` ?!dD` ?!dD` ?!dD` ?!dD` ?{S*[A}A9^7T`7Q7Nh7tKx74Hp7TE74BH7? 7;(78075872@7t/X7T,74)7&7"7 77P7777 7 7777@SA[B{Ĩ_a@TɌT`@6XyTb @H^TB D@A@`@vh686a@TIT`@4XwTb @(NTB D@A@`@th48@SA[B{Ĩ_a@,yTb@60sT` @VT@ C@Dh!@``@vh686a@0i~Tb@64nT` @(WT C@Dh!P@`P`@vh686a@ zTb@6$jT` @ST C@Dh! @9` 9`@vh686a@IpT`@6  hTb @WT"!B*,Mh!`@vh686a@kT`@6 dTb @TT"!",Mh!`@vh686a@,)jTb@60aT` @(PT C@Dh!@``@vh686a@LfT`@6P_Tb @LTB D@A@`@vh686a@8 kTb@6< ]T` @GT` C@Dh!p@`p`@vh68W6a@hT`@6 ZTb @CT"!҂­BNh!`@vh686a@DI`T`@6H`STb @QTBD@A @y y`@vh68ڇ6a@H]T`@6LPTb @MTB`D@A@`@vh686a@0[Tb@64MT` @IT C@Dh!P@`P`@vh68tԿ6a@4)YTb@68`LT` @ETC@Dh!`@```@vh68Tѷ6a@0OTb@64 IT` @hATC@Dh!P@`P`@vh684Χ6a@4ILTb@68 ET` @H=T`C@Dh!`@```@vh68_6a@LPT`@6P`BTb @(9TBD@A@`@vh68G6a@PiNT`@6T?Tb @5TBD@A@`@vh68?6a@0LTb@64<T` @0T`C@Dh!P@`P`@vh6876a@4 ITb@68:T` @,T C@Dh!`@```@vh68/6a@X>T`@6\7Tb @(TBD@A@`@vh68t'6a@<iGT`@6@ 7Tb @TB`B @ `@vh68O6a@IETb@6 5T` @(TC|@A^h<=``@vh68T6a@`BTb@6d1T` @ T@C=<^h<<`@vh684w6a@h=Tb@6l.T` @TC=<^h<<`@vh686a@8?Tb@6<,T` @TC@Dh!p@`p`@vh68o6FҖңc?`@vh686Fc Ҡ?֏FcҠ?FcdҠ?ֺFc@$Ҡ?֙FcҠ?xFc`Ҡ?VFcҠ?7Fc?`@a@9g6a@lITb@6pT` @TC=<^h<<Fc@ Ҡ?JFc Ҡ?Fc $Ҡ?hFc Ҡ?GFc Ҡ?Fc` Ҡ?Fc Ҡ?֠Fc Ҡ?Fc@ Ҡ?^Fc Ҡ??Fc Ҡ?֚Fc`Ҡ?yFcҠ?XFcҠ?7Fc`Ҡ?FcҠ?FcҠ?Fc Ҡ?ֳFc`dҠ?֒FcDҠ?qf|ҒҸҞ,BҪҊ,HҍsX3dқD!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?֡!dD` ?!E ?֡!D ?֡!dD` ?֡!dD` ?֡!dD` ?   cG{!@ SДrG[#3`@@R?bB@R! ?b@R! ?bR@@R!@0DCT!@Qk@TiTARArk#T!Rrk"TjRArkaT!EA ?֡!`/` >=b ?<x9=<KR!rk`T7TaRrkTETiRrk@T!Dk@TARArkT!viRjrk+TTA(RAJrkTsTRaHrkT RHrkTɊRFrkAT!1[!ȊR!ƨrk@&T(6TNRrk@T(zTˊR!rkT*RrkTRjrkT! @(R!FrkT T!8Qk@T:T! QkT"kT!$QkT! 2)p!HRarkTHTa*RArkTPTAR!rk TRBrkT!@QkT!;V!LR!rk T$T!@Qk`ThhTᩆR!rkT!8kTRrkT!@=! Rark`T T! RaFrk@T^T*R*rk@T*R*rk THR(rkAT!`"A RAhrkTHZT!Rfrk@T! RgrkT!*RfrkT!EA ?֡!`(` >=b ?<t9=Ѐ<IRrkxTh=T!RrkTIR†rkT!QkaT! R!Frk{TKT! Ra&rkT!+RrkT! RaFrkT!A(R'rkuT?T!R&rkT"#kT!,Qk!T!5zAR!rk@pT3T!,Qk T!k T!RjrkT!@+fɊR!Frk`sThBT!QkT"kT!QkAT!2SRrkrThETA RarkTBʊRrk`T!QkT!Ab @ p@qm9HR!FrkYTOT!QkT"kT!QkT!@%lJRrkmTATARAȦrk TARAʦrkTɊR!ƦrkT!0V!R!˪rkUThNT+RʪrkT"kT!\QkAT!,B!ɉRA+rk kT(BTaRa(rk`TaR)rk@T!+RA&rkT!$,!ˊR*rk@XThT!R!rkpT*R rknTALR!rkT!AR!rkSTH T!Qk`KT"k`JT!\QkaT!!R rkJTBT!+RrkTARArkTFRArk}T!)jR!rkOT T R!ǨrkLTjR"rkJT!@@Qk{T! iR!rkPTT! QkCT"kgT!QkxT!1~!2yȆRArk`nTaJRrk@mTA R!rkuT!h!k_T"4k^T!Qk!tT!/ZA*R!rkeT"kdT!@QkArT! K! Rark^THRArk]TjRArk!pT!EA ?֡!-` >=b ?<t9=Ѐ=b ?<t9=Ѐ<!` 4{!/v!*q! %l! g!'b!EA  ?֡!`)` $@!@b `9Q$A @ `@ay9F!9A!<! 7!2! 5-!,(! #!9!@7!4!"!@0 ! !`!``$A @ @q9!!>!@%! !!?!&Ab @ p@qm9!#v!+q!@l!@g!b!@&]!X!@:S!?N!I!D!@(?!@:!5|!0w!+r!`&m!!h!`c!=^!<Y! T!O! J#A @ `@ay9?!@!:!EA ?ց!,` >=b ?<x9=<)! $! !!`!!> !`4!/[ c'&@% @99*c AR"9Ec3?!G ?uTc$D`?@j78@yT@?@T T@? uTc_TcD#G`?c'AvT @'/@+~B9+@?@zT'@/@_5hnT R@h!8'@+`B?h58D`?qT/@a` @uT!=b ?<t9=Ѐ<!EA@ ?ց!`*"` >=b ?<d9=<`&A" @ @9a9e9!DkaT!8!/! !!(!`,{!EA ?ց!`-` >=b ?<t9=Ѐ<!EA ?ց!*` >=b ?<t9=Ѐ<! T! *O!J!`E! @!EA ?ց!&` >=b ?<t9=Ѐ=b ?<t9=Ѐ=b ?<t9=Ѐ=b ?<h9=<!`T!A @ `@ay9! kT! A!<!%7~! 2y! !-t!"(o!#j! e!:`![! V! Q! k!T%AB @ @y1yi9C!@>!`;9!;4!kT!`6,!5'!EA ?ց!"` >=b ?<t9=Ѐ<!@!EA ?ց!'` >=b ?<p9=<`%A @ @q9! !`!=!!!!*!!0!EA` ?ց!`'B` >=b ?<h9=<!/k! =b ?<t9=Ѐ<!EA ?ց!`,` >=b ?<t9=Ѐ<!EA  ?ց!"` $@@9b |!0w!+r!@1&m )A" @ @9a9e9b!]!`3X! 9 S!N!`I!&D!%?! :A99XFc#ИGc@$Ҡ?c@FG#Ҡ?c'A@T @'/\c$D`?s@?<TT=c$D@B`?G[JcK[ c cG?֔E#?c@???@@cT!D ?֘G?@@cT!dD@# ?֔EG?@@T!dD@# ?с!G{S"@/0q) TE[#c *ARc3?c!G ?Tc$D`?օF j48#c/$Ҡ?AT @@~B9?T@@_4T R@h!8@`B?h48B`?T@a` @tT!FSЙ9Gc@$Ҡ?S@W[HcI|c$D`?Yc$D@B`?5[c SG?S9G/@!@T!dD@ ?֔E??/@!@ҁT!D ?֔ES9G  *!G{S @/ҟqTqT5 0A @0@1]9G/@@BҡT{FSG_ր@2A @ P@Qu92AB @ @y1yi9E[#c ARc3?ց!Gc ?Tc$D`?օF j48#c/$Ҡ?A`T @@~B9? T@@_4hT R@h!8@`B?h48B`?@T@a` @tT!=b ?<h9=<`5 0@aB0@ca `2^9qaT!EA` ?ց!6$@B! @y`  yb H9!EA` ?ց!`6ХE[#c *ARcc3?c!G ?@ T@ ХF j48#c/$Ҡ?A T @@~B9? T@@_4T R@h!8@`B?h48B`?T@a` @tT!=b ?<d9=<!EA ?ց!@:` $@!@b P9!EA@ ?ց!9"` $@!@@9@9b D9!EA` ?ց!9B` $@! @y yb H9@998s8A @ @q9p!EA  ?ց! ;` $@@9b a;A @ p@q}9VqT;A @0@1]9I!/[ c'&@% @9*9c AR"9Ecc3?!G ?` Tc$D`?@j48@ T@@T?@ T@ T_hTcD#G`?c'A T @'/@+~B9+@?`T'@/@_4hT R@h!8'@+`B?h48D`?@T/@a` @tT! R RCRCjrAh^@ DXy@9_@ _@9?kTTC(R#Fr?kThTɊRC&r?kThT`$Q?kT2T@+Rr?kHGTQ?kfT#+R$xrRk T`R@l?ɊR#Ʀr?kPT TiRĊr?kSTT#RCr?kQT LTɊRCr?kAATCR^lC@9@9ɊR$Fr?k`Th T`\0?k,TJTc00?kA=T@R@DR#R ERED9C9@ R@liRjr?kT@R Fr?kTT@(R'r?kT@(R'r?k %T@R@(r?k$TQ?k THR Fr?k TTTQ?k TgTQ?kTB_ R_ ˊR r?k TTFR@r?k:T! R@@RcR^lCA\y@ x_@ R_D#RFr?k BT,TɊRFr?k[TCRC@9@9 R@l@R Fr?kTɊRFr?k TɊR Fr?kT(.T#Q?kTRT?kT ?kT?kTR@< RHR(r?kPTI!T*R*r?kTH T*R*r?k'T @$R&r?k <TTcA?kRT#DR^lD@9@9Cxc$Q?k`TI%T`,?k!T! R@@R^lA\y@ x_@ c?kA#T  RCRC@9@9@9iR_ljr?k TiRjr?kT R Ʀr?kT R Ʀr?kHTɊR@r?k T)T@*R r?k T@*R r?ki+THR Ʀr?kTH9TKR r?kT(ST@Q?kT!x\Q?kT RR +Rr?kAVT`R@l    (Rʪr?kT (Rʪr?k( THR@r?kTHR@r?kTFRCr?kT5TCRC r?kTJTC?kaT   _B R_$ɊRFr?kTT@R@hr?kT@R@jr?kTR@< R`BC R_  R@l  R@< R R r?k@JTêRR# r?kT R@l HR(r?k T@R@< RR@&r?kTR@&r?kHTHR r?k T)TC+Rr?k6TcQ?kT +R!xr?kT Rc#Q?ka T`R@@@RcRC@\y@ xR&r?k T R#%RElD@ @9@9C@KR@r?k TH T#xXQkT\Q?k T R R ˪r?kTT (Rʪr?k@T\R?kAT R@lHR(r?k(T R r?kTh4T+Rʪr?k`T R ˪r?kT R R*r?k T"THR Ʀr?kT?k T ˊR Fr?kTˊRR#Fr?kT@R#x FrkT R_ HR r?k T$T@(R r?kT7T Rr?k!T R@l?k`Th-TQ?kT@Q?kT RR@(R@Jr?k@T RLhTKR Fr?kT+T\Q?k T8T?kT)5T Rr?k T(6T@R#x@rk T@Rr?kTR@R r?k T3TQ?kT?k@TTHR@r?kThTR +r?k`-T@RHr?k`T#RR*r?kT R@l@R@r?kTTiRr?k@T(T Rr?kT@(R r?k TA?kTT R@&r?k T#?kTiRjr?kT@R@l R Fr?k TRT HR Fr?k T\?kTRg R@\y@ x_@ #DR^lD@9@9CK# R@@RC\y@ x_@  R^l@\y@ x_@ E@R@lK??kT@?k T,?kT R +Rr?kTT*R*r?k`T*R*r?kT R!x?kT R,?kT,?k T@ R@r?kT(T@Q?kT@R@(r?k`T@RT@r?kT R r?k@TxR +r?kT@RHr?k To,?kT$?k@ThKR Fr?kT?kT`@R@r?k`TTHR@r?kT@R@ r?k@TR R r?kTTR׵r xrTRHR Ʀr?k@THT@R#x rk@TQ?kTR,Q?kT2`R@l<`R@lAQ?kT(hRjr?kT HR@r?kTTQ#xk@TR HR r?kT\?k`T RɊR&r?kT@(R'r?k T@R@(r?k`TRɊRFr?kT@(R@Jr?k`T@R@hr?kTRR r?k T RFr?kT R#xkTRu@Hr?k T ˊR r?kT@R@r?kT Rr?kT@Rr?kT?kT@*R Fr?kT?kT@R!x r?kT R@R@r?kT Rr?kaT R@lt R@l R@l5^ld?k`T\?kTQ?kTR.Q?kIT HR r?kT HR@r?kT,?kT@?k T@R@r?k@T@R@r?kTRQ?kAT@R@r?kTR   {ccCS*R*ʀ`?tV)"Rb9b 9cRbBXC&RuR)ARftV)AhrtV)eyd9cjcv@?@R RRbra~`^SA{è_($@@G@ER @&RDQ9! !!x?k!?k!  _dQqdGzTD|S*@)) ))4 xbhb8#|xScy"BkT!R9_**h@CR#Fr_kT(T@(R'r_k`TT@R r_kTTQ_k@TQ_kTR_HR@r_k TC_kTCRRHr_kT _HR Ʀr_k`TT@Q_kT,_kT@(R@Jr_kTRHR#Fr_k@Tc_kT@~_kTR@_kTR{eS@[?s@`Tc@@*6@k"Tk` *2@kTa!G9K ?օfQ9$SbQ9k@KB@Q@`QV9#Q@7qE)dGz  )[ qTcQ@Rk`#)@c4."**RC@_q5THTq$TqA TP)R @9B$@9x|@fQ9 KO~1p@@y%@yW@v| ))N)?q@ s@B |B@"xbBo@`52q 4z{|}~RyXy@'[yVyN_ NN_ cB  T`@9@ ``8? qaT- 4z|~@' K_=qTo@@Z!@ B9#kT[BcCkDsESA{ʨ_[BsESA{ʨ_[BcCsESA{ʨ_ R)pz{|}Dy~VyDy@XyR yVyDy@yRy{}DyRyDy@ yR qaTP)R @9B$@9x|@fQ9 K@P~q@%@ )ww|1~s@qc[@c h c@c|(xhco@5Cdqz4{|}~y)i)@I)))c # T#@9c cc8_ qT.4z|~@{|}m)~I))@ )Rc )# aT  K=qmTo@w@@My{}I) )RP)R@9B$ @9 Kw|@@9&@90~v|@rfQ9[@@  c@#xc|c5@qǠz84{|}~9~{9x9@x9e9{9~ 9g9bQ9)reZ c%?T%@9 ee8_ qAT4z)|~x9@x9e9g 9bQ9reZ c%?T     K=qT@{|}g9~x9g9@~9{ 9x9g9e9y{}g9x9g9e 9C@y @9c#yR 9B$ @9P)o@9fQ9 K{|@X@R~q@w|#@y13y# @99   _qo@ec  c@#xc|cd4   $@9d dd8_ q T 4%7@yePx@9e\906@ye$y @9eP9(6@yex @9eD9d 6@yey @9e89$6@yex @9e,96@ye y @9e 96@ye0x @9e96@y @9dye9 )|$c? AT  K=qTo@N4$06@yex @9e,9 6@ye y @9e 97@ye0x@9e97@y@9dye9E7@yey@9e9D 06@ye0x @9e9 (6@ye y @9e 9 6@yex @9e,96@yey @9e896@yex @9eD96@ye$y @9eP96@y @9dPxRe\987@yey@9e9 (6@ye0x @9e9d 6@ye y @9e 9 6@y @9dxRe,9@y@9dPxRe\9@yex@9eD97@ye$y@9eP9@yey@9e89@yex@9e,9@ye y@9e 9@ye0x@9e9@ye y@9e 9j@yex@9e,9`@yey@9e89V@yex@9eD9L@ye$y@9eP9B@yePx @9e\98@yey @9e9@ye y@9e 9j@yex@9e,9`@y@9dxRe,9G@ye y@9e 9@ye0x@9e9@yey @9e9TDqTTq@TqaT`_ q T$q` _q`_`_`_`_hD`Q9? qhT6? qT?q T?q`T@RrA!|!h!tSp1@TtD_ qT_q` T_q T_qaT!R|@|D!K|_B6?qT?q T?qATARp?qT?q T@?q!TARp? qT?qT$R?qTp@p  pDBKptD_ qT@T_qT!R_q@T@Rr!!|!h!tSp@Rr! !|!i!tSp@RrA !|!i!tSpR|_$R@Rr!!|!h!tS|@Rr! !|!i!tS|@Rr! !|!i!tS@pz{S[*c#  * @ 7HDb|!@8k"8cB9 q@Tq`T5B96R`7#@SA[BcC{Ũ_~~S7k"~~S5  {S @)l@qT q`Tqd``trGa@R!?b@a@R!@?dC)abD)!@R?bF)adE)!@R?br@a@R!`?bv@ac@!@R?`n@qTq@TbQ)a@R!@?bS)SAa{¨!@Rdd@b~@ac@!@?bz@ac@!@R? {S[*ks@;CQ$@q4@DGzB!;a*H5o`g@b@) B9`kfF) )죐R@) @n^D  )>Dl=rGJDk 9)a@V|S|k 9L )}k}9e) c}S{)   ) |)}|S`#}S)?kT`"@K?k | ||S`PFc?@bf@a:@Rg"@DB9>D@}kT Ki@kh@|  ||S`B@ {@! *kTg@ Ka@| ||Skp*@G@`6@ a@?k ~~S64R`@@DRqRqB?kB`2q# B* )bB$Dg ccE J*cRCK)b@t.@U  ?qT? qa)TBU o@ Z _kcTZK`B9*7` B9?q*T`@Q?qi*T7a@* qT  q! J @|C@;@?kT`6@?k@T`Q96k@`z`aR@97G@{@?qT q*T q&T q!&TS@`?@q@zT`Q9 6`>@k(TaF@ ?kT"QkTkDUz3T@@*azabKcc$D`?`Z@q T`>@kTaF@ kBTji)%DAC+_@x@ ?+N{@@*bKAC ?`Q96`N@khTaV@ kTi@`"@bJ@  _kc(T`Q96`2@iURIUrba R|IB9"@!@ kh TaF@  k TgVDTqT@*n@ @ *Q "*****B~B@2?q}B@/DKzb'[)`BDBDBD k@ Tj@b`@a IB9"@| !i}Z(yӳ*4QBDiGa[{(/ fQEʂdYvw>by@5 f#XQ_?Qz \ulJzI躄>gȢ K]c޺C BDЧ9T@!% "J haLrP1e89=9&, Ј;UzL,ϟ>"A(kAiP4;&1C=}bߧ`6@4rPtuE煻I*_>}“gޚ㛳N᠚m;cmu#$IENDB` rqvidcap.png #(-27= sizeof(QArrayData)could not open %s the file size is too small (expect at least %u, got %llu) test %s ('%s'), %s, %s, %s, %s, %s New Pixel Format: '%s' %s New Field: %s New Colorspace: %s New Transfer Function: %s New Y'CbCr Encoding: %s New HSV Encoding: %s New Quantization Range: %s END packet read expected FRAME_VIDEO, got 0x%08x error reading %d bytes unsupported FRAME_VIDEO size unsupported FRAME_VIDEO plane size data size is too large (%u > %u) New horizontal resolution: %u + %u (%u) New resolution: %ux%u basic_string::_M_createbasic_string::_M_replaceES notGL_EXT_framebuffer_sRGBInitializeGL Part 1OpenGL %sdoes%s support GL_UNPACK_SWAP_BYTES The openGL implementation does not support GL_RED/GL_RG InitializeGL Part 2YUV shader texture 0YUV shader texture 1YUV shader texture 2NV12 shader texture 0NV12 shader texture 1NV24 shader texture 0NV24 shader texture 1NV16 shader texture 0NV16 shader texture 1YUY2 shaderRGB shaderBayer shaderPacked YUV shaderV4L2_PIX_FMT_YUYVRender settings. #version 300 es precision mediump float; #version 330 const float tex_w = %1.0; const float tex_h = %2.0; #define FIELD %3 #define IS_RGB %4 #define PIXFMT %5u #define COLSP %6 #define XFERFUNC %7 #define YCBCRENC %8 #define QUANT %9 #define IS_HSV %10 #define HSVENC %11 #define %1u #line 1 // Texture IDs #if PIXFMT == V4L2_PIX_FMT_SBGGR8 || PIXFMT == V4L2_PIX_FMT_SGBRG8 || PIXFMT == V4L2_PIX_FMT_SGRBG8 || PIXFMT == V4L2_PIX_FMT_SRGGB8 || PIXFMT == V4L2_PIX_FMT_SBGGR10 || PIXFMT == V4L2_PIX_FMT_SGBRG10 || PIXFMT == V4L2_PIX_FMT_SGRBG10 || PIXFMT == V4L2_PIX_FMT_SRGGB10 || PIXFMT == V4L2_PIX_FMT_SBGGR12 || PIXFMT == V4L2_PIX_FMT_SGBRG12 || PIXFMT == V4L2_PIX_FMT_SGRBG12 || PIXFMT == V4L2_PIX_FMT_SRGGB12 || PIXFMT == V4L2_PIX_FMT_SBGGR16 || PIXFMT == V4L2_PIX_FMT_SGBRG16 || PIXFMT == V4L2_PIX_FMT_SGRBG16 || PIXFMT == V4L2_PIX_FMT_SRGGB16 || PIXFMT == V4L2_PIX_FMT_GREY || PIXFMT == V4L2_PIX_FMT_Y16 || PIXFMT == V4L2_PIX_FMT_Y16_BE || PIXFMT == V4L2_PIX_FMT_Z16 || PIXFMT == V4L2_PIX_FMT_Y10 || PIXFMT == V4L2_PIX_FMT_Y12 uniform highp usampler2D tex; #else uniform sampler2D tex; #endif uniform sampler2D ytex; uniform sampler2D uvtex; uniform sampler2D utex; uniform sampler2D vtex; in vec2 vs_TexCoord; out vec4 fs_FragColor; // YUV (aka Y'CbCr) to R'G'B' matrices const mat3 yuv2rgb = mat3( #if YCBCRENC == V4L2_YCBCR_ENC_SMPTE240M // Old obsolete HDTV standard. Replaced by REC 709. // SMPTE 240M has its own luma coefficients 1.0, 1.0, 1.0, 0.0, -0.2253, 1.8270, 1.5756, -0.4768, 0.0 #elif YCBCRENC == V4L2_YCBCR_ENC_BT2020 // BT.2020 luma coefficients 1.0, 1.0, 1.0, 0.0, -0.1646, 1.8814, 1.4719, -0.5703, 0.0 #elif YCBCRENC == V4L2_YCBCR_ENC_601 || YCBCRENC == V4L2_YCBCR_ENC_XV601 // These colorspaces all use the BT.601 luma coefficients 1.0, 1.0, 1.0, 0.0, -0.344, 1.773, 1.403, -0.714, 0.0 #else // The HDTV colorspaces all use REC 709 luma coefficients 1.0, 1.0, 1.0, 0.0, -0.1870, 1.8556, 1.5701, -0.4664, 0.0 #endif ); // Various colorspace conversion matrices that transfer the source chromaticities // to the sRGB/Rec.709 chromaticities const mat3 colconv = mat3( #if COLSP == V4L2_COLORSPACE_SMPTE170M || COLSP == V4L2_COLORSPACE_SMPTE240M // Current SDTV standard, although slowly being replaced by REC 709. // Uses the SMPTE 170M aka SMPTE-C aka SMPTE RP 145 conversion matrix. 0.939536, 0.017743, -0.001591, 0.050215, 0.965758, -0.004356, 0.001789, 0.016243, 1.005951 #elif COLSP == V4L2_COLORSPACE_470_SYSTEM_M // Old obsolete NTSC standard. Replaced by REC 709. // Uses the NTSC 1953 conversion matrix and the Bradford method to // compensate for the different whitepoints. 1.4858417, -0.0251179, -0.0272254, -0.4033361, 0.9541568, -0.0440815, -0.0825056, 0.0709611, 1.0713068 #elif COLSP == V4L2_COLORSPACE_470_SYSTEM_BG // Old obsolete PAL/SECAM standard. Replaced by REC 709. // Uses the EBU Tech. 3213 conversion matrix. 1.0440, 0, 0, -0.0440, 1, -0.0119, 0, 0, 1.0119 #elif COLSP == V4L2_COLORSPACE_OPRGB 1.3982832, 0, 0, -0.3982831, 1, -0.0429383, 0, 0, 1.0429383 #elif COLSP == V4L2_COLORSPACE_DCI_P3 // Uses the Bradford method to compensate for the different whitepoints. 1.1574000, -0.0415052, -0.0180562, -0.1548597, 1.0455684, -0.0785993, -0.0025403, -0.0040633, 1.0966555 #elif COLSP == V4L2_COLORSPACE_BT2020 1.6603627, -0.1245635, -0.0181566, -0.5875400, 1.1329114, -0.1006017, -0.0728227, -0.0083478, 1.1187583 #else // Identity matrix 1.0 #endif ); void main() { const float texl_w = 1.0 / tex_w; const float texl_h = 1.0 / tex_h; float alpha = 0.0; vec2 xy = vs_TexCoord; float xcoord = floor(xy.x * tex_w); float ycoord = floor(xy.y * tex_h); bool xeven = mod(xcoord, 2.0) == 0.0; bool yeven = mod(ycoord, 2.0) == 0.0; vec3 yuv; vec3 rgb; #if FIELD == V4L2_FIELD_SEQ_TB xy.y = (mod(ycoord, 2.0) == 0.0) ? xy.y / 2.0 : xy.y / 2.0 + 0.5; #elif FIELD == V4L2_FIELD_SEQ_BT xy.y = (mod(ycoord, 2.0) == 0.0) ? xy.y / 2.0 + 0.5 : xy.y / 2.0; #endif #if IS_RGB // Bayer pixel formats #if PIXFMT == V4L2_PIX_FMT_SBGGR8 || PIXFMT == V4L2_PIX_FMT_SBGGR10 || PIXFMT == V4L2_PIX_FMT_SBGGR12 || PIXFMT == V4L2_PIX_FMT_SBGGR16 uvec4 urgb; vec2 cell = vec2(xeven ? xy.x : xy.x - texl_w, yeven ? xy.y : xy.y - texl_h); urgb.r = texture(tex, vec2(cell.x + texl_w, cell.y + texl_h)).r; urgb.g = texture(tex, vec2((cell.y == xy.y) ? cell.x + texl_w : cell.x, xy.y)).r; urgb.b = texture(tex, cell).r; #elif PIXFMT == V4L2_PIX_FMT_SGBRG8 || PIXFMT == V4L2_PIX_FMT_SGBRG10 || PIXFMT == V4L2_PIX_FMT_SGBRG12 || PIXFMT == V4L2_PIX_FMT_SGBRG16 uvec4 urgb; vec2 cell = vec2(xeven ? xy.x : xy.x - texl_w, yeven ? xy.y : xy.y - texl_h); urgb.r = texture(tex, vec2(cell.x, cell.y + texl_h)).r; urgb.g = texture(tex, vec2((cell.y == xy.y) ? cell.x : cell.x + texl_w, xy.y)).r; urgb.b = texture(tex, vec2(cell.x + texl_w, cell.y)).r; #elif PIXFMT == V4L2_PIX_FMT_SGRBG8 || PIXFMT == V4L2_PIX_FMT_SGRBG10 || PIXFMT == V4L2_PIX_FMT_SGRBG12 || PIXFMT == V4L2_PIX_FMT_SGRBG16 uvec4 urgb; vec2 cell = vec2(xeven ? xy.x : xy.x - texl_w, yeven ? xy.y : xy.y - texl_h); urgb.r = texture(tex, vec2(cell.x + texl_w, cell.y)).r; urgb.g = texture(tex, vec2((cell.y == xy.y) ? cell.x : cell.x + texl_w, xy.y)).r; urgb.b = texture(tex, vec2(cell.x, cell.y + texl_h)).r; #elif PIXFMT == V4L2_PIX_FMT_SRGGB8 || PIXFMT == V4L2_PIX_FMT_SRGGB10 || PIXFMT == V4L2_PIX_FMT_SRGGB12 || PIXFMT == V4L2_PIX_FMT_SRGGB16 uvec4 urgb; vec2 cell = vec2(xeven ? xy.x : xy.x - texl_w, yeven ? xy.y : xy.y - texl_h); urgb.b = texture(tex, vec2(cell.x + texl_w, cell.y + texl_h)).r; urgb.g = texture(tex, vec2((cell.y == xy.y) ? cell.x + texl_w : cell.x, xy.y)).r; urgb.r = texture(tex, cell).r; #elif PIXFMT == V4L2_PIX_FMT_RGB32 || PIXFMT == V4L2_PIX_FMT_XRGB32 || PIXFMT == V4L2_PIX_FMT_ARGB32 || PIXFMT == V4L2_PIX_FMT_RGB444 || PIXFMT == V4L2_PIX_FMT_XRGB444 || PIXFMT == V4L2_PIX_FMT_ARGB444 vec4 cell = texture(tex, xy); #if V4L2_PIX_FMT_ARGB444 || PIXFMT == V4L2_PIX_FMT_ARGB32 alpha = cell.r; #endif rgb.rgb = cell.gba; #elif PIXFMT == V4L2_PIX_FMT_BGR32 || PIXFMT == V4L2_PIX_FMT_XBGR32 || PIXFMT == V4L2_PIX_FMT_ABGR32 || PIXFMT == V4L2_PIX_FMT_BGRX444 || PIXFMT == V4L2_PIX_FMT_BGRA444 || PIXFMT == V4L2_PIX_FMT_XBGR555 || PIXFMT == V4L2_PIX_FMT_ABGR555 || PIXFMT == V4L2_PIX_FMT_RGBX555 || PIXFMT == V4L2_PIX_FMT_RGBA555 vec4 cell = texture(tex, xy); #if PIXFMT == V4L2_PIX_FMT_ABGR32 || PIXFMT == V4L2_PIX_FMT_BGRA444 || PIXFMT == V4L2_PIX_FMT_RGBA555 || PIXFMT == V4L2_PIX_FMT_ABGR555 alpha = cell.a; #endif rgb.rgb = cell.bgr; #elif PIXFMT == V4L2_PIX_FMT_RGBX32 || PIXFMT == V4L2_PIX_FMT_RGBA32 || PIXFMT == V4L2_PIX_FMT_RGBX444 || PIXFMT == V4L2_PIX_FMT_RGBA444 || PIXFMT == V4L2_PIX_FMT_RGB555 || PIXFMT == V4L2_PIX_FMT_XRGB555 || PIXFMT == V4L2_PIX_FMT_ARGB555 || PIXFMT == V4L2_PIX_FMT_BGRX555 || PIXFMT == V4L2_PIX_FMT_BGRA555 vec4 cell = texture(tex, xy); #if PIXFMT == V4L2_PIX_FMT_RGBA32 || PIXFMT == V4L2_PIX_FMT_RGBA444 || PIXFMT == V4L2_PIX_FMT_ARGB555 || PIXFMT == V4L2_PIX_FMT_BGRA555 alpha = cell.a; #endif rgb.rgb = cell.rgb; #elif PIXFMT == V4L2_PIX_FMT_BGRX32 || PIXFMT == V4L2_PIX_FMT_BGRA32 || PIXFMT == V4L2_PIX_FMT_XBGR444 || PIXFMT == V4L2_PIX_FMT_ABGR444 vec4 cell = texture(tex, xy); #if PIXFMT == V4L2_PIX_FMT_BGRA32 || PIXFMT == V4L2_PIX_FMT_ABGR444 alpha = cell.r; #endif rgb.rgb = cell.abg; #elif PIXFMT == V4L2_PIX_FMT_GREY rgb.rgb = vec3(float(texture(tex, xy).r) / 255.0); #elif PIXFMT == V4L2_PIX_FMT_Y10 rgb.rgb = vec3(float(texture(tex, xy).r) / 1023.0); #elif PIXFMT == V4L2_PIX_FMT_Y12 rgb.rgb = vec3(float(texture(tex, xy).r) / 4095.0); #elif PIXFMT == V4L2_PIX_FMT_Y16 || PIXFMT == V4L2_PIX_FMT_Z16 rgb.rgb = vec3(float(texture(tex, xy).r) / 65535.0); #elif PIXFMT == V4L2_PIX_FMT_Y16_BE uint low = texture(tex, xy).r >> 8; uint high = (texture(tex, xy).r & 0xFFu) << 8; rgb.rgb = vec3(float(high | low) / 65535.0); #else vec4 color = texture(tex, xy); // RGB pixel formats with an alpha component #if PIXFMT == V4L2_PIX_FMT_ARGB555 || PIXFMT == V4L2_PIX_FMT_ARGB555X || PIXFMT == V4L2_PIX_FMT_RGBA555 || PIXFMT == V4L2_PIX_FMT_ABGR555 || PIXFMT == V4L2_PIX_FMT_BGRA555 alpha = color.a; #endif #if PIXFMT == V4L2_PIX_FMT_BGR666 vec3 frgb = floor(color.rgb * 255.0); frgb.r = floor(frgb.r / 64.0) + mod(frgb.g, 16.0) * 4.0; frgb.g = floor(frgb.g / 16.0) + mod(frgb.b, 4.0) * 16.0; frgb.b = floor(frgb.b / 4.0); rgb = frgb / 63.0; #elif PIXFMT == V4L2_PIX_FMT_BGR24 rgb = color.bgr; #else rgb = color.rgb; #endif #endif #if PIXFMT == V4L2_PIX_FMT_SBGGR8 || PIXFMT == V4L2_PIX_FMT_SGBRG8 || PIXFMT == V4L2_PIX_FMT_SGRBG8 || PIXFMT == V4L2_PIX_FMT_SRGGB8 rgb = vec3(urgb) / 255.0; #elif PIXFMT == V4L2_PIX_FMT_SBGGR10 || PIXFMT == V4L2_PIX_FMT_SGBRG10 || PIXFMT == V4L2_PIX_FMT_SGRBG10 || PIXFMT == V4L2_PIX_FMT_SRGGB10 rgb = vec3(urgb) / 1023.0; #elif PIXFMT == V4L2_PIX_FMT_SBGGR12 || PIXFMT == V4L2_PIX_FMT_SGBRG12 || PIXFMT == V4L2_PIX_FMT_SGRBG12 || PIXFMT == V4L2_PIX_FMT_SRGGB12 rgb = vec3(urgb) / 4095.0; #elif PIXFMT == V4L2_PIX_FMT_SBGGR16 || PIXFMT == V4L2_PIX_FMT_SGBRG16 || PIXFMT == V4L2_PIX_FMT_SGRBG16 || PIXFMT == V4L2_PIX_FMT_SRGGB16 rgb = vec3(urgb) / 65535.0; #endif #if QUANT == V4L2_QUANTIZATION_LIM_RANGE rgb -= 16.0 / 255.0; rgb *= 255.0 / 219.0; #endif #else // IS_RGB #if PIXFMT == V4L2_PIX_FMT_YUYV vec4 luma_chroma = texture(tex, xeven ? xy : vec2(xy.x - texl_w, xy.y)); yuv.r = xeven ? luma_chroma.r : luma_chroma.b; yuv.gb = luma_chroma.ga; #elif PIXFMT == V4L2_PIX_FMT_YVYU vec4 luma_chroma = texture(tex, xeven ? xy : vec2(xy.x - texl_w, xy.y)); yuv.r = xeven ? luma_chroma.r : luma_chroma.b; yuv.gb = luma_chroma.ag; #elif PIXFMT == V4L2_PIX_FMT_UYVY vec4 luma_chroma = texture(tex, xeven ? xy : vec2(xy.x - texl_w, xy.y)); yuv.r = xeven ? luma_chroma.g : luma_chroma.a; yuv.gb = luma_chroma.rb; #elif PIXFMT == V4L2_PIX_FMT_VYUY vec4 luma_chroma = texture(tex, xeven ? xy : vec2(xy.x - texl_w, xy.y)); yuv.r = xeven ? luma_chroma.g : luma_chroma.a; yuv.gb = luma_chroma.br; #elif PIXFMT == V4L2_PIX_FMT_NV16 || PIXFMT == V4L2_PIX_FMT_NV16M || PIXFMT == V4L2_PIX_FMT_NV12 || PIXFMT == V4L2_PIX_FMT_NV12M yuv.r = texture(ytex, xy).r; if (xeven) { yuv.g = texture(uvtex, xy).r; yuv.b = texture(uvtex, vec2(xy.x + texl_w, xy.y)).r; } else { yuv.g = texture(uvtex, vec2(xy.x - texl_w, xy.y)).r; yuv.b = texture(uvtex, xy).r; } #elif PIXFMT == V4L2_PIX_FMT_NV61 || PIXFMT == V4L2_PIX_FMT_NV61M || PIXFMT == V4L2_PIX_FMT_NV21 || PIXFMT == V4L2_PIX_FMT_NV21M yuv.r = texture(ytex, xy).r; if (xeven) { yuv.g = texture(uvtex, vec2(xy.x + texl_w, xy.y)).r; yuv.b = texture(uvtex, xy).r; } else { yuv.g = texture(uvtex, xy).r; yuv.b = texture(uvtex, vec2(xy.x - texl_w, xy.y)).r; } #elif PIXFMT == V4L2_PIX_FMT_NV24 yuv.r = texture(ytex, xy).r; yuv.g = texture(uvtex, xy).r; yuv.b = texture(uvtex, xy).g; #elif PIXFMT == V4L2_PIX_FMT_NV42 yuv.r = texture(ytex, xy).r; yuv.g = texture(uvtex, xy).g; yuv.b = texture(uvtex, xy).r; #elif PIXFMT == V4L2_PIX_FMT_YUV555 vec4 color = texture(tex, xy); alpha = color.a; yuv = color.rgb; #elif PIXFMT == V4L2_PIX_FMT_YUV444 || PIXFMT == V4L2_PIX_FMT_YUV32 || PIXFMT == V4L2_PIX_FMT_XYUV32 || PIXFMT == V4L2_PIX_FMT_AYUV32 vec4 color = texture(tex, xy); #if PIXFMT == V4L2_PIX_FMT_AYUV32 alpha = color.r; #endif yuv.r = color.g; yuv.g = color.b; yuv.b = color.a; #elif PIXFMT == V4L2_PIX_FMT_VUYA32 || PIXFMT == V4L2_PIX_FMT_VUYX32 vec4 color = texture(tex, xy); #if PIXFMT == V4L2_PIX_FMT_VUYA32 alpha = color.a; #endif yuv.r = color.b; yuv.g = color.g; yuv.b = color.r; #elif PIXFMT == V4L2_PIX_FMT_YUVA32 || PIXFMT == V4L2_PIX_FMT_YUVX32 vec4 color = texture(tex, xy); #if PIXFMT == V4L2_PIX_FMT_YUVA32 alpha = color.a; #endif yuv = color.rgb; #elif PIXFMT == V4L2_PIX_FMT_YUV565 yuv = texture(tex, xy).rgb; #elif PIXFMT == V4L2_PIX_FMT_YUV422P || PIXFMT == V4L2_PIX_FMT_YUV420 || PIXFMT == V4L2_PIX_FMT_YVU420 || PIXFMT == V4L2_PIX_FMT_YUV420M || PIXFMT == V4L2_PIX_FMT_YVU420M || PIXFMT == V4L2_PIX_FMT_YUV422M || PIXFMT == V4L2_PIX_FMT_YVU422M || PIXFMT == V4L2_PIX_FMT_YUV444M || PIXFMT == V4L2_PIX_FMT_YVU444M yuv = vec3(texture(ytex, xy).r, texture(utex, xy).r, texture(vtex, xy).r); #endif #if IS_HSV vec4 color = texture(tex, xy); #if PIXFMT == V4L2_PIX_FMT_HSV32 color = color.gbar; #endif // From http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl float hue = color.r; #if HSVENC == V4L2_HSV_ENC_180 hue = (hue * 256.0) / 180.0; #endif vec3 c = vec3(hue, color.g, color.b); vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); rgb = c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); #else // IS_HSV yuv.gb -= 0.5; #endif #if QUANT != V4L2_QUANTIZATION_FULL_RANGE || YCBCRENC == V4L2_YCBCR_ENC_XV601 || YCBCRENC == V4L2_YCBCR_ENC_XV709 /* * xv709 and xv601 have full range quantization, but they still * need to be normalized as if they were limited range. But the * result are values outside the normal 0-1 range, which is the * point of these extended gamut encodings. */ const vec3 scale = vec3(255.0 / 219.0, 255.0 / 224.0, 255.0 / 224.0); const vec3 offset = vec3(16.0 / 255.0, 0.0, 0.0); yuv -= offset; yuv *= scale; #endif #if YCBCRENC == V4L2_YCBCR_ENC_BT2020_CONST_LUM // BT.2020_CONST_LUM luma coefficients float y = yuv.r; float u = yuv.g; float v = yuv.b; float b = u <= 0.0 ? y + 1.9404 * u : y + 1.5816 * u; float r = v <= 0.0 ? y + 1.7184 * v : y + 0.9936 * v; float lin_r = (r < 0.081) ? r / 4.5 : pow((r + 0.099) / 1.099, 1.0 / 0.45); float lin_b = (b < 0.081) ? b / 4.5 : pow((b + 0.099) / 1.099, 1.0 / 0.45); float lin_y = (y < 0.081) ? y / 4.5 : pow((y + 0.099) / 1.099, 1.0 / 0.45); float lin_g = lin_y / 0.6780 - lin_r * 0.2627 / 0.6780 - lin_b * 0.0593 / 0.6780; float g = (lin_g < 0.018) ? lin_g * 4.5 : 1.099 * pow(lin_g, 0.45) - 0.099; rgb = vec3(r, g, b); #elif !IS_HSV rgb = yuv2rgb * yuv; #endif #endif // !IS_RGB // Convert non-linear R'G'B' to linear RGB, taking into account the // colorspace. #if XFERFUNC == V4L2_XFER_FUNC_SMPTE240M // Old obsolete HDTV standard. Replaced by REC 709. // This is the transfer function for SMPTE 240M #define XFER(c) (((c) < 0.0913) ? (c) / 4.0 : pow(((c) + 0.1115) / 1.1115, 1.0 / 0.45)) rgb = vec3(XFER(rgb.r), XFER(rgb.g), XFER(rgb.b)); #elif XFERFUNC == V4L2_XFER_FUNC_SRGB // This is used for sRGB as specified by the IEC FDIS 61966-2-1 standard #define XFER(c) (((c) < -0.04045) ? -pow((-(c) + 0.055) / 1.055, 2.4) : (((c) <= 0.04045) ? (c) / 12.92 : pow(((c) + 0.055) / 1.055, 2.4))) rgb = vec3(XFER(rgb.r), XFER(rgb.g), XFER(rgb.b)); #elif XFERFUNC == V4L2_XFER_FUNC_OPRGB // Avoid powers of negative numbers rgb = max(rgb, vec3(0.0)); rgb = pow(rgb, vec3(2.19921875)); #elif XFERFUNC == V4L2_XFER_FUNC_DCI_P3 // Avoid powers of negative numbers rgb = max(rgb, vec3(0.0)); rgb = pow(rgb, vec3(2.6)); #elif XFERFUNC == V4L2_XFER_FUNC_SMPTE2084 const vec3 m1 = vec3(1.0 / ((2610.0 / 4096.0) / 4.0)); const vec3 m2 = vec3(1.0 / (128.0 * 2523.0 / 4096.0)); const vec3 c1 = vec3(3424.0 / 4096.0); const vec3 c2 = vec3(32.0 * 2413.0 / 4096.0); const vec3 c3 = vec3(32.0 * 2392.0 / 4096.0); // Avoid powers of negative numbers rgb = max(rgb, vec3(0.0)); rgb = pow(rgb, m2); // The factor 100 is because SMPTE-2084 maps to 0-10000 cd/m^2 // whereas other transfer functions map to 0-100 cd/m^2. rgb = pow(max(rgb - c1, vec3(0.0)) / (c2 - rgb * c3), m1) * 100.0; #elif XFERFUNC != V4L2_XFER_FUNC_NONE // All others use the transfer function specified by REC 709 #define XFER(c) (((c) <= -0.081) ? -pow(((c) - 0.099) / -1.099, 1.0 / 0.45) : (((c) < 0.081) ? (c) / 4.5 : pow(((c) + 0.099) / 1.099, 1.0 / 0.45))) rgb = vec3(XFER(rgb.r), XFER(rgb.g), XFER(rgb.b)); #endif // Convert the given colorspace to the REC 709/sRGB colorspace. All colors are // specified as linear RGB. #if COLSP == V4L2_COLORSPACE_SMPTE170M || COLSP == V4L2_COLORSPACE_SMPTE240M || COLSP == V4L2_COLORSPACE_470_SYSTEM_M || COLSP == V4L2_COLORSPACE_470_SYSTEM_BG || COLSP == V4L2_COLORSPACE_OPRGB || COLSP == V4L2_COLORSPACE_DCI_P3 || COLSP == V4L2_COLORSPACE_BT2020 rgb = colconv * rgb; #endif // Convert linear RGB to non-linear R'G'B', assuming an sRGB display colorspace. #define XFER_SRGB(c) (((c) < -0.0031308) ? -1.055 * pow(-(c), 1.0 / 2.4) + 0.055 : (((c) <= 0.0031308) ? (c) * 12.92 : 1.055 * pow(c, 1.0 / 2.4) - 0.055)) rgb = vec3(XFER_SRGB(rgb.r), XFER_SRGB(rgb.g), XFER_SRGB(rgb.b)); fs_FragColor = vec4(rgb, alpha); } OpenGL Error: fragment shader compilation failed. layout(location = 0) in vec2 position; layout(location = 1) in vec2 texCoord; out vec2 vs_TexCoord; void main() { gl_Position = vec4(position, 0.0, 1.0); vs_TexCoord = texCoord; } OpenGL Error: vertex shader compilation failed. OpenGL Error: shader bind failed. uvtexutexvtexYUV paint ytexYUV paint utexYUV paint vtexNV12 paint ytexNV12 paint uvtexNV24 paint ytexNV24 paint uvtexNV16 paint ytexNV16 paint uvtexYUY2 paintRGB paintBayer paintPacked YUV paintpaintGL - no dataOpenGL ES unsupported format 0x%08x ('%s'). paintGLAverage render time: %09u ns, frame %d render time: %09u ns V4L2_PIX_FMT_YVYUV4L2_PIX_FMT_UYVYV4L2_PIX_FMT_VYUYV4L2_PIX_FMT_YUV422PV4L2_PIX_FMT_YVU420V4L2_PIX_FMT_YUV420V4L2_PIX_FMT_NV12V4L2_PIX_FMT_NV21V4L2_PIX_FMT_NV16V4L2_PIX_FMT_NV61V4L2_PIX_FMT_NV24V4L2_PIX_FMT_NV42V4L2_PIX_FMT_NV16MV4L2_PIX_FMT_NV61MV4L2_PIX_FMT_YVU420MV4L2_PIX_FMT_YUV420MV4L2_PIX_FMT_YVU422MV4L2_PIX_FMT_YUV422MV4L2_PIX_FMT_YVU444MV4L2_PIX_FMT_YUV444MV4L2_PIX_FMT_NV12MV4L2_PIX_FMT_NV21MV4L2_PIX_FMT_YUV444V4L2_PIX_FMT_YUV555V4L2_PIX_FMT_YUV565V4L2_PIX_FMT_YUV32V4L2_PIX_FMT_AYUV32V4L2_PIX_FMT_XYUV32V4L2_PIX_FMT_VUYA32V4L2_PIX_FMT_VUYX32V4L2_PIX_FMT_YUVA32V4L2_PIX_FMT_YUVX32V4L2_PIX_FMT_RGB32V4L2_PIX_FMT_XRGB32V4L2_PIX_FMT_ARGB32V4L2_PIX_FMT_RGBX32V4L2_PIX_FMT_RGBA32V4L2_PIX_FMT_BGR32V4L2_PIX_FMT_XBGR32V4L2_PIX_FMT_ABGR32V4L2_PIX_FMT_BGRX32V4L2_PIX_FMT_BGRA32V4L2_PIX_FMT_RGB24V4L2_PIX_FMT_BGR24V4L2_PIX_FMT_RGB565V4L2_PIX_FMT_RGB565XV4L2_PIX_FMT_RGB444V4L2_PIX_FMT_XRGB444V4L2_PIX_FMT_ARGB444V4L2_PIX_FMT_XBGR444V4L2_PIX_FMT_ABGR444V4L2_PIX_FMT_RGBX444V4L2_PIX_FMT_RGBA444V4L2_PIX_FMT_BGRX444V4L2_PIX_FMT_BGRA444V4L2_PIX_FMT_RGB555V4L2_PIX_FMT_XRGB555V4L2_PIX_FMT_ARGB555V4L2_PIX_FMT_RGB555XV4L2_PIX_FMT_XRGB555XV4L2_PIX_FMT_ARGB555XV4L2_PIX_FMT_RGBX555V4L2_PIX_FMT_RGBA555V4L2_PIX_FMT_XBGR555V4L2_PIX_FMT_ABGR555V4L2_PIX_FMT_BGRX555V4L2_PIX_FMT_BGRA555V4L2_PIX_FMT_RGB332V4L2_PIX_FMT_BGR666V4L2_PIX_FMT_SBGGR8V4L2_PIX_FMT_SGBRG8V4L2_PIX_FMT_SGRBG8V4L2_PIX_FMT_SRGGB8V4L2_PIX_FMT_SBGGR10V4L2_PIX_FMT_SGBRG10V4L2_PIX_FMT_SGRBG10V4L2_PIX_FMT_SRGGB10V4L2_PIX_FMT_SBGGR12V4L2_PIX_FMT_SGBRG12V4L2_PIX_FMT_SGRBG12V4L2_PIX_FMT_SRGGB12V4L2_PIX_FMT_SBGGR16V4L2_PIX_FMT_SGBRG16V4L2_PIX_FMT_SGRBG16V4L2_PIX_FMT_SRGGB16V4L2_PIX_FMT_HSV24V4L2_PIX_FMT_HSV32V4L2_PIX_FMT_GREYV4L2_PIX_FMT_Y10V4L2_PIX_FMT_Y12V4L2_PIX_FMT_Y16V4L2_PIX_FMT_Y16_BEV4L2_PIX_FMT_Z16V4L2_FIELD_ANYV4L2_FIELD_NONEV4L2_FIELD_TOPV4L2_FIELD_BOTTOMV4L2_FIELD_INTERLACEDV4L2_FIELD_SEQ_TBV4L2_FIELD_SEQ_BTV4L2_FIELD_ALTERNATEV4L2_FIELD_INTERLACED_TBV4L2_FIELD_INTERLACED_BTV4L2_COLORSPACE_DEFAULTV4L2_COLORSPACE_SMPTE170MV4L2_COLORSPACE_SMPTE240MV4L2_COLORSPACE_REC709V4L2_COLORSPACE_470_SYSTEM_MV4L2_COLORSPACE_470_SYSTEM_BGV4L2_COLORSPACE_SRGBV4L2_COLORSPACE_OPRGBV4L2_COLORSPACE_BT2020V4L2_COLORSPACE_RAWV4L2_COLORSPACE_DCI_P3V4L2_XFER_FUNC_DEFAULTV4L2_XFER_FUNC_709V4L2_XFER_FUNC_SRGBV4L2_XFER_FUNC_OPRGBV4L2_XFER_FUNC_SMPTE240MV4L2_XFER_FUNC_NONEV4L2_XFER_FUNC_DCI_P3V4L2_XFER_FUNC_SMPTE2084V4L2_YCBCR_ENC_DEFAULTV4L2_YCBCR_ENC_601V4L2_YCBCR_ENC_709V4L2_YCBCR_ENC_XV601V4L2_YCBCR_ENC_XV709V4L2_YCBCR_ENC_BT2020V4L2_YCBCR_ENC_BT2020_CONST_LUMV4L2_YCBCR_ENC_SMPTE240MV4L2_HSV_ENC_180V4L2_HSV_ENC_256V4L2_QUANTIZATION_DEFAULTV4L2_QUANTIZATION_FULL_RANGEV4L2_QUANTIZATION_LIM_RANGE/usr/include/qt/QtCore/qlist.hindex out of rangeQList::operator[]anynonetopbottominterlacedseq_tbseq_btalternateinterlaced_tbinterlaced_bt/usr/include/qt/QtCore/qstring.huint(i) < uint(size())Missing parameter for %s Usage: qvidcap Options: -d, --device= use device as the video device if is a number, then /dev/video is used -f, --file= read from the file for the raw frame data -p, --port[=] listen for a network connection on the given port The default port is %d -T, --tpg use the test pattern generator If neither -d, -f, -p nor -T is specified then use /dev/video0. -c, --count= stop after captured frames -b, --buffers= request buffers (default 4) when streaming from a video device -s, --single-step[=] starting with frame (default 1), pause after displaying each frame until Space is pressed. -C, --colorspace= override colorspace can be one of the following colorspaces: smpte170m, smpte240m, rec709, 470m, 470bg, jpeg, srgb, oprgb, bt2020, dcip3 -X, --xfer-func= override transfer function can be one of the following transfer functions: default, 709, srgb, oprgb, smpte240m, smpte2084, dcip3, none -Y, --ycbcr-enc= override Y'CbCr encoding can be one of the following Y'CbCr encodings: default, 601, 709, xv601, xv709, bt2020, bt2020c, smpte240m -H, --hsv-enc= override HSV encoding can be one of the following HSV encodings: default, 180, 256 -Q, --quant= override quantization can be one of the following quantization methods: default, full-range, lim-range -P, --pixelformat=

For video devices: set the format to this pixel format. For reading from a file: interpret the data using this pixel format setting. Use -l to see the list of supported pixel formats. -l, --list-formats display all supported formats -h, --help display this help message -t, --timings report frame render timings -v, --verbose be more verbose -R, --raw open device in raw mode --opengl force openGL to display the video --opengles force openGL ES to display the video The following options are ignored when capturing from a video device: -W, --width= set width -H, --height= set frame (not field!) height -A, --padding= set additional horizontal padding (after width) --fps= set frames-per-second (default is 30) The following option is only valid when reading from a file: -F, --field= override field setting can be one of the following field layouts: any, none, top, bottom, interlaced, seq_tb, seq_bt, alternate, interlaced_tb, interlaced_bt The following options are specific to the test pattern generator: --list-patterns list available patterns for use with --pattern --pattern= choose output test pattern, the default is 0 --square show a square in the middle of the output test pattern --border show a border around the pillar/letterboxed video --sav insert an SAV code in every line --eav insert an EAV code in every line --pixel-aspect= select a pixel aspect ratio, the default is to autodetect can be one of: square, ntsc, pal --video-aspect= select a video aspect ratio, the default is to use the frame ratio can be one of: 4x3, 14x9, 16x9, anamorphic --alpha= value to use for the alpha component, range 0-255, the default is 0 --alpha-red-only only use the --alpha value for the red colors, for all others use 0 --rgb-lim-range encode RGB values as limited [16-235] instead of full range --hor-speed= choose speed for horizontal movement, the default is 0 and the range is [-3...3] --vert-speed= choose speed for vertical movement, the default is 0 and the range is [-3...3] --perc-fill= percentage of the frame to actually fill. the default is 100%% These options use the test pattern generator to test the OpenGL backend: --test= test all formats, each test generates frames. --test-mask= mask which tests are performed. is a bit mask with these values: 0x01: mask iterating over pixel formats 0x02: mask iterating over fields 0x04: mask iterating over colorspaces 0x08: mask iterating over transfer functions 0x10: mask iterating over Y'CbCr/HSV encodings 0x20: mask iterating over quantization ranges Invalid parameter for %s could not opening socket could not bind: %s could not accept unknown protocol ID unknown protocol version %u unsupported FMT_VIDEO size unsupported FMT_VIDEO plane size :/qvidcap.pngV4L2 Viewer-d--device-f--file-p--port-T--tpg--test-mask--test-P--pixelformat-W--width-H--height-A--padding-F--field-C--colorspacesmpte170msmpte240mrec709470m470bgjpegsrgboprgbbt2020dcip3-Y--ycbcr-enc601709xv601xv709bt2020c--hsv-enc180256-X--xfer-funcsmpte2084-Q--quantfull-rangelim-range--list-patternsList of available patterns: %2d: %s --fps--pattern--square--border--sav--eav--pixel-aspectsquarentscpal--video-aspect4x314x916x9anamorphic--alpha-red-only--alpha--rgb-lim-range--hor-speed--vert-speed--perc-fill-h--help-l--list-formats'%s': %s -t--timings--opengles--opengl-v--verbose-R--raw-c--count-b--buffers-s--single-stepInvalid argument %s /dev/video%1%2VIDIOC_QUERYCAPVIDIOC_QUERY_EXT_CTRLVIDIOC_TRY_EXT_CTRLSVIDIOC_QUERYCTRLVIDIOC_G_SELECTIONcould not open %s is not a video capture device VIDIOC_S_FMTCould not set format: '%s' %s Fall back to format: '%s' %s VIDIOC_CROPCAPVIDIOC_REQBUFSVIDIOC_CREATE_BUFSVIDIOC_QUERYBUFVIDIOC_STREAMON&other != thisbasic_string: construction from null is not validradioAnalog TVDigital TVSDRunknownstereolang1lang2bilingualVSBUnknown-/interval-uses-which Driver version : %d.%d.%d Capabilities : 0x%08x Read-Only Sub-Device Streams Support %s Client Capabilities: 0x%016llx -BEmono stereo lang1 lang2 rds bilingual sap 0x%08xnot definedreduced blanking v2, reduced blanking, framerate can be reduced by 1/1.001, framerate is reduced by 1/1.001, can detect reduced framerates, half-line, CE-video, first field has extra line, has picture aspect, has CTA-861 VIC, has HDMI VIC, basic_string::erase%s: __pos (which is %zu) > this->size() (which is %zu) Primary Graphics Surface Overlay Matches Capture/Output Size Chromakey Source Chromakey Global Alpha Local Alpha Local Inverted Alpha PALNTSCSECAMATSC Extern Overlay Clipping List Clipping Bitmap ts-unknownts-monotonicts-copyts-invalid, ts-src-eof, ts-src-soe, ts-src-invalid1 Hz 62.5 kHz multi-standard hwseek-bounded hwseek-wrap rds-block-I/O rds-controls freq-bands hwseek-prog-lim Video Capture Video Capture Multiplanar Video Output Video Output Multiplanar Video Memory-to-Memory Video Memory-to-Memory Multiplanar Video Overlay Video Output Overlay VBI Capture VBI Output Sliced VBI Capture Sliced VBI Output RDS Capture RDS Output SDR Capture SDR Output Metadata Capture Metadata Output Tuner Touch Device HW Frequency Seek Modulator Audio Radio I/O MC Read/Write Streaming Extended Pix Format Device Capabilities Driver name : %s Card type : %s Bus info : %s Device Caps : 0x%08x 8-bit RGB 3-3-216-bit A/XRGB 4-4-4-416-bit ARGB 4-4-4-416-bit XRGB 4-4-4-416-bit RGBA 4-4-4-416-bit RGBX 4-4-4-416-bit ABGR 4-4-4-416-bit XBGR 4-4-4-416-bit BGRA 4-4-4-416-bit BGRX 4-4-4-416-bit A/XRGB 1-5-5-516-bit ARGB 1-5-5-516-bit XRGB 1-5-5-516-bit ABGR 1-5-5-516-bit XBGR 1-5-5-516-bit RGBA 5-5-5-116-bit RGBX 5-5-5-116-bit BGRA 5-5-5-116-bit BGRX 5-5-5-116-bit RGB 5-6-516-bit A/XRGB 1-5-5-5 BE16-bit ARGB 1-5-5-5 BE16-bit XRGB 1-5-5-5 BE16-bit RGB 5-6-5 BE18-bit BGRX 6-6-6-1424-bit BGR 8-8-824-bit RGB 8-8-832-bit BGRA/X 8-8-8-832-bit BGRA 8-8-8-832-bit BGRX 8-8-8-832-bit A/XRGB 8-8-8-832-bit ARGB 8-8-8-832-bit XRGB 8-8-8-832-bit ABGR 8-8-8-832-bit XBGR 8-8-8-832-bit RGBA 8-8-8-832-bit RGBX 8-8-8-832-bit RGBX 10-10-10-232-bit RGBA 10-10-10-232-bit ARGB 2-10-10-1048-bit BGR 16-16-1648-bit RGB 16-16-1612-bit Depth BGR12-bit Depth BGRA8-bit Greyscale4-bit Greyscale6-bit Greyscale10-bit Greyscale12-bit Greyscale12-bit Greyscale (bits 15-4)14-bit Greyscale16-bit Greyscale16-bit Greyscale BE10-bit Greyscale (Packed)10-bit Greyscale (MIPI Packed)10-bit greyscale (IPU3 Packed)12-bit Greyscale (MIPI Packed)14-bit Greyscale (MIPI Packed)Interleaved 8-bit GreyscaleInterleaved 12-bit Greyscale16-bit DepthPlanar 10:16 Greyscale Depth4-bit Depth Confidence (Packed)8-bit Palette8-bit Chrominance UV 4-4Planar YVU 4:1:0Planar YVU 4:2:0YUYV 4:2:2YYUV 4:2:2YVYU 4:2:2UYVY 4:2:2VYUY 4:2:2Planar YUV 4:2:2Planar YUV 4:1:1YUV 4:1:1 (Packed)16-bit A/XYUV 4-4-4-416-bit A/XYUV 1-5-5-516-bit YUV 5-6-524-bit YUV 4:4:4 8-8-832-bit A/XYUV 8-8-8-832-bit AYUV 8-8-8-832-bit XYUV 8-8-8-832-bit VUYA 8-8-8-832-bit VUYX 8-8-8-832-bit YUVA 8-8-8-832-bit YUVX 8-8-8-8Planar YUV 4:1:0Planar YUV 4:2:08-bit Dithered RGB (BTTV)YUV 4:2:0 (M420)12-bit YUV 4:4:4 PackedY/UV 4:2:0Y/VU 4:2:0Y/UV 4:2:2Y/VU 4:2:2Y/UV 4:4:4Y/VU 4:4:410-bit Y/UV 4:2:012-bit Y/UV 4:2:0Y/UV 4:2:0 (4x4 Linear)Y/UV 4:2:0 (16x16 Linear)Y/UV 4:2:0 (32x32 Linear)10-bit Y/UV 4:2:0 (4x4 Linear)Y/UV 4:2:0 (N-C)Y/VU 4:2:0 (N-C)Y/UV 4:2:2 (N-C)Y/VU 4:2:2 (N-C)Y/UV 4:2:0 (64x32 MB, N-C)Y/UV 4:2:0 (16x16 MB, N-C)12-bit Y/UV 4:2:0 (N-C)Planar YUV 4:2:0 (N-C)Planar YVU 4:2:0 (N-C)Planar YUV 4:2:2 (N-C)Planar YVU 4:2:2 (N-C)Planar YUV 4:4:4 (N-C)Planar YVU 4:4:4 (N-C)8-bit Bayer BGBG/GRGR8-bit Bayer GBGB/RGRG8-bit Bayer GRGR/BGBG8-bit Bayer RGRG/GBGB10-bit Bayer BGBG/GRGR10-bit Bayer GBGB/RGRG10-bit Bayer GRGR/BGBG10-bit Bayer RGRG/GBGB10-bit Bayer BGBG/GRGR Packed10-bit Bayer GBGB/RGRG Packed10-bit Bayer GRGR/BGBG Packed10-bit Bayer RGRG/GBGB Packed10-bit bayer BGGR IPU3 Packed10-bit bayer GBRG IPU3 Packed10-bit bayer GRBG IPU3 Packed10-bit bayer RGGB IPU3 Packed8-bit Bayer BGBG/GRGR (A-law)8-bit Bayer GBGB/RGRG (A-law)8-bit Bayer GRGR/BGBG (A-law)8-bit Bayer RGRG/GBGB (A-law)8-bit Bayer BGBG/GRGR (DPCM)8-bit Bayer GBGB/RGRG (DPCM)8-bit Bayer GRGR/BGBG (DPCM)8-bit Bayer RGRG/GBGB (DPCM)12-bit Bayer BGBG/GRGR12-bit Bayer GBGB/RGRG12-bit Bayer GRGR/BGBG12-bit Bayer RGRG/GBGB12-bit Bayer BGBG/GRGR Packed12-bit Bayer GBGB/RGRG Packed12-bit Bayer GRGR/BGBG Packed12-bit Bayer RGRG/GBGB Packed14-bit Bayer BGBG/GRGR14-bit Bayer GBGB/RGRG14-bit Bayer GRGR/BGBG14-bit Bayer RGRG/GBGB14-bit Bayer BGBG/GRGR Packed14-bit Bayer GBGB/RGRG Packed14-bit Bayer GRGR/BGBG Packed14-bit Bayer RGRG/GBGB Packed16-bit Bayer BGBG/GRGR16-bit Bayer GBGB/RGRG16-bit Bayer GRGR/BGBG16-bit Bayer RGRG/GBGBGSPCA SN9C20X I420GSPCA SPCA501GSPCA SPCA505GSPCA SPCA508GSPCA STV0680A/V + VBI Mux PacketGSPCA CIT YYVYUYGSPCA KONICA420Mediatek 8-bit Block Format24-bit HSV 8-8-832-bit XHSV 8-8-8-8Complex U8Complex U16LEComplex S8Complex S14LEReal U12LEPlanar Complex U16BEPlanar Complex U18BEPlanar Complex U20BE16-bit Signed Deltas8-bit Signed Deltas16-bit Unsigned Touch Data8-bit Unsigned Touch DataR-Car VSP1 1-D HistogramR-Car VSP1 2-D HistogramUVC Payload Header MetadataIntel D4xx UVC MetadataVivid MetadataRockchip ISP1 3A ParametersRockchip ISP1 3A StatisticsNV12 (8x128 Linear)NV12M (8x128 Linear)10-bit NV12 (8x128 Linear, BE)10-bit NV12M (8x128 Linear, BE)10-bit YUYV Packed12-bit YUYV Packed16-bit YUYV PackedRPi PiSP BE Config formatMotion-JPEGJFIF JPEG1394MPEG-1/2/4H.264H.264 (No Start Codes)H.264 MVCH.264 Parsed Slice DataH.263MPEG-1 ESMPEG-2 ESMPEG-2 Parsed Slice DataMPEG-4 Part 2 ESXvidVC-1 (SMPTE 412M Annex G)VC-1 (SMPTE 412M Annex L)VP8VP8 FrameVP9VP9 FrameHEVCHEVC Parsed Slice DataFWHTFWHT StatelessSorenson SparkRealVideo 8RealVideo 9 & 10GSPCA CPiA YUVGSPCA SN9C10XRaw Philips Webcam Type (Old)Raw Philips Webcam Type (New)GSPCA ET61X251GSPCA SPCA561GSPCA PAC207GSPCA MR97310AGSPCA JL2005BCDGSPCA SN9C2028GSPCA SQ905CGSPCA PJPGGSPCA OV511GSPCA OV518JPEG LiteGSPCA SE401S5C73MX interleaved UYVY/JPEGMediatek Compressed FormatQCOM Compressed 8-bit FormatQCOM Compressed 10-bit FormatAspeed JPEGAV1 FrameMediatek 10bit Tile ModeMediatek 10bit Raster ModeHextile Compressed FormatPiSP 8b RGRG/GBGB mode1 comprPiSP 8b GRGR/BGBG mode1 comprPiSP 8b GBGB/RGRG mode1 comprPiSP 8b BGBG/GRGR mode1 comprPiSP 8b monochrome mode1 comprPiSP 8b RGRG/GBGB mode2 comprPiSP 8b GRGR/BGBG mode2 comprPiSP 8b GBGB/RGRG mode2 comprPiSP 8b BGBG/GRGR mode2 comprPiSP 8b monochrome mode2 comprUnknown (DefaultSMPTE 170MSMPTE 240MBroken Bt878470 System M470 System BGopRGBDCI-P3BT.2020RawFull RangeLimited RangeSMPTE 2084AnyTopBottomInterlacedSequential Top-BottomSequential Bottom-TopAlternatingInterlaced Top-BottomInterlaced Bottom-TopITU-R 601xvYCC 601xvYCC 709BT.2020 Constant LuminanceHSV with Hue 0-179HSV with Hue 0-255cropVideo CaptureVideo Capture MultiplanarVideo OutputVideo Output MultiplanarVideo OverlayVBI CaptureVBI OutputSliced VBI CaptureSliced VBI OutputVideo Output OverlaySDR CaptureSDR OutputMetadata CaptureMetadata OutputPrivateunsynchronizedmappedqueueddonekeyframeP-frameB-frameerrortimecodem2m-hold-capture-bufpreparedno-cache-invalidateno-cache-cleanlastrequest-fdin-requestdropframecolorframeuserbits-fielduserbits-userdefineduserbits-8bitcharsProgressiveReduced BlankingCustom FormatsCTA-861DMTCVTGTFSDIDV timingsSDTV standardsNative Sizeno powerno signalno colorhflipvflipno hsync lockno vsync lockno standard format lockcolor killno sync lockno equalizer lockno carriermacrovisionno conditional accessVTR time constantgrabbeddisabledread-onlyupdateinactivesliderwrite-onlyvolatilehas-payloadexecute-on-writemodify-layoutdynamic-array8-VSB16-VSBDHKK1LLcM-JP443M-KRB1ID1NNc60lekeep-configcrop_defaultcrop_boundscomposecompose_defaultcompose_boundscompose_paddednative_sizecsc-colorspacecsc-hsvcsc-quantizationcsc-xfer-funccsc-ycbcrcompressedemulatedcontinuous-bytestreamdyn-resolutionenc-cap-frame-intervalmeta-line-basedteletextvpsccwsspremultiplied-alphaset-cscmmapuserptrdmabufrequestsorphaned-bufsmmap-cache-hintsmax-num-buffersremove-bufsWhite, yellow, cyan, green, magenta, red, blue, blackWhiteBlackRedGreenBlueHSVY'CbCrLumaR'G'Btpg source WxH: %ux%u (%s) tpg field: %u tpg crop: %ux%u@%dx%d tpg compose: %ux%u@%dx%d tpg colorspace: %d tpg transfer function: %d/%d tpg HSV encoding: %d/%d tpg Y'CbCr encoding: %d/%d tpg quantization: %d/%d tpg RGB range: %d/%d Source Width x Height16x9 Anamorphic75% Colorbar100% ColorbarCSC ColorbarHorizontal 100% Colorbar100% Color Squares100% Black100% White100% Red100% Green100% Blue16x16 Checkers2x2 Checkers1x1 Checkers2x2 Red/Green Checkers1x1 Red/Green CheckersAlternating Hor LinesAlternating Vert LinesOne Pixel Wide CrossTwo Pixels Wide CrossTen Pixels Wide CrossGray RampNoise16QOpenGLFunctions10CaptureWin10v4l_buffer11cv4l_buffer2activated(int)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:7931v4l2ReadEvent()../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:7932activated(int)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:7941v4l2ExceptionEvent()../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:7942activated(int)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:8151sockReadEvent()../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:8152triggered(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:2461fmtChanged(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:2462triggered(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:2551fieldChanged(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:2552triggered(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:2641colorspaceChanged(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:2642triggered(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:2731xferFuncChanged(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:2732triggered(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:2821ycbcrEncChanged(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:2822triggered(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:2911hsvEncChanged(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:2912triggered(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:3001quantChanged(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:3002triggered(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:3071windowScalingChanged(QAction *)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:3072triggered(bool)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:3111resolutionOverrideChanged(bool)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:3122triggered(bool)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:3151toggleFullScreen(bool)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:3162triggered(bool)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:3191toggleFullScreen(bool)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:3202triggered(bool)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:5151restoreAll(bool)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:5152triggered(bool)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:5181restoreSize(bool)../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:5182timeout()../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:14111tpgUpdateFrame()../v4l-utils-1.28.1/utils/qvidcap/capture.cpp:1411  YUYVYVYUUYVYVYUY422PYV12YU12NV12NV21NV16NV61NV24NV42NM16NM61YM21YM12YM61YM16YM42YM24NM12NM21Y444YUVOYUVPYUV4AYUVXYUVVUYAVUYXYUVAYUVXRGB4BX24BA24XB24AB24BGR4XR24AR24RX24RA24RGB3BGR3RGBPRGBRR444XR12AR12XB12AB12RX12RA12BX12GA12RGBOXR15AR15RGBQXR1AR1RX15RA15XB15AB15BX15BA15RGB1BGRHBA81GBRGGRBGRGGBBG10GB10BA10RG10BG12GB12BA12RG12BYR2GB16GR16RG16HSV3HSV4GREYY10 Y12 Y16 Y16Z16         !( ")0#*18$+29%,3:&-4;'.5?  hRGB3UUUUUUUUOOOO YU12YV12422PNV12NV21NV16NV61NV24NV42YUYVYVYUUYVYVYUYBGR3RGB3HSV3BGR4XR24AR24RGB4BX24BA24RX24RA24XB24AB24HSV4GREY????$/2ACEHJLOQSVXZ]_adfhkmoqtvx{}   "$&(*,-/13579;=?ABDFHJLNPRSUWY[]_`bdfhjkmoqsuvxz|~   !"$%')*,-/024578:;=?@BCEFHJKMNPQSTVWY[\^_abdeghjkmnpqstvwyz|}   !"#%&()*,-.01245689:<=>@ABCEFGIJKMNOQRSUVWXZ[\^_`bcdeghiklmopqrtuvwyz{}~     !"#$%'()*+,./012356789:;=>?@ABCEFGHIJKLNOPQRSTVWXYZ[\]_`abcdefhijklmnoprstuvwxyz|}~     !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}}~                             ! " # $ % & ' ( ) ) * + , - . / 0 1 2 2 3 4 5 6 7 8 9 : ; ; < = > ? @ A B C C D E F G H I J K K L M N O P Q R R S T U V W X Y Z Z [ \ ] ^ _ ` a a b c d e f g h h i j k l m n o o p q r s t u v v w x y z { | | } ~                                  ! ! " # $ % % & ' ( ) ) * + , - - . / 0 1 2 2 3 4 5 6 6 7 8 9 : : ; < = > > ? @ A B B C D E F F G H I J J K L M M N O P Q Q R S T U U V W X Y Y Z [ \ ] ] ^ _ ` ` a b c d d e f g h h i j k l l m n o o p q r s s t u v v w x y z z { | } ~ ~                                      ! ! " # $ $ % & ' ' ( ) ) * + , , - . / / 0 1 1 2 3 4 4 5 6 7 7 8 9 9 : ; < < = > ? ? @ A A B C D D E F F G H I I J K L L M N N O P Q Q R S S T U V V W X X Y Z [ [ \ ] ] ^ _ ` ` a b b c d e e f g g h i j j k l l m n o o p q q r s t t u v v w x y y z { { | } } ~                                         ! " " # $ $ % & & ' ( ( ) * * + , , - . . / 0 0 1 2 2 3 4 4 5 6 6 7 8 8 9 : : ; < < = > > ? ? @ A A B C C D E E F G G H I I J K K L M M N O O P Q Q R S S T U U V W W X X Y Z Z [ \ \ ] ^ ^ _ ` ` a b b c d d e f f g g h i i j k k l m m n o o p q q r s s t t u v v w x x y z z { | | } ~ ~                                             ! " " # $ $ % % & ' ' ( ( ) * * + + , - - . / / 0 0 1 2 2 3 3 4 5 5 6 6 7 8 8 9 9 : ; ; < = = > > ? @ @ A A B C C D D E F F G G H I I J J K L L M M N O O P P Q R R S S T U U V V W X X Y Z Z [ [ \ ] ] ^ ^ _ ` ` a a b c c d d e f f g g h i i j j k k l m m n n o p p q q r s s t t u v v w w x y y z z { | | } } ~              !!""#$$%%&&'(())**++,--..//01122334456677889::;;<<==>??@@AABBCDDEEFFGHHIIJJKKLMMNNOOPPQRRSSTTUUVWWXXYYZZ[\\]]^^__`aabbccddeffgghhiijkkllmmnnoopqqrrssttuvvwwxxyyz{{||}}~~            !!""#$$%%&&''(())**++,,--../00112233445566778899::;<<==>>??@@AABBCCDDEEFFGGHHIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXYYZZ[[\\]]^^__``aabbccddeeffgghhiijkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~  !!!!"""""####$$$$$%%%%&&&&&''''((((())))*****++++,,,,,----.....////000001111222223333444445555666667777888889999:::::;;;;<<<<<====>>>>>????@@@@@AAAABBBBBCCCCDDDDDEEEEFFFFFGGGGHHHHHIIIIIJJJJJKKKKLLLLLMMMMNNNNOOOOOPPPPQQQQRRRRRSSSSTTTTUUUUVVVVWWWWXXXXYYYYZZZZ[[[[\\\\]]]]^^^^____````aaaabbbbccccdddeeeeffffgggghhhiiiijjjjkkkklllmmmmnnnooooppppqqqrrrrsssttttuuuvvvvwwwxxxxyyyzzz{{{{|||}}}}~~~             !!""##$$%%&&'''(())**++,,--..//001122334455566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^__``aabbccddeeffghhiijjkkllmmnnoppqqrrssttuuvwwxxyyzz{{|}}~~        !!"##$%%&''())*++,--./001223445667889::;<<=>??@AABCCDEEFGHHIJJKLLMNNOPQQRSSTUVVWXXYZZ[\]]^__`abbcddefgghiijkllmnnopqqrsstuvvwxxyz{{|}~~       !""#$%&''()*+,,-./011234566789:;;<=>?@@ABCDEFFGHIJKKLMNOPQQRSTUVWWXYZ[\]]^_`abccdefghiijklmnoppqrstuvwwxyz{|}~~      !"#$%&'()*+,-./01234566789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'(*+,-./012346789:;<=>?ABCDEFGHIJLMNOPQRSTUWXYZ[\]^_abcdefghiklmnopqrtuvwxyz{}~     !"$%&'(*+,-.012346789:<=>?ABCDEGHIJKMNOPQSTUVXYZ[\^_`acdefgijklnopqrtuvwyz{|~    !"$%&')*+-./1234678:;<>?@BCDFGHIKLMOPQSTUWXY[\]_`acdefhijlmnpqrtuvxyz|}~     !"$%'()+,./0235679:<=>@ACDEGHJKLNOQRTUVXY[\]_`bcefgijlmopqstvwyz{}~                   " # % & ( ) + , . / 1 2 4 5 7 8 : ; = > @ A C D F G I J L M O P R S U V X Y [ \ ^ _ a b d e g h j k m n p q s t v w y z | }                   " # % & ( ) + - . 0 1 3 5 6 8 9 ; < > @ A C D F H I K L N P Q S T V W Y [ \ ^ _ a c d f g i k l n o q s t v w y { | ~                 ! # % & ( ) + - . 0 2 3 5 7 8 : < = ? A B D F H I K M N P R S U W X Z \ ] _ a b d f g i k l n p q s u w x z | }                 " $ % ' ) + , . 0 2 3 5 7 9 : < > @ A C E G H J L N O Q S U V X Z \ ] _ a c d f h j k m o q s t v x z { }                " $ & ( ) + - / 1 2 4 6 8 : < = ? A C E G H J L N P R S U W Y [ ] ^ ` b d f h i k m o q s t v x z | ~      "$&(*,-/13579;=?@BDFHJLNPRSUWY[]_aceghjlnprtvxz|~   !#%')+,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~2222222222225fjh-/>DJOTY^# ?La""[&!jh! !#').0268<>@CEIKLPRUWZ[]`adegikmnoqrtuvwxyz{||}}~~~~}}|{{zyxwvusrponlkhgeca^]ZXWSRNLKGEA@>:8420+)%#! ;0 Lt4Ld<|d L #,[5[[,\@X\T\x\ ]L]l],]@^T _h_L` pa a ,b Lb c td( Le` f Lf tf f li k< kP kd rx r Tv v d , 4 P LT̩ H \LHlLLHtLL $lH\PlLxH Lt P $lTL    h,#L%(()\)p)+ .2 6@7p|9,;< N TSH XplpwPz$\}T,LP T88ļ0DLX|L $ 08 TL x` ̪  ,\!,!8!4!"!8!`"" \#p##$$$4%%% %X & &4&LH&&',L'`'T' '(((),)LT)|)L))L)*LD*l**L*,*L@++ +L\,,l*,,,-Z-^.lbp.f.kH/Lp/LuL0L|0|0l}0L1 1,(1lX112 223 (3P3 d3x33084L4`44,4$5l5zRx lT4A,T0@T< TTHA BNx,U8U4CIXU4CIzPLRx  \U-CC <CC,8U$@HUdTV<hVB0BCQ A E C D0VA0DBM A  (<@W$,A@CBo A 0T(C(H`A CK A E(t`A CK A EWh(XTA DG C CDX PXXhlI4(DZAP F_ A `ZA D` E [([([(@[*AA BH^ A 4<`^@*A`DBDR A <h` P``d``x4g `8gA@ECa_H@CAJ A W A U A I A FC \j|A CN A 8j A0DC A  C PT 8,u})ACBBC A $xA Bj A d{l{d`)AA BE IUwAAM A _FUrSgTFjlEgFEa A RGQDRCSFa^ A CADД(B` D Fs `FA ,$A B_ A IDx[(AD B DBO A <A` BB CCDz A 4A BU A N A J< A@CCCV A DTAP BEO] CBA AEBAP IK BA BICBAP CD'AC B Gg A $Xdp )A DTH  \ 4A DE ĵ8A DF$ A0DBs C D e(AC B DD A 0L H(A@CBC\ A H  '(AC F CO OA `pA EU4 (ACBCD C (( T|(A`CBw C (T |'A`CBw C ( |'A`CBw C ( P|'A`CBw C ( |'A`CBw C ( |'A`CBw C ( LAPEBCa A $ XA DNH (L 0O'AD D B GO OA A` C OAeDDBRAAAEAH `BA DAAEAAACbAEAAAAAGBzAAAAAEm AAAAAAAA NCAAAAAAA, L>&APCBCt C  !&AA B DBCF A  C  C V C P C <LA0BE A EO DD ABL,A@BEF A Y B `MVF| A h8A` E DPBSBMIAAAAABsAAAAAI`CA  dIEBCKBAAAABDAAAAAAABAAL A` J TBQBBVAAAAAH`DA  DABBCAAAAA@h (AB BE BFp A Dx AA C BCCCo A P `H<A` B DCCCV\,Dp\0dA0BEl 0CA 00A Fr  CA X(Ch(Cx(C4(CL(Cd(C|(C(C(C@@v!AC BEMNO OMNA 4PAPABD A ,@A@ABCN A ,pTA@ABCM A ,A@ABCM A $T A0ABj A $!A0AB A $ 2HA0ABb A $H8A0ABy A D<`AC E B A 8TdA`A BG A ,[A@ABB_ A ,$$^ A@ABCr B ,TaLA@ABBs A ( dxA0AB@ A ,te A@ABC1 A (drA0AB A (  pFPPNoX7X7[oP9P9j`:`:AtB0|0|~((y@@p@|I|III4h4h8o8o.ܝܝ\ ((@@HH((X (((00(C