Closed Bug 416868 Opened 16 years ago Closed 16 years ago

Size of native style toolkit arrow

Categories

(Core :: Widget: Gtk, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla1.9beta5

People

(Reporter: micmon, Assigned: frnchfrgg)

References

Details

Attachments

(4 files, 7 obsolete files)

Firefox uses arrows that are styled similar to the GTK toolkit arrows in various places now. Those arrows don't always have right size, though. I think I remember that I read somewhere that some arrows were done smaller to look better, but I recently changed my theme to the SuSE default theme (gilouche), which already has smaller arrows... which makes them tiny in firefox.

If arrows look too big, this is a problem in the theme. Trying to work around this in Firefox breaks themes that have properly sized arrows. Of cause, this is all subjective, but trying to copy the original theme size as close as possible still seems to be the right choice, as it will not break anything that is not broken by design.

I will attach a screenshot showing arrows in firefox and a native app. Funny enough, firefox even uses differently sized arrows on the toolbars right now (history, bookmark folders).
Attached image Screenshot
What the title says. This patch needs the arrow refactoring of bug 416003.
Assignee: nobody → frnchfrgg-mozbugs
Status: NEW → ASSIGNED
Attachment #302694 - Flags: review?(ventnor.bugzilla)
Depends on: 416003
Attachment #302694 - Flags: review?(ventnor.bugzilla) → review+
The padding and margin of the arrow should probably also be set to 0, at the following places in toolbarbutton.css:
http://tinyurl.com/2r9a29
http://tinyurl.com/3dgun6
http://tinyurl.com/2ll9nf
twanno: Like so ?
Attached patch Skin patch (obsolete) — Splinter Review
The skin part is more important than I thought if we want to fully correct the different dropmarkers look, so I attach a separate addendum to attachment 302694 [details] [diff] [review] instead of a merged patch. This also solves bug 416818.
Attachment #302842 - Attachment is obsolete: true
Attachment #302889 - Flags: review?(rflint)
Blocks: 416818
Attached patch Skin patch v2 (obsolete) — Splinter Review
Sorry, this one is the complete patch (forgot to commit the explicit width/height removal before exporting the patch)
Attachment #302889 - Attachment is obsolete: true
Attachment #302896 - Flags: review?(rflint)
Attachment #302889 - Flags: review?(rflint)
Attached patch Skin patch v2.1 (obsolete) — Splinter Review
I again posted the same wrong patch. This is the real one (I verified several times to be sure)
Attachment #302896 - Attachment is obsolete: true
Attachment #302897 - Flags: review?(rflint)
Attachment #302896 - Flags: review?(rflint)
(In reply to comment #5)
> twanno: Like so ?
Yep, that is what I meant
This patch had been bitrotted by patches in blocking bugs; updated. It has also been made independent of bug 415830 (which it was not previously, contrary to what I thought).
Attachment #302694 - Attachment is obsolete: true
Attachment #303635 - Flags: review?(ventnor.bugzilla)
The skin patch hasn't been bitrotted, it still applies cleanly.
Attachment #303635 - Flags: review?(ventnor.bugzilla) → review+
(In reply to comment #11)
> The skin patch hasn't been bitrotted, it still applies cleanly.
> 
This leaves a few places in Firefox theme to be fixed:

There are two more places where a width and/or height are defined for the arrow, which can be removed: in searchbar.css (line 50) and browser.css (line 465).

And there seems to be an issue with removing the margin from the arrows: The all-tabs button will get 4px smaller, which results in the tabbrowser tabs getting 4px less high. I guess this should be solved by setting the top- and bottom-padding of the tabs to 2px.
With only what I removed, I don't see this problem for the tabs, they seem the right size to me... But I have the "epiphany" patch of bug 407775 applied.

Is the problem triggered by what you want me to remove additionnally, or is it mitigated by bug 407775 ?
(In reply to comment #13)
> Is the problem triggered by what you want me to remove additionnally, or is it
> mitigated by bug 407775 ?
> 
I see it after applying the current skin patch, both with and without the "epiphany" patch. But I was wrong about the 4px: it is only 1 or 2px that the tabs get smaller. You won't know that anything has changed until you compare a build which has the patch and a build which hasn't. So maybe nothing has to be done about it at all.
Blocks: 412773
Attachment #302897 - Flags: review?(rflint) → review+
Comment on attachment 302897 [details] [diff] [review]
Skin patch v2.1

Small patches to correct the native arrow sizes in Firefox.

Requesting approval since the bug this depends on has approval.
Attachment #302897 - Flags: approval1.9?
Comment on attachment 303635 [details] [diff] [review]
Correct arrow rect and make it advertize its size, v3

Small patches to correct the native arrow sizes in Firefox.

Requesting approval since the bug this depends on has approval.
Attachment #303635 - Flags: approval1.9?
The patches didn't bitrot at all, if I'm not mistaken.
Comment on attachment 303635 [details] [diff] [review]
Correct arrow rect and make it advertize its size, v3

Sorry, I forgot I had not asked superreview for this patch.
Attachment #303635 - Flags: superreview?(roc)
Attachment #303635 - Flags: superreview?(roc) → superreview+
Comment on attachment 302897 [details] [diff] [review]
Skin patch v2.1

a1.9+=damons
Attachment #302897 - Flags: approval1.9? → approval1.9+
Comment on attachment 303635 [details] [diff] [review]
Correct arrow rect and make it advertize its size, v3

a1.9+=damons
Attachment #303635 - Flags: approval1.9? → approval1.9+
Keywords: checkin-needed
Attachment #302897 - Attachment is obsolete: true
Attached patch Skin, unbitrotted for checkin (obsolete) — Splinter Review
Sorry, attachment 308857 [details] [diff] [review] is the widget part, not the skin part as said in the title.
Attachment #303635 - Attachment is obsolete: true
Attachment #308857 - Attachment description: Skin, unbitrotted for checkin → Widget part, unbitrotted for checkin
Attachment #308858 - Attachment is obsolete: true
Checking in toolkit/themes/gnomestripe/global/button.css;
/cvsroot/mozilla/toolkit/themes/gnomestripe/global/button.css,v  <--  button.css
new revision: 1.15; previous revision: 1.14
done
RCS file: /cvsroot/mozilla/toolkit/themes/gnomestripe/global/dropmarker.css,v
done
Checking in toolkit/themes/gnomestripe/global/dropmarker.css;
/cvsroot/mozilla/toolkit/themes/gnomestripe/global/dropmarker.css,v  <--  dropmarker.css
initial revision: 1.1
done
Checking in toolkit/themes/gnomestripe/global/jar.mn;
/cvsroot/mozilla/toolkit/themes/gnomestripe/global/jar.mn,v  <--  jar.mn
new revision: 1.34; previous revision: 1.33
done
Checking in toolkit/themes/gnomestripe/global/toolbarbutton.css;
/cvsroot/mozilla/toolkit/themes/gnomestripe/global/toolbarbutton.css,v  <--  toolbarbutton.css
new revision: 1.18; previous revision: 1.17
done
Checking in widget/src/gtk2/gtk2drawing.c;
/cvsroot/mozilla/widget/src/gtk2/gtk2drawing.c,v  <--  gtk2drawing.c
new revision: 1.93; previous revision: 1.92
done
Checking in widget/src/gtk2/gtkdrawing.h;
/cvsroot/mozilla/widget/src/gtk2/gtkdrawing.h,v  <--  gtkdrawing.h
new revision: 1.56; previous revision: 1.55
done
Checking in widget/src/gtk2/nsNativeThemeGTK.cpp;
/cvsroot/mozilla/widget/src/gtk2/nsNativeThemeGTK.cpp,v  <--  nsNativeThemeGTK.cpp
new revision: 1.151; previous revision: 1.150
done
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.9beta5
Backed out due to reftest failure.

REFTEST UNEXPECTED FAIL: file:///builds/slave/trunk_centos5/mozilla/layout/reftests/bidi/386339.html

REFTEST   IMAGE 1 (TEST): data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAPoCAYAAAAmy5qxAAAgAElEQVR4nOzdeZQV5YH+8behF5qlu0FklW5AmrXp2w0RFMEFBNEGQRahpYkyIImgEQ2ZaCY/kckySIJL4sETncRRcNSgUUgUt+DEKJq4jCEOyiHYLI4tasAga2/P7w/OvXOXqnurbvd96Ut/P+fUOVC36q33favqVj1dyzUCAAAAAEvMqa4AAAAAgNaDAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAaxIGkE2bNjEwMDAwMDAwMDA0eaisrLRxfosWzlMAAQAAAJrKGG6+AQEEAAAAlhBAIPkMIMYYBgYGBgYGBgYGBs9D+G1XxhBAkEQAAQAAALziXBLRCCAAAABIGc4lEY0AAgAAgJThXBLRCCAAAABIGc4lEY0AApwiS5YsUYcOHXT99ddbX3Z+fn7EA4I1NTXW6wB//G4vLWkdn8pt3aZt27altN9trtOWtP0g/XEuiWgEECTlqaee0gUXXKCCggIVFBSoa9euGjlypBYvXqw//OEPp7p6KXfppZeGhgMHDvie//DhwxEH9yNHjqSglvGdLicXTV0X6cBte0nU9pawjlvCtm5bKvvd5jptCdsPTg+cSyIaAQS+PfjggzLGaPny5Tp8+LAk6dixY/rP//xPderUSddcc82praAFzXFgXrRokdq3b3/K/ip8upxcnC7tSMRpe0nU9pbSN6d6W7eNAAJE4lwS0Qgg8K1///4yxuh//ud/Yj5btWoVASRNnA5tkE6fdiQjXQJIa0MAASJxLoloBBD4lpmZKWOMpk6dqvfeey/utNH3Eefn50uS9u/fH/osOC562n/7t39TUVGRsrOzFQgE9M4772jTpk0aMWKEsrKy1LdvX/32t791XZbf+SVp3759WrRokc466yx16tRJ3bp107x581RdXe26nLy8vFAbnD5fu3atBg8erKysrNA+FO/+6j179mjBggXq1auXsrOz1bNnT40bN04rV67U8ePHE64fr/NH1/Gcc85RTk6O2rdvr0suuUR/+9vfQtPef//9Ovfcc3XGGWcoNzdXHTt2VCAQ0MqVK3Xs2DFfbfdalpe2JFoXXtep17p//PHHmjdvnnr06KGOHTuqc+fOKi0t1eLFixOuF7d9QZJ69eqlLl26qL6+PjRtRkaG8vLyIvaV8O3FS9v9rGOv9W7qfhnc1pPZT5ymCa7jhQsXqnfv3urYsaO6d++uyspK7dixw/c6DpbnZZuRpM2bN6u8vFzZ2dnq16+ffvKTn/g+cX/hhRc0YsQIZWdnq3fv3vrBD34Qs26d1qnTduD2HRs93bJly3TWWWcpOztbw4cP129+85uYevnZfpqyb+D0x7kkohFA4NvAgQMjDkzdunXTlVdeqTVr1uiDDz6ImT4QCISmDb9q8s477+hrX/taxLTh5d5555367//+79D/CwoK9Mtf/lLvvvtuaNxZZ53VbPPv2bNH3bt3lzFGt956qxobG3XLLbfIGKPu3bvrk08+cVxOor88T5gwQV9++aWeeuqpiH3IqYzdu3frzDPPlDFG559/vr744gs1NDTonnvu8XQy42f+8OUvWLBA9fX1+vd///eIegddeOGFGjdunA4ePKjGxkatXbs2NN3cuXN9td1rWV7bEm9d+FmnXuo+duxYGWP0xBNPSJIaGxv129/+1vN346BBg0Ll79y5U9LJ/SA47tVXX5Uk1dTUqEuXLqqrq3Osm5e2+13H8TTnfum2DXrZT5ym2bt3b2gdX3/99WpsbNQdd9wROnF///33XeviVJ6fbeb1119X27ZtZYzR0qVL1djYqH/5l3/xFUDeeOON0B91gmV8//vf99RnwfFev2PD5w321YoVK2SMUUZGhp577jnXvkq0/TR138DpjXNJRCOAwLdnnnlGOTk5EQen8OGKK66IeCD2vvvuC322fPny0PjvfOc7uueeeyLKDi/nww8/1PHjxyPGHTx4MGbcP/7xj2aZ/9prrw2NC17Zefvtt0PjbrzxRsflJDrxe/LJJyWdfE7G7cQqWMY111wTGve73/0uosw+ffokPJnxM3/48v/85z9LOnnSHxzXsWNH1+WE92Hbtm0jrlx4abuXsry2Jd668LNOvdQ9OztbxhgVFxfrjjvu0JtvvunaR07CT05Xr14tSVq5cmVo3D//8z9Lkh544AHNmzfPtW7JBBC/69itnKbul27boJf9xGma8HW8detWSdKuXbtC4yZPnuzalkTlJdpmpk6dGhr/xhtvSJKqq6sTrpdwV1xxha8ynMZ7/Y4Nn/dPf/qTJOlvf/tbaNx5553n2leJtp+m7hs4vXEuiWgEECRlz549WrlypS644AK1b98+4kBljNGMGTNC0x48eFC5ubky5uRfEOvq6tTY2Kizzz5b+/fvjyg30UmW03Sffvpps8zfo0eP0Lj//d//lXTyVozguOLi4rjLcWtH8C/d8aYJlhFeBy+3x0TzM3/48j/++GNJJ//y7tRfdXV1WrVqlQKBgPLy8pSXl+dpHTi13WtZXtsSb134Wade6l5aWhqzrZeUlOjpp5+O29dB7733Xmi+MWPGSJLOOeccDRgwQMYYDRs2TNLJE9tf//rXCdvpZztMtI7jScV+GT3ey37iNE34Ot69e7ek/wsUxhhlZ2e7XklKVF6ibeaMM86IWXZtbW3C9RLObxlO471+x4bPu2/fvpi+atu2rU6cOOE4faLtp6n7Bk5vnEsiGgEETVZbW6vNmzdr5MiRoQNPZmZmxPMGVVVVoc82btyo119/XZdddllMWcmc6CQ6OHudP3gbhDH/dz99fn6+cnJylJOTo4KCgoTL9/q5lzpE3x7khZ/5nZbvdnJx4403hsatWrUqbhsTtd1rWV7bEm95ftapl7q//fbbGjJkSMyJljFGd9xxR9z+DiouLpYxRm3atNF7772ns88+W3fffXeonO3bt6ugoECHDh1KWLdktkNbAcTLNpHsfhLOaTtpaGiImO/vf/97UuUl2maCt19Fb6Ne2pVsGW7jvXzHOs0b3VdffPFF3Ondtp/m2Ddw+uJcEtEIIPDNmP/7a1i46NsGDh48GPrsD3/4Q2j89OnTdeONN+rRRx91LLu5T3S8zh+879sYo7179ybsA78nfl6mOVVXQBKdXHTu3Dk0LvhX42RPKr2W1RxXQPysUy91D3r77bf1wx/+UEVFRaHpox8Ad/O9730vNM+YMWO0dOlS7dixIzTu0ksvjbltyK1uyWyHp1sAcboCcvTo0dC4eFdAnMrzs820lCsgkrfv2PB5g1dAwvsq3hUQr9tPU/YNnL44l0Q0Agh8M8boRz/6Ucz4gwcPhg44hYWFMZ8HH17PyspSv379HH+QLBUnOl7nv/rqq0PjtmzZElGvOXPmaObMmY7zO/11PtkTq69//euhceFvEvrHP/6htm3b6o9//KNjWUF+5vdzchH+zM/evXsjTlr8nlR6LctrW+KtCz/r1Evd+/TpE/H/v/zlL6HpO3fuHDO9k/AHuI0xoQd/zz777NC4+++/P2a+RNu21+3wdAsg4c8Kvf7665K8PwPiVJ6fbSb8GZDgspvyDIiXMuKVneg7Nnze4DMg4X0V7xmQRNtPc+wbOH1xLoloBBD4ZszJvyr+/Oc/D90m8ve//z10ItC2bdvQw53hVq9eHTogff3rX3ctu7lPdLzOv3PnztBf5ydMmKC///3vamxs1IYNG5Sbm6u33norNH/v3r1D87/xxhvasWOHr1u03KYJf/PTuHHjdODAAdXW1ur666/X6NGj1djYGGfN+Jvfz8nFBRdcEBq3YcMG/eY3v0n6pNJrWV7bEm9d+FmnXupujNHtt9+u48ePR7yRyxijJUuWxF034YLPfOTm5oYeur/hhhtkzMm3EQWfPUhUt2S2w9MtgIRvJ9/85jcj3oLVsWNHbdu2zVd5fraZ8LdgLVmyJOEbrJyEvwXLSxnxyk70HRs+b/AtWMGXICR6C1ai7ae59g2cnjiXRDQCCHxbv369Fi5cqPLycnXt2lUFBQXKyclRUVGRrr766tBf1qLt378/9L79F198MeZzp981kCIPgtHTBKdz+q0Ev/NLJ08+qqqq1LNnz9DvTkyaNEmvvfZaRF03bdqkYcOGKTs7W7m5uRo0aJAefvjhuO3w0lbp5AP+wd80yMnJUa9evTR//nx99tlnntaPl/ndlh/9QHjw1ont27dr5MiRyszMVO/evSNOLsLn99J2r2V5bUu8deFnnXqp+6JFizRixAideeaZateundq3b69AIKAf//jHqq2t9bR+JOm2226TMUaXX355aNxzzz0nY0zMq6nj1S2Z7dBtHbtJ1X7Z1P0kXPjvxXTs2FHdunXTnDlzYl4L7rU8r9uMdHK9lZWVKSsrS7169Qq91jbRMsI9//zzod8SKSws1I9//OOIMoIP9Ceqf6Lv2PB5b7vtNhUVFSkrK0vDhw/XU0895amv3Laf5to3cHriXBLRCCCwasaMGerVq5caGhpOdVUAoEUKfwakTZs2nn6ANCjed6yfKzNAc+JcEtEIILDql7/8pb797W+f6moAQItw9913q6qqKmLcBx98EAoKF198sa/y4n3HEkBwqnAuiWgEEKTcGWecoX379unQoUM655xzHH8tHQBao7vvvlu5ubmhB97/8Y9/6Kqrrgrd3hT8McR4vH7HEkBwqnAuiWgEEKTcpZdeqk6dOqlnz576+c9/fqqrAwAtxtatW3XFFVeosLBQBQUFateunfr27avrrrtOH330kacyvHzHen3+BUgFziURjQACAACAlOFcEtF8BZDKykpt2rSJgYGBgYGBgYGBwfMQOvEkgEA+AwgAAACQLAIIJAIIAAAALCGAQEriGZDWNlRWVrbq9jMwMDAwMMQb0uU4mS71PB3bEl1fgIfQE2jt7QcAIJ50OU6mSz29SLe2pFt9kXoEkARae/sBAIgnXY6T6VJPL9KtLelWX6QeASSB1t5+AADiSZfjZLrU04t0a0u61RepRwBJoLW3HwCAeNLlONmS67lx40YFAgEZYzRt2rSE07fktjhJt/oi9ZIOIIFAQHl5eTLGKBAIKBAIRMwXHBf8PFxNTY3mzp2rgQMHqri4WHPnztWnn34as2wv0+3evVvLli3TmDFjNGLECBUVFam8vFwPP/ywY3t27typhQsXKhAIqKysTEOHDtXo0aP1ne98R2+88UaztV+SNmzYEOqDvLy80HThQ2ZmZmj6+vp6rV69WqWlpRoyZIjKyso0ZMgQVVRUaNWqVWpsbExqWieZmZkR9YhuSyAQUG5ubsK2hq/nYBudHDt2TAUFBTrzzDNVW1vrOE2wrIyMDC1YsCDu527LSaZ/vKzL6upqLVmyRIFAQOXl5SopKVFJSYkWLFigp556SnV1dSlpBwC0dOlycpkO9Uz3AOJWl5ZaX5w6TboCMm3atIQbUvTnx48f17BhwzR79mzV1dWprq5Os2bNUmlpqU6cOOF7uoceekhz587V8ePHJUmNjY1asWKFjDF6/PHHI5b93HPPqXPnznr44YdVX18fGr99+3Z97WtfU05OTrO3Pzif2xdK+DKXLFmiDh066M0334zohyVLlsgYE3GS62faRMt1a0t+fn7cz722UZLWr1+vzMxMGWO0cePGhHUzxmjDhg2e6u7Eb//Ea98LL7ygLl26aO3atRHb3meffaaqqioZY1RdXZ2SdgBAS5cuJ5fpUE8CCFoL6wHk/vvvlzFGu3btCo3btWuXjDF64IEHfE/n5Kuvvop57duePXvUqVMn3X333Y7zVFdXq3379jHjUx1AwuvYsWNHTZo0KWaaI0eOKDs7O+Kk2c+0Ti677LKI/zu1JbzOTQ0gEyZM0GOPPaaMjAxdeeWVceuWn5+viRMnqkuXLtq3b1/M515O3P32j1v79u7dq7y8PK1evdpxOXV1dSoqKnIMIM3RDgBo6dLl5PJU1fOPf/yj49VwJwQQtBbWA8jEiRNVWFgYM12fPn106aWX+p7Oyf79+2WM0S233BIat2zZMuXk5Oirr76KO2+0VAWQ8KsLQZ07d1avXr106NChhGX6mdaLRG1pSgCprq7W1KlTJUkzZsxQdna2vvjiC9ey8vPz9cknn6hr164aP358zO1kXk7c/faPW/uC200y/dwc7QCAli4VJ5fB349oTm71fP755zV58mQVFxdr6NCh6t+/v5YvX66jR48mvaxPPvlEq1at0sCBA2WM0ahRozzNFzyW/vSnP9W4cePUq1cvTZo0KeaPXKk6oW9qvxNA4JX1ANKjRw9deOGFMdONGzdOPXv29D1dtIMHD+rqq6/WyJEj9dlnn4XGDx48WCNHjoxbVyc2A8j3vvc9GWPUp08f3XHHHXr77bddn+XwM60XqQwgK1as0GuvvSZJeuutt2SM0c9+9jPXsoJ988wzz8gYozvvvDPicy8n7n77x619gwcP1ogRIxIuz0lztAMAWrp4x8ngCW344JWf6Z2mjR7nVs9rrrlG06dPD10Z/+CDD5Sfn6+FCxd6rqt08or4008/ralTp6pt27bq2rWrli1bpr/+9a+eyzDGqGvXrvrFL34h6eTzk+PHj9egQYNCt5rHa0tzaEoIIYDAK+sBJCsrS1OmTImZrqKiQtnZ2b6nCzd69Gjl5ubqwgsvjLnlpV27djG3HXnRXAEk+iH04APe0R555BGNGjVKGRkZMsbozDPP1JIlSxxv4fEzbSJeA4jTg/Tx3tzR0NCg+fPnR4ybOHFi3DAYHs4WL16s7Oxsvfvuu6FxXk/c/fSPW/tzc3OT2m6k5msHALRkfk4uUxVCmhJAnFRUVKigoMBTHbdv367ly5erW7duatOmjSZPnqxf//rXEc8MemWMibn745VXXpExRo888khoXKpP6JMNIQQQeHVaBRDp5IPGt99+uwoKCiIeQE72RNLmFZBwn376qR555BFdccUVysjIUNeuXfXRRx81eVo3qboC8uKLL2rz5s0R47Zs2SJjjOtfhcL75siRIxo0aJAGDx6sI0eOSPJ/4u6lf/wGkA8//DAUvrp3765rr7025e0AgJYolQHEzzzR03kNIPX19VqzZo1Gjhyp4cOHR7wZ0U/9vvWtb2nv3r2e5olX1uTJkyPGffnllzLGaPHixQnbEm+cl8+ip0tmXTkhgCBakwLIzJkzZYz7G5dqa2sjXjMrud9adcEFF3i6BSt6Ojdnn322zjnnnND/W9otWH786le/kjFGN998c1LTRl+tcJKqADJ//nwVFRXFDJmZmVq+fLljWdHh7J133lFWVpa+8Y1vSGraibtbX8a7Bau8vDxumW5tT2U7AKClSHUA8Tpf9G1eXgNI8Fm/8D9aej2+SyffulhQUKDs7GzNnj1bmzdvVkNDg6d5ndoQfTypr6+XMUazZs1K2Jbg/5sjgHgpy2vZBBBEa1IAWbx4sYwxrrf87N27V927d48YN3HiRBUVFcVMW1hYGPMQupfp3Fx++eXKysoK/f/mm29Wu3btdPjw4YTzhks2gIQ/ZO01gBhjdOzYsZjxR44ckTFGs2fPTmpaL1IRQA4cOKBbb73Vcfrly5erR48eEa9DDnK6OnTnnXfKmJOv8PVy4u63f9zad/PNNys7O1sHDx6MuywvASSZdgBAS9cSroA4BY/oedzqWVBQoPHjx0dM6yeASCef1Xj00Uc1YcIEZWRk6KyzztL3v//9iDd5euF0BeTgwYO+roDE6y8//c8VEKRSkwLIgw8+KGOM64/+PfTQQ6qoqIgYt3btWhkT+bsJH330kYyJfL2u1+k6derkGCpKSkoi7qP8+OOPlZ+fr3vvvdexrg8++KByc3Njfugw2QASfnIZL4CE395jjNGrr74aM82ePXtkjNF3v/vdpKb1IhUB5L777tOzzz7rOP3LL78sY4zj504n7g0NDbr44ovVtWvXiGAZrz5++setffv27VN+fr5WrlwZd1leA4jfdgBAS9cSnwHxE0Dat28fc8fFuHHjkj5R3r17t1asWKG+ffsqIyNDF110UcTzG/EYE/sMSPC2ZT/PgISHsOjBaz2SvVLlhACCaE0KIIcOHVJhYaF69+4dcelSkrZu3arevXtry5YtEeODPzA4Z84c1dfXq66uTldddZXrDxEmmq5Dhw664YYbQuMaGhq0evVqGWN01113RSz7pZdeUteuXbVu3brQX94bGxv1zDPPKD8/P/TWCa/tb44AEj1dWVlZROj64osvQg/DhY/3M60XqQgg5513Xuh5h2gnTpxQx44dHa/UuD0fs2/fPnXu3Flt27Z1rUd4ffz0T7z2vfTSSyooKNCaNWsi3kJSU1Oj22+/XcYYVVVVpaQdANDSpSqANHVar7dgzZgxQ1lZWdq2bZukk+cvbdu2bfKJcmNjo1566SVVVlaqXbt2nuYxxqh9+/ahP7QG34I1cODAtHgLlhsCCKI1KYBIJ68sXH/99SouLla/fv1UVlamsrIyTZ06Va+88opjmTU1NZozZ46Ki4tVXFysuXPnxlx58Drdo48+qoqKCg0YMECBQED9+/fX+eefr/Xr1zsue+fOnbrmmmtUUlKisrIyDRw4UJdddplefvllX+0vKipSbm6ujDGuzzisX79eRUVFMsYoNzfXdbqgBx54QLNmzdKAAQNUUlKikpIS9evXT1VVVdqxY0dEvfxMm0j4A3dOz4nE+zz8LVjBN31JUmlpqXJyclyfOQm+CSwrKys0TbCsNm3auM735JNPxjxX5MRP/yRqv3TyL1pLly5VaWmpysrKNHjwYPXv31+zZs3SE088EXErWXO2AwBaOr+v4fV7S5UXTQkgn3/+uaZPn678/HyNGjVKlZWVGjt2bOiY4PcPek7i3cYrSRs3box4o+SKFSs0ZswY9ezZs8m/A5KKK05+EUAQrckB5HTX2tsPAEA86XKcTJd6euG1LX5vvUqV06nv0TwIIAm09vYDABBPuhwn06WeXqTqCkiqnE59j+ZBAEmgtbcfAIB40uU4mS719CLd2pJu9UXqEUASaO3tBwAgnnQ5TqZLPb1It7akW32RegSQBFp7+wEAiCddjpPpUk8v0q0t6VZfpJ6vAFJZWalNmza1uqG1t5+BgYGBgSHekC7HyXSp5+nYltCJJwEE8hlAAAAAgGQRQCARQAAAAGAJAQRSEs+AtLahsrKyVbefgYGBgYEh3pAux8l0qefp2Jbo+gI8hJ5Aa28/AADxpMtxMl3q6UW6tSXd6ovUI4Ak0NrbDwBAPOlynEyXenqRbm1Jt/oi9QggCbT29gMAEE+6HCfTpZ5epFtb0q2+SD0CSAKtvf0AAMSTLsfJllTPjRs3KhAIyBijadOm+Z6/JbXFi3SrL1Iv6QASCASUl5cnY4wCgYACgUDEfMFxwc/D1dTUaO7cuRo4cKCKi4s1d+5cffrppzHL9jpd0LFjx1RQUKAzzzxTtbW1jtME65SXl6dAIKDS0lL17NlTffv21Z133tls7ZekDRs2xCwvesjMzIxbptv0mZmZEeOd5svNzXXtK7flDRgwQIMGDdLatWsd59m+fbvmz5+vYcOGKRAIaOjQoZo3b57ef/99T+WHfxYIBJSRkaEFCxY4zhv8PDifnzY397LDVVdXa8mSJQoEAiovL1dJSYlKSkq0YMECPfXUU6qrq0vY7+HbxLBhw9S3b19ddNFFuv/++3X8+HHXeZur/8PbGb2P+t1HUrEvJOJ1X7e1nm33gY3twO+ykv1OSrQum2u/T7bvmrINRU+bkZEhY4zr96skHTlyRGeccUbcNkje94Ho/igtLVWvXr1UXl6udevWeZon/LPc3Fx169YtYny6nFy2xHqebgHErS4ttb44dZp0BWTatGkJN6Toz48fP65hw4Zp9uzZqqurU11dnWbNmqXS0lKdOHHC93Th1q9fr8zMTBljtHHjxrh1Ct/hGxsb9a//+q8yxuiRRx5p1vY7LS9cTk6OrzKD03uZLz8/P2HdnOZ7/PHHZYzRPffcEzH+ueeeU+fOnbVu3TrV19dLkurr6/Xwww8rLy9PTz/9tKfyo9tjjNGGDRtcP3f6t1vZ4W1uzmUHvfDCC+rSpYvWrl0bsR1+9tlnqqqqkjFG1dXVrssMit4m6uvrtXnzZg0YMEAjR47U/v37Y+ZJRf8H65KofvH2Ea/LcSo3nFN/u/G6rwfLtbGebfWBze3Az7KS/U5KtC6bc79Ppu+CdfC7DTnJzc1VRkaGzjrrLNc/NNx7771q06ZNwvXldR9w6o/6+nrddtttMsbomWee8TSPJP3gBz9QWVlZzB8C0+XksiXWkwCC1sp6ALn//vtljNGuXbtC43bt2iVjjB544AHf04WbMGGCHnvsMWVkZOjKK6+MW6foHf6rr76SMUbz5s2LGJ/qABL+ajovZQanv+yyyxLO5+VLzW15ZWVl6tu3b+j/e/bsUadOnXTvvfc6lnPXXXepY8eOvk/K8vPzNXHiRHXp0kX79u2L+Tz8wO63zc25bEnau3ev8vLytHr1asfy6urqVFRUlFQACdq/f7969uypiy++OGJ8qvo/WBcv9XPbR7wux63coOh9IR6v+7pkbz3b6AOb24HfZSX7nZRoXTbXfp9s30n+tyE3+fn5qqyslDFGP/vZz2I+r6urU1lZmcaPH59wfXndB9z649ChQzLGaP78+Qnnqa2t1bXXXqsxY8bo4MGDMdOny8llS6wnAQStlfUAMnHiRBUWFsZM16dPH1166aW+pwuqrq7W1KlTJUkzZsxQdna2vvjiC9c6Re/wBw8edPwyTlUAcbs64VZmogOc17p4na+iokJZWVmh/990001q166dDh8+7FjOoUOHlJOTo5tuuslXvfLz8/XJJ5+oa9euGj9+vBobGyM+j9fuRGU397KXLVumnJwcHTp0yLVMr+IddO655x4ZY/TKK6+ExqWq/6WuNHcAACAASURBVIN18VI/t33E63LcyvVypS6cn309WL6N9WyjD2xuB8kuy88y/a5LL+W6fd6U9jTleyq6nOrqauXk5Khnz546evRoxOfr16/XrbfemrCNfvrNrawDBw7IGON4a1n4PAcPHtT48eM1adIkHTlyxHEZzX1yGX5VxukKTbLc6vn8889r8uTJKi4u1tChQ9W/f38tX748Zv0kEn4Fze1qWrTg98FPf/pTjRs3Tr169dKkSZMS/iErFSf0zdHvBBB4ZT2A9OjRQxdeeGHMdOPGjVPPnj19Txe0YsUKvfbaa5Kkt956y/UvTME6hZ8AHDt2TN/61rdkjNFjjz0WMW1rDSBDhgxRcXFx6P+DBg3SyJEj45Y1YsQIDR482Fe9gv3wzDPPyBgT84xBqgOIn2UPHjxYI0aMcC3Pj3gBZMeOHTLG6NZbbw2NS1X/B+uSqH7x9hGvy3EqV/IfQPzs6+Hlp3o92+gDr9vBkCFDfNct+vNktzk/y/S7Lr2U6/Z5U9rTlO8pp3JuueUWGWO0Zs2aiM9HjRqlmpqahG30029OZR0+fFjf/OY3lZubqzfffNN1nurqag0ZMkQzZ850vfVZcj5OGhP7Y3RejRkzJnQL8LRp02JuB3bitIzocW7H82uuuUbTp08PPdf1wQcfKD8/XwsXLvRc57vvvju0X999990aM2aMp/mMMeratat+8YtfSDr5XTt+/HgNGjQo7vOAqTihT6bfoxFA4JX1AJKVlaUpU6bETFdRUaHs7Gzf00lSQ0NDzF9lJ06c6HqwMSbyIdDu3bsrPz9ft956a8zDfM0VQKIfOnV7QDxYpt+HU5srgDQ0NOjee++VMZG3uuXm5sbcChFt8uTJMe3yGgIkafHixcrOzta7774bGmcjgHhdtpc+8CpeADl27JiMMbr66qt9LTuZ/g/WxWmc133E63KcyvXysoRwfvd1yd56ttEHXreD9u3b+65b9OfJbnNel5nMuvRSrtvnTWlPU76nnMo5cOCAOnfurG7duoWuyGzevFmLFi2K2wbJf79FH1MKCwuVmZmpSZMmRdzi7DRPt27dlJeXp88//zxuu7ycXPoJIbt27VKnTp1044036ujRo7r88st14403qqGhwXWepgQQJxUVFSooKEhY1/r6et1www2qqKjQ0aNHdcMNNygvL08fffRRwnmD9Yi+2+OVV16RMc7P2wWl4oQ+mX6PRgCBV6dFAHnxxRe1efPmiHFbtmyRMUZ//etfHesUffK3d+9ejR8/XkOHDo24lN1aroAED07FxcUaPXp0zNtRUnXiE94PR44c0aBBgzR48ODQpX5bAcTLst364MMPP4w4Ub/22mtdlxkUL4AcPXo06QDSHCeebvVz20e8LsetXD9XQPzu69Hlp3I92+iDdu3aedoO2rVr57tuyQaQ6G3O6zKTWZdeym1qAHFqT1O+p9zK+clPfiJjjFatWiVJuuSSS/Thhx/GbYPkv9+iyzpx4oSWLVsmY4zrbULBeS666CIZY3Tuuefqq6++cm1XcwcQSVq3bp2MMZoyZYqOHz+uyZMnO54TxFuG1wBSX1+vNWvWaOTIkRo+fHjEm8ASmTJlii677DIdP35cU6ZMkTFG69ev99xOY4wmT54cMe7LL7+UMUaLFy92nc+tLfHq7KU9yfS7l2UQQBCtSQFk5syZMsa4vna0trY25i/3brdWXXDBBZ5uwYqeTpLmz5+voqKimCEzM1PLly+PKcPt5O/DDz+UMUbf//73Q+NS/RB6tOa+lUpSzNWUZJbn5faF8vJy37d+RJ94vfPOO8rKytI3vvENSfYCiJdlDx48WOXl5a7lSd7XdbzpgtvhbbfdFhqXbP8ns4/Gq5/TPiKlZl9w4ndfl+ytZxt9MHDgQE/bQfRtRMlsB8luc0GJ+iOZdeml3KbcguXWnqZ8T7mVc/z4cRUVFemMM87Qli1bIh4kj9dGv/3mVFZtba2Kioo0fPhwx2UE5zly5IgmTJggY4zGjx+vY8eOOU6figDywgsvyBij0aNHq7GxUQsWLNDo0aPjzhNcRnA5XgNI8Lmv8NvRvO7Po0aN0oIFC9TY2KhRo0bJGKMXXnjBczudvg/q6+tljNGsWbNc54t321u8ZSWSTL97WQYBBNGaFEAWL14sY4zjW0Gkk38x7d69e8S4iRMnqqioKGbawsLCmIfQvUx34MCBiHvlwy1fvlw9evQIvW4xvB1OJwB1dXUyxmj27NmhcckGkPC/EJ/qANIc8914442eHuC8+eabfZXv9JffO++8U8acfLWkzQCSaNk333yzsrOzHd8CE9QcAWTNmjUyxui//uu/QuOS7f9k9tF49XPaR6TU7AvRktnXJXvr2UYfLF261Np2kOw2FxSvP5Jdl4nKjfd5U9rTlO+peOWsX79expy8JW/r1q0J25BMv7mVFbwC8+qrr8Z8Fj7PsWPHNHny5NBfxZ1uwWzuALJ//3716NFDM2bM0OHDh7Vw4ULNmDEj7kPhTsEjenlu9SwoKND48eMjpvV6bDx69KhmzJihRYsW6fDhw5oxY4Z69Oihzz77zFNbna6ABF/44fcKSLw+9tL/yfS703K81hetW5MCyIMPPihjjB5++GHHeR966CFVVFREjFu7dq2MiXyH/kcffSRjIp858Drdfffdp2effdZx+S+//LKMMTGfu50AVFdXyxgT8RaUZANI+AEp3gmHl1dMepHq+RK9wnLNmjXKy8uLOcFJJgQ0NDTo4osvVteuXSPexOW37s297H379ik/P18rV650LbOpAaSmpkbdu3f3/Rpet/5PZh+NVz+nfURKzb4QLZl9XbK3nm30wc6dO5Wbmxt3O+jUqVOzbAfJbnNB8foj2XWZqNx4nzelPU35nopXTmNjo0aMGKGxY8d6akMy/RYvzLRv315z5syJ+Sx6nvDbi+bMmRPzTEBzB5DLLrtM3/72t9XY2KhFixaF/h1PdPl+Akj79u1j7rgYN26c5/o2NDTolltu0XXXXRf6t9fnyIyJfQYkeEtdMs+AhIev6CGRZPrdqT1+6ovWq0kB5NChQyosLFTv3r1j3qSxdetW9e7dW1u2bIkYH/yBwTlz5qi+vl51dXW66qqrXH+IMNF05513nuurAU+cOKGOHTvG/LXW6QTgq6++0uzZs5WTk6P33nvPU/ub44TD7w8RurEx37PPPuv6I16dO3fW888/77t8t3vf9+3bp86dO6tt27ZJ1z0Vy37ppZdUUFCgNWvWRLyhpKamRrfffruMMaqqqnJdZlD0NlFfX6/nnntOZ599tusPESbT/8nso071k9z3ESk1+0K0ZPZ1yd56ttEHkvTEE08oLy/PcTvo0qVLzPMBUvLbQTLbXFC8/kh2XSYqN9HnybanKd9TXsqJ5taGZPotXn8sXrxYWVlZqqmpSTjPiRMnNH36dBljQg/LBzV3AAn/pfh4vxqfqPzocW71nDFjhrKysrRt2zZJJ/eJtm3b+j6mJlvv9u3bh/6wGnwL1sCBA62/BSuZ+ntFAEG0JgUQSfr44491/fXXq7i4WP369VNZWZnKyso0derUiN8xCFdTU6M5c+aouLhYxcXFmjt3bswvq3qZrrS0VDk5OTHPNQQF3y6TlZUVmiYQCIQueQefiRg+fLgKCws1depUvfHGG57aX1RUpNzcXBljXO/HXb9+vYqKimSMUW5urut04fUNPvjm9LyGG5vzbd++XfPmzdOQIUMUCAQ0dOhQVVVV6YMPPvBVfvD/bdq0cV3uk08+6fr2r0R1T+Wyd+/eraVLl6q0tFRlZWUaPHiw+vfvr1mzZumJJ55wvXUkfPnh22BJSYn69u2riy66SPfff3/c11366f8gv/uo330kFftCtGT3dVvr2UYfhNu2bZuqqqpUUlKi0tJS9enTR4sWLdLOnTtd50nmu1pKbpuLt/8lsy69lOvlc7/taeo2FF1WsJx437VubUh2H4jXH++//76MMerbt69mzpyZcJ66ujrNnj1bxhgNGjQo9CIGr6/h9RNC/GpKAPn88881ffp05efna9SoUaqsrNTYsWNDfeDlx2X92rhxY+i7dtq0aVqxYoXGjBmjnj17NtvvgLSkE30CCKI1OYCc7lp7+wG0bDt27FCHDh304IMP6ssvvzzV1UErlC7HyXSppxeJ2pLqwOfX6dT3aB4EkARae/sBtHw//OEPQycbXn+BGWgu6XKcTJd6esEVEKQ7AkgCrb39ANLDunXrdPHFF+v3v//9qa4KWpl0OU6mSz29SLe2pFt9kXoEkARae/sBAIgnXY6T6VJPL9KtLelWX6QeASSB1t5+AADiSZfjZLrU04t0a0u61Rep5yuAVFZWatOmTa1uaO3tZ2BgYGBgiDeky3EyXep5OrYldOJJAIF8BhAAAAAgWQQQSAQQAAAAWEIAgZTEMyCtbaisrGzV7WdgYGBgYIg3pMtxMl3qeTq2Jbq+AA+hJ9Da2w8AQDzpcpxMl3p6kW5tSbf6IvUIIAm09vYDABBPuhwn06WeXqRbW9Ktvkg9AkgCrb39AADEky7HyXSppxfp1pZ0qy9SjwCSQGtvPwAA8aTLcfJU1nPjxo0KBAIyxmjatGlNLi9d+jwo3eqL1Es6gAQCAeXl5ckYo0AgoEAgEDFfcFzw86A9e/bon//5nzVixAiVl5ersLBQ559/vp566inH5dfU1Gju3LkaOHCgiouLNXfuXH366acR0+zevVvLli3TmDFjNGLECBUVFam8vFwPP/xwTHkvv/yyxo4dq4EDB2rYsGGaOXOmdu/e7bv99fX1Wr16tUpLSzVkyBCVlZVpyJAhqqio0KpVq9TY2Oipr4L/z8jI0IIFC2KWH/55dB9LUnV1tZYsWaJAIKDy8nKVlJSopKRECxYs0FNPPaW6ujpP9QjasGFDaL3l5eWFpgsfMjMzXfsrVctxKtNt+szMzIjxTvPl5ub6bsOAAQM0aNAgrV271nGe7du3a/78+Ro2bJgCgYCGDh2qefPm6f333/fVR8lsE37a3FK2x0SOHTumgoICnXnmmaqtrXWc5nTcf4Kaa3sK74fo72O/y0p230q0Lptr+02275qyDUVPm5GRIWOM6/eEJB05ckRnnHFG3DZI3veB6P4oLS1Vr169VF5ernXr1nmaJ/yz3NxcdevWLWF7g9Ll5LIl1PN0DyBudWmp9cWp06QrINOmTUu4IUV/fs011ygQCGj//v2SpNraWn3961+XMUb/8R//ETHt8ePHNWzYMM2ePVt1dXWqq6vTrFmzVFpaqhMnToSme+ihhzR37lwdP35cktTY2KgVK1bIGKPHH388NN3LL7+sNm3aaM2aNaFxP/rRj1RUVKR//OMfvtq/ZMkSdejQQW+++WZEfZcsWSJjTMyJVqK+ysnJkTFGGzZscP082gsvvKAuXbpo7dq1Ef3x2WefqaqqSsYYVVdX+6pHULwvSae6REvFcrz0odf58vPzE9bNab7HH39cxhjdc889EeOfe+45de7cWevWrVN9fb2kkyH14YcfVl5enp5++mlP5Ue3x+s24bfNLWV7jGf9+vXKzMyUMUYbN26MO+3ptv+kYnsK1qspy0p230q0Lptz+02m74J18LsNOcnNzVVGRobOOuus0DEp2r333qs2bdokXF9e9wGn/qivr9dtt90mY4yeeeYZT/NI0g9+8AOVlZXF/KEvnnQ5uWwJ9SSAtKz64tQ5JQHk0UcfjRi3b98+GWNUUlISMf7++++XMUa7du0Kjdu1a5eMMXrggQfiLverr76KefXb2LFj1adPn4jpGhoa1LNnT/3oRz9yLMet/R07dtSkSZNipj9y5Iiys7N9B5D8/HxNnDhRXbp00b59+2I+jz747d27V3l5eVq9erVjeXV1dSoqKkrJCVR4n7pJxXISlRmc/rLLLks4n5cDgNvyysrK1Ldv39D/9+zZo06dOunee+91LOeuu+5Sx44dfa8LP9uE3za3lO0xngkTJuixxx5TRkaGrrzyyrjTnk77T6q2p2C9mrKsZPetROuyubbfZPtO8r8NucnPz1dlZaWMMfrZz34W83ldXZ3Kyso0fvz4hOvL6z7g1h+HDh2SMUbz589POE9tba2uvfZajRkzRgcPHoxbr2jpcnLZEupJAGlZ9cWpYz2AOKmrq5MxRj179owYP3HiRBUWFsZM36dPH1166aVxy9y/f7+MMbrllltC43Jzc2MOdJI0adIknXvuuY7luLW/c+fO6tWrlw4dOhS3HkFeTvg++eQTde3aVePHj4+4hUuKPfgtW7ZMOTk5npfvtR5BTl+SXq4apHI5bmUmOjHwWhev81VUVCgrKyv0/5tuuknt2rXT4cOHHcs5dOiQcnJydNNNN/mql99twk/ZLWV7dFNdXa2pU6dKkmbMmKHs7Gx98cUXp7y+NvafVG1PwXo1x7L8LNPvuvRSrtvnTWlPU/a36HKqq6uVk5Ojnj176ujRoxGfr1+/XrfeemvCNvrpN7eyDhw4IGOM461l4fMcPHhQ48eP16RJk3TkyBFP7QyXypNLt3WZDLd6Pv/885o8ebKKi4s1dOhQ9e/fX8uXL49Zd81R1+B3w09/+lONGzdOvXr10qRJk3z9cUZK/Ql9sv1OAIFXLSKA/OUvf5ExRv/0T/8UMb5Hjx668MILY6YfN25cTFgJd/DgQV199dUaOXKkPvvss9D43Nxcx+AyefJkde7c2bEst/Z/73vfkzFGffr00R133KG333475oAVzssJnyQ988wzMsbozjvvjPg8+uA3ePBgjRgxwrW8ZOsRRABxn2/IkCEqLi4O/X/QoEEaOXJk3LJGjBihwYMH+6qX323CT9ktZXt0s2LFCr322muSpLfeesv1r8m262tj//G6PQ0ZMsR33aI/T3bb9bNMv+vSS7lunzelPU3Z35zKueWWW2SMibjlV5JGjRqlmpqahG30029OZR0+fFjf/OY3lZubG3GrcPQ81dXVGjJkiGbOnBlxK6IfXk4ujYn9cTov1q5dq1/84hcJp3MqM3qcWz2vueYaTZ8+PXTnwgcffKD8/HwtXLjQUx2lk4HRy5UNY4y6du0aatOxY8c0fvx4DRo0yPWWPSepPqH32u/RCCDwqkUEkOuuu07dunXTJ598EjE+KytLU6ZMiZm+oqJC2dnZjmWNHj1aubm5uvDCC2Muo48dO1Y9evQI3RcsnbwFq3fv3mrbtq1jefHa/8gjj2jUqFGhhw7PPPNMLVmyxPHyvdcTPklavHixsrOz9e6774bGRR/83K7mJOLnBCr6IdpED26nejnBMv0+1NtcAaShoUH33nuvjIm8BdDLupg8eXJMu5p7m/BTdkvZHp00NDTE3DIyceLEuCeWp9P+43V7at++ve+6RX+e7LbrdZnJrEsv5bp93pT2NGV/cyrnwIED6ty5s7p16xb6a/LmzZu1aNGiuG2Q/Pdb9HdjYWGhMjMzNWnSpIhbmJ3m6datm/Ly8vT55597ap+TZE4uvYaQuro6TZ48Wbfffrvv8rwGECcVFRUqKChIWD9JevfddzVgwICI7SVePaPv7HjllVdkjNEjjzziaXlS6k/ovfZ7NAIIvDrlAWTTpk0qKCjQn//855jPkgkg0smHwW+//XYVFBRE/OXn+eefV5s2bfTd735XtbW1qqur0//7f/9PHTp0UIcOHVzrl6gtn376qR555BFdccUVysjIUNeuXfXRRx9FTOPnhO/IkSMaNGiQBg8eHLoc7vUE6sMPPwwdhLp3765rr73WVz2CuAISe1AvLi7W6NGjY94qk6oTRr/bhJ+yW8r26OTFF1/U5s2bI8Zt2bJFxhj99a9/PaX1tbH/tGvXztP21K5dO991SzaARG+7XpeZzLr0Um5TA4hTe5qyv7mV85Of/ETGGK1atUqSdMkll+jDDz+M2wbJf79Fl3XixAktW7ZMxhjXh+6D81x00UUyxujcc8/VV1995amN0VIZQKSTt86VlpZq4cKFcd+kF12m1wBSX1+vNWvWaOTIkRo+fHjEW8ISefHFF1VQUKDf/e53ntpijNHkyZMjxn355Zcyxmjx4sWeypC893myn0ne+91LmQQQRGtSAJk5c6aMiX3jU1BtbW3cv06/+uqrOuuss/TOO+84fu52C9YFF1wQ9xasoLPPPlvnnHNOxLgXXnghdLnzwgsv1C9/+UtNmjRJAwcOdCzD707zq1/9SsYY3XzzzRHj/ZzwSdI777yjrKwsfeMb35DkfAtJeXl53Lo4nQQ1x0O0XqRiOc19K5WkmKspySzPy20f5eXlvm+Z8btN+Cm7pWyPTubPn6+ioqKYITMzU8uXLz+l9bWx/wwcONDT9hR9G1Ey38fJbrtBifojmXXppdym3ILl1p6m7G9u5Rw/flxFRUU644wztGXLlogHyeO10W+/OZVVW1uroqIiDR8+3HEZwXmOHDmiCRMmyBij8ePH69ixY57aGS7VAUSS7rvvPmVnZ2vPnj0JywyW6zWABJ8JC/+Dpdd9ffr06SovL/d1gh793VBfXy9jjGbNmuWpDMnfbW/x6pKIl373UiYBBNGaFEAWL14sY4zjLUfSyTfNdO/e3fGzP//5zyosLNTbb7/tuuyJEyeqqKgoZnxhYWHCh9Al6fLLL494WNjNoEGDHN8SIrm33xjj+EV95MgRGWM0e/bsiPF+T/gk6c4775QxJ1+/GH3wu/nmm5WdnR33bSV+T6DCH3BMZQBJdjmpCCDNMd+NN97o6cHXpoZSKf424afslrI9Rjtw4IBuvfVWx8+WL18ecwul7fra2H+WLl2a1PaUzPdxsttuULz+SHZdJio33udNaU9T9rd45axfv17GnLwlb+vWrQnbkEy/uZUVvALz6quvxnwWPs+xY8c0efJkGWM0ZcoU198ccZPqAPL666+re/fueuWVVzyVFx1EEtWzoKBA48ePj5jW6/f/oUOHdMkll+i6667z0hTHKyAHDx5MyRWQeH3spf+99LtTuU4IIIjWpADy4IMPyhjj+IN/0snf56ioqIgZv23bNvXr109/+tOfIsaff/75Ef9fu3atjIl8F/9HH30kYyLvwe/UqZPjAaekpCTmXsvoV2AGX+v70ksvObYhXgBx+lLfs2ePjDH67ne/GzE+mRO+hoYGXXzxxeratWtMkNq3b5/y8/O1cuVK1zL9nkCFH2DjnUB5uXc+FctpqQEk0as/16xZo7y8vJgTw+beJvyU3VK2x2j33Xefnn32WcfPXn75ZRljHD8/nfafnTt3Kjc3N+721KlTp5jtKZnv42S33aB4/ZHsukxUbrzPm9Kepuxv8cppbGzUiBEjNHbsWE9tSKbf4oWZ9u3ba86cOTGfRc9z/PhxTZkyRcYYzZkzRw0NDe6NjJLKALJr1y6VlZVp27ZtvsrzE0Dat28fc7fFuHHjPLeltrZWVVVV+vGPf5xwWmNinwEJ3l6XimdAwsNY9BCP1353Wl5T6ovWo0kB5NChQyosLFTv3r1j3rKxdetW9e7dW1u2bIkYv2PHDnXv3l1Lly7VunXrIoZevXpFTBv8IcI5c+aovr5edXV1uuqqq2J+iLBDhw664YYbQuMaGhq0evVqGWN01113RZSZl5env/3tb5L+79WDc+fO9d1+Y4zKysoiwtEXX3wRenAtmd98cLJv3z517tzZ8SH5l156SQUFBVqzZk3E2zNqamp0++23yxijqqoqz/XwegLV1B8iTHY5LTWASNKzzz7r+uNnnTt31vPPP++7/GS2Ca9lt5TtMdp5553n+hrQEydOqGPHjjFXF23W19b+88QTTygvL89xe+rSpUvM8wFSct/HUnLbblC8/kh2XSYqN9HnybanKfubl3KiubUhmX6L1x+LFy9WVlaWampqEs5z4sQJTZ8+XcaY0MPyXqQygDz55JOebv9xKi96nFs9Z8yYoaysrNDJ9tatW9W2bVtfx43GxsaY8w23erZv3z70R9TgW7AGDhzYot6C5bXfvSKAIFqTAogkffzxx7r++utVXFysfv36qaysTGVlZZo6darjZbsFCxa4pnGnL+6amhrNmTNHxcXFKi4u1ty5c2N+ofXRRx9VRUWFBgwYoEAgoP79++v888/X+vXrY8qbM2eO+vbtq9LSUg0ZMkQrV66Me7nZrf0PPPCAZs2apQEDBqikpEQlJSXq16+fqqqqtGPHjogywh9oi37WIPj/Nm3axDyDEPTkk0+6Pkuze/duLV26VKWlpSorK9PgwYPVv39/zZo1S0888UTEpfqioiLl5ubKGON6f/H69etVVFQkY4xyc3Ndp4snFcuJ14fx2Jxv+/btmjdvnoYMGaJAIKChQ4eqqqpKH3zwga/ym7pNJKp7S9keo5WWlionJ8d1ucE3SWVlZYWmOR33n6Bt27apqqpKJSUlKi0tVZ8+fbRo0SLt3LnTdR6/38dBfrbdoHjbUTLr0ku5Xj73256mbkPRZQXLifed4daGZPeBeP3x/vvvyxijvn37aubMmQnnqaur0+zZs2WM0aBBgzy9OCLZ1/B6DSFeNCWAfP7555o+fbry8/M1atQoVVZWauzYsaH+8fsbHU42btyoQCAQ+uPEihUrNGbMGPXs2dPa74CcyhN/AgiiNTmAnO5ae/sBnHo7duxQhw4d9OCDD+rLL7881dUBIqTLcTJd6umF37Y0d+Dz63TqezQPAkgCrb39AFqGH/7wh6ETCLdXqwKnQrocJ9Olnl5wBQTpjgCSQGtvP4CWY926dbr44ov1+9///lRXBQhJl+NkutTTi3RrS7rVF6lHAEmgtbcfAIB40uU4mS719CLd2pJu9UXqEUASaO3tBwAgnnQ5TqZLPb1It7akW32Rer4CSGVlpTZt2tTqhtbefgYGBgYGhnhDuhwn06Wep2NbQieeBBDIZwABAAAAkkUAgUQAAQAAgCUEEEgeAkhlZWXcHxBiEokGcwAAFFdJREFUYGBgYGBgYGBg8DoAbAUAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggAAAAAawggAAAAAKwhgAAAAACwhgACAAAAwBoCCAAAAABrCCAAAAAArCGAAAAAALCGAAIAAADAGgIIAAAAAGsIIAAAAACsIYAAAAAAsIYAAgAAAMAaAggA4P+3X8cCAAAAAIP8rWexqywCgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADAJlETJYNpE0lTAAAAAElFTkSuQmCC
REFTEST   IMAGE 2 (REFERENCE): data:image/png;base64,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AAAAADxDAAEAAADgGQIIAAAAAM8QQAAAAAB4hgACAAAAwDMEEAAAAACeIYAAAAAA8AwBBAAAAIBnCCAAAAAAPEMAAQAAAOAZAggAAAAAzxBAAAAAAHiGAAIAAADAMwQQAAAAAJ4hgAAAAADwDAEEAAAAgGcIIAAAAAA8QwABAAAA4BkCCAAAAADPEEAAAAAAeIYAAgAAAMAzBBAAAAAAniGAAAAAAPAMAQQAAACAZwggAAAAADxDAAEAAADgGQIIAAAAAM8QQAAAAAB4hgACAAAAwDMEEAAAAACeIYAAAAAA8AwBBAAAAIBnCCAAAAAAPEMAAQAAAOAZAggAAAAAzxBAAAAAAHiGAAIAAADAMwQQAAAAAJ4hgAAAAADwDAEEAAAAgGcIIAAAAAA8QwABAAAA4BkCCAAAAADPEEAAAAAAeIYAAgAAAMAzBBAAAAAAniGAAAAAAPAMAQQAAACAZwggAAAAADxDAAEAAADgGQIIAAAAAM8QQAAAAAB4hgACAAAAwDMEEAAAAACeIYAAAAAA8AwBBAAAAIBnCCAAAAAAPEMAAQAAAOAZAggAAAAAzxBAAAAAAHiGAAIAAADAMwQQAAAAAJ4hgAAAAADwDAEEAAAAgGcIIAAAAAA8QwABAAAA4BkCCAAAAADPEEAAAAAAeIYAAgAAAMAzBBAAAAAAniGAAAAAAPAMAQQAAACAZwggAAAAADxDAAEAAADgGQIIAAAAAM8QQAAAAAB4hgACAAAAwDMEEAAAAACeIYAAAAAA8AwBBAAAAIBnCCAAAAAAPEMAAQAAAOAZAggAAAAAzxBAAAAAAHiGAAIAAADAMwQQAAAAAJ4hgAAAAADwDAEEAAAAgGcIIAAAAAA8QwABAAAA4BkCCAAAAADPEEAAAAAAeIYAAgAAAMAzBBAAAAAAniGAAAAAAPAMAQQAAACAZwggAAAAADxDAAEAAADgGQIIAAAAAM8QQAAAAAB4hgACAAAAwDMEEAAAAACeIYAAAAAA8AwBBAAAAIBnCCAAAAAAPEMAAQAAAOAZAggAAAAAzxBAAAAAAHiGAAIAAADAMwQQAAAAAJ4hgAAAAADwDAEEAAAAgGcIIAAAAAA8QwABAAAA4BkCCAAAAADPEEAAAAAAeIYAAgAAAMAzBBAAAAAAniGAAAAAAPAMAQQAAACAZwggAAAAADxDAAEAAADgGQIIAAAAAM8QQAAAAAB4hgACAAAAwDMEEAAAAACeIYAAAAAA8AwBBAAAAIBnCCAAAAAAPEMAAQAAAOAZAggAAAAAzxBAAAAAAHiGAAIAAADAMwQQAAAAAJ4hgAAAAADwDAEEAAAAgGcIIAAAAAA8QwABAAAA4BkCCAAAAADPEEAAAAAAeIYAAgAAAMAzBBAAAAAAniGAAAAAAPAMAQQAAACAZwggAAAAADxDAAEAAADgGQIIAAAAAM8QQAAAAAB4hgACAAAAwDMEEAAAAACeIYAAAAAA8AwBBAAAAIBnCCAAAAAAPEMAAQAAAOAZAggAAAAAzxBAAAAAAHiGAAIAAADAMwQQAAAAAJ4hgAAAAADwDAEEAAAAgGcIIAAAAAA8QwABAAAA4BkCCAAAAADPEEAAAAAAeIYAAgAAAMAzBBAAAAAAniGAAAAAAPAMAQQAAACAZwggAAAAADxDAAEAAADgGQIIAAAAAM8QQAAAAAB4hgACAAAAwDMEEAAAAACeIYAAAAAA8AwBBAAAAIBnCCAAAAAAPEMAAQAAAOAZAggAAAAAzxBAAAAAAHiGAAIAAADAMwQQAAAAAJ4hgAAAAADwDAEEAAAAgGcIIAAAAAA8QwABAAAA4BkCCAAAAADPEEAAAAAAeIYAAgAAAMAzBBAAAAAAniGAAAAAAPAMAQQAAACAZwggAAAAADxDAAEAAADgGQIIAAAAAM8QQAAAAAB4hgACAAAAwDMEEAAAAACeIYAAAAAA8AwBBAAAAIBnCCAAAAAAPEMAAQAAAOAZAggAAAAAzxBAAAAAAHiGAAIAAADAMwQQAAAAAJ4hgAAAAADwDAEEAAAAgGcIIAAAAAA8QwABAAAA4BkCCAAAAADPEEAAAAAAeIYAAgAAAMAzBBAAAAAAniGAAAAAAPAMAQQAAACAZwggAAAAADxDAAEAAADgGQIIAAAAAM8QQAAAAAB4hgACAAAAwDMEEAAAAACeIYAAAAAA8AwBBAAAAIBnCCAAAAAAPEMAAYD/334dCwAAAAAM8reexa6yCADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAREAAAYCMgAADARkAAAICNgAAAABsBAQAANgICAABsBAQAANgICAAAsBEQAABgIyAAAMBGQAAAgI2AAAAAGwEBAAA2AgIAAGwEBAAA2AgIAACwERAAAGAjIAAAwEZAAACAjYAAAAAbAQEAADYCAgAAbAQEAADYCAgAALAJcMpVoj78O5YAAAAASUVORK5CYII=
REFTEST number of differing pixels: -1
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Relanded.

Checking in toolkit/themes/gnomestripe/global/button.css;
/cvsroot/mozilla/toolkit/themes/gnomestripe/global/button.css,v  <--  button.css
new revision: 1.17; previous revision: 1.16
done
Checking in toolkit/themes/gnomestripe/global/dropmarker.css;
/cvsroot/mozilla/toolkit/themes/gnomestripe/global/dropmarker.css,v  <--  dropmarker.css
new revision: 1.3; previous revision: 1.2
done
Checking in toolkit/themes/gnomestripe/global/jar.mn;
/cvsroot/mozilla/toolkit/themes/gnomestripe/global/jar.mn,v  <--  jar.mn
new revision: 1.36; previous revision: 1.35
done
Checking in toolkit/themes/gnomestripe/global/toolbarbutton.css;
/cvsroot/mozilla/toolkit/themes/gnomestripe/global/toolbarbutton.css,v  <--  toolbarbutton.css
new revision: 1.20; previous revision: 1.19
done

Checking in widget/src/gtk2/gtk2drawing.c;
/cvsroot/mozilla/widget/src/gtk2/gtk2drawing.c,v  <--  gtk2drawing.c
new revision: 1.95; previous revision: 1.94
done
Checking in widget/src/gtk2/gtkdrawing.h;
/cvsroot/mozilla/widget/src/gtk2/gtkdrawing.h,v  <--  gtkdrawing.h
new revision: 1.58; previous revision: 1.57
done
Checking in widget/src/gtk2/nsNativeThemeGTK.cpp;
/cvsroot/mozilla/widget/src/gtk2/nsNativeThemeGTK.cpp,v  <--  nsNativeThemeGTK.cpp
new revision: 1.153; previous revision: 1.152
done
Status: REOPENED → RESOLVED
Closed: 16 years ago16 years ago
Resolution: --- → FIXED
Reftest was disabled and filed as bug 422454.
Since this landed, we got dropdown arrows that are the same size as the icon next to them with most GTK themes in SeaMonkey and Thunderbird, which looks quite ugly - is that intended? Should I file it as a new bug?
(In reply to comment #29)
> Since this landed, we got dropdown arrows that are the same size as the icon
> next to them with most GTK themes in SeaMonkey and Thunderbird, which looks
> quite ugly - is that intended? Should I file it as a new bug?

Having the arrows in the same size as native GTK apps is great. Where exactly do you see the problem? The arrow behind the previous/next icons has always been to small and is finally the right size.

I kind of agree that the dropdown arrows behind folders/livemarks now look a bit overwhelming, but remember the history of those. They where originally introduced to _replace_ the folder icons on the left, not as an addition. Perhaps the right thing would be to disable the arrows for container elements by default?


Eh.. no, THAT looks like a but that should not happen ;)

Just updated my thunderbird as well, and I see the same problem. Looks fine in Firefox, though.

@ Robert, Tuukka: do you see similarly big arrows in Firefox?
I like how the native arrow size is now, even for bookmarks folders. It mirrors exactly what is done in native GTK apps.

Yet, what Thunderbird and Seamonkey get was absolutely not intended. I think the problem is that I replaced a fixed size by what is essentially a min size. Two solutions are possible:

a) Do what firefox does for the back-forward dropdown to get correct size for the arrow (it is correctly sized there)

b) Set aIsOverridable to PR_FALSE for arrows, so that the returned min size becomes an explicit not overridable size. I think this solution is perhaps a bit too heavy-handed because it removes the ability to get arbitrarily sized arrows, and doesn't mirror what GTK does (to get the size, we ask the arrow widget for its preferred width, but the arrow widget perfectly handles being sized differently)
Giving the inner "dropdown-icon" image a "display: none" style corrects the bug; I'm not sure why Thunderbird is affected and Firefox not...
I tried to put

.dropdown-icon { display: none; }

directly into toolkit's gnomestripe, and I didn't spot any problem. Are there known uses of the dropdown icon in gnomestripe (shouldn't be since we normally have taken care of every dropdown, but...)
Depends on: 423528
If this "display: none" really doesn't cause any problems elsewhere but solve the Thunderbird and SeaMonkey issue, could you attach a patch to bug 423528 and get it in? Thanks.
Depends on: 481262
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: