Inconsistent GetEventObject() behavior for EVT_LEFT_UP on Win32 and Linux

I have written an application that works on Windows but doesn’t on Linux.
In my application I bind wx.EVT_LEFT_UP to a static bitmap. On windows GetEventObject() returns:

<wx._controls.StaticBitmap; proxy of C++ wxStaticBitmap instance at _78faaa00_p_wxStaticBitmap>

On Linux the same code returns:

<main.CalcPanel; proxy of C++ wxPanel instance at _b05b4309_p_wxPanel>

I have attached an example application which illustrates this. In the example application the image

changes on both platforms (to visually reassure me the event handler was being called). In my
application an image is displayed based on the event id.

Is this inconsistent behavior a bug or have I made some mistake in my code? I’ll be the first to admit

that my knowledge of wxPython is not very deep. My hope is that there is a better way to bind
EVT_LEFT_UP that behaves the same way on both platforms.

Thanks in advance.

Teddy

bug.tar.gz (20.3 KB)

The tar file I attached to the original message is not available from
the web archive. Here are the scripts that illustrate the problem:

*** bug.py ***
import wx
from images import *

FRAME_TITLE = "Bug example"
FRAME_SIZE = (40,140)

ID_CARD_1=130

class CalcPanel(wx.Panel):
    def __init__(self, parent):
        wx.Panel.__init__(self, parent, -1)

  self.left_clicked_card = -1
  self.card1_value = 53

        # Initialize the cards
        self.card1 = wx.StaticBitmap(self, ID_CARD_1, getbBitmap(),
name = "Card1")

        card_sizer2 = wx.BoxSizer( wx.HORIZONTAL )

        card_sizer2.Add(self.card1, 0, wx.ALIGN_CENTRE_VERTICAL)

        self.sizer = wx.BoxSizer( wx.VERTICAL )

        self.sizer.Add(card_sizer2, 0, wx.ALIGN_CENTRE_HORIZONTAL)

        self.SetSizer(self.sizer)
        self.SetAutoLayout(1)

        self.card1.Bind(wx.EVT_LEFT_UP, self.LeftClick)

    def LeftClick(self,e):
        self.left_clicked_card = e.GetId()
        card_index = self.left_clicked_card - 130
  print e.GetId(), e.GetEventObject()
  if True:
      if self.card1_value == 53:
          self.card1.SetBitmap(getjBitmap())
                self.card1_value = 1
      else:
          self.card1.SetBitmap(getbBitmap())
                self.card1_value = 53
  
class AppFrame(wx.Frame):
    def __init__(self):
        wx.Frame.__init__( self, None, -1, FRAME_TITLE,
size=FRAME_SIZE, style=wx.MINIMIZE_BOX | wx.MAXIMIZE_BOX |
wx.SYSTEM_MENU | wx.CAPTION | wx.CLOSE_BOX )
        #wx.Frame.__init__( self, None, -1, FRAME_TITLE,
size=FRAME_SIZE, style=wx.DEFAULT_FRAME_STYLE )

        # not sure why i need this line
        self.dirname=''

        # maybe could initialize PNG and ICO handler instead
        wx.InitAllImageHandlers()

        # Create the calc panel
        self.calcpanel = CalcPanel(self)

        self.Show(1)

class MyCalc(wx.App):
  def OnInit(self):
    frame = AppFrame()
    frame.Show(True)
    self.SetTopWindow(frame)
    return True

if __name__ == '__main__':
    import sys

    app = MyCalc(0)
    app.MainLoop()

*** images.py ***
from wx import ImageFromStream, BitmapFromImage
import cStringIO

···

#----------------------------------------------------------------------
def getjData():
    return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00I\x00\x00\x00a\x08\x06\x00\
\x00\x00\x9a\x8c\x8c\x87\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
\x00\x03\xecIDATx\x9c\xed]Yr\xeb \x10\xec\xb1s\xaf\xf8f\x96\x0e\x96\x04\x9dl\
\xf2\xe1\xe0\x870\x9b\xc4\xb0\xf8AWQ^\xb0\x10j\x9a\x81\x81\x91\x0c\xba\\\xa1\
\x94b\x003YI)\xc5t\xb9\xe2\xe3\xe7\xfb\x8b\x95R`fL\xec\xb1\xae+~\xbe\xbf\x98\
\x00\xf0$\xc8\x0f"\xc2%\xf4\x83u]k\xd5\xa5k\x04\x95DD\xc3w\xc3\xa0\x92\xb4\
\x8a\xa6\x9a\x02J"\xa2\xe7\xfb\x91\xd5\xe4U\x92V\x8f&g\xaa\xe9\xa1\xa4\x1d\
\x00\xf0\xb2,\xcc\xcc\xbc,\x0b\xbb~3\n\xf0\x983\xed\tp\x91b\x926\x1a\x00\xbc\
\xce\x93L[\xe4\x90\\AA\xf7\x89\x17\x9b\x14\xb3=\xa3\xda\xa6\x9d\x92\xb4\x8a\
\\\x8a\t\xe5\xfd\xcf\xd8)\xc9T\x89\xad\x98P\xde\x08x*\xc9\xb6E!;5\x92\x9a\
\x88\x08\x1f\xfaC\xe8\xc2G"\xc5\x85\xa0\x83;\xf1\xc0$)\x01A\x92Bs\xa6Rhq\xce\
\x18\xbaZ\x05\xd8\xb6m\xf7\xda\x13^\xa6\xe2\xda5\xd1\xa9\x96K\xa2\xcf\xdb\
\x93\x0b\x84\x90\xeff\xa7\xd2\x15\xb77#\x94RE\xcf\x97\x8a\x17\x92b\xbb&%+\
\xdeJ\xbd1\xbc\x90\xe4SQ\x8d\x8a\xbb\xce\xd7\x03\x00p\x17S\x00\xdf\xe0\xd0\
\x93\x0b\xb4cN\xabIw=\xfdZJE-\xbbx\n\xe0R\xd2\xfd~\x073C)\x05\x00\xd0\x1b\
\x97\xf7\xfb\xbdH\x0b\xe9\xf3\x9c\xcd\xaf\x85\x17\xf6j\x8d41\x1b\x88\n\xb60\
\x06\xb8\xa6\x00\xb5\x90JPk\xa2\x9a\x91t6@\xa3\x85}B\xab\xd1\xed\xac\x9dii\
\x9f\xaa\xb6\xcc\xd1nf\xa7\xda\xdd\x0e\xb5\xbb[.A-\x88\xaaJ\x92\x14A\xb5\x89\
\xaaF\x924A5\x89\xaaBR)\x82j\x11U\x9c\xa4\xd2\x04\xd5 \xaa(I\xb5\x83UK\xcd\
\xa1\x8a\x91\x14"\xc8\xbe\x98P\x9eY\x8e\xfd\xdbZD\x15!)\xa6 \xe3\xc4\xd1<\
\xf3s\xe8\xb8\x92D\x89\x93\x94\xd2\xc5\x8c\x13\x17!I\x9a(@\xd8-\xe9eY\xa3D=D\
\x18O5\xd4\xbau\xf4{\xdb\xee\xf8\xca4\x8fKIRj\x02\xc0\xcfX\x80\\\x9ci=W\x08\
\xb4\xd4\xe6\xa4R\n\x9f\x9f\x9f"e\x01\x02J:2\xdc\xeb\xd6q}\xb6\xf3B\xc7\xa5$\
\t5A\xca&\x1dQ\xd1\xb6m`\xe6gJ\xdd\xad\xb5\x8f\x93\xaeW\x08"\xf7\x96\xf4\xb8\
\x7f\xaf!qm\xd9J\xeaq\xdf\xde\x84D\xfd\xb2I\xeae\xd8\xf7A\xa2~\xd9\xdd\xad\
\xe7\xae\xa6\x91{}]\xec\xe0\xf6\x8eIR\x02\xba iY\x96C\xdf\xb7@\xd6dKj\xf7\
\xc3\x95\'Y\xfeY@b2y\xbb\xdd\x8a\x1e_\xba\xfcTd1\xedSAJ2[\xd9\x95\xaf\x91\
\xa3&\x89k\xab\xee\x96\x98Hm\xe5\xb3j\x90\x9c\xc3e\xb3\xcd\x9c\x17\x00\xe1s\
\x90M\x07\xb5U\x80\xc5_yr+\x93gCiRH\xca)?\x07\xe2$1\x9f\x8b\xbb<\x12\xf1[;\
\xae\xb3\x08I\xcc\x0fe\xb8\xa2i}\xeb;\xa1\x8b\x96(?\x07\xc5H:\x82\xb7\x8c\
\x99\xac\x8dw\x88\x99l\xfe@\x97\x94U\x84\xd6\xf5k\xaa\xa4\xd48\xed\x1e\xe2\
\xb9\x9b\xf4\xf5\x19X\x1a\xc1Y7\xa3\x05Q\x80\xe3\xe1\t\x13{4\xb7I\xef\x82\
\xa1I\xda\xb6\rD\xf4L\xa1\x9d\x95\xea\xfd\xbc\'\xc4\xee\xd6D\x0f\x93\xc9VX\
\xd7\x15D\xf4\\\x86\xb9\xddn "\xeft\xa3r\xdb\xb5\xc7\x11\'\x19#+\xe9\x08\x86\
$\xe9\xcc\xbazC\xe1\xb7C\xea\x1a\x16zX*i\x89\x94;\xc8\x87\'\x899m\n0\xdd\x12\
\x84\x9f\xcc:\xdd\x92?\xc4D2IJ\xc0$)\x01b!\xca\xef\x823\xcf\xae\x1bNIf8\x8f\
\x1d\xda\xe3\xcb\x1brt;\xf2<\xcdaG7\xad\x12s-I\'3_cH%\x01\xe9\xcf\xf8\x1dVI\
\xc0?\xb5\xb0u\x97\x81/\x04\xb1\xf0\xc4\xbf_\xc0pG|\xcf\x1d\xc7\xe8\xbe\x9bI\
\x0c\x02\x0e\xee\xb06I#\xf6_\x08C\xdb$\rm\x83B\xe1\xd0\xc3+\t\x98\xab\x00I\
\x88\x05\xd5O%E@D\xb8(\xa5\xba\x08m\xe9\x11\xeb\xba>\x82\xc8\xe6\xff\xbb\x85\
C\x11\xe9r\xc5/\xb5\x90\xecB\x13h\x03U\x00\x00\x00\x00IEND\xaeB`\x82'

def getjBitmap():
    return BitmapFromImage(getjImage())

def getjImage():
    stream = cStringIO.StringIO(getjData())
    return ImageFromStream(stream)

#----------------------------------------------------------------------
def getbData():
    return \
'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00I\x00\x00\x00a\x08\x06\x00\
\x00\x00\x9a\x8c\x8c\x87\x00\x00\x00\x04sBIT\x08\x08\x08\x08|\x08d\x88\x00\
\x00 \x00IDATx\x9c\xec\xbdQ\x88%\xc9\x99\xef\xf7\x9b\xdd\x16|\t\xd38\x02k\
\xd8\x0c\xd8^\x08\x81\x04y`\x04\xe7<\xdc\xebJ\xae\xc7\x90\x0b\xbbp\x1a\x84\
\xa9z\x10t=\xe8\xa1\x04\xfbP\x03Z\xe8y\xb0Q?H\xd0\x02=L?,L\x83/\xa8l\x16Smt\
\xa1\n\xae\xa0\x0f\\\x19\xe5\xea\xca\x90\xc5\xae\xf1I\xd8\x81\x930k\x1cf{!\
\x92;\xc2\x11\xbe\xdd\xdc\x0cP\x1b\xf9!\xb2N\xf5L\xcd\xee\xe8\xcd\x186\xa09\
\xdd\xd5\xa7\xcf\xc9\xfc\xf2\x8b/\xfe\xdf\xff\xfb\x7f_\xf3\xd6\xef\xfd>\xbf\
\xfc\xe5/\x7f\x0b\xfc\xf3\xaf\xcf\xfd\xfa\xe5/\x7f\xf9\xdb\xb7~\xef\xf7\xb9\
\xf3W\xed/~\xfb\xcb_\xfe\x92\xdf\xfe\xf6\xb7\xfc\xf3\xfa\xec\xfa\xe1\x0f\x7f\
\xc8_\xb5\xbf\xf8\xed[\xc0o\xff\xd9@\xff\xf8z\xeb\xad\xb7\xf8\xbd\xff\xaf/\
\xe2\xff\x0f\xeb\xce\xe7\x7f\xe0~t\x84\xb5\x06\xe7\x06\x08\x10E\x08\xa3\xa3P\
\x86)z\xc6\x90\x00\x98tI\x11\x06\xbcXp\xc3\xad\x0f\x0e\x85BO\x11c\x04\xd0@\
\xc0\x8b\xc5\xa4Hi\x00J\x922\xc88\x90\xca\n\x9d"\xd6\x96\x00\xf8Tp\xb1y\xce\
\xe0"OO\xd7( \x02\x93\x8f\x00\x18\xa3\x10\x05)\x82\x0b\x82#1\xb4\x1b\x96\xab\
%\x00\xb5]\x10C\xc8_+\x02)1\xf9H!\n\x8c\x80OL)\x7f\x16Z\xa1\x95\x90R\x02\x11\
\x9e\xf7\x8e\x93\x9ft\xff\xb4\x91\xe2\x94\x88\x80V%\xca\x82s#f\xb9\xc4\xb9\
\x91\xe6\xf0\x10b\xa4\xf7\x89e\xad\x80\x1a\xe7\x1cV\x1a00\xec\xa0*\x12qJ\xa8\
b\xc2\xb9\x84]\x1a@\x11cD\x11@\xd9\xfc=~D\x15\xc2\xa8\xf3\xf7N\t\x82\x18|\
\xdf\xd1\xac\x1b.6\xb0n\x96 \x82s=\xde\x07\xacYP\xbc\r\xce\x0fX\xb5\xc6\xfb\
\x1e\xfd6\xc8+H\xab\x9av\xd8\xd1XM\x0c\x81\x9d\xeb\xa8\xed1~\xe8)\x8cB\xdb\
\x12\xe7#&\xe5gV\xa0\xe6\xef\x8d\xa4\xa4p>\xb2\xac\xec\x17z\xd2\xad\xed\xb6\
\\X\xd2\'\xc3l\xb0\x82\xe270\xc5\x91\x83\xa3%\x89\x82\x08T\np\t\x82\x10w\t\
\xac\x011T\x8bH\x04\xd4B\x81\xd2\xd9@:e\x03U\x96g\x17\x1b0\x9a\xa3\xf7\x9f \
\x90\xbdu^vy\x80\x8e\x0e#\x91\xbe\xebY\xa8\x02\xe7\x1c\xf8\x84`0&[S\xddUXc\
\x80\x881\x16u\xd7\xe2\xd2\x84\xa8|\xd3E\x99\xbd\xc9\x9a\xc5\xfe\xb3\xa7\x04\
\x92\x12\xe6N\xa2T\xf9\xcfJ\xe5\xcf+DQ*(\x81T(\xb4\x14\xb7\x8ct\xcb\x93\xfa\
\x9dC%\x98\xbe\x92p\xaeg\xf1\x87\x06\xadJ\xda\xf3K\x00\x16vIH\x11\xdb,I\xa1`\
y\xbf\xa2\xbd8\x83\x11\xac\xad\x00HA(\xade\xe8Z\xa4(\x88S\xc0\x10X\xaeOx\xf6\
\xf8)\xe7\xdf?E4\xb8+\x8f9X\xd2o.\xf1[\xc7\xc3\xe35eS\xf3\xe4\xf4\x11\xd8\n=\
y\x94\x86\x9d\x9b\x00Em-\xf1\xa5C\xddU\x10\x03\xf1eD\xddU4K\xc3\x80eh7X\x03$\
p\xdb\x1d\t\x9f\r&\xf9\xdf]/#\xe0\xc7\x00\xe4-\x18SD\xdb\x12\x99"\x8a\xe9\
\xcb=\xc9,\x14\x83(\xae\xb6=\xcd\xe9\t\xd3W \xc4\x91\xd5\xb2\xa1\xa9\xd7\x88\
\x08\xdaV\xc4\xadG\xa2\x071\x14\xc9P\x7f\xff\xc7\x8c!b\x96+N\x9f\\2\x0e\x03\
\x92\n\xec\xb2bY\xafy\xde:\x0c9\x0e\xb4\xce\xd1o\x07\x1c\n\x1d\x1dU\xdd\x80\
\x1b\x18|\xa2\xbfh\t\x85\x027\xa0\x16K\\\x10"\x05\xa3\x1f\xb9\xecZ\xda\x8f\
\x1dI\x04\x9f\x80\xbb\n\xef#\x83\x13\xf4\x8b\x9eP(v\x83\x83\x00h\x8b\x8f \
\x18\xba\xa1\xa3\xbc\xa7\xe0\xb5"EH"@D\xdb\n\x11A\xe9\x8a\xc1\x8d$@\xdb\xc5\
\xe7Mr\xdbH\x82\xa6\xbb\xea\xf0\xde\xf3\xec\xf1S\xb4]R\xa8\x12\xe7<g\xed\xf6\
\r\xff-\x18C\xe0\xc9\xe9#\xa6\xe8\x91\xf1W\xec\xe2D\xf2\x8e\xca*Jcpi\xa2\x1f\
\x12.\x0e\xd82\x12\xc6\xc0\xa4K\x84\x01\xbb\xa8(\xc2HYUl\x87\x1d\x0f\x9f\x9c\
r\xfe\xec\x9c\xea\xe4\xcf\x18\\\xa4j\xd68\xe7\x88@H\x13\xe5zMU7<8\xff\x05\
\x17\xbd\xe3\xac\xed\xf0!\x11E \xf5\xf0ZQ\x1f\xd4h\xa5\xf1$\x8ay\xdb\x8c\xc0\
\xe2\x0f\r\xc30\xb0\x1b\x07z\x1f\xd9\xf6=\xa0\x18\xb6\x03\x83\x1b\xb9\xda\
\xe6m?\x0c\x0e\x82\xbfe\xa4[8\xa9\x7ft\x9f\x84"\x90X\x19\xa1m\xafx\xf0\xe8\
\x94g\x8f\x9f\xf2\xe0\xd1)ON\x1fq\xf2\xfe))x|*\xb021\xb8\x91R\xcf1A@\x94\x86\
B\xb1\xddm *\x8cD|J\xd4\xcb\x06?\x06\xe2\x940Z\xe0eD\xee\xd9\x1c\xe4\xb7#\
\xc6(\x86\x90P\x85\xd0:\x8f=X\x11\xfb\x81j\xb9\xc46\xef!\xe6]\x92\xff8?L\xf3\
.\xc3\xf9\xd3\x1c\xe8\xeb\x15I\x19\xce/\x9f\xb3i{><Y\xe7mVYbJ(\x91\xd9\x03\
\x84\xe8G\x84\xbc\xdd\n\xc9\xb1\xc9\x0f\x0e\x97&\n)\xd8\xc5\xe93\xa7\xdb[o\
\xbdu\xdbH\x97\xef\xff\xf1~_\xae*\x8b\xa4D\x12a\xd3^qX7\x00\x9co\xce9y\xb0f|\
\x11\xe1\xb5B\x8c\xb0\xed{\x9af\th\x98<\x83\xf3Ha D\xa2\x08\x06a*n\x8c\x98\
\xd2\xb4?\x9a\xcd|\xaa\xc44QjMD8{\xde\x02\x10\xc6\xfcd\x1f\xfd\xe4_\xef\x8d\
\xf4\xd7\x7f\xff\x9f\xf1/\xff\xe8\xffF\xec\x9a\xe46\xb4g\x7f\t\xc0\xd9\xb3\r\
\xe7\xdf?\xe5\xe9\xd9\xd3\xfd\xfd,WK\xcc\xb2F\'\x8f\xf7\x11\x952\x84)\xcc|\
\xba\xcd\xb0"\xe1\xf1\x11\xa2\x18\x0e?\xfa\xc5?m\xa4gG_\xdb\x1b\x03 \x12Phz\
\xef\xa8lI\x88#F,IA\x8a\x01Q\x1aA\x91\x92G\xa4 \xce7\xaf\x94&\xcd\xae\xe5|\
\xa2R\x8a\x98\xb2\xf7%\xef\xb0\xb6\xcc\xf1\x83|P\x16a\x04\x02\xde\'B\xa1\x18\
\\\xa4>\xa88=>\xe2\xf1\x93\x8fx\xfc\xbcc\xd8<\xc3.\xdfE\xcc\xbb\xf9\xc6f\xaf\
\xba^\x8f\xbf\xfbg\x1c\xad\xef#a\xc2\xea\x02\xa7\x14q\xe8y\xde\xef\xf6\xef9~\
p\x8c\x8cn\x8f\x8d|H\xa8\x94(\x8cb\xf2\x91+\xe7xp\xf1\x7f|\xc6H\xb7N7[\x1d\
\xb0q\x0e\x95<\xfd\xce\xb1\\X\xfa]\xbe\x99n\xf6\xc2P\xec\xd0S\x9c\x7f\x9fohm\
\xa1P\x869jb\xade\x8a\x9e~\x12\x96Z\xe8\xc8 o\x1b\x02F\x84)&\xac1\xe8R\xa3#\
\xa4`)\x17\x89\x02A\xa9\x05\xc3\xe0h\xb7[\xa2\xdbam\xf6\xb4\xff\xf0\x9f\xff+\
*\xf3G\x9f\xd9r\xd7\xc6\xba\xfe\xfd\xf2\xf4\xfb\x0c\x8f\x1f\xe1\xc2\x84\x0b\
\x81\xc1\x07\x00\x06\x97\xaf7:\xcf\x87\xcf6\x1c\xafk\xea\xaaD\xa5\xb87\x10@\
\xa9\xe5\xf3&\xb9m\xa4\xdd\xe8\xf2S\xd5\xc2\xe9\xc91~p,\x8e\x97(1\xc4\xe8Ph\
\x92LH*HF\xd8v\x1b\x1e?<!\rc\xf6:\xa5\x91bb\xd89lU\xb1\x10A\x89\x01\xa3\x11#\
\xe8\xf3\r\x95\xb1\xa0 \xa5\x890\x06\x14\x91\xa8-\xb8\x910MlIH\xf4\x84\xd1#\
\xba\xa1\x08W\x00\xfc\xef\xff\xe3\x7f\xcb\x7f\xf5/\xcf\xb3\xf7\xf5\x1fs\r\
\xfd\\\xff1\xf4\x1f3\xb8H\xf2\x1f\xb3q\x03\xdd\xd5@]B7B}P\xc1l\xa4@\xa2\xb2\
\x8a\xed\xb0\xc3m;\x9a\xa3c\n\xb2!\x0b\xa3\x88\xe9\x96\x8dn\x9fn\x96HiJ\xac2\
D\x172\xd6H\x89\xe8\\\x8e%2\x81\xd6\x88\n$\xefYT\x07\xb4\x9bgD\x99\x10\x11\
\xe2\x0bG\xf2\t\xabM\x0e\xe0\x80\x1f\x1d\xd1\xed8:z\x84\xb5%\x97]\xcb\xf9\
\xb3s\x90\x82T\xe6[52\x11\'\xc1,VH\xecI\xca`\xad\xc5\xf9\x88\x97\x1c?\xfe\
\xe1\xde\x9f\xf2\xef\xff\xfa\xef\xf3u.\xdf\xcd\xc6\x01\xd8\xee\xb0\xcbw\xa9\
\x0f*\xc4\xae9}\xfc\x03*\xab\xe8F\xf2\xeb\xd5\x90\rE\x8e[\xd7\xabj\xd6H\x98\
\xe0e\xa4x{\x06\x99_\x80\x93~\x1f\xf8\xc1\x0f~\xf0\x83\xfd\x0f.\x7f\xfc\x01\
\x85\xf9\x1ao\xdd\x01^;\x8c]\xf2\xb7\x7f\xf3+\xbe\xfe\xb5o\xf2\xb3\xb6\xe5e\
\xfa\x076\xff\xf6W\xfc\x9f\xe3+\x96\xef\xd6\xb8\x17\xff@}\xfcm>\xfd\xd8\xf1W\
\xdd\xff\xca\xc1\x7fY\xf1\xea\xce]^x\xc7\xeb\xf1\x15\xfff\xf3s\xe2\xabW,\x9b\
?e\xa1\xeep\xe7\xff\x81\xafH\xc1\xab\xf4\x9a;w\x84{\xc5k\xde\xe2\x0e\xe5\xbf\
\xb8\xc7\xb3\x7f\xfdo\xb0\xef\x14|\xed\x9b\r\x9f\xfe\xdd@|\r\xfe\xd7\x9fb\
\xee\xde\xc5~\xfa\x82\x7f\xf5_\xff\x17\xfc\xe1\xff\xf6?C\xfa\x8f\xf0\xce\x1f\
\xa0\xcd\x1fd\x8fZ\xe7\x18\xfa\xf3g\xff\x13\xe6\xeeo\xd8\xfc\xf7\xff\x03Zk\
\xfeE\xf55\xd2\x9d;\xbc\xfd\x95\xd7\xa4W\xaf\xf8uL\x9c\xff\xe2\xa7\xdc\xfd\
\xf4?\xf1\xce=C\x8a\x91_\xa7W\xbc\xfb\x07\x16\xff\x7f\r\xdcI_\xa1\x7f\xf5\
\x9a\xd5\xb7N\xf6\xf6\xf8\xe1\x0f\x7fx{\xbb\x1d\xde_s\xf9|\x03\xab\x9a\xe5\
\xc3\x1f3\\\xfe\x8c1\x15$\x05\x87\'\'\x0c]\xc7\xf1\xf1\x01\x93\x1b\xf1CO\x88\
\x9e\xa3\xa3G<=]SU\x8a1\xc0\xae{\x8e\xb1\x16\xb4\xe2\xf4\xd1#\x9c\x0f\x9c_>\
\xc7\xcaHp\x13\xcd\xf1\x11\x07\xb1\x04\xa5!\xe6\xd8W:\xc3re\xb0\xb6\xc2\xb9\
\x1e7\xbb}\x9c\x12Z\nb\xf2\xb8\xb3\x9f\xce\xfb\xcb\xd3\x9d_\x00P\xdb\x8a~\
\xbb\xc3\xc7q\x7f\x0f\xc7\x075\x18\x9d\xe3Y\xb2T\x87\xdf\xe2\xfcG?\x06\x1c\
\x0c\x1fc\rL\xfd\x80w\x8e\xd5AC\xe7vX1\x8c|\xf1\xbau\xba\xb5\xdf]\x80("\x05\
\xeb\x87\xdf#n~\n)QZ\xcb\xe8\x1c\xc1\x0fh\xbb\xa4\xd4\x1a\x94\xa2\xed.i\xee\
\xaf9{\xf4\x94\xe3\xf51\x10\x88\x010\x82s#\xcf\xfb\x1d\x0bU\x00\x81\x07\x1f\
\x9c@H\xb8\xe8\xb1U\xcd\xe6\xa2c\xbd\xb2`\rI}\x1d\xb9\xfa)\x8e\x84\xc6\xe0\'\
\xc19Gc-R$\xc6\x9dGY\x0bD\x88 U\xc9\xd8\r\xa8\xf9:\xfc\xd0\xf3\xc1e\xc7\x07\
\x875\x1f^~6\x8b\xaf\xcb\xf97\xb6b\x89gak\x02\x82\xa413\x03\x1av\xae\xc7\x88\
0\xa4\xdb\x10\xe0\x96\'5\x07\x15\tM,&\xc4\xbcK\x90_Qi\xcf\xe8=\x93\x01?\xc0\
\xe6\xfc\x92\xe3\xa35\x84\x1c\xf0\xf0p\xbc>&\xc9Dp\x11[)(4m\xbba\xa14UU\x11\
\xe2\xc0\xd5E\xcf\xd2(\xb4\x08\xed\xc5\x19:\x19\xa2\xf7\xa8\xe4y\xfa\xfc\x9c\
\x93\xbaBk\xcb\xb6\xeb\xd0J38\x8f\xc5c\xec\x02e5\x82#E\x10c\x881!&\x92\x88\
\xa8B\xe1\x92\xe3\xe9\xc3CTJ|xXc\xaa%\x10\x11\xad\x18\xb6\x1ek\r\x82\xc3\rz\
\xce\x07\x1d\x04\xc7bU\xb3\xdbvX\xb3\xc0E\x8f\x9b\xc2\x97{\xd2\xf8\x83?\xa6\
\xfcF\xc5f\xe7Y?\xfa\x90\xfe\xe9\x8fXV\x02(\x88.o\x11cq\x9b\rf\xd9 \xd1\x93\
\xa6\x84\x14\xf3\xd1i\x13\xd1)\x94\xcdo\x07P\x95\x01\x1f\x881A\xe8q^\xa8\xac\
\xc9\xf6\x1d\x1dvY\x11}\x82B\xd1\xed\x1c\xf5\xc2\xa0\x14l:Om\x84\xedp\xc5\
\xe2\xab\x16uW\x91\x94f\xdb\xef\x80\x91\xe6x\xc6sA@gV\x82\x98=9}:\xa2\xeeY\
\xfc\xe02X\x8d\x19\x9a@\x80\x19e\x9bj\t1\xe2\xbd#I\x89\xa4\x11\x97&\x9a\x8f\
\xbe\x04q\xc7\xa7\xc7\x00\xc8\xfa\xdb\x19\xfao\x9e\x91\\\xcei\x84@B\x13\xe2\
\x80\xb6\r\xc1\xb5\x14bQ3Z\xbd&\xe4nV\x06\x87j\xb1\xc49\xc7\xf1\x81\xc5\xd8\
\x05\xdb\xf69\xfd|$_o\x03\xdc\xb0\'\xe8\xbc\xf7`+T!h)h\xaa\x12\xef\x1d\xfaN\
\x81\xbag\x91bb\x0c\xe40`\x04\xa6D\xef\x1c\xcb\xa3c\xda\xb3\xa7\xb3A-\xcew\
\xe8\xb7\r\xbcV\xecb\xdeN\xd7\xd7\xd9\xbcki?v\x1cX\x8b\xa9,\xf1\x85C\xdd\xb3\
\x0c\xce\xb3|\xfc\xfc\x9f6R\xff\xe8>\xaaH\xa42\xe7K\x0c\x1f\x93\\F\xac\t\x10\
)\x102\xc6QV\x13}Bi\xc5\xe8=\xa5\x9d\x194\x14\xc4HDP\x02\xd1{\xd2|C\xc9\'|\
\x02kM\xf6@\xc2~\x0b\x8d! Z\xef\xaf\xe5\xecyGm4\x93xV&\xf3D"\x05n\xe8\xd8t\
\xd9MU\xc1>\x16J\xad\xf9\xf5\xbf\xcd\xd7z\xe7\x9eER\x8e\x85b\x04\xc40n\x1d\
\xe5\xcar\xd5\xf5X[\xe2\xdc\xc8\x94\x1c\x0b\xbb\x9c\xf1\x9d\xe4k~\xf0\xe1\
\x97x\xd2\xb3\xf7Q\n\x88\x81\xcbnd\xbdn\xf0}\x8b\x11E\x04J\x05m\x9bA\x18\xc9\
\x13\xc3l\xb8bb\xd8\xf6T\xab%\xce%\n%\x9c\x9f_rX\xd7\x98\xca\xe6\\M\x1b.\xce\
\x9errr\xc2\x93\x8f\xce89>\x04)P\x85\xe0\xdc@\x9c\x84\xed\x18h\x1a\x83\x15\
\xcb\xd9&\xbb\xfd\xaa\xd4\\\\m\xf7\xd7\xd8X\x8dU\x86B\x14\xd3\xcc\x05y\xd7S5\
\rD\x8fs\x11[fZ\x04"I\xe0\xf5\x8b\x89\xaf~\xdd\x90"t\xdb.\x93x\xa2\x88\xa9`J\
\x19\x1b\x19\x89\xbf[\xe0\x0e\xdb\x81\xadx\x9a\xfa\x10\xab"m\xb7EF\x8f]/9\
\xff\xf0)\x0f\xdf?\x01]\x80\x08\xfd6"\x84\xcc\x07\x11\xd1\xa6\x02e\xd1\xe5\
\x88Z(\x96\xbd\xa5\x10\x85\x14\x01?\x82]];\x9a\xe2\xe4\xfd\x13\xb6\xbb\x16[T\
l\xbd\xa79\xaeA\x0c\xcb\xe4I\xe5{\x10\xff\x0e-\x05F`\x18:\x1e?>\xc1\xb5=V\
\xcd\xdbs\xbf\x0c\xd1\'\xaa\xa3\x9a\xb8K\x08\x1a#\x90b\xde\xce\xaf>\x9dx\xfb\
\x1dC\x94\xcc\x89\xa34\xab\xbaA\xd2Mhp\xde#\x18\n1X\xb9\r\xb9o!\xee\xc2(j[3:\
\x87]T4\'\xdf\xa1><\xc6\r=\xcb\xd5\x92\xab\xed@\xbdl\x8811\x0c\x1d\xdd\x081F\
\xda\xcd\x16\x91\x08:\xb1m\x9fC\x10V\x075em`\xca\xdb+n=\xab\x83&\xf3\xdbJa\
\x8b\n\xbb\xaeY\xd5+\x9e}x\x96/@\x0c\xc7\x7f\xfcm\x92\xfa:\xdba\x87\x18\xcb\
\xb2\xaa\x18\x9ew\x98\xd2\x82\xae\x18] \xba\x81\xd1\x05\xda\xae%\x8c\x01\xd7\
:\xd2\x0bG|q\xcd@*\xe2Kx\xfd\x8eA\x8c\xa1\xfcFE\xe7<~p\x0cn\xc4\xcf\xb9\x1aJ\
#\xe4CdJ\x91\x10o\x9fn\xb7<I\x94\xc6\xa1\xe8\xdb\x16\x08\x94S\xa2\xd1\xc2\
\xd5\xd6\xf1\xe0\xf8\x90\xb6\xed\x00E\n\x9e\x83UC\xef#J)\x9a\xf5j\xbepOs|\
\xc4\x93\xc7OXZEs|\xc4\xe0<\xfd\xd0r`W\x08\x1e\xb5\xa88:~\xc2\xe9A\xae\x83\
\xd8Rqp\xd4\xe0\x86\x8e\xab\x8b\x96\xb3\xc7\'\xc8\xf8+\xea\x83\x1a\x82\xa7\
\x1f\x06@C\x8aDr\xd5&_\xac\x83$82ifJE?\x0c\x94\xda0\x86\x94\x93\xd5i\xc7\xae\
\xd0\x8c\xc1\x03\x1a\xa7K,\x91\xab\x90\xa8\xa4B\xf9lTcl>\xe5\x94\xf9rOJiB\
\x86\x1e\x80\xaa\xaa\x89\xfd\rY\x9fB\xa4^.\xe8\xda\xf3\x1c@\xdd\x80\n;\x88\
\x91\xb3\'g(Q(\x9f\x18\xfff\xe0\xf4\xe8\x18mW\x103\xceyp\xb4\xc6%GU\xaf!$N\
\xd7\x86\xe6\xfe\x11Z\x95P\x18\xd2v\xa0@X\x1f\x9d\xe0v\x0e\x88\xa4\x18I(@\
\xd3\xd4K"\x86Rg\xb6\xc1*\x83V\x15\x8b\xb2\xc2\xaa\x8c\xd4}\x84\x83\xd5\n]Z\
\xac\xb5\xf9}fA\xa1\x0cUU\xb3\xacJ\xe2\x94\xe8w\x8e\x07\x1f\x1cb\x17\x16[\
\xa9\\\xa22\xb2\xe7\x98\xbe\xd4H*\x15\xa0\x15\xa5\xc9\xf5\xad\xa6^\x12\x13\
\x942!ZA\x84\xba\xb9\x8f\x00M\xd3\xec\xab\x12G\'\'D4\xa0Q\xf72\xdfTi!bs)\t\
\xcd\xaa^\xe7\xcaJ\x12\x9az\r\x04\x94\xd6\x99\xa9\xb4KJ42E\x96\x0b\x0b\xe4L]\
tAi \x04O\xa9\x01\xd4\xfc\n\xaa\x10B\xba~\x88\x91|\x8f\n! "Li\xc2\x89\xa7\
\xd4\x8a\x10\x03\xdd\x08\xb8\x81\xaaY\xd3>\xdf\xe4\x87\x91"I"\xe3\'\xb7k\x87\
\xd7\xeb6\x98|t\x84\xd7\x1aC (\x8b\'\x11\xfb\x01#\xe0\x9c\xa3\xac\x84q\xc8\
\xae<\x06?\xbb\xb6\xcfx\xa8\x808\xe5c\xf9Mn)\xaf@)B\xef\xe2\xfe}\xd7+\x14\
\x8a\x85J{\xc2\xcd\x12\xf3\xdf\xdb\x8af\xb5b\xe8.(\xb5\x01Q\xf0F\x86eD\xf0>\
\xe4\x83$\tL\x01\n\r\x92@\t1\x1a\x14\x8e\xd1CUU\xa4\x94\xe8f~)\x8c\x9e\x0f\
\x0e\x17HR\xc4\x97\x91\xf2\x1b%\xc3\xce\x11\xb1\x1c<>\xbf1\xd0\x17\x9dn\xe5\
\xc2 !\x80h\xac\xd1\xe0\x03M\xb3$\x89f9l\x91\xaa\x82z~\xb3N\xc4\xadG\xad\xd6\
\xe0\x81\x94`~\x9a\xcc\x95\x11\x92\xe4\xdcl; \xc5D\xa3,1F\xd2\'\x03\xe57\xe6\
\xa4J\xdd`#\xe6\xc0\x99\xd4\x82\xf3\xcbkP\xa7\xd1\xa5E\x92C\x9be&\xc84\xa4ib\
\xf1u\x83{\x05\x13\x8eBe\xaf\x9e\xa2\x87\xa8\xa8\xc4\xe3E\xb0b\x10\x02\x83\
\x1b0\xc0\xa4+\x96\x07\x1a\xe7\x05k\x04^\xce\xdf\xa2\r\xd1\xdfNsom\xb7\x18\
\x02!\xa6L\xcd\x1a\xc1\xf7\x1d\xae\xeb\xf1m\x9bo\xdb\x0f\xb4\xe7g$?2\xfe\xbb\
\x9e\xf4\xe9H\xeazH\x9ea\xdb\x12}\xa2\xdd<\x03\x14C\xdb\x92B\x84\xc1\xe5\x8b\
\xdc\xf6$?\xa2&Ox\x951\x96s#\xd1\x05\xf0\x9e\xbe\xeb@Y\x86\x9dC\x8c\x10\xa7|\
\x1c\x97\xa6D\x15)C\x0c@\xdb\x12P\xe8;\xb9"R\xea\\\x0f,\x81R+\ne\xf2\xd6\x93\

\x82\x8a\x08\xb20\x1c\x1c5\xecbN\x9f\x12\x15\xdb1 b(\xef)b\x18\x11\x89\x88\

\xdcf&o\x19)\xc4\x91\xb6\xdd\xec+\x9cZi\n\xa3p~\x87R\x96a\x18h\x8eO\x88/\x1c\
\xe57\x97\xc8;\x90L\x95\x89\xb6\xaaF\xc8\xdb\x00?`\xec\x92\xf8\xc21~2\xe0\
\x86\x885\xd5\xdeS\xf4\xdb\x06\xa4\xc0\xda\ne5c\x84\xe5\xa2\x02?P-V\xe0\x03\
\xaa\x10\x8cL\x8c~@+\x08~`J9\xd7"D\xc2+\xcf\xf4\nR\xf0L>2\x02i\xf2(\x99\xf0q\
D\n\x83V\xd9\xa3u\x10,\x99\xc8\xbb6~\x11\x06\x12\x91a\x18HI\x11\xe2\xef\x18\
\xb8\x9dw\x9c\x9c\x9e\xde\xfc@\x1bx\x19i\x9a\x1a\xa2\xa3Z5\xa4\xe1\nu\xd7\
\xd2o[\x94.Q\n\xc4\x08\xaf\xfen\x87\x14B\xb5Z\x92\xcc\n\xefz\xcao.)\xbfQ\x91\
\x98\xd1\xb9\x11\xdc\x10Q\xf7\xae\x03z^eu\xc3\xe7D2\xf6\xb2\x02\xa2\xf3\x91\
\x1c\\.4\xa6i\x9a\x83\xedD\xe4\xe6\xb8N2QB\xfe;4\xd6X\xdc4\xe0\x9d\x9f\xef+\
\xd2\xeeZ\x9cs\xa8B\x18\x9c#\x8b\x02\x04[\xd5(\xe6J\x0e\xb7\ru\xcbH\xab\xfa\
\x90\xe8{D\xab\xec\x1d2ewL\x92s @LN8\x8d\xb68\x97\xf9p\x94\xe6\xab\xef\xad\
\xe6\xa7\xa4\x11\x1dfo\xc9O\xcd\x9a\nY\x18\x98\x12\xc5\xdb \x84\x19s\x81\xeb\
\x07\\\xef\x99\xdc\xc8\xb3M\xcb\xb6\xdb\xa2D\xe8C\x82\xe0\x99b\x9a\x85\x12;H\
\x11\x9fK5L\xc9\xedKA\xa4\x88\xf3;\x04\x83$\x87\xf3\x0eb\xc2\xa7\xc40\x0c\
\x04\x1c\xe3\x90\xd0\xa5\x99\x05\x1d\x02\x04R\x08\xc4\x17\x8e\xf82B\x00\x1f\
\xdd\xe7Mr;p\x13z\x94=\xc0\xb5W\xd8\xe35C\x17\xd9^\xb5\xd4\x07K\xce\xce{\x96\
V\xb1\xaa\x17{\x98\x00\x19\rW\xd6\xf0l\xd3S\xcaD\xef"\xeb\xdabME{~\x81\x1b#\
\'\'k\x9e~t\xc6\xc3\x935\xe57*b\x084M\x8ds\x1em\xab9\xde\x1b\nU\x12\xbc\xc3%\
\x87\xd5z\xde\x926\x97\xa9\xef\xe6\x13C\x03\x93/XX\xb5wv5\xbfN)\xa2\x7fc\xd0\
o\xc3\xf4*\xdf\x92]\xa9\xccpV0\x8d\x81"\x0cLE\x8eo\xb9\xce7"I\xe1\x13h4\x9f_\
\xb7\x95n\x9b\xf7!z\xb0\x96T\xbe\x87\x7f\xf6\x97\xe8R\xa3\xb4\xdag\xf3Ji\x88\
\x81$\x82\x92DL\x92\x0f\xa8)\x11\x0bs\xe3\xb0\x93\x07S\xe5S\x0fr\x055\xa6\
\xac\xbe\t\x021f\x8d\x92\x0e\xa4\x90\xbd\x0f1$\x9f\xdf\xdfv[4\x82\x1b\xae\
\xb2\xa1f\x9cTdv\x84k\xc1\xc3\xcd\x03\x86\xa9\x00B\x04}\xf3\xf31\xcc\x01Y\
\x1b\xb6\xc3n\x1f\x93\xd6V\xd0\x0b\x0b\x9f\x8c\x99\xab\x92H\xe7\x15\xeb\xc7\
\x177\x06\xfa"\x08\xe0\xa2\x07\x17I;\x8f=\x81a\x02\xe3\xb6\xa8Qg\x0e\x07\x98\
\x86\x01$Q\x88\xbdI\x11\xb8\xe6\x93Z\xae\xc9\xad\xd2h\xc6M\xfes\xa9e_\xbf3\
\xe6\xb3\xd0\xdf\x8b\xc2$\xc7.\n\x96H\xa1\x0c\xbb8\xe5\xb4\xe4\xda\xde\xe2I\
\x01|\xf4\x185\xc7\xa7Y5r\xbd\xe5L\xa9\xf0~\xcc\xb0#z\x1c\n+c\x06\xb4\xd1\
\xe1\xc6\x90\xf5T\xd6\xe2\x9cC\xee\xd7\xf0\xc98?\xbf\x88\xf3\x13\xc2m-\xc0m#\
\xed\x06\xc6!q\xb0RH\xfc;t\xca\xe2&7\x82\x88\xa3\xb2+R*g^)\xc0"\xf3<\xd1\xcd\
5\xf7k\xacdl\xc6F\xb5\x80\xca\xacfs\x98\x99\xc4\x18AY\x81\x90\xf2\r\xcd*\x0f\
\xbc\x07\x93E_\xae\x1f\x18f\xc0Y\x9a\x12\xe2\x88]6\xc8\\\xf5M\xf8\x0c\t^F\
\xd2\xabk\xf0:\x01%\xc8\x08JhR\xc1\x95\x83R\xfb\x9c\xa2\x88\x87\xb9ZW\x1f\
\xd4\xe8\x10Q\xdf\\\x12}\x0f\xf5\x9a\n`{\xdbH\xb7\x02w\xad+\x9a\xe6\x80B\tI}\
\x9djU\x11\xd1\xd8\xc6\xb2\\\xd4\x10\x03\x92\x8aL\xd7\xce\x94m\n\x1a\x99Rf0\
\xf1\xa4\xc1\xf3\xe4\xf4\x11RL\xb4\xdd\x86\xbe\xcb\xb9\xa0\xeb\x07\xd2\xe0\
\xf3\xa9\x16\x12m\xd7Bp\xb8>\x17\x1f\xdb\xbe\xc7\xf5\x9ev\xf3\x0cmoTg\x85\
\x144\xf5\x9a\x18\x03\xc5\xdb\x99\xa9\x10\x0c\x93\x8f\xb8W\xa0ME\t\xc4Td\xc8\
"\x16\x9b\x0cQ\x84\xaa\xaa\xd0\xa5\xa5\x04\xc6!q|x\x1f\xe7\x1cU\x11\x81\x92\
\xe4z$)\xd8v\xb8M\x87w\x1b>\xbfny\x92O\xf9\xb0\x1a\xdc\xc8\x81y\x97\xc1\xff\
\x8c\xe0Z\xec`\xd1\xb6\xe4\xf5\xa7\x9e\x97\xaf#\xa4,\x19t\xbb\x96\xa5\xb5\
\xd9`\x05\x80\x90d\xcc\x84\x1a\xa0U\xc5rUA\xf2X[\x12\xa7\x82a\xb7\xcd\x06w\
\x81h\xb3"\xee\xe8\xfd3><\xac)\xac\x80\x13Di\xfc\x98\x0f\x84\xcb\xb6\xcb\xdb\
ZRNE\xfea~\xdaS`L\x05S\x9cS\x12\xc0\xaej\x82w\\\xb9\xb4/Y[\x95e@\x90K[z\x8a\
\\>\xef8>>$\xbd\x04u7sM\xc5o"\x89\xea\xf3&\xf9\x82\xc0}\xf9\x01gO\x9fr\xfc\
\xf0\x11T\xef\xce?\xfas\x0e\xeb\xb9\xfa`J\xda]\xcf\x82\n\xa5\xd9\xc3\x82\x18\
F\x94d\xa8\x80\xd6l\xbb\rMs\x88\xebz.\xbb\x8e\xe3?\xa9)\xbf\xa1\x88A\xf0\xde\
\xed\x15\'\xda\x96\x99\xda\xad\xaa\xd9\x83\x1a\x86\xee\x82\x83\xa3\x86q\x1b\
\xe9f\x01\xc2\xe9\xc9q\x06\xb0\xf7\xae\x19\xc7\x99\xd4\x87\x99\x13\n\xb8\x11\
\xee\xbe\xf4\xbc\xfd\x8eA\xf6Tq\x0e\xee3\x00\'\x91\x85\x1c\x023u\x1c\x89/\
\xb3\xcc0\xbe\x8c\xec~}\xbb\x10p\x1b\x02\xa4\xb4O>]\xfb+<\x89\xcc\x1f\xdb\
\xacn#a\x0bC\x98<J-\x88\xc1\x81\xce\x06sn\xdcK\x02\x8d\x08H\xe2\xcamy\xf8\
\xfe\tm\xb7\xa5\xbc\xa7\x90\x94\xa8\xac\xc1\x8d\xf9>\x95\xd5\x8c.\x80\x1e33P\
Y\x96\xd51\xa9\xfa\x13\xda\xf6\xc7<|\xf40_K\x7f\x85\xb9\xab\x18_D\xe4\x9d\
\x0c\xbf\xb2bm$\x8c`\xad`-\xc4P\x90\x10$\xe4\x80l\x977(?\x861\xe7\xbeF\x18\
\xe7\x13ML\x85\xc2\x93L>\x95\x17\xef\x94|~\xdd6\x92R\x18#\xa4\xe8\xb1\xcd\
\x9f`\xae~N\xaa\x1b\xda\xf3\x8eo\xbe\rc2\xe8\xd2f\xf2\x7f\xeb@+dJPh\xe2\x14i\
\xbb\r(\xc1jCtC.H\x8a\xa1!\x10\xa7\x02\x1fvx7b\xc5\xe2\x92#\x05\x8f\xb1\x06\
\xd7\xce\xdf\xef\x06\xae\xb6[\x9a&`ed\x1c\x06\xc2\x9c\xe2t\xbege\x96l\x07\
\x875\n\xe7\x1c\x0bk\xd0J\xe8wq/\xa1\xf1!bMI"\xa1\x06\xcf\xabO=\xaf\xa5\xc8\
\xa0\x98,Q.\xefe\x83+\xb2\'M)\xa2\x15x/|\xdeL\xb7\xc5\xeeF\xf3\xe0\xe4\x18UY\
d\xfc\x15~\x12D"V\n\xfe\xf6U>\xb8\x14\x81\xa3\x0f\x9e\xa2\xea\x15\xceG\xce\
\xce\xceIS\xc2\x9aLQ\xac\x16k.\x9fw({\xb0\x17\xa4R\xad\xd8l.\xa8\xea\x86~\
\xeb\xd1\xb6d\xb5l\x10]\x81X\xb0\n\xad\xb2\x1a\xb6i\xd6\x041\xf4A\x11\x82\
\xa7w\x1e\xb1\x0b\xb4\xae\x91\xf5\xb7\xa9\x1f\xfe7\x98\x07\xdf\xa1\xf9\xf0\
\x1cu\xf8\x1d\xd4\xc9c\x96\x8f>\xc2>\xfe\t\xea\xf0;,\x1f}\x84\xac\xbf\xcd\
\xf3\xc1C\xb5\xe2\xe5\xdd\x82\xf2O-\x89\\\x98\x14\x05n\x98\xa58/!\xbc\x9e(~\
\x03\xe9\xd3/NKn\xf3IO\x8e\xf6\xc9-\xcd\xb7\xf0W\x7fI\xf1I\xce\xb5\x88\x0eQ\
\xf9\t\x94\xf7\xf2\x87\x8d/"\xdcU\xf02\xe2_\x07\xac\xd1\xa4\xa4\xf6\x8a\x12U\
L\x8c\x80\xf2\t\xa95\xa9\x0b$\x95\xc1\xe9\xfe\xe8\x9fW\xc2\x90\xa2G\x94\x01\
\xef8\xbf\xca\xe5!-\x05\x8a\x89BY\x02\x89\x14\xe3^\x92\xdc\x9c|g\xaf.\xb1\
\xcbw\x11\xbb\xdeo\x92\xe4~\xc6p\xf93\xc2\xf69\xcd\xf1\xd1\\\xb8\x1cQ\xfa\
\xdaW\xe6\xb8f\x0b\xa2\x13\xd4\xe4\xb9r\xf2\xe5|R\xf0\x03m\x97\x98\xa2\xe7\
\xb8\xf9\x16n7\xb02\xcb\x0c\xccP\x8c\x11v\xaf=\xd3\x90\xe9\xaf\x12H\xaf=~\
\xcc\xcc\xe0\xa6u\x99\xd5\x14\xa1\xeb\xdd\x8c_\xf2*]\x99s,\xe7\xf6\xe4\xdcu\
\xfc3F(\xb5\xc9\x12\xe9\xb9\x98\xa9K\xc3\xb2H\xac\xea\x1a\xa5R\xae\xd2:\r\
\xca\x80\xb1\xc4\xc1\x13\xaf~J\xf2\x05\xa2T\x16r\xa5\x17\xfc\xfb\xbf\xfe\xfb\
,\x174\xef\xb2<}\x97\xe4\xbf\xc5\x93G?\xa0\xb2\x96u]el\x96\xb2(?\xbd\x18))!8\
\xc6\xa4\x907\x1e\xda\xf5\xbae$S\xd5TMIbV\xaf\x0e\x89P\x8cx\x7f\x85\xb6\x99\
\xf0\xaa\xab5~\xe89X)F\x9f\x93Wc\x13\xa4\t[\xcd S[\xec\xe9{\xd0\xfe\x0cY(\
\xf62\x917\xbc9e%e\xae\x9e\x18!\xfa\xc4\xa2Y2\xb9\x91\xa2i8\x7f>\xb0Z.\x11\
\xef\xc0Zp\x9e\x11\xa1\x8c\tb\xd8\x7f\x94\xc8\x04\x85\xe2I\xb3\xc0\x18\xc3\
\xf2\xf8\x04\xfe(W\x9f\x01\xaa\xf5\x83\xecu\xf5\x8a\xa3\xf7\x1fs\xe9\x12\x87\
VX7KN\x9a\x15\xc9\x0f\xa4\x97 \xefD<\x8a\xe5\xe7lr\x9b\xe3\xd6\x8a\xe8\xae2<\
\x1f>\xa6\xaa\x14vy@\xbdl(+\x83=^\xe3\x0b\x87=^\x03BY\x19b\x08\xa8\xb9f/\x04\
(\x0c$O\xf7\xe4\xcf\x91\x85"\xed"\xc3nK\xfb<\xe7D\xae\x1fh\xbb\x16\x89\x9e\
\xb6\xbb\xe4\xc3g\xcf!z\xd4B\xe1\xb6#n\xb7C\xa9\x05a\xf4\x04\x9d\x80H\xeazF\
\x0fe\x18I>2~2\xc2\x94\x18}\xe2\xf5\x0b\xc7\xeb\xbf\xed8=Z\xd3\xd4K\xack\xe1\
\xf2gX\xe7`\xbb#\x9d?E\x15\xc2f\xd3R\x97\xb0\xbbx\xcc\xbaY\xb2i{\x9e<\xef\
\x10\xa5Pw-\x92\x14F\xdfNpo\xa7%\x83\xcbbv\x9f\x90\xe6]\xcc\xdf\xb4\x0c\xed%\
\x88\xc2\xf7#Z)\xc2\xcc\xd1Xd6,\x10\x03\xa3\x0f\x8c\x95P\x167<Qt\x99\xb0\xf7\
c\xa4>~\x9f\xf6\xf2\x9c\xd5A\x8d\xbb\xf2\x8c\x8b\xfc\xbe\xc7\xa7\xc7\xf4\xdb\
\x16\x13\x04\x11\xa1\\d\xcd\xa4.\r\xc6C\x92\x12%\t\x15s\x1fH\x92\x98\t\xe2\
\x94_\xe5^A\xa4D$\xe5\xed\x1f\x15\x10H\x12\xb1Z\x11c\x968&`}rJ\x7f~\xc6\xa6\
\xf7TVq\xbaZ1\xbepL\xaf\xb2\xda\xcd\xbf\xe6\xcb=\xe9j\xdbB\x08\x9c\x9d\xcd\
\xc1\xeb\x9d\x12S\xd5X\xbb\xa0^6\x18mY5\xf7\xb9\xba\xe8\x89d-\xc0\xf8\xc9H\
\xc4\xe0}B\xa4\xe0\xec\xec2g\xf2J\x08\xce\x81\x08cHD\xb7\x832{k\xbf\xcb\xca}\
\x8d\x85\x94h\xdb\xe13:sQ\xb9+ )\x8d\xa4\x91\xf1E\xe4|\xd3\x81\xd2\xf9\x14\
\x92\xbcs\x93\xe4 \xac\x18\x89I\xf6\x95[\x88\xa4O\xe1\xd5\xa7\x9e\xdd0P\x9a\
\x92\xaan0\xc9\xf3`\xbd\xe4\xfc\xf4\x98G\xeb\x05\x91\x90O\xb7\xb7a\xfa\x8a\
\xc2\xf0;Tp\x0fV+\x94$N\xde\xcf\xecd\xb92\xb9B:d\x14\x1a\xfc\xc008\x1e|\xd0\
\xb0\xb9\xd8\xa0\x08L_\x01\x99\xd5\xb8\x02\xdc_\xaf\xe9\\O\x91L\xce\x01CV\
\xb5\x96\xc6\xc0\x08\xae\xebY.,>\x15Hr\xc4)qr|\x88Y\x18\x86\xa1\xc3\xda\x8a\
\xe4\x06B\xa1PE\x8e\xec\xea.\x1c\x1d\xe6\xdcQ\xddU\xa4\x94\xb5\t\x8a\x91\x08\
\xfc\xfa\xc5\x84\xda\x97\xa8\xe7\xd3\xef\xae\xe2\xab\xef5\x98rI\xa1,\x95Rl\
\xfb\x1e7D\x9c\xcf|:/#V\x17pW\x91\xc2\xf0\x85\x15\xdc\xdbenQ\x99\xf3\x9d+\
\x9b\x83\xd78\xdf#\xda\xd0\xf5-\xd6\x18J`\xb8\xe8xp\xf2\x00\x8c!N!\x07g \xba\
\x1cP\x17v\x89}{\x86\xffE\xcay\x96s4\xeb5hh\x0e\x0f1\x04\xb4\xa9P\xc5\x84\
\xd2\xa0H<89\xc5\xb9\x01\x8fd\x19\xb4\xcd\xac\x00\xa8\x0c\x1b\x94F$f.\x0bHbQ\
\xc0\x9d{E\xa6nM\x85\xc8\xf5V\x8c\xb4\xe7g\xf8\xb1g\x8a\x8e\xae=g\xf1\x87\
\x06\x97\x1c\xbdK\xfb\x92x|\t\x04f=\xc0\xed.\xa5\xdb\xaa\x92\xb3\xef\xa2\xb4\
"\x05\xa0y\x0f\x89\x7f\xc7\xd8v\x99\x85\x9c\xb2\x10A\x8c\x02L&\xd5\x8a\\2\
\x8a\x0eT\xd6\xe4\xec\xa9\x11\xd0\xf3\xd3f\xff\x9a\xbc\'\x8a Zgj\xc5\xccqK\
\xe5\xcc:\xba\xfc\x80\x87\x1d\x9c?;\xe7\xfd\xc3\x1b\xe1\xfdn\xb8\xc2\xa8\x92\
ja\x01\x8d\xdb\x0e\x99u\x0c1g\x00\x9fDv\xbfv4\'\xa7\xb8MGN+\xe3\xbe\xc7.{z\
\xc0\r\xb3\xda\xf6U.\xc0:?\xec\xf9\xf2I<\xcd\xe3\x1bq\xfc\x17Jo\xce\xfe\xb8\
\xa0P\x06\xef=\xa7\xe7Y\xc8\xb9y\xf2\x17,\x05\\r\x99h\x13\x0f#\xb98Y\x19\x88\
3/\xf4\xc6\xba.\\\xf6;7\x93lo(\xcd\xe0\x8d\xdf\xdf\xfc\xcc\xfb\xb4\'\xe4.zO}\
PQ\x1b\xcd\xf2\xf4{\xf9\x06\xe7\xb6\t\xd7\x7f\x8c\r\x0e\xe7vT\x0bK\xf2c\xf6\
\x86\xd7\x8a\xd3Y\x82\xfc\xf4\xc1:K\x08\x93\xe3F@\x92\xbb\x9a\xf2W\xe4G\x17_\
\xce4\xef\xccz\x0e\x13\xb7\x98\xc9\xdb,\xc0\xb3\xf7o\x9e\xba2\xb4\xdd\x96\
\xaa\x88{-P\x9a&\xa4(0\xa5%\x91O.\x14Y\xcce\xde0T\x0c\x9f-:\x92\xc96\xf1\x9e\
dl\x16w%\x80\x84R7\xa2/Q\x1aI\x81\xdeE\x86\xae\xa54\xa0mCu\xf8\xadl\xa8\xb9\
\x9f\xe4\xda`\xc3\xe5\xcf\xb2\x00ui\x11\x14\xfd\xd0sp\xbc\xe6\xd1\x07\x1f\
\xd2\xcc=+\x0be\xf6\xe9\xc8M`\xcfFr\xde#\xba\xc2M\x03E2\xf8\xc4\x97\xeb\x93\
\x92\xf7Y\xc9\x06tm\x8b-\x15F\x0c\xf1e\xc4\xdeS\x8c/@J\x9b\xf1P\x9c\xa9\x870\
!R\x80\xf7\x8c\xf1\x06/F\xef)%2\xb8\x1b\x16Q\xee*\x08\x9e\xf1\x9a+\x87\x99I\
\xd0(\x12\xed\xe69Z\xe9\xcc\xea\x13X\xd5\'\xb8\xdd\x1b\xa2\x8d\xd9@\xd7K\xac\
\xa5\xb2\x96n\xbb\xe5\xec\xd99\xf5A\xc5\x87G\x8f\xa8\xac\xa2\x1d\x1c\x83\x8b\
<~`)UNg2\x11js5\xc8\xf5XS1\x84\x84Ms\xe9J\xfd\x0e%\xa5L?h\xd2l\xfa\xea~\x9d\
\xebe\xef\x80\x1bs\x9ev\xf1\xec\x9c\x14s\xbcqC\x87\x88\xc1\x0f\x0e\xb4\xa5\
\xedz\xc4Z.\xbb\x16\xa54\xbd\x17\xcc\xaaa\xf2\x11\xffZr\xe9\x06h\xbb\x96\x18\
Cn\xd8\xd1\x9a\xb3\x8f\xcehw-\xa3\x1f\t1\x1be\x17g\xcf\xba\x16m\r\x1f\xcf\
\x0f\xf2\xe3\xdcOb\xd7\xd8e6\x98F\xa8\xcb\x9b\xae&\xb8\xe9\'\xd1$\x12z\x9f\
\xefIr\x8c[\x87\xf3>w_~\xaes\xe9\xf3\xeb\x96\'\x9d\x9d_rr|H\x18FV\xcb\x05\
\xee\xa2\xc7\xaeJ\xc6Pr\xf9\xfc\x92\xd3\x93\xe3\x9c\x8fU\x962)v\xc3\x80%\xd7\
\xe6G\xef\xb1\xd6\x92Ds\xb0jHE\xee\x04\xaf\xac\xe1\xca9\xa6\xe89:<\xc4K\x96\
\xc2 \x92K:S\xe2\xe4\xfd\x13\x98\x12j!<\xbb\xd8\xa0U\xfe\xac\xf3\'\x8f)\x94!\
\xb9\x81a\xe8h\x9a\x9c\xc0\x96Z3nr\xcc\xb4b\x90\x95aiO\xd9\xf4=\x8f\x7f\xf1\
\xef8\xfa\xda]\xce?z\x94\xbb;\xc30S\xcd\x82*\xae\x03}\xa4TY\x8e\xcd\x0bGx\
\xe5)Pol\xc7\x9bu+&\xb9\x1f\x1daJM\xd7>\x07]d\xde\xc7\xefX\xd5M\x16\x9b\xa7\
\xc4\xb3\xf33\xbc\xcf\xd8f\xdb\xf7X[aKpcn\xc4K\x01 \xe2\xc7\x80\xf3=\xcdr\
\x99\xc5\xa367\xe9\x85\xed\x80\xa9,\x83\xdb2\x0c\x8e\xf5\xfa\x08UL$\xb5\xd8W\
+\xfa\xce1\x0c\x1d\x0f\x1e=\x82\x19\x8e\xa0\xafY\x03\x95\x8b\x08:\xe5\xec=\
\x0c\xfc\xfa\xc5\xc4W\xdf[\xf1\xe4qV\xcc=<Y\xe7\xa2\x82\x1b\xf2\xbf\xd0%q&\
\xe2$e=\xd25#\x90|\xda{\xb8\xbfkY>\xfc\xc9\x8d\x81\xbehxB\x9c\xf2\x05-\xbe\
\xbe\xc0\r\x1e]Y\xeaU\x8dH\xc1\xd0\xb5\xf9\xe9\x8b\xf0\xf0\xe9c\x98e7\xb6\
\xb1\xa4\xa8I\x93\xe7\xc9\x87O\xd9\xf4=\xce\xed\xb0\xeb\x1a7\xf8\x1f\xdd\xb1\
\xfa\x00\x00\x11[IDAT\xec\xeaFh\xb7\x1b\xb6\xdd\x86\xc4\xdc4\x98R\x06\xaf\
\xab\x8ag\x17\x1b\x86\xae\xa3\xddl\x883N\x12\xb3\x82a\x9b\xb3\xff\xeb\x15\
\x84\xe8r\x82{MoD\xe0\xab\xdf\xcc$\xdf\xc3\xf7Orgg\x8c\xa4\xc1\x83\xae\x08\
\x11\xc6\x00JW(]\xe5PB\x8eM\xe3\'#Q\x84\xf2\x9e\xca \xd5\xdf\xae\xe0~!\xc7Mp\
\xb4mG\xdd\x1c\xe7\'7\x9fT\xd7\xbcq\xd7\xb74\xeb\x07\x10\x1d\xce\x8dh\xbb$y\
\x87R\x96\x18\x1d\xa5\xb5\xc4\x10\xa1P\xa8\xcf\xc1\xfc\xd1\xfb\\(\x9cU\xb7X\
\xc9\x0c\x81\x95\\u1B\x7f\xd1\xb2\xbc_qy\xde\xd3\xd4\x15\xca\xe6\xcf\x88NPdN\
\x08\xb1H\xcc\xf9\x99\x12\x85\x1b\xe7\xe1\x0bJ\xe3\xfa\x81\xe27\x99\xb7N\xc6\
\xf2\xe1\xd99\xabj\xb1\xd7*]\xeb\xcb\x8d1\xac\xd7\r\xa4\t\xefz\xf4\xdb\x86\
\xf0\xba\xa4\xfa\x1c\x9f\xf4\xc5\x15\\ F\x81)f\xd2l\xcf\x07\xcf\xa5Ss\x8d\
\x82c\xe6u\xb6C>\xfegU~t!o\xcd8\x1fu1S\xb7\x19}K\xae\xda\xbeQ\xd4d\x86\x00\
\xd7F\x0c\xca2\xf4=\xdba\xc7\xfb\'\r%\x89\x18\xe2^\xfc`g\t\xce\xb5\xf8*?\xc3\
\x04\xd6\xe2\xda\x1e\xe7\x1d\x8b\xaf\xe6\xe3\xbf\xfc\x86\xa2m\x07\xc6\x908\\\
7s7g&\x05\xa3\xdb\x11<X}S0\xd89\xff\xe5\x85\x80\xabv`\x12O\x91r\xfa\xe1D\x18\
\x86k\r\xf5\r\x00\x9c\xa2\xc7\x96\xf9\t\x16\x9f\x13c\x96Z\x18\xdb+JC\xa67\
\x0c7`s\n4\xf7\x1b\xda\xb6\xc7(\x18\x92A\xa9\xf9\xfbt\xde\x16\xf8\\\xa7\xd3\
\xa5\x01\x9f;\xb6\x95d\rJ!s3s\xca\x8d<\x00\xea\xae%M\x05q\xeb\xb1\xeb5z;\xe4\
V\xeb\x08\xceE\xea\xc3c\xa2\xdb\xe5-n+6\x1f=\xa5\x1b\xe1\xf1\x83C" \xb5\xc5^\
\x8b\xd0\xbe@\x9f\xf4\x85m\x13\xd7u}7\xc6\xdc?\xc2\x04z\x84P\x92\xfc\x88\x98\
\xf9u&\xd3\xf6\x9ea\x13\xb8\x9b/\xb9\xee\x08\x80\x0c\x1c\xf7i\x0b7\xa4\xadR\
\x8a\xe8\x1c\xe9\xda\xfe)!"\xb4\xc3H\xf2[\x0e\x8e\x1ap\x11k\x15q\xd2Hd?\x87\
\xa4\xbc.\x11\xa5)\xcf\x1a\x81\xdc\xe7orc\x8fHA\x8c\x81\xdd0\xe4,"\xc1v\xd8q\
\x7f\xb9@I\xc9\xf9U\x9b\xe7\xa1<<\x84OG\xc2+\x8fO\xea\x96\'\xdd\n\xdc\xdb\
\xe1\x8a\xa4\x16$t\xd6\x1cT\xef\xd2v\x97\xb0\x0b<;{\x8a\x18\xe1\xd9\xd93d\
\x01\xee\xa2\x07+t\x97\xe7\x99\x1aq\x131\xe4\x8eJ&\x8f\xdfu\x10\x1cC\xb7\xc1\
o7\xf4\xdb\x968%\xda]Kp\x03\xc9\xe7j\xadZ\x15x_P\x9a\xdcm\xa9V9V\x88Y\x11\
\xbd\xc6,\x9b\xccL\x16\x82\xd4\x8ar\x91\x8d\x11SD\x8al Q\x1a\xe7#\xc1\x8d\
\xb4\xdb\r\x17\xbd\xc3\x8f\x81\x9d\xcb}\xc0S\xf4(&ti\xf8\xf0\xb2c\xf1\xa3gy\
\xfe\x80U\x94Z3\xcd\x95`\xad~\x07\xd2mU\xd9|\x0ck\x85\x98\x9czh\x84\xf1E\xe4\
\xc1\xba\xc1\xf5\x9e\xa6^\x92v`W%\xa9|\x8f\xe6\xd4\xe4$X\x19\xd4\x9c\n\xb8M\
\x87\x14&w\xaf\xad\xd69\xbe\x99\x92\xf6\xfclO\xca\x8f>\xb1\xaa\xd7D\x07CwN\
\x18\x0c\xe6`\x8d\xec"\x83\x1bps\xab\x98\x91\t\x86\xec)i\xd2\xf8\x11\nI\xf8 \
x\x9fX\xe9\xdcb+"\xf41\xb1>\xfd1\xfa\xf2g$k1e\xc0]u\x98\xf5\x116\x84Y\x9f\
\x0e\x87V8y\xb0\xa6\xb1\x96a\xbb\xc1V5\xf1\x85#\xbc\xa9x\xfd\xc7\x8c\xb4\x1d\
\x1c\x8d=\x80\x14i\xcf[\xea\x87\xdfBlCY$\x1e\x9d]\xf0\xf8\xe4\x88v\xd7\xb2x\
\x99U\xf6\xfe\xd9_`\x96\r\xe7\x17\x1b\x9a\xa6\x01\x1c\xd6\x9a,\x82O\x9eB-)M\
\xc90)p\x8eUs\x9fgg\x1b\xac\xb5T\xb6\xc4\xed:\xc4f\xaf\xa9\xad\xa5\xbb\xda\
\xe0EQ(\x8b\x9a\x19\xce\xe7\xbd\xc3\n\x14\xca\xe2\xba\x96\xc3\x93\x13\xa8\
\xdeE\r\x1f\xe7\xa2t\xf5\xee>\x15\xaa\x80t\xf5s\xaa\xc3o\xed\xd3\x97\xe8<\
\xfd\xf9\x19\x8f\xe6\xa4\xf9\xd1\xe91\x15dY!Y\xa6(d\x9e\xaaxu\xcbF_PwKBt\x8e\
Gg\x17\xac\x96\x99\xa6\xf0W\x1b\x9c\x1b8>\xb0\xb4\xdd\x96\x95Yf\xad\xa2\xf7\
\xf9\xf8w;\x9a\xa6\xc1\xe8\xdc@\xb3\xbd\xea\xa8TI\x14\x93\xdb\x13R\xa2\xdf\\\
\xb2i\xafHi\xe2\xc1\x07\x87\x04Q \x05\xc3\xe0\xa8\x8c\xb04\x8a\xa4\xa0\xae\
\xb2\xdcF\xf4\r\xafS\x84\x91\xa4\x0c\xbb\xd1!f\xa6=\x86\x8f\x19\x06\xb7\xaf/\
\\/\x19\xfe&\x97\xa4\x80\xcd\xe3\x0f8\xbb\xbf`i\x0b\x0e\xd7\x87\x9c\x7f\xff\
\x94\xe3\xba\x9aGm\x04r#\xe6\xcc\x9b9\xbf\x07\x94\x9f__8<a\xd2%\xf7+\x83\x0f\
\x89\xaa\xaeq>`\x89t\xae\xcb\x89\xa0\xceB*\x05<\xbd\xd8p|\xb4\xa6\xedz\x0e\
\xeb\x061\x92[\xb2\xa4\xc8C\x15\xc8\\O\xbb\xd9\xd0\x1c6\xb8~\x98\x0f\xc8\xfc\
\xec\x0b%\x88\x14\xb9\x13a~-\xb5f\xd8\x056n\xe0\xb8\xae2tx\x83\x0csn\x87\xd6\
\x86\xd2\x08\xa3O\xec\x9c\xc7JA\x9f\xc0m\xbb,\x96\x9f\x02\xcd\xf1\x11\xe3\
\xe0g/\x8bD\xf2\x18 7\xdc\xd0%Idn\xc6\x89\xc4\xa0\xf0\xa4/\xefw\x1b\x1e\x1d\
\xa3\rx\x1f\xb1&!\xeb\xef\xc1\xf01\xae\xdbag\xe4{\xfd\xc1\xe9z\xbaD>\xc7\xb8\
n\xe7\xcc\xbdo\x964\x8c\x19\xfe\xc3\x8c\x8c\xaf\x0b\x967\xf2\xe30:\xe2\x94\
\x8f@\x17\x13\x8a\x89\xd1\x8f\xec\xe2\x84\xb5\x96\xfbK\x8bJ\x19\xc7\x98\xbd\
\xaa-\xa7&\x11\xb83\x97\xb0!\x83\xc7n\xdb\xb1j\xee\x13F\x87V9\x05\xb9~\xbf(2\
\x0f\xee\x13J\xbfI\x99\xccF|\t\xfe\xb5\xdc2\xd2\xad\x98\xb4isY\xda\x18\xc3\
\xf6\xca\xb3J\x96\xe5\xc3\xff\x8e\xfe\xec\x1b\xf4\x04vQ\xe61d\x99\x98\xbb^\
\x9fW\xaf\x95:\xe7tm\xeb\xb1\x020R\x88ED\x081\xa0\x95&\xa1r\xcd~rT\xab\x1a\
\x9b\xb2\xde\xc3\xed\x06*\xa0\x9d\xc1\xa3(0Q}v;\xdc\x05^F^\xdf1\x94\xf7\xb2t\
\xc6\xe7\xd9>\xa4\x17\x0e^A\xfa\r\xf8W\x03\xd6T\xc4\xf0\x86A\xef\xcc\xe5\xed\
W\x1ek\xb2\xb1\xc3\xcc+\x85\x7f\xb8\xdd>q\xcbHu]cg\xca\xc0\x87jOv\x95\xeb5\
\xabB\xa8v\xc3\xac\xaf\xd6tn\xc7\xc2\x1a\x82\x1f\xe8]\xe2\xb0n\xe8\x86\x8eBe\
jDS\x97\x1e\xab\r\xbd/@\xca\xfc\xc4(hV\x15\xedf\x03f\x89\xa4\x82!\x00C\x8b\
\x8f\xb9ge$\xd0\x90\xc3GH\x03Z*B\xcaF\xd3R\xddP\xc2:\x12\x13\x84\x94g\xb39\
\x17Qw\x17\xa8\xbb7\x84\xfee\xd7\xb3\xac\x0eHw4\xe6\xaeP*\x18c\x1es\xe6\x13\
\x10bn\xe7\n\x91T\xde\xd6\'\xdd\n\xdc\x93\xe4\xad2\xf9H5k\xa8I/\xa8\x9b?\xe1\
\xe4\xd1S\xcc\x9d\x84s\x03b\x04\xa3\xc8\xfc\xd1,"\x17\xab2\x07UY\x92L$\x05\
\xddU\x0fJ\xb34\x16\xd2\x98\x85\xa9\xc9\xf3\xe4\xa2\xa5P\x06\xd1\x9abU\xce\
\xc3\xa6\xd6\xb9\x9b1\x04\x94Z\xd0:\xcf\x10GDWL)\x9fBU\x95e>\x91\xbc\xbd2GTb\
U\xcc\xed\xefS\xf8L\x95X\xdd\xcd\x1dK\xfdpEJ\x89\xe0\x07b\x92<\x08\xcf\xe4\
\xd8j\xde\xe0\x91\xb2\xbe\xfbK\x8c4\x0e\x89~;p\xe5\x1c1\x04\xbaG\x7f\x06C\
\xde\x82\xa7\x07j\xdf\x0f\x12\x01R\xcc\xd2A\xa3\x98\xa2\xa7m/\x19\xfd\x88\
\x8b\xd98ap,\x96u\x9eO\xe4;\x0eV\x8a\x92<\xd6\xecpa\xe9\xba\x8e\xb3\x8f\xce8\
\xff\xe8\x12Dro\xac\x14x\xd73t\x1dVk\\\x08\xf3\x8d\xe4Smt0\x04\xb7\xb7\x83\
\x1b\xf3\xbc6t\xc5\x18\x02\xc6Z\xfc\x98E\x19(M\x94\t%%b,\xbb\x98\x05\xf2\xdb\

\x0f\xc3\xdb\r\x03AY\\\xf0$\xf2\xaf\xea\r\x19\xe2\xf5\xba\xb5\xdd\x0eVK\xa2\

hJ\xd9\xa244\xf5\x11n\xe80\x07_\x07]\xd0\xef\x06L\x99\xab\xb8\xbdK4f\xcewDQ/\
k.\xfd%\x95R\x84\xcaP\xd8\x92\xa9\xef)\xca\nm\xca\x9c_I\xca^\xa74\xebI\xb2\
\xf6:&D\x1b\xa6\xc1QXC!Y\xb8\xda\xb6\xdb\xdc\x9f\xeb#")+\xe2\x80\x90\x84M\
\x8c$\xef\xf0\xa28\xae+\xbcO,\xe76\xfa,\xf4\x86M\xef\xae\'&\xe2B\xe0\xf4\xf1\
\x0fpg?\xc5\x0b\x9c_l\xa8\x9bC\x16\xdf}\xc2/N\x0f\xd0*\x1f\x10_D\xba\xddn\
\x9b\xd8uy\x0e\x80\xb6D\xe0\xc9\xe33\xc6m\xcc\xa5%\x1f0w4\x92\nt\xa99X-\x99\
\x12\xec\x06\xc7\xaa\xb2<={\xca\xc1j\x89\x14\t\xad\xaa\x0cG$\xcft\x94\x94xzv\
N\xa5\r\x9b\x8bK.\xcf\xce\x90bd\xd7\xb5X\x9b\x19\x07\x18i\xbb\x9eRk<j\x7f\n\
\xfa\x04\xcbU\x85\xaa\x96\x0c\xa20\xcb\x9a\xf5\xc3\xef\xb1<>\xe1\xf4\xf1\x0f\
P\xeboSU\x96!\xc0y7\xd0u#b,M\xbdDUK\x8c*\xb1Zs\xf9\xc1\x9f3\xc4\x11\x17\x02u\
sH\xe7\x06~rr\xc0\xd3M\xbf\xa7\x88\xad\xba\x9d\xe0\xde\x06\x93\xda\x12]\xa0\
\xdf\xf6\x94\xc6\xd04\r\x95-\x19\xbb-SL\xa8\xbb\nc,gg\xe7hkq>o\x11I\x05\xc7\
\xc7\x87\xb8]G\x9cr\xab\x82\xd6\x89\xd5\xb2\x99E\x9d\x9a\x93\x93c\xbcw\xac\
\x8f\x0e9\\7\x98\xd2b\x175i\xca\x98jQ\x1d\xb0>:\xcc\xf9\xdf\xfcDU!\xb8mG\x92\
\x0c\x1fR\x8cT+\x03\xc3\xc7\x98\x14\xb26i\xf8\x18\xaaw\xb1\xcd{\x9c>\xfe\x01\
\xeb\x87\xdf\xdbk9\xed<zq;\xecXV\x07\xb8mN^\xeb\x1f=\xa3\xbb\x1a\xf8\xee\xd9\
\x15\x95\xcd\xb4ma\xd4>Q~s}\xa1\x88\xabT\x10\xd1\x99\xd42\x86\xe0\x86\xb9\
\x85\\\xe3S\xa0P\x82\x92\x02\xd1\xf3\xbc\xa1\xe03o=\xf3\xdc@\x9e\x99\x04\xc4\
\xe4\tb\xf6\xe3\xc2<\xc2\xca\x08\xbb\xc1QH\xb1\x87\x04\xa3\x1fo\xa6\xa0\xce\
\xcd\x81\xba4\x9c\x1e\x1f\x11\xdd\x8e\xc9\x8d\xfb\xb9kS\xf40\x05\x16\xab\x1a\
\xe7#S\x9a\x88\x14\x844\xb1i{N\x1e\xac\x89C\x8f\x18K]\x958\x0fn\xb8B\x8c\xcd\
,\xc0A\xc3\x87\xcfr\x9c=y\xb0\xc6Z\x9b\xa7\x0b\xbe\xces\xa1\xec\x87_RR:\xbf\
\xb8\xadc^Z\x85\xf3\x05\xed0\xddt5^\xff\xdd"\x07\xba~w\xc9\x86\x8c\x97\xf2\
\xe4\xacq6V\x89\xc6\x81\x11\x04E\xbd0\xf8\x9d\xa7^\xd6$\xb2\x1ehE\x84\xca\
\xe6\xb9LSM*\x12)\x04\xce\xbb\x81\xa1\xeb0w\x12\x85(\x16\xa2\x08xP\x06\xfb\
\x87Y\xc7]\x02\xc6.\xf0)\x00\x8a\r=\x8d\xd5$\xdb\x10\x86\xcc\x9c\x96\x80\x03\
\x8c*\x81]\xf6\xa2\xef?\xc0\xc7\x11\x8d C\x8f2\x8a\xe0=In\x07\xee[\x9e\x94\
\x9e|7w5\xe3\xb1&\xe7Q>9\nU\xa2R\xda\xcf\x9c\x8d/#\xe57\x97Y\\j\x04\xefs\xef\
\xacs\x9eb\x02e-i\xc65h\r!\xdc\xf0<\xa9\xd8O\xedJ)?=1B\xdbm\xb1R\x80\x06\xb3\
lxz~\xc1\xbai\xb01\x93poJ\x89\xaf\x9bk\xd0\xf9\xb4LS\xca\xe5\xad\xb9\\}=LO\
\x08\xf4.\x11b\xa0^\xd6D\x97\xa7L\x8c\xde\xb3\xeb\xfb}G\xa65\x15\xdd\x90\x81\
d\xf3\x93\xcf\x96\xb9o\x17\x02$\xbb\x8955Q&|\n\xa4\xe0)W\x86n\x18\x18\x93 \n\
\xe4\x9d\x92\'\x1f>EY\xcd\xae\xef\xa9t\x1e\xb5i\x04\x94\xd6\x0c\xaeEi\xcd\
\xa6\xbd"\xb8\x01\xa4\xe0\xec\xe9S\xb6}O\xca\xf2!\x9c\xdb\xb1\x1d\xae\x8821\
\xec\x02\xcc\x14j\xa1J\x86Y\xbfm\xf6\xf5\xe4\x8c\x90\xa3\x08\xd3W\x14\xfa\
\x9a\x92q\x9e\'\x1f\x9dq\xfe\xec\x9c\xde\xa5}\xed,\xce3\x02\xc6\x17\xb9\xaeV\
\xdb\x05~\xe8\xd9E\x9fA\xec\x1c{TJ j\x9e\xa7k\xf6ca\xffIOr\x1f\xfcq~\x9d\x87\
?-WKjk\xf6V\xb6\xea\xa6\xf1EK\x06y\x85-9?\xbf\xe4\xf8\xf8\x10\x95\n\\\x98 \
\xf5\x88\xae(~\x139\xffy\xc7\xc9\xc91\xdb\xab\x8ef\xbdf\xdc:v\xe3\x80\xb5\
\x15\xc3\x042\x0e4\xeb5\xedf\x93u\xe0!\x92\xaa%\xdemHT\xac\xee\xe4\xf1\xad\
\xf1\x8d.\xa4+\xe7(e\xa20\x0bJ\xad\xb0\xe5\x9c\x9a\xf8\xb8\x9f\x89\xb4\xcf\
\xcafJv\xba\x1e\xd8\x16\xf2\xa1p\xf7\xce\xc4\xdf\xfe:\xee3\x84B\x14.E\x0e>\
\x17\x93nC\x80ynG]\xd5\x9c\x9e\x9c\xe6A\x9a>\x82$V\x075W\xce\xa1\xed\x12\xc1\
\xd0\x0e=\x85(\xda\xf6\n\xbb\xaa\xf9\xe8\xb2%\x19!\xe9\x02\xfd\xb6\xa1\x98\
\x80\xd7*\x97x\xd2D\xa1\x0c\xa3sLE\x9e\xb1[H6P\xbfsD\x9f\xc7X\xa7\xd2R\x18\
\x85) \xc6<Rlz\x95o~J\x91B\tW\xce\xb1\xac\x0e\xa8\x9b\xfbX\x93uEn\xc8\xd7Y\
\x18\x95\xddy\xce\xf3\x92\xca\x9e\xde\xb6W\xfb\xa4:\x8aP\xbc\r\xaf\xa5\xc0(\
\xf6\x06\x9aRD\xc9m\xb1\xfb-#-*\xcb\x95s\xf4\xde\xd1\xf5y\x8f\xbb\xe8\xb1f\
\x89s\x9e\xa69\xc8\xc6\xa8\x96x\xef\t\xd6Rj\xa1\xaeJ>8l8yt\x86!\xe0_K\x9ep5\
\x0el..Q\xf3\xa9T\xaa\xfc$\x0f\xeb\\\xc15\n\x8e\xff\xa4\x9eGcx\xbagO9\xbf\
\xd8\xe0%\x97\xa5C\x9a0&\x0f8\x88"\x08\xb9\xd0\xd0\x0fW\xc44\xe5f@\xa9(\xde\
\x9e\xd3\x8b\x00\xbb\xbeg\xfaJ\x8e])\x86\x1cw\x8c\x05m\xb8\xda\xe6\xd0\xe0^e\
5\xc9u\xa0\x0e\xf8<\xd4\xef\x0b\xd6ma\xa9\x14<8Z\xa3\xf0y\xec\x85\x08\xcdA\
\x85\x9eA\xd6\xf9\xf9%\x8fO\x8e\xb0d\x89q\xa5s\x9f[)\x89\xe0F><\xac\xf73\x1b\
\xaf_!\x8fQ\xd5en\t\x03@\xe7\xf9\xdbI,\xd3W\x14\xa5V\x9c\x1c\x1fr\xff\xe4\
\x90\xf5\xc9)2Wh\x9cs\xf8\x94\x0f\n\xa3\x85m\xd7bm\xc5\x81\xb5L1\xcf\x0e\x9f\
\x8aLqt\xc3@;\xe4`\x9c\xc2\x80\x9b\x83\xbb\xa0PaGp;lu\xc0\xe3\xcds\x94\x94\\\
\xfa@\xdb\xb6\xe8\xca\xa2\xef\x14\xb9\xdf\xe5\x0b\xd6?R\xe6\xb6\x88\x86\xe4\
\x1c\xa2n\x04\xedS\x02S\xe6\xec\xf2:\xc0O1o\x11\x93\xfc\r\x10\xbb\x1e\xb6i%W\
NS\x91\x0f\x80I0&w@\x95d\xb7W)\xe1\xd2\x84Q\x96!\x8eTj\xa2\x1ff\xf8P-\xe9\
\xae:\xee/\x17\xf8\x04\x8a\xfc\xbe\x98\xc6=62\x92\xe7\x00\x98r\x89\xad\x17P\
\xbd\x8bk\x7f\xb5?Q\x87\xbe\xc7\xa8\x12\x1f\xc7<:\x08\xd8\\\\P\xdb\n\xd1\x05\
\x8f\x9f\xe6\x11\xb5v\x9e\xf16\xc2\xad\x98t{\xf0\xdd\xb1aL\x05\xde\xfb\xcfL\
\xc6z\xf8\xf41GG\x8f8]\x1bF\x7f#\xba\x82\xcf\x8b\xd6\xe71d3\xa8\\.,\x88b\xf4\
y\xd0\n\xf0Y\x01\xfc\x1b\x0c%>Q.\xae\x87M\x19.\xae\x1b\x99\x9d\xe3\xf8\xc11\
\xb6y\x8f\xfe\xec\xa7,gc\xec\xd7\xf0qfO\x9b\xf7n\x1e\xf6\x1b]\x02\x90G\xbe\
\xbe\t"\xeb\x83jnV\x06S\x1at\xca\x98\xebw2\x12\xcf\xde\x07B\x9e\xd2\x17"P\
\x12t\xc2\xa8\xd5\xfe)U\x85\xe7j;R\xd9\x9c\x88\xfa1\xcc\xff\xaf\x80\xdfoKe-W\
\xedU\x06{\xc6\xce\xc3:\x0b\xb6\xfd\x0e\xa3@\x9b,\xbe\x10\xa5\x19\\\xee\xe3_\
[K\xe7r\xc7v\xa1\x0cAT\xa6.\xdc\x801\x86\xaanh\xb7[N\x8f\x8fh\xbb-Fk\x9cs\
\x18U2YM\xb3\xb2y\xca\xe0\x1b\xd3\x96\xcf\x7f\xf4c\xea\xd2\xees\xb6\xd3\xe3#\
\\\x82G\x1f<\x06\xe0\xd1\xe91V\xcd\x8a\xe0m\x16\x96~\xe9L\xb7\xfe\xc9w12\xb1\
\xf5\x89j\x01\xe3N88Z\xc1\xf2{\x90^\x00p\xf6\xfe1\xabR\xe3b\xc2\xce\x83v\x83\
(VF(\xeb\x15\xed\xd33\x16U\x85G3t-\xde{\x0e\xeb\x1a\x17=\xa9\xac08B\x14\x8cD\
\xb4]f\xf8\xf0\xfe!\xed\xc5\x15Ms\x00)\xe1\xc2\xf5\x049At\x81\x99%\x83\xa5\
\xca\xf4\x88)\xe7q\x8a\xb0\x1fJ|\xcd\x11\xed\x86\x81(\x06\xab\x04\xb1U\xe6\
\xe7\xaf:\xa2\x18\x8c*\xf7\xdet\xfe\xd1#\\\xb7C\xdf\x19q\xaf`y\xfa=\xba\xf6\
\xe74\'\x1f}\x89\'\xf1:\x1bC\xee\x91\x99\x94\xd7o\xbc\xcek6\x16\x90\xdf\x97^\
\xe4N\xa3\xf9\xdf&\xff1i\xf3\x17\xa4\xa4\xd8\xb9\x9ez\xd9p\xb9isG\xf6Jqu\xd1\
\x03\x81\x07\'\xa7\xb4\x9b\xac\xe8u>7 _\x0f\xd63\xcbC\x9cs\xd4F\x08n\xcc-\
\xa5\x12\t1\x1bH\x8a\x00S\xe6\xac\xaf;\xca_\xbfp\xbc\xfd\xce\xcdV\x8e\xe4\
\xc3\xa3x\x1b\x9e\xff/\x1d\x8beM\xd7u\xac\x9bC*\x9b2\xd0\xbc\x0b\x11\x85:\
\xfc\xce\x8d\x82\xee\x8d\xd4\xe4\x1f7\xd2>\xa5{\xc30p\xdbX_\xf4w\xe9\x05\xe3\
\xd9#T\x1ayz\xd1\xed=\xc8\x943%L\xc4\x16\x15\xce{\x9enz.>\xccz\xf1\x18"jU\
\x81\xf3\x1c}\xf0\x94\x8b\x8b\xc7l.:j\xab!M\x99u$d\xc1F!\xc4\xa9\xc8\x9a\xa6\
9.\xde\xe8!o\x88\xfd$%\x8a\x11t\t\xe8\xacC\n!\xe3\xad\xb7\xb3\x98\xc2\x01n24\
\xc7\x0f?c\x9c/1\xd2\xe7\x8d\xf3\x05\xde\xb4\xf7\xb4\xdb\x86J\xeegp\xf9\x17\
\xf3\x9fs,\xda\xf5=\xad\x0b\x1c\x1d\xacX\xae\xaa<Y"\xc5\x8c\xde\xab%\x8f~\
\xf4t?U\xf4\xe1\x07\xa7\xb9\xfctz\xc2\xd5\xc5\x16\xd1E\x8e\x19\xc9\x11yC\xfd\
\xcf\xac}\x9c[D_\xfd\xbf{\r9\xd8\x0evF\x01l\x97\xe4\xf3\xe7\x90#:\x9e\x7fx\
\xc1`e\x18\x04Yv-\xa9\x8b\xc8\x01\x0c\x0cH\x81\xf3\x07\xee\x0f"\x02i\x14\xc0\
\xc0\xe85AD\x02\xa6\x03\x07\x0e0466\x0e\xb4;\x06%hlld8p\xe0\x00\x03\xc3\xe8\
\xfdn\x84\xefw\x03\x00\x16z\xcd\xda\x97^\xde\xb2\x00\x00\x00\x00IEND\xaeB`\
\x82'

def getbBitmap():
    return BitmapFromImage(getbImage())

def getbImage():
    stream = cStringIO.StringIO(getbData())
    return ImageFromStream(stream)

I forgot to include version numbers:

Windows:
Python 2.3.5 & wxPython 2.6.2.1
Python 2.4.2 & wxPython 2.6.2.1

Linux:
Python 2.3.4 & wxPython 2.6.2.1

Theodore KGB wrote:

I have written an application that works on Windows but doesn't on Linux.
In my application I bind wx.EVT_LEFT_UP to a static bitmap. On windows GetEventObject() returns:

<wx._controls.StaticBitmap; proxy of C++ wxStaticBitmap instance at _78faaa00_p_wxStaticBitmap>

On Linux the same code returns:

<__main__.CalcPanel; proxy of C++ wxPanel instance at _b05b4309_p_wxPanel>

I have attached an example application which illustrates this. In the example application the image
changes on both platforms (to visually reassure me the event handler was being called). In my
application an image is displayed based on the event id.

Is this inconsistent behavior a bug or have I made some mistake in my code?

It's probably just considered a difference in implementation details. The root of it is that on wxGTK the static controls are not real X windows, but are just drawn directly on the parent window. OTOH it probably is possible to be able to set the right widget in the event. Please enter a bug report about it, with a category of "wxGTK Specific".

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!