PKMk@11 buildbot-v0.8.6/py-modindex.html Python Module Index — Buildbot 0.8.6 documentation



PKMk@p/**buildbot-v0.8.6/bb-status.html Status Target Index — Buildbot 0.8.6 documentation

Status Target Index

G | H | I | M | P | S | W
 
G
GerritStatusPush
 
H
HttpStatusPush
 
I
IRC
 
M
MailNotifier
 
P
PBListener
 
S
StatusPush
 
W
WebStatus



PKLk@x,,buildbot-v0.8.6/bb-sched.html Scheduler Index — Buildbot 0.8.6 documentation



PKHk@X88buildbot-v0.8.6/index.html Table Of Contents — Buildbot 0.8.6 documentation

This is the BuildBot documentation for Buildbot version 0.8.6.

If you are evaluating Buildbot and would like to get started quickly, start with the Tutorial. Regular users of Buildbot should consult the Manual, and those wishing to modify Buildbot directly will want to be familiar with the Developer's Documentation.




PKMk@t.-.-buildbot-v0.8.6/bb-cmdline.html Command Line Index — Buildbot 0.8.6 documentation



PKMk@ADMDMbuildbot-v0.8.6/bb-step.html Build Step Index — Buildbot 0.8.6 documentation



PKMk@OeOebuildbot-v0.8.6/searchindex.jsSearch.setIndex({objects:{"":{"--no-logrotate":[19,0,1,"cmdoption-buildslave-create-slave--no-logrotate"],"--keepalive":[19,0,1,"cmdoption-buildslave-create-slave--keepalive"],"--maxdelay":[19,0,1,"cmdoption-buildslave-create-slave--maxdelay"],"--log-size":[19,0,1,"cmdoption-buildslave-create-slave--log-size"],"--log-count":[19,0,1,"cmdoption-buildslave-create-slave--log-count"],"--umask":[19,0,1,"cmdoption-buildslave-create-slave--umask"],"--usepty":[19,0,1,"cmdoption-buildslave-create-slave--usepty"]},"buildbot.changes.pb":{PBChangeSource:[39,2,1,""]},"buildbot.db.buildsets.BuildsetsConnectorComponent":{completeBuildset:[27,3,1,""],getBuildsets:[27,3,1,""],getBuildsetProperties:[27,3,1,""],addBuildset:[27,3,1,""],getBuildset:[27,3,1,""]},"buildbot.changes.svnpoller":{SVNPoller:[39,2,1,""]},"buildbot.process.buildstep":{RemoteCommand:[1,2,1,""],RemoteShellCommand:[1,2,1,""],BuildStep:[37,2,1,""],BuildStepFailed:[37,6,1,""],LoggingBuildStep:[37,2,1,""]},"buildbot.db.state.StateConnectorComponent":{getObjectId:[27,3,1,""],getState:[27,3,1,""],setState:[27,3,1,""]},"buildbot.config.ConfigErrors":{addError:[21,3,1,""],errors:[21,4,1,""]},"buildbot.db.model":{Model:[27,2,1,""]},"buildbot.changes.mail":{SVNCommitEmailMaildirSource:[39,2,1,""],BzrLaunchpadEmailMaildirSource:[39,2,1,""],CVSMaildirSource:[39,2,1,""]},"buildbot.status.logfile":{LogFile:[36,2,1,""]},"buildbot.db.changes.ChangesConnectorComponent":{getRecentChanges:[27,3,1,""],getChangeUids:[27,3,1,""],getLatestChangeid:[27,3,1,""],addChange:[27,3,1,""],getChange:[27,3,1,""]},"buildbot.db.sourcestamps":{SourceStampsConnectorComponent:[27,2,1,""]},"buildbot.steps.source.buildbot.steps.source.bzr":{Bzr:[29,2,1,""]},"buildbot.process.buildstep.RemoteCommand":{remoteComplete:[1,3,1,""],remote_update:[1,3,1,""],addStderr:[1,3,1,""],logs:[1,4,1,""],stdout:[1,4,1,""],remoteUpdate:[1,3,1,""],remote_complete:[1,3,1,""],useLogDelayed:[1,3,1,""],addHeader:[1,3,1,""],interrupt:[1,3,1,""],addToLog:[1,3,1,""],rc:[1,4,1,""],active:[1,4,1,""],run:[1,3,1,""],useLog:[1,3,1,""],addStdout:[1,3,1,""]},"buildbot.process":{buildstep:[37,1,1,""]},"buildbot.status.mail":{MailNotifier:[23,2,1,""]},"buildbot.steps.source.buildbot.steps.transfer":{FileUpload:[29,2,1,""],FileDownload:[29,2,1,""],StringDownload:[29,2,1,""],JSONStringDownload:[29,2,1,""],DirectoryUpload:[29,2,1,""],JSONPropertiesDownload:[29,2,1,""]},buildbot:{config:[21,1,1,""]},"buildbot.process.buildstep.LoggingBuildStep":{getText2:[37,3,1,""],createSummary:[37,3,1,""],getText:[37,3,1,""],logfiles:[37,4,1,""],startCommand:[37,3,1,""],commandComplete:[37,3,1,""],evaluateCommand:[37,3,1,""]},"buildbot.config.MasterConfig":{user_managers:[21,4,1,""],changeHorizon:[21,4,1,""],logMaxSize:[21,4,1,""],schedulers:[21,4,1,""],titleURL:[21,4,1,""],title:[21,4,1,""],buildHorizon:[21,4,1,""],properties:[21,4,1,""],loadConfig:[21,8,1,""],debugPassword:[21,4,1,""],multiMaster:[21,4,1,""],status:[21,4,1,""],change_sources:[21,4,1,""],logCompressionLimit:[21,4,1,""],db:[21,4,1,""],metrics:[21,4,1,""],logCompressionMethod:[21,4,1,""],eventHorizon:[21,4,1,""],manhole:[21,4,1,""],buildbotURL:[21,4,1,""],logHorizon:[21,4,1,""],logMaxTailSize:[21,4,1,""],prioritizeBuilders:[21,4,1,""],validation:[21,4,1,""],slaves:[21,4,1,""],slavePortnum:[21,4,1,""],mergeRequests:[21,4,1,""],builders:[21,4,1,""],caches:[21,4,1,""]},"buildbot.db.buildrequests.BuildRequestsConnectorComponent":{reclaimBuildRequests:[27,3,1,""],unclaimExpiredRequests:[27,3,1,""],claimBuildRequests:[27,3,1,""],getBuildRequests:[27,3,1,""],unclaimBuildRequests:[27,3,1,""],getBuildRequest:[27,3,1,""],completeBuildRequests:[27,3,1,""]},"buildbot.status.status_push":{StatusPush:[23,2,1,""]},"buildbot.db":{connector:[27,1,1,""],schedulers:[27,1,1,""],users:[27,1,1,""],buildsets:[27,1,1,""],sourcestamps:[27,1,1,""],buildrequests:[27,1,1,""],sourcestampsets:[27,1,1,""],state:[27,1,1,""],base:[27,1,1,""],model:[27,1,1,""],changes:[27,1,1,""],pool:[27,1,1,""],builds:[27,1,1,""]},"buildbot.changes.base":{ChangeSource:[24,2,1,""],PollingChangeSource:[24,2,1,""]},"buildbot.changes.gerritchangesource":{GerritChangeSource:[39,2,1,""]},"buildbot.schedulers.forceshed":{BaseParameter:[14,2,1,""]},"buildbot.db.pool":{DBThreadPool:[27,2,1,""]},"buildbot.process.buildstep.BuildStep":{progressMetrics:[37,4,1,""],setDefaultWorkdir:[37,3,1,""],flunkOnWarnings:[37,4,1,""],addCompleteLog:[37,3,1,""],addURL:[37,3,1,""],describe:[37,3,1,""],hideStepIf:[37,4,1,""],locks:[37,4,1,""],setBuild:[37,3,1,""],progress:[37,4,1,""],setProgress:[37,3,1,""],buildslave:[37,4,1,""],setBuildSlave:[37,3,1,""],alwaysRun:[37,4,1,""],failed:[37,3,1,""],useProgress:[37,4,1,""],start:[37,3,1,""],slaveVersion:[37,3,1,""],build:[37,4,1,""],addLog:[37,3,1,""],setStepStatus:[37,3,1,""],addFactoryArguments:[37,3,1,""],getStepFactory:[37,3,1,""],doStepIf:[37,4,1,""],finished:[37,3,1,""],warnOnFailure:[37,4,1,""],setupProgress:[37,3,1,""],interrupt:[37,3,1,""],runCommand:[37,3,1,""],slaveVersionIsOlderThan:[37,3,1,""],haltOnFailure:[37,4,1,""],flunkOnFailure:[37,4,1,""],name:[37,4,1,""],addHTMLLog:[37,3,1,""],getLog:[37,3,1,""],warnOnWarnings:[37,4,1,""],step_status:[37,4,1,""],startStep:[37,3,1,""],stopped:[37,4,1,""],addLogObserver:[37,3,1,""],getSlaveName:[37,3,1,""]},"buildbot.steps.source.buildbot.steps.master":{MasterShellCommand:[29,2,1,""]},"buildbot.db.builds.BuildsConnectorComponent":{getBuildsForRequest:[27,3,1,""],finishBuilds:[27,3,1,""],addBuild:[27,3,1,""],getBuild:[27,3,1,""]},"buildbot.steps.source.buildbot.steps.slave":{SetPropertiesFromEnv:[29,2,1,""]},"buildbot.db.base.DBConnectorComponent":{db:[27,4,1,""]},"buildbot.status":{results:[10,1,1,""]},"buildbot.db.base":{cached:[27,7,1,""],DBConnectorComponent:[27,2,1,""]},buildbo:{util:[41,2,1,""]},"buildbot.db.model.Model":{upgrade:[27,3,1,""],is_current:[27,3,1,""],metadata:[27,4,1,""]},"buildbot.db.users.UsersConnectorComponent":{updateUser:[27,3,1,""],identifierToUid:[27,3,1,""],getUsers:[27,3,1,""],findUserByAttr:[27,3,1,""],getUser:[27,3,1,""],removeUser:[27,3,1,""],getUserByUsername:[27,3,1,""]},"buildbot.steps.source.buildbot.steps.shell":{SetProperty:[29,2,1,""],ShellCommand:[29,2,1,""],Configure:[29,2,1,""]},"buildbot.db.buildsets":{BuildsetsConnectorComponent:[27,2,1,""]},"buildbot.steps.source.buildbot.steps.source.mercurial":{Mercurial:[29,2,1,""]},"buildbot.schedulers":{forceshed:[14,1,1,""]},"buildbot.db.connector":{DBConnector:[27,2,1,""]},"buildbot.status.web.baseweb":{WebStatus:[23,2,1,""]},"buildbot.steps.source.buildbot.steps.source.svn":{SVN:[29,2,1,""]},"buildbot.status.words":{IRC:[23,2,1,""]},"buildbot.db.pool.DBThreadPool":{do_with_engine:[27,3,1,""],"do":[27,3,1,""]},"buildbot.steps.source.buildbot.steps.source":{Repo:[29,2,1,""]},"buildbot.db.users":{UsersConnectorComponent:[27,2,1,""]},"buildbot.steps.source.buildbot.steps.subunit":{SubunitShellCommand:[29,2,1,""]},"buildbot.steps.source.buildbot.steps.python":{Sphinx:[29,2,1,""],BuildEPYDoc:[29,2,1,""],PyFlakes:[29,2,1,""]},"buildbot.schedulers.forceshed.BaseParameter":{regex:[14,4,1,""],parse_from_args:[14,3,1,""],multiple:[14,4,1,""],name:[14,4,1,""],update_from_post:[14,3,1,""],"default":[14,4,1,""],required:[14,4,1,""],label:[14,4,1,""],parse_from_arg:[14,3,1,""],type:[14,4,1,""]},"buildbot.db.buildrequests":{BuildRequestsConnectorComponent:[27,2,1,""],AlreadyClaimedError:[27,6,1,""],NotClaimedError:[27,6,1,""]},"buildbot.db.sourcestamps.SourceStampsConnectorComponent":{addSourceStamp:[27,3,1,""],getSourceStamps:[27,3,1,""],getSourceStamp:[27,3,1,""]},"buildbot.status.client":{PBListener:[23,2,1,""]},"buildbot.db.changes":{ChangesConnectorComponent:[27,2,1,""]},"buildbot.status.status_gerrit":{GerritStatusPush:[23,2,1,""]},"buildbot.db.sourcestampsets":{SourceStampSetsConnectorComponent:[27,2,1,""]},"buildbot.config.BuilderConfig":{category:[21,4,1,""],name:[21,4,1,""],locks:[21,4,1,""],factory:[21,4,1,""],nextSlave:[21,4,1,""],slavenames:[21,4,1,""],slavebuilddir:[21,4,1,""],env:[21,4,1,""],mergeRequests:[21,4,1,""],properties:[21,4,1,""],builddir:[21,4,1,""]},"buildbot.db.sourcestampsets.SourceStampSetsConnectorComponent":{addSourceStampSet:[27,3,1,""]},"buildbot.db.schedulers":{SchedulersConnectorComponent:[27,2,1,""]},"buildbot.interfaces.IProperties":{hasProperty:[24,3,1,""],setProperty:[24,3,1,""],getProperty:[24,3,1,""],getProperties:[24,3,1,""]},"buildbot.status.results":{EXCEPTION:[10,5,1,""],RETRY:[10,5,1,""],SUCCESS:[10,5,1,""],worst_status:[10,7,1,""],WARNINGS:[10,5,1,""],Results:[10,5,1,""],FAILURE:[10,5,1,""],SKIPPED:[10,5,1,""]},"buildbot.interfaces":{IProperties:[24,2,1,""]},"buildbot.config":{BuilderConfig:[21,2,1,""],error:[21,7,1,""],MasterConfig:[21,2,1,""],ReconfigurableServiceMixin:[21,2,1,""],ConfigErrors:[21,6,1,""]},"buildbot.steps.source.buildbot.steps.source.git":{Git:[29,2,1,""]},"buildbot.db.builds":{BuildsConnectorComponent:[27,2,1,""]},"buildbot.steps.source.buildbot.steps.source.cvs":{CVS:[29,2,1,""]},"buildbot.process.factory":{BasicBuildFactory:[16,2,1,""],Distutils:[16,2,1,""],BasicSVN:[16,2,1,""],Trial:[16,2,1,""],CPAN:[16,2,1,""],QuickBuildFactory:[16,2,1,""],GNUAutoconf:[16,2,1,""]},"buildbot.steps.source.buildbot.steps.python_twisted":{Trial:[29,2,1,""],HLint:[29,2,1,""],RemovePYCs:[29,2,1,""]},"buildbot.db.schedulers.SchedulersConnectorComponent":{classifyChanges:[27,3,1,""],getChangeClassifications:[27,3,1,""]},"buildbot.db.state":{StateConnectorComponent:[27,2,1,""]},"buildbot.steps":{source:[29,1,1,""]},"buildbot.config.ReconfigurableServiceMixin":{priority:[21,4,1,""],reconfigService:[21,3,1,""]}},terms:{orthogon:28,untrust:[9,41],yellow:23,poorli:12,four:[29,2,20,5],secondli:2,prefix:[23,39],getproperti:[23,24],dirnam:[25,29,39],slave_build:2,captain:39,fileexist:29,logmaxtails:[9,21],buildsconnectorcompon:27,mynewtrick_url:22,authorit:[22,33],typeerror:[27,40,24],"0823ba88":24,secretli:24,test_foo:29,pprint:24,umask:[19,29],concret:[0,34],under:[0,19,20,12,34,23,24,39,16,7,28,29,2],lore:29,testabl:12,spec:29,ostinato:39,f_thorough:28,digit:[0,36],everi:[0,19,20,21,34,23,24,5,26,39,16,32,9,29],risk:[0,19],claimbuildrequest:[26,27],iparamet:14,divmo:39,triallog:29,jack:20,govern:37,affect:[20,34,23,24,6,37,39,9,29,41],interchang:25,log_interv:[13,9],cmd:[29,24,37,38],dbconnector:[15,9,27],upload:[0,29,39,38],stopservic:[24,21],correct:[0,12,23,5,26,39,29],nfor:23,sleep:24,build_wait_timeout:0,categori:[20,39,21,23,5,27,28,9,29],x86_64:40,abil:[20,27,40,15,9,29],direct:[22,40,27],histor:[9,7,38],fileisimport:[34,20],second:[0,19,20,34,23,24,5,27,40,7,32,39,9,29,41],aggreg:[27,10],authorizedkeysmanhol:9,abstractbuildslav:[15,21],spambot:19,longstand:27,even:[1,2,12,34,23,21,24,5,27,37,39,9,29,20],oldest:[34,9,23],hide:[23,29],warnonfailur:[29,6,37],asid:[21,24,5],sln:29,children:24,migrate_vers:27,mmock:19,dothisfirst:12,"new":[0,1,2,5,6,7,9,12,13,14,16,19,20,21,23,24,25,26,27,28,29,30,32,34,37,38,39,40,41],net:[0,19,4,23,24,26,39,9,29],ever:[23,24],topolog:7,newfeatur:34,metadata:[29,27,38],widget:[13,9,14,41],kilobyt:5,behavior:[8,20,39,12,34,23,21,25,26,27,37,7,28,9,29],whose:[34,23,7],sourcestampset:27,never:[8,34,23,24,27,28,9,40],here:[0,19,8,2,33,12,34,21,24,35,5,25,27,7,38,39,29,41,40,20],plaintext:20,lgpl:0,blame_merge_author:39,config_env:16,path:[0,19,8,39,12,34,23,24,5,25,27,16,38,28,9,29],reconfigservic:21,cb_call:12,interpret:[34,5,25,27,39,9,29],dry:39,luther:24,oherwis:29,announc:[25,34,19,23,5],cachepath:39,changecaches:[9,21],datetim:[23,27,41],harass:7,smoke:20,permit:[11,9,37,20],gpl:7,aka:[0,29],buildepydoc:29,portabl:[16,7],volunt:7,campaign:20,selen:39,"_test":24,linearli:37,brought:37,warningcountingshellcommand:29,unix:[19,20,23,16,7,38,9,32,41],step_class:6,procmail_log:39,brd:15,refupd:39,unit:[19,20,34,24,5,27,37,7,29,16],highli:[9,39,20],reguard:23,igoro:27,describ:[0,8,5,6,7,1,9,12,15,16,19,20,21,22,23,24,25,27,29,34,35,37,38,39,41],would:[0,11,19,8,20,12,34,23,24,5,26,27,16,7,39,29,32,40],buildmaster_host:19,tail:[9,19,32],my_filt:20,clientnam:39,deviat:29,call:[0,19,1,2,12,29,13,14,21,24,25,26,27,37,38,28,9,41,40,23,20],typo:20,recommend:[19,25,26,39,9,29],decentr:34,calc:[13,29],type:[0,19,8,20,21,29,13,14,24,5,26,27,16,32,34,39,9,23,40],until:[19,20,34,23,24,5,25,6,7,38,29,2],dostepif:[29,10,37],relax:27,relat:[1,12,22,34,23,24,5,25,26,27,15,28],notic:[11,20,12,23,24,6,39,9,40],hurt:29,warn:[19,8,23,24,25,6,37,7,27,9,10,29],debugcli:[25,9,5],exce:[9,23,38],loss:[0,19],git_buildbot:39,hold:[28,27,2,39],getbuild:[27,20],miscellan:[29,35],must:[0,1,2,3,5,39,7,9,16,41,19,20,21,22,23,24,27,28,29,37,38,40],addcompletelog:[24,37],accid:24,join:[12,23,24,25,29,40],mytre:5,setup:[0,17,19,20,39,12,24,6,37,38,28,29,16],work:[0,19,8,20,39,12,13,23,38,24,5,25,27,16,7,34,28,29,32],svn_watcher:39,worth:[34,24,20],conceptu:8,wors:[19,37],branches_to_ignor:20,root:[19,20,23,24,27,39,9,32],sourcestampsconnectorcompon:27,overrid:[19,8,39,21,23,24,5,27,37,28,1,29],defer:[1,21,22,13,12,24,27,37,28,29,40,41],hlint:29,give:[0,19,20,39,12,34,23,24,5,25,6,37,38,28,9,40,29,16],synchron:[29,27],smtp:[0,23],indic:[11,19,1,2,39,12,13,34,24,5,27,26,38,6,37,28,8,9,29,16],keep_on_purg:29,commandcomplet:37,caution:[29,27,12],change_svc:[15,9],want:[0,11,19,2,12,22,34,23,24,40,5,27,37,7,32,39,9,16,29,20],property_valu:9,czf:8,addcallback:[40,24,37,12],end:[19,2,12,34,23,24,32,26,39,37,38,9,29],actionallow:22,thing:[0,19,2,39,12,13,23,24,6,16,7,34,27,29,20],ordinari:19,remote_print:[32,38],classifi:27,i686:16,httpstatuspush:[23,35],how:[0,19,20,39,21,13,23,24,5,25,6,34,7,28,27,9,40,29,16],disappear:[19,27],env:[28,29,38,1,21],answer:[24,4],verifi:[0,19,20,23,25,7,32],widespread:34,"0x2e36e18":40,config:[19,1,20,39,21,34,23,24,35,5,25,26,6,40,28,9,29],updat:[0,17,19,1,21,34,14,24,5,25,27,37,7,38,39,29,40,32,16],bonsai:39,dialect:[27,9,23,19],recogn:[31,38,27,20,5],lai:12,timezeon:41,repo1:24,after:[0,19,1,2,12,34,21,24,40,5,25,27,37,38,39,9,16,29,20],decor:[13,23,41,27,12],befor:[0,8,2,5,39,7,1,9,13,19,20,21,22,23,24,25,27,29,32,34,37,38,40],wrong:[19,12,24,16,29,40,37],getaddress:34,retain:[39,5],arch:[34,29],parallel:[19,29,7,12],demonstr:33,descent:39,handl:[17,11,19,1,20,39,12,22,34,21,24,35,26,27,37,7,38,15,28,9,29],attempt:[0,19,1,3,12,34,23,5,27,39,9,29],revlinktmpl:39,third:[23,24,2],myuser:23,macroman:19,bootstrap:29,credenti:[0,39,23,27,5],imposs:[25,34,23],jobdir:[20,5],receiv:[17,19,1,20,21,13,23,38,24,26,39,34,15],maintain:[19,20,34,26,27,7,9,29],environ:[0,19,1,23,24,39,16,7,38,28,29],buildslav:[0,8,5,39,7,9,15,16,19,20,21,23,24,28,29,30,32,34,35,37,38,40],incorpor:[24,7],enter:[0,20,32,26,40,29],exclus:[2,7],worst:10,lambda:[39,29,24],order:[19,20,21,22,34,23,24,5,27,37,7,28,9,41,29,16],wind:[29,24,20],access_uri:19,oper:[0,19,1,12,22,34,23,24,27,37,7,38,39,9,29,40],frontend:[23,39],feedback:[34,24,7],diagnos:19,stringdownload:29,over:[0,19,2,39,12,13,23,38,24,27,16,7,34,28,9,41,29,20],upstream:[20,34,24,5,26,29],orang:[23,10],becaus:[0,19,8,12,34,21,24,32,25,6,27,9,29],repository_r:20,logcompressionmethod:[9,21],privileg:[0,34,9,39,20],appar:[23,27],manifest_url:29,flexibl:[0,20,34,23,25,26,37,7,29],vari:[23,29],force_build_one_schedul:14,digest:[23,12],makefil:[26,24,29,16],stateconnectorcompon:[26,27],fit:[29,24],python24:24,fix:[19,2,12,34,23,24,5,25,27,40,7,9,10,29,20],changemanag:15,better:[19,20,12,13,23,24,5,6,34,9],offic:[24,7],drawback:28,condition:27,persist:39,comprehens:34,hidden:29,cred:[38,20,5],easier:[19,13,24,5,7,28,29],descend:[34,23,29],experi:32,them:[0,19,1,2,3,12,34,23,24,40,5,39,6,16,7,28,27,9,31,29,20],patch_bodi:27,thei:[0,8,2,5,39,7,1,9,12,13,37,19,20,21,23,24,25,27,28,29,31,34,16,38,40],usepti:[19,1,29,38],safe:[39,19,24,3,21],winslave1:41,winslave2:41,"break":[23,7,5],sqlite3:19,glorifi:16,jinja2:[22,19,23],interrupt:[19,1,23,37,38,29],buildstepfail:37,ther:21,bread:24,choic:[29,9,40,19,20],subqueri:27,debugpw:5,changelog:5,buildnumb:[24,29,8],shellcommand:[8,2,24,35,37,28,1,29,16],bonu:12,timeout:[0,1,34,38,9,29],each:[0,1,2,5,6,7,8,9,12,13,16,19,20,21,23,24,25,27,28,29,32,34,36,37,38,39,40],debug:[0,18,19,21,35,5,25,37,7,38,15,9,40,29,16],went:[19,23],missing_timeout:0,side:[1,12,34,23,21,35,5,26,27,37,38,29],mean:[0,19,8,20,12,34,23,21,24,5,27,37,39,9,31,29,16],prohibit:23,mda:39,calllat:12,spider:23,testirc:24,group:[0,20,23,24,9,29],runtest:[40,32],svnpoller:[39,24,35,30],completebuildset:[26,27],bzrignor:29,extract:[29,21,24,38,5],stepnam:23,remote_shutdown:38,network:[0,2,24,39,16,7,29],fraught:25,baserev:5,goe:[8,34,24,27,37,29],slavebuild:[38,1,37,7,32],"00am":20,basedir:[19,1,21,5,25,39,38,28,9,29],tomorrow:24,content:[11,1,20,18,22,23,24,5,27,37,38,39,9,29],rewrit:19,adapt:[34,41,39,32,21],reader:[2,3,38],got:[13,24,32],unrecogn:0,forth:7,getbuildsforrequest:27,buildcaches:[9,21],linear:29,navig:[15,9,24,23],written:[0,2,24,39,7,38,29],release_code_nam:29,somesit:29,situat:[0,9,2,29,12],infin:[29,24],free:[34,24,2,7],standard:[0,19,1,20,23,24,36,37,38,29,41,16],pip:[19,40],bldr:24,"0x2aee368":40,notmuchmail:9,silent:[39,27],reconfigur:[17,11,21,23,24,25,15,40],sigkil:19,getprojectnam:23,workaround:[9,27,21],repopath:39,try_masterstatu:5,traceback:[25,40,24],db_lock:2,filter:[0,20,34,23,35,5,39,29,41],heck:24,isn:[0,34,9,32,12],regress:23,temporari:[0,9,39,29,40],bdict:27,confus:[0,8,2,5,27,38],time_funct:13,masterdest:29,rang:[13,29,24,20,27],render:[0,22,23,26,34],enterpris:29,eiv7po:5,independ:[19,12,34,5,27,7,6,29],getlog:[23,24,37],wast:[39,20,7,41],capac:9,restrict:[2,23,24,5,27,39,9,29,20],hook:[1,23,24,35,5,26,39,37,7,29],instruct:[0,19,21,4,5,39,7,29],alreadi:[0,19,39,21,23,5,26,6,37,27,29,40],messag:[0,19,32,21,34,23,24,5,27,40,7,38,39,9,29],robust:[19,12],thick:41,agre:31,uncollect:9,primari:37,trialarg:16,gracefulshutdown:23,todir:38,top:[19,21,23,24,5,16,7,9,41,29,40],serialize_access:9,sometim:[0,19,8,12,22,24,5,27,16,39,9,29],downsid:[24,12],mercuri:[8,34,5,26,39,29,31],necessarili:[19,38],master:[0,8,2,5,39,9,11,13,14,15,17,18,19,20,21,23,24,25,26,27,28,29,32,34,35,36,37,38,40],too:[0,19,21,22,24,25,27,7,15,9,29],similarli:[19,34,5,27,37,38,6,29],setmaxlinelength:24,sadli:19,john:20,outag:19,listen:[20,21,23,5,39,7,15,9],ipv4address:32,incud:0,useenv:29,namespac:34,tool:[11,19,8,3,34,23,5,25,26,39,16,7,9,30,10,29],easilii:23,lighttpd:23,took:[13,27,7],wisdom:17,makemak:[29,16],task:[0,12,27,37,39,9,29],changesourc:[20,21,34,23,24,35,39,40,7,29,32],somewhat:[34,19,24,23],borkhui:26,removeus:27,technic:0,onlyimport:20,fakemast:26,silli:29,target:[0,11,3,34,23,24,35,5,25,16,7,29,30,40],keyword:[8,20,12,14,21,24,5,27,37,28,23],provid:[0,8,5,6,7,9,11,12,13,14,15,16,19,20,21,23,24,27,28,29,34,37,38,39,41],tree:[19,8,20,39,21,34,23,24,5,26,6,16,7,15,27,29,40],project:[17,18,19,8,20,39,34,23,24,5,25,27,16,7,32,28,9,31,29,40],matter:[25,34,9,24,7],minut:[0,19,20,29,34,39,9,32],admonit:12,builderprior:24,fashion:[19,27,29],logcompressionlimit:[9,21],runner:25,modern:[34,6,39],mind:[0,24,38],mine:27,spent:40,raw:14,chmod:20,manner:[34,3],increment:[13,24,27,16,39,29,37],remote_getcommand:38,seen:[29,19,26,20],seem:[27,24],incompat:[19,7,5],waitforfinish:[29,26,20],reviewcb:23,buildbot_send_branch_nam:39,strength:2,realm:38,recreat:34,gitpoller_workdir:39,revnam:12,patch_level:[29,27],maxq:29,thorough:28,contact:[34,9,39,19,5],buidlbot:27,transmit:[9,20,38],authorized_kei:9,branchnam:[39,23,24],simplifi:21,curv:19,insur:[29,24],dynload:24,though:[25,29,24],usernam:[0,20,22,34,23,5,26,27,40,32,38,15,39,9,29],object:[0,39,7,9,12,13,14,15,41,20,21,22,23,24,25,27,28,29,34,37,38,6,40],lexic:23,geturlforth:23,botmast:[15,9,40,38],artifact:[29,24],letter:12,warning_test:29,bsd:[0,7],choos:[19,20,34,24,35,5,39,9],sub:[13,24,5,27,16,39,29],tradit:38,don:[0,19,20,23,24,25,27,7,9,31,29],intervent:7,uploaddirectori:38,doc:[29,39,9,24,26],alarm:13,flow:[0,38,7,30],finalreleas:24,doe:[0,8,3,5,39,7,9,12,16,19,20,21,23,24,26,27,29,31,32,34,35,37,38],bash_profil:24,dummi:23,bracket:25,got_revis:[34,29,8],remoteupd:[1,38],tens:29,gitpoller_work:39,unchang:40,myslav:24,notion:[34,27],dot:29,unicode_encod:19,changeset:[34,29,31],introspect:19,class_nam:27,reactor:[9,41,27,16,12],pope:23,opposit:38,whitelist:23,random:[23,39,16],svnpasswd:39,radiu:41,syntax:[19,8,2,21,25,39,40,20],dnotifi:39,configerror:21,subtli:29,buildbot:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,34,35,36,37,38,39,40,41],identifi:[0,19,8,2,34,14,24,5,36,27,16,7,28,29,23,20],assertionfail:12,powerpc:7,involv:[0,20,34,23,24,7,29],absolut:[19,8,20,21,13,25,39,7,9,29,41],grunt:24,latent:[0,24,35,30],acquir:[2,24,20,39,29,41],confgur:39,explain:[19,12,34,23,5,39,29,40],configur:[0,1,3,4,5,6,7,8,9,11,13,41,17,18,19,20,21,23,24,25,26,28,29,30,32,34,35,16,38,39,40],apach:[34,23,39],nickserv:23,busi:23,ldap:[34,23],tzinfo:41,folder:0,rotatelogsit:[40,32],oct:24,chsrc:24,freenod:[40,4],branch_fn:20,nasti:19,likewis:[25,29,39,5],watch:[19,20,34,23,24,5,27,39,29],subunitshellcommand:29,usernameparamet:20,amazon:0,repo_gerrit:39,report:[39,21,13,23,24,5,26,27,37,7,34,15,28,9,40,29,16],masterconfig:21,depotpath:29,bat:29,bar:[13,23,24,29,39],snazzi:24,baz:[29,24],patch:[17,20,3,34,23,24,5,39,27,28,40,31],cleanli:[19,38],bad:[29,12,24,5],sligtli:5,told:[23,16,5],testdir:29,black:[29,24],respond:[19,20,34,23,5,40],instasl:40,commandlin:[9,19],habit:29,getreason:23,change_hook:[23,39],basicbuildfactori:16,num:20,mandatori:[19,39,29],slavebuilddir:[28,21],respons:[2,13,23,24,27,7,34,39,20],firstfailur:34,hash:[34,23,5,25,27,31],remote_startbuild:38,bleh:24,best:[0,19,20,3,21,12,24,25,16,41],subject:[23,39,20,33],awar:[34,29,24,41],themslev:27,hopefulli:[23,24,20],databas:[17,11,19,2,21,34,23,35,5,27,40,15,39,9,10,29],hgrc:[26,39],wikipedia:2,queuedir:20,queuenextserverpush:23,pacif:24,figur:[19,21,34,24,5,9],outstand:9,finger:34,simplest:[0,24,8,32],awai:[0,9,19,37,23],irc:[18,19,34,23,4,35,5,26,27,7,9,40],approach:[0,19,20,34,24,35,5,6,39,29],stepref:38,attribut:[1,20,39,21,29,34,14,24,5,6,37,28,15,27,9,41,23,16],listaddr:23,accord:[13,14,27,34],extend:[29,24,2,37],xrang:20,weak:[9,27,40],boss:20,autocreatet:29,extens:39,lazi:[25,37],contorl:29,advertis:22,sourcestampsetid:27,frob_what:24,protect:[0,23,2,5],planner:27,expos:[20,23,24,39,9,40],cow:22,hashabl:41,fault:7,howev:[8,2,39,12,34,23,24,25,6,27,9,29,20],basicsvn:16,against:[0,19,20,34,23,24,5,27,39,9,40],prop1:23,remote_setmast:38,logic:[34,23,24,29,41],login:[0,23,27,26],p4port:[34,29,39],com:[0,19,20,12,34,23,24,5,25,39,40,32,9,29],col:20,compromis:[39,20],maildirmak:39,numtest:24,unencrypt:9,nextslav:[28,21],character:20,excess:29,widgetsoft:29,safecat:39,frobnifi:24,diff:[34,40,39,5],guid:[0,39],assum:[0,19,2,3,12,34,21,24,35,5,39,37,29,16,32,20],summar:[23,24,37,7,38,29],panel:34,duplic:[0,9,27,33],frob_how_mani:24,union:34,coredump:29,usetl:23,three:[0,2,13,23,24,39,9,29],been:[0,19,2,21,34,24,40,5,25,26,27,37,38,39,9,41,16,29,20],accumul:[29,20],beer:24,testnamelimit:29,flexibli:26,interest:[20,29,34,23,24,5,27,7,39,9,14],basic:[19,8,20,21,34,23,12,24,35,25,39,9,29],quickli:[11,20,34,23,37,7,28,9,32],life:[0,29,39,7],suppress:[26,1,29],worker:32,telnet:9,argument:[0,1,2,5,39,8,9,14,16,19,20,21,23,24,26,27,28,29,34,37,38,6,40],craft:39,child:[15,19,29,21],"catch":[34,27,37,16],try_com:5,ugli:24,inhibit:16,ident:[0,40,7,38,28,9,29],gnu:[29,16],servic:[0,17,21,23,12,24,25,39,16,15],properti:[0,8,20,39,21,29,34,14,24,35,5,26,27,40,28,9,30,23],sourceforg:[19,4,24,39,29,9],wfd:[22,12],calcul:[29,24,37,16],p4sourc:[39,35,5],publicli:[19,39],aid:9,privatekei:[0,23],spawn:[24,19,1,39],twistedmatrix:[39,19,24,23,12],myorg:39,buildsetsummari:23,framboozl:24,viewcvspol:39,contributor:19,mypasswd:19,attr_typ:27,getbuildsetproperti:27,conf:[29,39],willl:29,conn:27,usessl:23,comparetooth:12,perforc:[34,29,31,39,5],credit:[0,24],perform:[0,1,2,5,6,7,8,12,13,16,19,20,21,22,23,24,25,27,28,29,34,37],suggest:[0,9,24,26,16],make:[0,8,2,3,5,6,7,9,12,13,15,16,19,20,21,22,23,24,25,26,27,28,29,32,34,37,39,40],mayb:23,buildmasterconfig:[25,40,24],complex:[12,34,14,24,27,16,23,41],configureenv:16,split:[24,19,1,29,39],synch:5,maketarbal:24,unconcern:24,complet:[0,1,5,6,7,9,12,13,19,20,22,23,24,25,26,27,28,29,32,34,37,38,39,40],buildoutput:29,fragil:[25,29],projectfil:29,pyflak:[29,32,40],blue:24,hang:24,evil:5,hand:[19,23,24,37,38,29,40],fairli:[29,20],rais:[21,24,27,37,39,29,9],ownership:20,refin:37,kib:29,usdict:[9,27],uselogdelai:1,tune:41,squar:[25,24],redefin:24,id2:5,kept:[29,34,9,19],undesir:[9,24],bewar:[39,20],lxc:0,metabuildbot:27,thu:[0,19,8,23,24,25,39,37,29],inherit:[24,1,20,21],singlebranchschedul:[20,35],client:[39,21,34,23,5,25,27,40,32,15,28,9,29],shortli:[19,7],thi:[0,1,2,3,5,6,7,8,9,10,11,12,13,14,15,16,17,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,37,38,39,40,41],endif:22,programm:7,everyth:[0,19,34,23,24,25,7,28,29],thd:27,fnurrrgh:24,completebuildrequest:[26,27],left:[0,34,23,25,39,29,40],istatu:[23,24],protocol:[36,39,20,7],just:[0,8,2,5,39,7,9,12,14,16,19,20,21,23,24,25,26,27,29,32,34,37,38,41],beforework:20,do_load:40,revlinkmultiplex:9,bandwidth:[29,2],human:[3,34,23,24,39,7,29,41],yet:[19,20,39,21,23,5,27,16,28,9,29],languag:[25,19,29,16],previous:[25,26,16],dbthreadpool:27,webstatu:[19,20,21,22,13,23,35,32,39,40,34,9,29],easi:[0,19,20,12,34,24,32,41],had:[19,23,24,5,16,7],shout:40,unic:19,setbuild:37,els:[25,23,21,24,5],save:[29,34,9,24,23],dictionai:27,opt:28,applic:[20,12,24,35,5,16,7,32,9,29],myslavenam:19,advis:[19,29,5],update_from_post:14,preserv:[11,38],repourl:[34,26,24,29,39],fireeventu:41,background:[19,5],bbot:23,database_nam:9,apart:27,"10kb":29,measur:[13,29,24,7,34],daemon:[0,19,30,5],ctime:23,specif:[0,8,5,39,9,13,41,19,20,21,23,24,25,27,28,29,31,34,35,16,38,6,40],arbitrari:[19,20,34,23,24,26,27,7,39,9,29,41],hunt:0,manual:[0,11,19,34,23,5,26,27,28,9,30,29],remnant:29,needauthform:22,remind:[19,12],unstabl:12,avatar:38,get_request_prior:24,night:20,astext:23,force_auth:20,xlarg:0,underli:[0,29,27],www:[39,9,23,19,12],right:[20,23,5,27,7,29],old:[19,20,21,23,24,5,25,26,27,40,7,39,29,32,2],deal:40,textparamet:20,interv:[0,20,12,23,39,9],hidestepif:[29,26,37],percentag:24,stringparamet:20,intern:[19,8,20,3,29,14,24,25,6,7,27,9,23],flatten:[26,29],inact:[34,20],successfulli:[23,40,20,7,38],external_idstr:27,txt:[23,29,36],max_idl:9,bottom:40,completli:20,subclass:[1,20,33,12,22,34,14,21,24,39,26,6,37,7,27,29,41,23,16],repository_fn:20,buffer:24,djmitch:[27,24],retryfetch:29,condit:[29,41,12],foo:[8,13,23,24,39,16,34,29],localhost:[0,19,23,39,40,9,32],defaultdict:41,core:[19,27,29],plu:[27,23,24,29,5],buildid:29,pose:19,allow_shutdown:19,thingconnectorcompon:27,relationship:[29,14,20],unreason:9,repositori:[17,8,20,39,12,34,23,24,5,26,27,40,7,28,9,31,29],num_slav:13,post:[22,34,14,24,39,23],"super":23,chapter:[17,34,24,25,39,28],sshd:9,postgresql:9,chronolog:[23,7],slightli:[39,29,24,2,16],unfortun:[27,24,20,7,16],user_passwd:5,slavedest:[29,38],afternoon:[24,20],horizon:[9,21],jsonstringdownload:29,commit:[20,34,23,24,5,26,27,7,39,9,31,40],breakag:7,runcommand:[24,37],produc:[19,1,20,12,22,34,24,6,37,7,38,39,9,29],ppc:[23,7],erro:21,javac:29,curiou:32,xyz:24,encod:[17,11,19,20,3,23,5,27,39,29],bound:[19,27],mbc:19,down:[0,19,12,23,24,25,40,38,9,29],resili:37,coverag:[34,19,24,16,5],formerli:9,contrib:[0,39,19,26,23],opportun:[29,24],info2:24,storag:[9,27,29,5],git:[8,20,12,34,23,24,5,26,27,40,32,38,39,9,31,29],suffici:[21,34,24,35,5,39,16],solarispasswd:0,support:[0,19,8,20,39,12,13,23,21,24,5,26,6,37,34,15,27,29,31,40,16],try_host:5,unpriviledg:32,happi:20,avail:[0,8,2,4,5,39,7,9,10,12,13,14,16,19,20,21,22,23,24,25,26,27,28,29,33,34,35,37,41],width:[29,23,20],reli:[27,24],last_tim:23,editor:40,postcommit:39,overhead:[34,7],analysi:[29,12],head:[20,34,23,26,39,7,29],medium:[0,11],maildir:[39,20],form:[8,20,39,12,22,34,14,21,24,5,25,6,37,38,27,9,23,29,16],offer:[34,9,39,20,7],forc:[19,8,20,29,34,14,24,5,26,40,7,9,23],mastershellcommand:29,maxim:12,dabraham:25,sqlalchemi:[27,9,26,19],hear:[39,24,7],tryserv:20,"true":[1,5,39,8,9,12,13,14,16,20,21,23,24,26,27,28,29,34,37,38,6,40],log_channel_stdout:24,reset:19,submitted_at:27,supp:29,testnam:24,maximum:[19,1,21,23,24,27,38,39,9,29,41],tell:[19,20,12,23,24,5,25,39,16,9,29,40],buildd:23,unspecifi:24,mtn:[34,29,38,5],absenc:5,bb_password:[34,27,5],try_branch:5,autoconf:[29,16],emit:[19,34,23,24,5,29],classif:27,featur:[0,19,34,25,26,27,16,7,39,9,29,40],alongsid:23,hardcod:39,"abstract":[0,27],change_hook_dialect:23,backoff:[19,38],diagnost:[9,19,37],comparablemixin:[41,21],ship:[0,34,19,24,29],interf:0,assembl:[34,27],first_tim:23,startservic:[23,24,21],encrypt:[34,19,5],when:[0,1,2,5,6,7,8,9,12,13,16,19,20,21,23,24,25,26,27,28,29,34,37,38,39,40,41],refactor:[27,12],flood:[23,29],gitpol:[40,39,32,35],test:[0,2,5,6,7,9,12,14,16,17,19,20,23,24,25,27,28,29,30,34,35,37,39,40,41],tie:24,presum:21,depot:[34,29,39,5],roll:[27,21],timemethod:13,node:24,matur:29,notif:[19,34,23,24,35,26,39,7,40],intend:[17,19,21,34,23,5,27,16,39,29],psycopg:19,privat:[0,34,23,28,40,29],stringio:24,why:[27,23,1,37,39],kvm:0,eqconnectionpool:29,insensit:[29,39],consid:[0,8,33,12,23,24,26,27,38,39,29,32,41],sql:29,weekend:20,errormessag:37,failuretosuccess:23,longer:[0,19,24,5,26,27,37,39,29],phone:23,schedulermanag:15,pseudo:29,traceabl:29,ignor:[0,1,20,39,12,34,23,24,5,27,16,28,9,29,40],patchlevel:5,time:[0,1,2,5,6,7,9,12,13,16,19,20,21,22,23,24,25,26,27,28,29,31,32,34,37,38,39,40,41],push:[39,34,26,24,7],serious:32,backward:[21,5],mypkg:29,daili:20,smallest:19,osx:[19,20,5],concept:[11,34,30,39,28,29,31],inde:19,chain:12,whoever:[0,24,5],skip:[19,20,34,23,37,38,29,10,16],logfilenam:1,global:[8,2,39,12,23,21,35,5,27,28,9,30,29,20],laura:39,signific:[0,34,27],seriou:6,netbsd:20,prop:[23,24],bewild:29,row:[29,9,27,20],prereleas:24,decid:[22,34,24,5,37,7,29],middl:[34,29],depend:[19,8,20,39,12,34,23,24,35,5,26,6,16,7,27,9,29],unpack:[19,20,38],intermedi:21,pen:23,foo_cal:13,decis:[24,7],run_maxq:29,unclaimexpiredrequest:27,storage_engin:9,branch_nam:39,rev_parse_d:12,github_buildbot:[23,39],sourc:[8,2,5,6,7,9,11,12,15,41,17,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,16,38,39,40],string:[0,1,2,3,5,39,7,8,9,11,14,16,17,19,20,21,23,24,25,26,27,28,29,34,35,37,38,40,41],patch_info:23,could:[20,12,22,34,24,5,26,39,29,40],getresult:[22,23,20,12],broadli:19,always_purg:29,word:[12,34,23,5,40,29],exact:[24,29,8,7],emption:12,administr:[0,19,23,20,5],level:[21,13,23,12,24,27,37,7,34,29,41,32,16],did:[34,23,39,37,5],try_password:5,necessit:29,iter:24,item:[20,13,23,24,25,34,29,41],unsupport:8,perlmoduletest:29,public_html:[19,23,24,32,29,40],team:[11,7,34],quick:[11,19,20,18,34,23,5,39,16,28,29,32,40],dip:32,round:38,dir:[19,38,40,29,32],prevent:[0,19,27,2,29],"3_3_0":24,remote_interruptcommand:38,sign:0,sourcestampsetsconnectorcompon:27,defauflt:20,svnurl:[2,34,24,26,39,16,29],relocat:[19,5],port:[19,20,23,35,5,25,39,40,7,15,9,29],nightly_factori:20,bbproto:25,portnum:5,ssid:27,inheritbuildparamet:20,buildernam:[8,20,23,5,26,27,40],favour:[23,39],current:[0,8,5,39,7,1,9,12,13,19,20,21,23,24,25,27,29,33,34,36,38,40],suspect:5,expandus:[25,29],testchang:[29,16],staff:34,getslavenam:[23,37],portnumb:39,vs2008:29,vs2005:29,gener:[0,1,2,4,5,39,7,8,9,12,13,14,15,16,19,20,21,22,23,24,25,26,27,29,30,34,37],someopt:24,buildhorizon:[9,21],vs2003:29,satisfi:[28,20],slow:29,modif:[11,19,22,34,27,38],address:[0,19,20,34,23,39,40],skeleton:24,along:[34,24,5,26,27,39,29,9],commandlineusermanag:[9,5],zopeinterfac:19,vcexpress9:29,wait:[0,19,2,12,22,34,23,24,5,39,29,20],box:[19,20,23,24,5,7,9],cronjob:39,darcs_buildbot:39,allowforc:[23,40],shift:[19,29],stoptim:13,bot:[0,18,19,23,35,26,38,40,32],split_file_branch:[39,24],queue:[20,34,23,24,39,7,9],trial:[19,20,34,24,5,16,29],throughput:9,behav:[29,7],overriden:23,extrem:9,weird:[39,24],guilti:7,reclaim:27,promot:20,dayofweek:20,semant:21,ipa:24,regardless:[34,23,6,29,21],extra:[8,12,23,5,27,37,29,16],output2:29,activ:[0,19,1,2,21,34,23,5,25,39,37,7,15,28,29,41,40,32,20],modul:[11,19,20,39,12,34,23,21,24,25,6,16,28,15,27,9,10,29,41],output1:29,prefer:[0,20,12,34,24,7,29,32,2],mktarbal:20,bbtest:40,paramat:[26,8],fake:[23,27,7],marker:[34,24,5],instal:[0,11,19,34,23,24,5,25,27,16,32,39,9,30,29,40],installdir:29,hd_imag:0,regex:[14,23,20],symbiot:14,asdict:23,memori:[19,1,24,27,39,29,9,41],jschmo:5,flunk:37,visit:23,subvers:[34,24,26,27,39,29,31],connector:[15,17,9,27,26],expend:7,live:[25,34,23,39,7],handler:[17,13,19,39],value2:25,value1:25,criteria:[34,27],msg:[23,21],scope:[0,8,2,12,34,35],setprogress:[24,37],checkout:[19,8,2,39,34,24,35,6,16,7,28,29],prep:29,reorder:34,capit:[23,29,12],idempot:19,branchtyp:[26,39,29],incident:29,peopl:[0,20],user_mast:5,claus:[9,24,20],pylint:29,no_cach:27,enhanc:27,visual:29,forceschedul:[17,20,33,14,35,26],templat:[17,19,22,14,29,23],examin:[23,39,37,38],sourcestamp:[8,20,29,34,14,24,5,26,27,7,28,9,23],effort:[7,3],easiest:[27,19,24,37],clobberonbranchchang:29,prepar:34,pretend:5,uniqu:[0,8,2,39,34,23,5,27,28,9,29,20],cat:[29,32,40],pull_url:20,whatev:[19,22,23,24,5,27,7,29,40],interruptsign:29,forcesch:[26,20],purpos:[19,2,12,34,14,21,5,27,37,32,9,23],preclud:[27,41],base_imag:0,claim:[2,34,23,27,16,9],mymixinnameteardown:12,encapsul:27,stream:[15,39,29,1,38],predict:[16,12],treestabletim:[29,20],temptabl:9,nodelog:24,agent:39,thdict:27,abort:5,disadvantag:20,contamin:27,finishbuild:27,occur:[0,19,20,39,12,34,23,21,24,5,25,6,7,27,29],contribut:7,alwai:[0,19,8,20,39,12,22,34,23,21,24,5,25,6,16,7,27,9,29,41],differenti:39,chroot:39,multipl:[0,8,5,39,7,1,9,12,14,15,19,20,21,23,24,26,27,28,29,31,34,6],get_base_revision_id:5,epoch2datetim:41,bege:21,ping:[17,23,38],mycompani:23,write:[0,17,19,2,39,12,23,24,30,25,27,37,7,38,28,29,16,20],purg:29,actual:[19,1,39,12,22,34,23,24,5,27,6,16,32,38,8,9,29,40],pure:[16,21],schedulernam:[29,20],tild:[25,19],xhtml:29,parameter:21,usersconnectorcompon:27,map:[34,23,24,25,27,7,39,29,10],product:[19,20,12],birthdai:20,evildo:0,max:27,clone:[0,29,40,41],claimed_at:27,pqm:39,usabl:[39,12],mac:[34,19],socket:[9,23],suce:37,mymethod:[27,12],mixin:[41,12],reviewarg:23,mai:[0,1,2,5,6,7,8,9,12,13,16,19,20,21,23,24,25,26,27,28,29,34,36,37,39,40],builderconfig:[28,24,16,21],data:[0,8,2,13,38,24,35,25,36,27,37,34,15,1,9,29],grow:[19,24,41],goal:[18,40,32,7,5],frob_how:24,noun:29,practic:[24,37,16],deve:20,timerservic:12,pyasn1:[9,40],stdio:[24,23,1,37,38],divid:[9,5],explicit:[13,19,16,29,5],user_manag:[15,9,21],sphinx_builddir:29,inform:[0,8,2,5,39,7,1,9,12,14,15,41,19,20,21,23,24,25,27,28,29,32,33,34,35,37,38],"switch":[19,29],preced:[23,8,5],combin:[8,2,34,23,27,37,38,9,29,16],loglineobserv:24,callabl:[20,21,23,24,25,27,37,38,28,9,41,29,16],untest:23,ordinarili:[25,9],epydoc:29,pingbuild:23,perspective_keepal:38,privid:29,pbmanag:15,equip:16,fromdir:38,still:[19,20,39,12,34,23,21,24,5,6,37,7,27,29,40],pointer:38,cvsroot:[29,39,16],dynam:[0,21,34,23,24,15,29,41],snippet:20,conjunct:[39,20],disconnect:[0,9,10,19,38],monitor:[13,27,20,39,5],concis:[34,31],polici:[39,24],torn:12,"_mysql_except":9,platform:[0,20,34,5,16,7,9,29],buildsetsconnectorcompon:27,maxdelai:19,gerrit_serv:39,curli:25,try_vc:5,mail:[0,4,23,24,35,39,7,34,29],main:[0,20,34,23,24,5,25,27,7,28,29,40],order_console_by_tim:23,non:[0,19,20,23,24,5,26,27,38,39,9,29],initd:19,bufferdelai:23,halt:[29,37],log_url:23,initi:[0,19,1,20,21,34,23,5,16,7,38,32,9,29],underneath:24,poll_interv:39,remote_command:1,half:[34,29,27],now:[0,19,2,23,24,5,26,40,29,32],discuss:[34,4,38],nor:[34,29,27],introduct:[11,29,7,30],term:[34,29,31,2],workload:7,name:[0,8,2,5,39,1,9,10,12,13,14,16,17,18,19,20,21,23,24,25,26,27,28,29,31,34,37,38,40,41],sphinx_build:29,perspect:38,drop:[27,24,20,39,34],revert:[29,27],gerrit:[29,39,23,26,20],propnam:[24,8],separ:[0,19,2,12,34,23,24,5,39,7,28,9,29,20],januari:20,fetch_refspec:39,collaps:[22,24],errback:[41,24,37,12],compil:[19,20,29,34,14,24,6,37,7,28,9,23,16],domain:[9,23],getmetr:13,replac:[19,8,2,3,12,34,23,24,5,25,39,38,1,9,29,41],arg2:27,test_db_migrate_versions_015_remove_bad_master_objectid:27,continu:[19,20,39,12,35,32,26,6,40,38,27,9,29],"640kb":29,info1:24,significantli:27,year:20,getresponsibleus:23,addsourcestamp:27,happen:[19,20,12,34,24,5,39,16,40],intparamet:20,unhandl:40,hacker:17,shown:[20,29,23,5,39,37,9,14],accomplish:[19,1,23,24,5,27,39],space:[19,23,5,39,37,9,29],upcal:24,valid_ami_own:0,testdebugpassword:24,smptpassword:23,profil:19,mess:19,internet:[40,12,32,5],formula:9,gerritchangesourc:[29,39,35],factori:[40,8,2,39,21,34,24,35,30,26,6,37,32,28,9,16,29,20],setstat:27,earlier:[19,23,24,5,26,6,37,27,29],monster:12,underwhelm:32,migrat:[19,27,26],anotheropt:24,million:24,procmail:39,argv:[29,24,16],five:[2,32],orm:27,org:[0,19,2,12,34,23,24,5,25,39,40,9,29],"byte":[19,20,24,32,27,40,38,29,9],unpredict:[37,16],card:0,care:[19,21,12,24,27,37,7,29],tigri:29,wai:[0,8,2,3,5,39,7,9,12,15,37,19,20,23,24,29,31,32,34,16,6,40,41],badli:[19,24],topdir:5,frequenc:[34,39],vestigi:37,fromtimestamp:23,refus:27,unavoid:24,turn:[0,21,34,23,39,16,38,9,29],place:[19,8,20,39,12,29,34,14,21,5,38,6,16,28,27,9,23],unwis:39,nicknam:[34,23],neglect:0,frequent:[19,34,24,35,39,16,29,9],first:[0,8,5,39,7,1,9,11,12,14,18,19,20,21,22,23,24,25,27,29,32,34,38,40],origin:[29,19,39,20],gettext2:37,hgbuildbot:[26,39],reimplement:20,directli:[11,19,1,39,12,21,24,32,26,27,37,38,28,9,29,16],carri:27,onc:[0,19,20,21,22,34,23,24,27,16,7,38,39,9,29],arrai:[25,29,16],slavesrc:[29,38],remote_getvers:38,mindepth:19,fast:[29,23,24,2,12],oppos:[24,10,6,34,5],parse_rev_pars:12,predefin:[0,25,35,16],awfulli:29,given:[0,19,8,20,39,21,22,34,23,38,24,5,27,37,7,28,1,9,41,29,16],nightlyschedul:27,convent:34,stuck:29,teardown:12,caught:[25,34,40,27],checker:[29,40],cumul:34,lognam:[23,1,37],averag:13,deciph:25,daunt:12,white:10,conveni:[0,19,24,5,16,37],friend:29,periodicbuildtim:20,show_ev:23,especi:[29,24,12],copi:[0,11,19,20,21,34,23,24,5,25,26,6,37,38,39,29,16],suppressionfil:29,specifi:[0,8,2,3,5,39,9,16,19,20,21,23,24,25,26,27,28,29,34,37,38,6,41],github:[19,23,24,25,26,39,40,32],enclos:[22,29,39],apolog:5,mostli:[25,9,19,29,41],addbuild:27,than:[0,19,1,20,3,12,34,23,21,24,5,39,26,27,37,7,38,28,9,29],png:24,linuxpasswd:0,serv:[19,12,34,23,6,39],wide:[19,34,24,27,39,29],connectionpool:29,classmethod:21,posix:38,balanc:7,were:[19,8,20,21,34,23,24,5,25,27,7,39,29],posit:[24,29,8,27],change_numb:29,mysecretpassword:9,seri:[25,34,29,16,7],pre:[12,23,24,5,6,37,29],fork:[39,24],sai:[0,19,34,23,24,25,27,39,40,32,41],changelist:5,metricslogobserv:13,anywher:[39,19,21,24,5],getchangeuid:27,cvsdisard:29,deliv:[19,1,34,23,24,5,39,7,38,29],getauthz:22,notimplementederror:[24,37],exclud:[34,29],saw:[34,40],result_str:23,repeatedli:[24,12],bash:[28,19],caus:[19,1,20,39,21,34,23,24,5,6,37,7,28,27,9,29],engin:[22,34,23,24,27,9,29],techniqu:[24,12],advic:[0,37],recompil:[29,16],destroi:0,note:[0,1,2,3,5,6,8,9,11,12,13,16,17,19,20,21,22,23,24,26,27,28,29,31,32,33,37,38,39,40,41],slave4:28,ideal:[34,37,20],addhead:[24,1],take:[0,8,2,5,6,9,10,13,14,37,19,20,21,23,24,26,27,28,29,32,34,16,38,39,40,41],slave3:28,slave2:28,green:[23,10,7],gmail:23,noth:[19,20,24,39,38,29],channel:[20,24,23,4,5,36,7,34,9,40],jimsproject:20,begin:[8,2,23,24,5,25,39,37,7,38,15,9,29,20],sure:[0,19,20,34,23,24,5,39,28,29],subtlti:25,trace:[34,40],normal:[0,19,1,21,34,23,24,5,25,27,37,32,39,9,29,16],track:[19,13,24,5,25,26,27,37,7,34,15,9,31,29,16],compress:[9,38,29,36,21],twistedweb:19,abus:20,pair:[19,20,13,23,24,5,25,27,7,34,32,9,29,41],confid:7,snoop_my_password_pleas:9,misconfigur:10,renam:[19,21,26,39,27,29],textarea:20,buildbot_dry_run:39,later:[0,19,8,20,39,34,23,24,25,27,37,28,29,41,16],need_email:20,meanwhil:[19,32],runtim:[19,24,26,27,9,41],choicestringparamet:20,axi:23,lockaccess:2,gracefulli:[19,23,3],uncontrol:29,recipi:[0,23],serializ:29,gerritreviewcb:23,show:[0,19,20,22,34,23,24,5,25,40,7,9,29],subprocess:29,concurr:2,flunkonwarn:[29,6,37],permiss:[29,20],hack:14,smtpport:23,removepyc:29,rotat:[19,40,23,32],xml:[0,29],formatinterv:41,onli:[0,1,2,5,6,7,8,9,12,16,19,20,21,22,23,24,25,27,28,29,31,34,37,38,39],explicitli:[0,1,12,34,5,26,39,29,40],dice:24,favor:[39,20],transact:[34,9,27],botnicknam:23,enough:[0,12,24,6,37,39,40,41],try2:20,quickest:32,dict:[12,23,27,37,29,9],analyz:[29,37],oldvers:37,clearcas:34,offici:[17,29,39],sighup:[25,19,5],startswith:24,ani:[0,1,2,5,6,7,8,9,11,12,14,16,19,20,21,22,23,24,25,26,27,29,34,37,38,39,41],variou:[20,13,23,24,35,25,39,37,7,34,9,29],get:[0,8,5,6,7,9,11,12,16,18,19,20,21,23,24,25,26,27,29,32,34,37,39,40,41],test_typ:29,between:[0,19,2,34,23,24,5,27,16,39,9,41,29,20],pycrypto:[9,40],secondari:[29,24],repo:[31,29,24,39,38],ssl:[9,23],cannot:[19,8,20,12,34,23,24,5,27,37,39,9,29,16],ssh:[19,20,5,39,40,29,9],try_topfil:5,trysch:20,buildbot_cvs_maildir:39,event:[0,17,20,21,13,23,24,5,25,39,7,9,40,41],clearest:12,requir:[0,1,2,5,39,7,9,12,14,16,19,20,22,23,24,25,26,27,29,30,32,34,37,38],attr:27,prime:12,bzrpoller:39,getchang:27,istatusreceiv:[40,21],radar:20,seldom:9,i386:[23,29,7],yield:[22,23,12],pydoc:[9,19],mtr:29,stupid:[29,24],mediat:[34,27],loadtheconfigfil:40,slave1:28,where:[8,2,3,5,6,7,9,12,16,19,20,21,23,24,25,26,27,28,29,32,34,37,38,39,40,41],summari:[19,23,24,5,37,29],wiki:[40,39,2],kernel:39,"23am":20,titleurl:[9,40,21],"_mymethod_2":12,path_to_authfail:22,authz_cfg:[40,20],pw1:20,tlsrequirederror:23,sport:[26,24],concern:[9,21,24,19,5],infinit:2,appear:[19,8,39,24,25,27,37,28,9,10,29,40],detect:[0,8,12,34,21,5,37,29],review:[39,23,27,12],testwithcodecoverag:24,label:[34,14,20],statusreceiv:26,latent_buildbot_slav:0,behind:[29,9,23,19,7],listinfo:4,vc2008:29,default_test:20,want_stdout:[29,1,38],vc2005:29,"import":[0,8,2,3,5,39,7,9,12,13,16,19,20,23,24,25,26,27,28,29,34,37,40,41],brid:27,across:[23,27,5],ought:[29,16],spars:29,parent:[1,12,23,21,24,5,6,37,15,39,29],svnroot:[39,24],fundament:25,successtofailur:23,full2:2,cycl:[0,29,7],activatecallback:1,uncondition:27,buildbot_pqm:39,refman:9,come:[0,19,8,20,22,34,14,24,5,25,39,29,23],append_revisions_onli:39,unnecessari:[0,9],mta:39,pkgname:29,refspec:39,quiet:5,tour:[11,40,32,18],tutori:[11,40,32,18],whimsic:24,mani:[19,2,12,29,13,14,24,5,27,16,7,34,32,39,9,41,23,20],slaveport:5,among:[34,19],undocu:26,color:[23,10,26,5],overview:[17,25,8,27],unittest:[29,16],inspir:7,period:[19,20,21,13,23,35,39,7,34,9],dispatch:[15,38],duti:7,a78890ba:24,cancel:[23,37],typic:[19,34,5,25,39,16,7,9,29],endeavor:25,poll:[23,24,27,7,39,29,9],consider:[34,26,24,39],ultim:34,logenviron:[29,1,38],coupl:[34,29,24,39,5],myserv:39,rebuild:[39,29,8,7,5],mark:[34,27,37,6,40,29],rebuilt:34,mysecretnickservpassword:23,valueerror:8,baseproduct:20,"1a4af6ec1dbb724b884ea14f439b272f30439e4d":32,someschedulerclass:20,thousand:[9,24],suscept:39,test_slav:24,wait_timeout:9,wake:24,proven:5,workspac:[34,29],i18n:29,determine_foo:24,impati:19,former:[2,20],those:[1,3,39,7,9,11,15,16,19,20,21,22,23,24,26,27,28,29,34,37,38,40],"case":[0,8,2,3,39,7,9,12,13,16,19,20,21,23,24,25,27,29,32,34,36,37,38,40],bsid:27,fpga:39,amend:20,userport:20,addurl:[24,37],elastic_ip:0,getsourcestamp:[23,27],alter:[27,8,34],trick:[19,16],cast:0,invok:[19,1,20,24,5,26,27,37,7,38,39,29,16],exist:[0,19,8,12,34,14,21,24,41,5,26,27,37,38,1,29,30,23,40],invoc:[34,19,24,21],try_who:5,log_statu:23,advantag:[19,20,12,34,26,39,16,29],stdout:[1,24,37,38,40,29],metric:[17,11,21,13,24,35,37,15,9,29],henc:39,convinc:32,dbpool:29,destin:[23,39,29,38],cluster:21,getrecentchang:27,responsbl:[13,34],clutter:23,getlatestchangeid:27,ascii:[19,39,3],twistd:[19,20,23,5,25,40,9,32],"__init__":[25,24,41],acess:[34,38],http_port:[25,23,40],develop:[0,11,19,20,21,17,24,14,4,35,5,26,27,40,7,34,32,39,9,23,29],author:[17,19,20,22,34,23,24,27,39,40],obfusc:29,same:[0,8,2,5,39,7,9,12,16,19,20,21,23,24,26,27,28,29,32,34,37,38,40,41],trip:[9,38],proce:[2,37],epoch:[34,41],html:[19,20,12,29,34,14,24,25,37,7,9,23,40],fromaddr:[0,23],pai:[34,24,20,39,5],document:[0,11,19,20,33,12,22,34,23,24,5,39,26,6,27,9,29,41],pam:23,status:10,hassler:34,finish:[19,1,12,34,23,24,27,37,7,29,32,40],warningpattern:29,webserv:19,remote_startcommand:38,utf8:[39,9,27,5],nest:[26,29,12],driver:[9,27],someon:[0,19,20,34,24,5],startbuild:38,showuserspag:23,driven:[39,41],capabl:[0,34,39],improv:[24,16,7],extern:[8,3,24,27,39,9,10],tradition:29,appropri:[0,19,1,12,34,14,21,24,5,6,37,7,15,39,29,16],paranet:29,cherri:20,inconsist:[34,21],macro:14,markup:23,closewhenfinish:[24,1],setmast:38,reconfig:[19,21,24,25,9,40,41],without:[11,19,1,20,39,12,23,21,24,5,6,16,7,38,32,27,9,41,29,40],forcesharedrepo:29,plevel:34,model:[0,34,29,27,39],buildbot_cvs_mail:39,roughli:37,bitrot:7,metriccountev:13,trust:[23,39],execut:[0,8,2,39,12,13,38,24,25,27,6,37,7,34,1,9,16,29,20],mypassword:23,tip:39,fsp3p:23,rest:[19,39,21,34,27,7,6,29],weekli:19,patch_author:27,kill:[29,19,1,37,38],aspect:[34,9,19,7],touch:[19,32,5],perlig:39,flavor:[19,7],chgrp:20,speed:[19,24],great_new_featur:39,when_timestamp:27,badjobfil:20,maxwarncount:29,uselog:[24,1],adderrback:37,littl:[19,12,24,25,27,32],silver:20,identif:27,blob:39,exercis:[29,7,12],vulner:29,disrupt:27,real:[0,12,34,5,27,37,7,29],compatible_build:20,around:[19,12,39,27,40,29],aws_id_file_path:0,mismatch:9,fuss:19,pollinterv:[39,24],defaul:20,noutput2:29,traffic:[0,38],pop:[23,24],darc:[8,34,5,39,38,29,31],world:[34,9,24],db_poll_interv:[9,21],divorc:25,stranger:23,whitespac:[22,29],project1:20,realtim:[24,5],integ:[0,19,8,20,21,34,23,5,27,37,29,31,41],server:[0,19,2,24,23,4,5,26,39,40,34,9,29],my_branch_fn:20,benefit:9,either:[0,19,8,2,39,34,23,24,40,5,25,27,37,7,38,28,9,16,29,20],svncommitemailmaildirsourc:39,output:[17,19,1,3,12,22,34,23,24,5,39,37,7,38,9,40,29,16],inter:[19,16],manag:[0,17,19,39,21,34,5,27,15,28,9],deliveri:[23,39,7],getrevinfo:12,ascend:23,legitim:23,interlock:[2,34,35,30,37,28,29],handshak:0,adequ:19,refresh:9,dynamicbuild:24,startcommand:[37,38],constitut:34,nonzero:[1,38],rsync:29,slice:24,fix_changes_pickle_encod:19,confirm:[19,27,5],keepalive_interv:0,size:[19,20,21,23,7,38,9,29,41],definit:[0,11,8,21,17,24,35,27,16,28,9,31],legal:29,fakedb:27,exit:[29,38,24,5],inject:[39,9,1,5],visualstudio:29,complic:[2,24,25,27,29,20],status_push:23,blocksiz:[29,38],getchunk:24,power:[25,19],all_step:16,inspect:[39,5],broker:[32,38],remote_upd:[1,38],broken:[0,25,7],manifest_branch:29,starttim:13,remoteshellcommand:[24,1,37],trialmod:16,regexp:29,bazaar:[34,29,31,39],fakelatentbuildslav:24,unicod:[19,27,23,3],handi:40,session:[9,29],src:[34,29,24],maxrotatedfil:23,mtrlogobserv:29,log_d:12,underwai:27,splitlin:23,intens:34,start_inst:24,relative_pathnam:39,act:[15,34,24,37,35],skew:34,subsystem:[13,9],cflag:16,val2:23,mymixinnamesetup:12,global_opt:29,quietli:12,putchild:23,findnewschedulerinst:21,addpatch:23,strip:[12,22,24,5,27,39,29],compare_attr:[41,24,21],log:[0,1,5,39,9,12,13,41,17,19,20,21,23,24,25,26,27,29,32,35,36,37,38,40],her:23,area:23,aren:[34,23,7],overwrit:[29,27],googlecodeatompol:[23,39,35],emailaddr:40,p1234:40,starv:2,interfac:[12,22,34,14,24,25,26,27,37,7,38,39,9,23,40],rmdir:38,lot:[0,19,2,12,34,23,24,7,29],configureflag:16,property_nam:9,submiss:23,strictli:[39,29,24],builder2:20,builder1:20,unam:29,lang:29,monoton:[34,29,39,5],programmat:[24,30],flushchangeclassif:27,verbatim:29,tupl:[39,34,23,24,25,6,37,38,27,29,16],bundl:[34,29],regard:[8,12],htpasswd:23,buggi:0,faster:[39,5],pull:[20,12,34,24,26,27,7,39,29],hire:24,hostinfo:19,possibl:[0,19,2,12,34,23,21,24,32,25,26,27,37,39,9,29,16],"default":[0,1,2,5,6,8,9,13,14,16,19,20,21,23,24,26,27,28,29,32,34,37,38,39,40],factoryproduct:41,bucket:0,maxtim:[29,1,38],remote_complet:[1,38],lo0:9,unusu:[19,27],commonli:[8,24,25,39,16,9],embed:[9,41,29,7,40],deadlock:2,minumum:9,gone:[9,24,19],defaultbranch:[34,29,39],uid:[23,27],addhtmllog:[24,37],svnmailer:39,certain:[19,13,23,5,6,40,7,34,39,9,29],inrepo:[26,39,29],watcher:[17,13],strongli:[0,9],deem:20,decreas:[13,21],file:[0,8,3,5,6,7,9,11,12,16,17,19,20,21,23,24,25,26,27,28,29,31,32,34,35,36,37,38,39,40],proport:24,rearrang:29,fill:[25,14,24,19],incorrect:[29,19,26],again:[19,2,22,34,24,27,16,29,40,20],incorrectli:19,googl:[39,19,26,23],personnel:34,gettext:[23,24,37],prepend:[29,38,39,5],sepcifi:20,field:[20,22,34,14,5,39],post_build_request:23,sslist:27,pathnam:[39,24,5],you:[0,8,2,5,39,7,1,9,11,12,41,19,20,22,23,24,25,26,27,28,29,32,34,16,40],architectur:[19,30,16,7,40,29],poor:29,revlinkmatch:9,setproperti:[29,24],colon:[29,5],sequenc:[2,12,34,24,39,37,29,16],symbol:[17,25,16,35,12],docstr:[29,23,41,20,38],svv:39,is_nightli:34,linux2:24,unbound:12,pool:[28,27],reduc:[29,39,7],ghdn4t0oqx:23,directori:[0,1,3,5,6,7,8,9,19,20,21,23,24,25,26,27,28,29,31,34,16,38,39],descript:[0,19,12,14,24,5,26,27,40,39,29,23],scroll:40,checkpatch:39,hassl:[20,5],potenti:[0,23,26,7,15,29],cpp:29,escap:[28,23,24,29,39],parse_from_arg:14,newli:19,iproperti:24,represent:[19,24,23],all:[0,1,2,3,5,6,7,8,9,12,13,15,16,19,20,21,23,24,25,26,27,28,29,31,32,34,37,38,39,40],dist:8,sch:20,metriclogobserv:15,vstudio:29,illustr:[2,12],foolscap:25,lack:29,dollar:24,month:20,aptli:12,represeng:27,correl:[34,9,31],deprecationwarn:25,pty:[24,19,1,29,38],follow:[0,1,5,6,8,9,12,15,16,19,20,21,23,24,25,26,27,28,29,32,34,35,36,37,38,39,40],disk:[0,19,23,24,27,7,9,29],scp:[24,20],usecolor:[23,26],changetext:23,loopingcal:12,compiler_warn:29,"_re":20,mailnotifi:[0,34,23,24,35,26,39,7],init:[19,29],program:[19,12,34,23,24,25,39,16,29],blamelist:[34,23,40],procmailrc:39,scratch:29,cgi:[23,39],bonsaipol:[39,35],cachenam:[27,21],liter:[40,27],unclaim:27,straightforward:27,determinist:27,fals:[8,20,12,34,23,21,24,26,38,27,37,28,1,9,40,29,16],checkin:[34,20,7],subcommand:5,offlin:[34,19,23,7],util:[17,11,19,12,34,24,5,27,37,39,41],verb:29,write_lock_pattern:2,failur:[19,1,20,12,34,23,24,5,25,6,37,7,38,27,29,10,40],veri:[0,19,20,12,34,23,24,27,39,29,40],dapper:29,setbuilderlist:38,ticker:29,hg_buildbot:39,test_status_web_authz_authz:12,harri:26,list:[0,1,2,4,5,6,7,8,9,12,14,16,19,20,21,23,24,25,26,27,28,29,34,37,38,39,40],trydir:5,emul:[26,29],adjust:[26,27],stderr:[24,29,1,38],small:[0,19,12,23,5,41],pbl:23,repo_download:29,arug:38,p4client:29,webdav:24,buildfactori:[17,2,33,34,24,26,6,16,7,28,29,20],bitkeep:[26,31,29],pass:[8,5,6,7,1,9,12,13,14,16,19,20,22,23,24,25,26,27,28,29,32,34,37,38,39,40],sync:[29,27,20,5],somearch:29,scheduler_upstream_buildset:26,past:[24,32],zero:[29,32],design:[20,12,34,5,39,37,7,41,16],changepw:[39,5],further:[19,14,24,6,37,38,39,29],val1:23,localdict:[25,40],what:[0,19,8,20,12,34,23,24,5,39,37,7,9,41,29,40],linuxpassword:0,multimast:[9,21],clock:[34,12,24,5],section:[0,19,33,29,34,14,24,35,40,5,25,27,37,32,38,15,28,9,39,23,16],"_runcallback":40,abl:[0,19,20,34,24,5,27,7,32,39,9,29],brief:[19,12,23,5],force_build_clean:20,delet:[19,20,12,34,27,40,39,29,9],dicttabinfo:29,version:[0,5,39,7,9,11,12,16,17,19,21,23,24,26,27,29,30,31,34,37,38,40,41],remote_getslaveinfo:38,option2:23,"public":[39,9,23,20,7],contrast:24,option1:23,hierarch:19,full:[19,20,39,12,34,23,24,5,25,26,27,16,7,32,28,9,29,40],themselv:[28,34,20,12],distrib_port:23,finduserbyattr:27,test_info:29,unmodifi:14,bwverbos:16,collectstdio:1,getstep:23,behaviour:[9,23,19,7],bbcollect:[17,41],solari:[0,34,20,7],trunk:[8,2,23,24,5,39,29,20],build_config:29,method:[0,17,19,1,39,12,29,34,14,21,24,36,32,26,27,37,38,28,9,23,41],rudimentari:[23,27],modifi:[0,11,19,1,2,17,34,23,24,25,27,40,7,38,39,9,29],valu:[0,1,5,6,8,9,10,12,13,14,16,19,20,21,23,24,25,26,27,28,29,34,37,38,39],num_events_max:23,search:[11,23,24,27,16,29],unabbrevi:29,ahead:[40,16],extrahead:23,defaultwhenfals:8,cvsdiscard:29,kernel_typ:29,prior:[19,5],amount:[19,1,24,16,29,9],pick:[19,20,24,5,27,28,9],codebas:[39,27,7],narrow:[23,29],revlink:[27,9,26,23,39],quotient:24,via:[0,19,1,20,21,13,23,38,24,27,7,34,39,9,29],foobranch:39,finish_tim:27,unilist:23,transit:[23,7],log_bodi:23,vim:40,filenam:[8,3,21,34,24,5,27,16,38,39,9,29,41],href:[23,24],inappropri:[7,41],implied_index:27,establish:[34,38,39,5],select:[34,19,20,5],slaveinfo:32,distinct:[39,24,38],liber:29,regist:[9,7],two:[0,19,2,12,34,23,24,5,39,40,7,38,28,9,10,29,20],bizarr:27,fall:29,brdict:27,morn:[34,29,20],rhel:19,glob2list:29,taken:[29,1,20],advertiseact:22,md5:24,parentopt:24,minor:[22,27,41],evaluatecommand:[24,37],desir:[0,2,39,34,23,24,27,16,28,29,20],openvz:0,canon:[27,21],mozilla:39,passwordmanhol:[9,40],flag:[19,20,24,6,16,29],warningextractor:29,stick:[7,12],particular:[0,19,8,20,12,34,23,21,24,36,5,26,27,16,39,9,31,29],known:[0,2,3,12,34,23,5,39,37,9,29,20],max_length:20,compani:[24,20],fireonfirsterrback:12,cach:[19,21,12,25,27,15,39,9,41],placehold:[29,8],dictat:29,none:[0,19,8,20,39,12,29,34,14,21,24,5,38,27,37,28,1,9,31,23,16],endpoint:23,ec2buildslav:[0,24],hour:[0,39,20],hous:20,is_merg:39,outlin:24,endswith:34,dev:[22,9,12,29,5],buildstatu:23,remain:[0,20,21,14,6,37,39,29,23],learn:[40,19,39,32,12],deb:20,nagio:0,addstdout:[24,1],def:[20,12,22,13,23,24,27,37,34,28,9,29,41],sendchang:[34,26,8,39,5],prompt:[34,9,40,23,5],bogu:25,scan:[19,12,24,5,40,29],challeng:[34,24],registr:21,share:[19,2,24,5,39,7,28,9,29],accept:[0,19,8,20,39,34,23,24,5,6,16,7,27,9,29],strport:[9,23,20,21],minimum:[19,25,26,37,7,9],explor:40,exmapl:24,action:[1,22,34,23,5,25,6],somesecretpassword:23,prop2:23,cours:[0,19,12,22,23,24,5,39,16],newlin:[8,38],secur:[19,20,23,5,26,39,9,29],rather:[0,8,20,39,12,34,23,21,24,5,26,27,38,28,29],anoth:[0,19,2,21,34,23,24,27,16,7,39,9,40,29,20],comfort:[25,29],altogeth:[0,27,37],equivlan:5,anypropertyparamet:20,pretti:[34,24,39],sched:20,reject:[0,20],worst_statu:10,simpl:[0,19,20,12,34,14,21,24,5,26,39,16,29,41,23,40],css:23,regener:29,resourc:[0,11,2,34,23,4,30,7,9],referenc:20,dive:32,masterhost:[19,5],variant:39,sneak:[24,7],reflect:[34,19,12],catalog:20,slavenam:[0,19,8,2,21,24,5,16,28],mariadb:29,associ:[39,34,23,5,27,7,38,28],circumst:[34,23,37],"short":[19,8,12,34,23,24,5,27,37,39,9,29],unilin:23,postfix:39,proto:36,ambigu:34,svnbin:39,callback:[1,12,23,24,26,40],libvirtbuildslav:0,parti:34,egg:40,patch_subdir:[29,27],travel:[19,7],checkbox:20,help:[0,19,1,12,29,34,14,24,5,25,39,37,7,9,31,23,40],pytest_slav:24,soon:[28,24,37,34],trade:38,held:[1,2],cache_nam:27,through:[0,19,20,34,23,24,5,27,16,7,39,29,32],reconnect:[19,38,23,5],hierarchi:[15,17,25,7],suffer:7,paramet:[0,8,2,5,39,7,1,9,10,12,14,16,19,20,21,23,24,25,26,27,28,29,34,35,37,38],baseschedul:21,full1:2,style:[17,11,8,20,12,24,39,9,29],full3:2,full4:2,glide:24,binari:[29,39],subshel:39,dbname:9,late:21,pck:19,pend:[29,28,9,24,37],bypass:[34,29,27],might:[19,20,12,34,23,24,5,27,16,7,38,32,39,9,41,29,40],loghorizon:[9,21],good:[0,19,20,12,14,24,5,25,6,7,27,23,41],"return":[1,39,7,9,10,12,13,14,41,19,20,21,22,23,24,27,28,29,34,37,38,6],timestamp:[34,23,27,39,29,31,41],buildbot_:[29,12],framework:[17,20,12,22,34,24,35,16,29],compound:21,rwx:20,detach:23,complain:[9,6,7],bigger:9,subunit:29,getobjectid:27,troubleshoot:[19,30],userid:27,unlik:[29,19,23],authent:[0,20,22,34,23,5,26,39,38,9],easili:[20,12,34,24,32,25,27,40,39,9,29],achiev:[25,27,29,24],do_with_engin:27,innodb:[9,27],compris:34,found:[23,24,5,27,37,38,39,29],collectstdout:1,mynewtrick:22,leftov:29,truncat:[9,5],embarass:37,week:[29,19,20],interleav:24,smtppassword:23,hard:[29,12],idea:[19,24,23,5],crontab:[19,20],realli:[0,20,34,25,40,41],heavi:15,getchangeclassif:27,buildprocess:34,connect:[0,17,19,20,39,32,23,38,24,5,25,27,37,7,34,15,28,9,29,40],sorrow:19,xval:12,beyond:[0,19,41],todo:29,orient:23,ftp:34,alreadyclaimederror:27,shortcom:12,publish:[0,29,39,7],footnot:34,getstatu:23,health:13,zorro:20,print:[19,23,24,5,39,38],subdir_root:34,difficulti:12,qualifi:[24,21],postgr:[9,27,19],proxi:[25,23],advanc:[17,8,24,35,30,25,39,29],thursdai:20,guess:16,committ:20,asc:23,cooki:26,reason:[0,19,1,2,34,23,24,5,25,6,37,7,38,27,9,40,29,20],base:[0,8,2,5,6,7,9,12,14,15,16,19,20,21,23,24,25,26,27,28,29,34,37,38,39],intric:24,ask:[19,34,23,24,5,6,16,39,9,29],teach:40,ugprad:27,sekrit:0,basi:[23,39,7,28,29,9],thrown:0,bring:[0,25,19,29,5],buildsetid:27,environmnet:21,forceallbuild:23,omit:[19,8,12,34,23,5,27],success:[19,1,20,34,23,24,5,27,37,38,9,10,29,40],buildmast:[0,5,39,7,9,11,12,13,14,15,17,19,20,21,22,23,24,25,26,27,29,30,34,16,40],perhap:[19,20,34,24,25,39,37,16],perman:[31,24],threat:19,petmail:29,lifetim:[9,41,35,21],project_fn:20,serverpushcb:23,feed:[39,34,23,24,3],major:34,dont:20,obviou:[34,12],cvsmaildirsourc:39,maxcountforslav:2,number:[0,19,8,2,21,34,23,24,5,25,27,37,7,38,39,9,41,31,29,20],minvers:37,masterstatu:5,done:[19,8,2,21,34,23,24,5,26,27,37,7,38,39,29,40,32,16],least:[19,12,34,23,5,39,16,7,29,41],stabl:[0,20,34,27,7,29],implementor:23,miss:[0,19,20,12,23,27,9,29,41],retrydelai:23,fanci:19,canforcebuild:23,differ:[0,19,20,12,34,23,21,24,5,27,16,7,38,39,9,31,29,41],latter:[24,2,20],treesiz:29,exponenti:[19,38],histmax:39,interact:[0,34,23,5,27,9,40],stori:12,construct:[12,23,21,24,5,25,26,6,37,27,9,29,16],mtr_subdir:29,testsometh:12,buildbot_on:39,statement:[25,24,29,8],cfg:[19,8,20,24,5,25,39,40,32,9,29],testpath:[29,16],scheme:[27,29,24,20,39],store:[19,8,3,21,34,23,24,39,36,27,28,9,29],schema:[17,19,27],adher:[34,14],luckili:40,assign:[19,39,12,23,5,27,37,7,28,40],imperfect:29,option:[0,1,2,3,5,6,9,13,16,19,20,22,23,24,25,26,27,28,29,30,34,35,37,38,39,40],someextraarg:22,checklist:19,getter:[27,12],pars:[8,12,34,24,35,25,27,16,39,29,40],bashrc:[19,24],somehost:9,loginfo:39,eventu:[17,34,24,5,39,41],gitbin:39,kind:[20,39,34,23,24,25,6,27,29],ampersand:23,grep:[23,24,40],downloadfil:38,asynclrucach:41,remot:[1,20,12,24,5,39,37,7,38,9,29],remov:[19,21,34,23,24,5,25,26,27,37,38,39,29,41,32,40],horizont:[23,37],changefilt:20,cost:0,str:[23,20],arrang:[15,19,39,23],toward:[24,7],baseweb:[23,32,40],getschedulerid:26,randomli:[16,7],booleanparamet:20,comput:[0,24,5],beforehand:12,gedit:40,completed_at:27,reclaimbuildrequest:27,clobber:[19,29,16],consol:23,export_opt:29,"null":27,mypool:29,entireti:29,outbound:23,p4poller:39,equival:[2,24,5,39,29,9],loggingbuildstep:[24,37],check:[0,8,5,39,7,9,12,14,19,20,21,22,23,24,26,27,29,32,34,16,38,40],lin:20,violat:12,also:[0,8,2,5,6,7,9,10,12,13,14,15,41,19,20,21,22,23,24,25,27,28,29,32,34,16,38,39,40],"0x2e36638":[40,32],build:[0,1,2,5,6,7,8,9,10,11,12,14,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,32,34,35,37,38,39,40],somemodul:39,command:[8,2,5,6,7,1,9,11,16,17,19,20,23,24,25,26,28,29,30,32,34,35,37,38,39,40],mergerequest:[28,9,24,21],brace:25,extract_fn:29,builderstatu:23,distribut:[11,19,20,34,23,24,39,7,9,32],intercap:12,exec:[25,19,40],passwd:[19,22,23,5,39,9,40],repo_d:29,reach:[29,9,23,19,7],gerritstatuspush:[23,35],plat:24,topfil:5,most:[8,2,3,5,39,7,1,9,12,14,15,19,20,21,23,24,25,27,29,34,16,40],plai:29,abstractlatentbuildslav:24,cygwin:19,myisam:[9,27],branch_r:20,alpha:[9,8],metacharact:29,charg:[0,7],interestedus:23,chkconfig:19,bzr:[34,35,5,39,38,29],filesystem:[29,39,35],clear:[40,9,27,29,12],cover:[29,16],"0x2c2d950":40,cvsutil:29,ext:39,part:[19,8,21,22,23,38,24,5,6,16,28,27,9,29,40],bsdpasswd:0,clean:[0,20,12,24,16,29,41],usual:[0,19,20,12,22,34,23,21,24,5,25,27,16,7,39,29,10],microsoft:29,think:[0,19,24,27,16,29,40],carefulli:[0,19,5,26,27,9],consult:[11,19,12,24,27,38,9],fnurrrghcount:24,notclaimederror:27,particularli:[34,29,41,12],secret_kei:23,worri:7,getbuildrequest:27,chock:40,fine:[19,12,24,16,28,9],statuscli:38,impact:[9,27],testlock:24,firewal:[0,9,23,19,7],complete_at:[26,27],copyright:[11,24],merger:39,crawl:[23,5],writer:[2,38],solut:[19,40,12],grace:19,comparison:[17,21,12,27,31,41],queu:[25,7],metdata:26,factor:[9,29],relayhost:[0,23],changehorizon:[9,21],hit:7,downstream:20,setpropertiesfromenv:29,"__file__":25,express:[0,19,20,12,34,21,24,37,9,29],hashlib:24,fixedparamet:20,nativ:19,gratif:32,baseparamet:14,my_extract:29,dustin:[27,9,24,32,40],whenev:[22,34,2,20,5],gif:24,alwaysuselatest:[26,29],interim:[27,20],common:[0,19,8,20,12,34,23,21,24,35,5,39,37,7,28,29,10,40,16],notify_ev:23,cri:19,max_build:0,set:[0,1,2,5,6,7,8,9,10,12,13,14,16,18,19,20,21,23,24,25,26,27,28,29,32,34,35,37,38,39,40,41],setdefaultworkdir:37,dump:29,kibibyt:29,overwhelm:24,startup:[40,19,24,37,21],classifychang:27,mutabl:12,see:[0,1,2,5,6,7,8,9,10,12,15,41,19,20,21,23,24,25,26,27,28,29,31,32,34,36,37,38,39,40],histori:[19,20,23,30,25,7,29],bare:[19,27],arg:[1,20,21,22,14,24,37,9,40,23,16],close:[40,9,24,37,38],metrictimeev:13,descriptiondon:29,arn:29,deriv:34,maxint:24,failureonnotest:29,inconveni:7,someth:[19,8,20,12,22,34,23,24,5,25,27,16,7,39,9,29],getstepfactori:[24,37],time_th:13,htpasswdauth:23,new_config:21,revision_fil:5,cleanshutdown:23,subscript:[39,4],try_connect:5,attr_data:27,altern:[0,19,20,23,5,16,38,29],latin:3,appreci:24,numer:[24,29,41,10,34],javascript:23,category_r:20,disallow:23,lowercas:10,succeed:[34,23],getbuildboturl:23,consumpt:23,distinguish:[34,27,37,38,39,29],safetransl:41,purpl:10,popul:[19,23,24,5,25,39],primarili:34,both:[0,17,19,8,2,39,12,34,23,21,24,5,27,16,7,28,9,41,29,20],recent:[0,19,8,34,23,25,27,7,39,29,40,41],bbtmp_:9,delimit:24,boto:0,hyperlink:[23,29],patch_com:27,hint:[0,34,19,40],alon:19,serverurl:23,foreign:27,roman:19,context:[34,37,27,2,5],forgotten:29,sandbox:[29,32,40],createsummari:[24,37],corrupt:25,whole:[39,34,24,6,37,27,29],load:[19,2,21,24,35,25,6,7,39,40],my_file_splitt:24,simpli:[19,21,34,23,24,25,6,16,7,39,9,41,29,40],point:[19,3,12,34,23,21,24,5,25,6,32,38,39,9,29],instanti:[0,21,12,24,25,27],schedul:[8,5,39,7,9,11,14,15,17,18,20,21,23,24,25,26,27,28,29,30,32,34,35,40],docheckconfig:25,except:[40,1,20,12,34,23,21,24,27,6,37,8,9,10,29,16],buildset:[20,34,30,26,27,10],ec2latentbuildslav:[0,24],my_auth:20,provok:23,shutdown:[19,30],linux:[0,19,20,34,5,39,16,7,40],mistak:[40,8,7],desktop:34,safer:19,backend:[9,27,19],sever:[19,2,12,22,34,21,5,27,16,7,15,39,9,41,40,29,20],authz:[22,23,40,20,12],vertic:23,java:16,stamp:[19,20,34,23,24,5,27,28,29],due:[2,21,34,23,29,10,20],empti:[8,21,26,27,16,38,39,29,9,40],sinc:[2,12,13,23,21,24,5,25,27,37,7,34,39,9,16,29,20],whom:[34,20],test_localvari:12,newcom:8,try_topdir:5,withproperti:[24,23,8,29,28],guessabl:[9,40],nightly_smoketest:27,configload:25,pblisten:[23,35,5],versa:29,fr_fr:29,fire:[1,20,21,34,12,27,37,28,41],"3_2_1":24,imag:[0,24,7],great:[23,35,12],unnecessarili:0,coordin:[34,31],understand:[25,34,19,39],demand:[0,7],valid_ami_location_regex:0,security_nam:0,formless:24,convers:26,look:[0,19,20,39,22,13,23,38,24,5,26,6,37,7,28,32,27,9,40,29,16],packag:[19,20,12,34,23,24,32,25,27,16,9,41,29,40],alarm_ok:13,nextbuild:[28,24],kwarg:[24,14,6],batch:[34,23,29],durat:0,"while":[0,19,1,20,12,34,23,21,24,5,25,27,6,37,28,8,29,32,40],unifi:29,hostkeyalia:9,abov:[19,8,2,39,12,23,5,6,38,27,9,29],error:[8,3,5,9,11,12,14,41,17,18,19,20,21,23,24,26,27,29,34,37,38,40],fleet:[14,24],anonym:29,branchmap:39,everyon:7,loop:[41,24,12],expir:[20,7],subsect:20,propag:[29,12],larger:[9,39,29],svnuser:39,readi:0,key2:25,key1:25,readm:[19,5],karmic:0,jpg:29,cpu:[29,39,9,23,19],itself:[17,19,8,33,21,23,24,26,27,37,7,38,1,29,10],project_r:20,rotatelength:23,countmethod:13,dedic:[39,19,24],chase:12,emaillookup:34,debugservic:15,logobserv:[24,37],irrelev:39,fedora:19,open:[9,40,32,5],grant:[9,20],seek:24,notify_on_miss:0,belong:[27,24],shorten:[23,24],x64:29,hexdigest:24,shorter:[34,19,12],funni:12,lengthi:12,decod:[19,23,3],bzr_buildbot:39,octal:[19,29],debugpassword:[9,21,5],higher:[19,21,34,26,29,9],wrap:[27,8,41],twistedmail:19,x86:29,builderad:23,optim:9,restraint:2,gerrit_us:39,wherea:[29,39,7],slave_basedir:19,alert:0,moment:[19,12,23,24,27,29],p4user:[29,39],loadconfig:[25,40,21],user:[0,8,2,5,39,7,9,11,14,15,17,19,20,21,22,23,24,26,27,29,30,32,34,35,37],updatesourcestamp:29,inlinecallback:12,lazylogfil:[29,37],bob:[0,9,23,20],bz2:[9,29,38],subpackag:19,tracetre:40,remotecomplet:1,machineri:[24,12],discourag:[23,6,29],older:[11,19,2,12,26,27,37,39,9,29,16],cachemanag:15,entri:[22,19,39,20,5],buildrequeset:9,parenthes:8,buildbot_serv:39,pickl:[9,27,19],person:[39,19,24,12],vc6:29,realiz:[9,19],expens:9,endfor:22,grid:[9,23],manhol:[18,19,21,35,15,9,40],tast:32,spend:[34,24,32],propos:39,explan:20,buildnum:[23,24],userdict:27,pywin32:19,obscur:8,do_what_i_sai:41,pep8:12,flunkonfailur:[29,6,37],mysql:[29,9,27,19],useful:29,poller:[39,24,35],project2:20,extrarecipi:[34,23],stopbuild:23,cut:32,try_userpass:[40,20,5],cur:[39,20],brach:23,scenario:[39,24],p4line_end:29,restructuredtext:29,shortcut:[25,19,23,37,12],notifi:[0,21,34,23,9,40],python3:24,win:[24,20],input:[17,20,3,21,34,14,35,38,9,29],subsequ:[0,8,12,34,5,25,37,38],limp:26,pysqlit:19,bin:[19,39,16,28,29,32,40],subroutin:20,obsolet:5,format:[0,11,8,20,3,12,17,34,23,24,35,36,25,26,27,37,38,1,9,39,29],big:29,bid:27,projecta:39,split_file_alwaystrunk:39,sha1:[34,31,5],prioritizebuild:[9,24,21],vixi:19,bit:[19,2,12,34,24,27,29,32,20],characterist:27,leisur:39,change_sourc:[25,39,21,24,5],log_nam:23,cshrc:24,signal:[19,21,24,25,39,38,29],resolv:[34,39,41],elaps:13,manifest:[0,29],collect:[17,19,1,13,24,5,26,39,7,34,9,29,41],supersecret:39,popular:[34,20],statuspush:[23,35],initial_stdin:38,encount:[29,23,27,37,21],often:[0,8,2,12,24,23,21,4,39,37,34,28,9,29,20],mybuild:24,visibl:[19,34,14,6,7,27,9,29],some:[0,8,2,3,5,39,7,9,10,12,13,14,16,19,20,21,22,23,24,27,28,29,31,32,33,34,37,40,41],back:[19,3,21,34,23,24,5,27,7,29,40],remotecommand:[17,1,33,24,37,38,29],understood:[19,39],knielsen:29,sampl:[19,23,5,25,40,29,32],surpris:[29,21,12],a87b2c4:23,virtualenv:[19,32,40],fastfrobnifi:24,release_train:8,test_config:24,unrel:[34,12],pep:[41,12],checkin_factori:20,per:[0,20,34,23,24,5,7,28,9,29],id1:5,ssdict:[9,27],pem:23,substitut:[8,23,24,26,39,29,9],retri:[29,23,10,37],larg:[0,19,8,2,34,23,24,25,39,37,1,9,29],proj:29,slash:[9,39,29,5],bzrlaunchpademailmaildirsourc:39,optoin:20,patchset:[23,39],reproduc:[34,19],buildbo:41,machin:[0,19,2,34,5,39,7,32,9,29,20],a7d3a333db708e786edb34b6af646edd8d4d3ad9:8,run:[0,1,2,5,6,7,8,9,10,11,12,14,15,16,18,19,20,23,24,25,26,27,28,29,30,32,34,35,37,38,39,40],pyopenssl:23,somelock:41,workdir:[1,39,24,30,6,37,38,8,29,40,32,16],chart:23,step:[8,2,5,6,7,1,9,10,11,12,16,19,20,21,23,24,25,26,28,29,30,32,34,35,37,39],source_stamp:24,example2:23,example1:23,impos:[19,5],repo2:24,react:24,testmodul:29,constraint:[34,2,20],transpos:23,build_factori:24,prove:[19,29],idl:[9,24],regular:[0,11,19,20,21,23,24,7,9,29],statusnotifi:34,shinx:29,block:[0,12,27,38,29,32,41],univers:[29,12],pw2:20,viewcv:39,sphinx_sourcedir:29,pythonpath:[19,24,39,16,38,29],within:[19,39,12,34,23,24,5,27,7,28,9,29],apiref:29,findnewslaveinst:21,addtion:[23,20],ensur:[0,19,1,2,12,22,34,14,21,24,27,37,38,28,9,29],chang:[0,8,2,3,5,39,7,9,11,12,14,15,17,19,20,21,23,24,25,26,27,28,29,30,31,32,33,34,35,16,38,40],lesson:24,perl:[29,16],everybodi:19,inclus:[29,24],"3_2":24,span:[9,5],gatherresult:24,userlist:20,fledg:29,question:[24,29,4,5],"long":[0,19,1,2,12,13,24,5,25,26,27,16,7,34,39,9,41,40,29,20],custom:[0,11,1,20,21,17,23,24,35,30,39,37,7,28,9,40],pollingchangesourc:24,get_compatible_build:20,pocoo:19,dayofmonth:20,suit:[34,19,24,29,5],forward:[26,39],maria:[29,39],properli:[12,34,25,26,27,29],getth:27,lint:[29,7],budilbot:27,sendtointerestedus:23,link:[0,22,23,24,35,32,26,27,37,39,9,29,40],translat:[34,23,26,39,37,29],newer:[19,39,29],atom:[34,23,27,39],addstderr:1,line:[0,11,19,2,12,34,23,24,40,5,25,26,39,37,32,9,30,16,29,20],one_line_per_build:23,info:[19,38,39,29,5],concaten:[34,23,29],utf:[19,39,23,3],consist:[1,21,34,23,12,24,36,26,16,7,29],caller:27,makedirectori:29,metricalarmev:13,schedulerid:26,maxcount:2,highlight:27,readlin:24,similar:[8,20,39,12,34,23,21,32,26,27,37,7,38,1,9,41,40,29,16],scheduler_manag:15,forcesh:14,oldrev:39,constant:[39,10,37],masterdir:[25,24,20],parser:[39,24],doesn:[19,8,20,12,34,23,24,5,6,7,39,9,29],repres:[0,19,1,20,12,13,23,21,24,38,27,34,31,39,29,10,41],"char":5,getmergeinfo:24,incomplet:[29,27],home:[0,19,23,4,5,25,39,40,32,9,29],myfil:29,spontan:24,resultproxi:27,maybedef:24,waitfordef:[22,12],cmake:29,twistedword:19,titl:[29,9,40,23,21],sequenti:[38,21],water:32,invalid:[25,29],todays_build_config:29,nick:[23,40],transport:23,nat:[0,9,19,7],try_mast:5,tempdir:39,master_statu:23,mock:[19,12],nice:24,smoketest:23,wildcard:20,try_jobdir:[40,20,5],keypair_nam:0,asserttru:12,lucid:0,introduc:[19,2,23,7,29,40],popchunk:23,meaning:5,reportedli:34,schmo:5,interpolo:24,deserv:14,svn:[8,2,34,23,24,5,26,6,16,7,39,29],algorithm:[28,24,38],vice:29,loopback:[9,23],set_properti:29,dvc:[34,27],sftp:34,promis:26,tradeoff:[34,24],depth:[29,40],came:[34,5],far:[19,29,32],fresh:29,reconfigurableservicemixin:21,mastersrc:29,code:[0,8,5,39,7,1,9,10,11,12,13,41,17,18,19,20,21,23,24,25,26,27,29,30,32,33,34,16,38,40],partial:[29,27],edg:23,removedirectori:29,queri:[19,34,23,24,27,37,7,39,29],gtk:[16,5],slavepassword:0,svn_buildbot:39,"0x7f7a4ab7df38":9,try_dir:5,sensit:29,harvest:19,elsewher:34,send:[0,19,1,20,34,23,5,25,39,40,7,38,29,32],lower:[19,39,12],evolv:12,sens:[34,29,27,20],junit:24,sent:[0,19,1,34,23,5,25,39,7,38,9,29],test_upgrad:27,alphanumer:0,rollback:27,progressmetr:[24,37],python_twist:[34,29],chdict:[9,27],untouch:25,implicitli:[29,5],relev:[29,9,23,19,20],tri:[31,24,9,23,19],decidedli:24,newrev:39,magic:[39,23,24],notabl:[29,5],button:[22,25,23,8,5],eta:[40,24,37],fewer:[19,27,2,21],"try":[0,18,19,20,12,13,23,24,35,5,6,34,28,27,9,29,40],race:12,busier:9,maxsiz:[29,38],refer:[8,39,12,34,23,21,24,35,5,27,37,7,38,15,1,9,29,41],proof:27,pleas:[0,19,8,23,4,5,25,39,16,9,41,29,40],tgrid:23,impli:[23,29],noticeonchannel:23,show_tim:23,readabl:[34,19,41,29,12],rev_ord:23,natur:[34,21,27,41,12],yourself:[0,9,24,40],cron:19,mysqldb:29,accomod:28,download:[29,39,32,38],directoryleavepattern:29,odd:23,click:[0,40,24,32],folk:4,compat:[0,17,19,1,20,39,12,34,21,24,5,26,27,28,29,41],index:[11,19,34,23,5,25,27,39,29],poke:5,compar:[0,21,24,25,37,41],stopallbuild:23,find:[0,19,20,21,34,23,24,5,27,16,7,39,9,29,40],access:[0,2,3,5,39,9,12,15,41,20,21,23,24,26,27,29,32,34,35,37,38,40],hourli:20,experiment:23,ichangesourc:[24,21],copy_properti:29,garbag:9,fooproject:19,can:[0,1,2,3,5,6,7,8,9,12,13,14,15,16,19,20,21,22,23,24,25,26,27,28,29,32,33,34,37,38,39,40,41],more:[0,8,2,3,5,39,7,9,12,14,15,16,19,20,23,24,25,26,27,28,29,32,34,35,37,38,40,41],led:[34,23],despit:[34,7],botnam:19,len:[23,24],authformifneed:22,bodi:[23,27],somelockedfunct:41,ubuntu:[0,29],schedulersconnectorcompon:[26,27],layout:[39,24],userpass:[40,20,5],becom:[0,34,19,8],implicit:[34,27],unsuccessfulli:34,convert:[0,19,21,34,14,5,39,29,41],didn:19,verscion:29,getfilesystemencod:19,conceiv:12,libari:19,reus:29,host:[19,20,24,23,4,5,25,39,40,7,34,32,9,29],param:[19,27],fond:34,cert:[0,23],twistedconch:[9,19],grandchild:29,earli:[29,19,1,37],implement:[0,5,6,9,12,13,14,16,20,21,23,24,26,27,28,29,30,33,34,36,37,38,41],problemat:19,honor:23,chanc:[29,19,6,37],abcd:38,changesconnectorcompon:27,danger:[0,12],forbid:39,appli:[19,8,20,39,12,34,21,24,5,36,27,37,28,9,29],app:28,submodul:29,apt:0,expect:[3,12,14,21,24,27,37,7,9,29,16],ran:23,api:[0,11,12,17,24,27,38,29,41],breez:39,divmod:[39,40,24],writabl:19,adbapi:29,minion1:0,getus:27,cloud:0,buildclass:24,fee:0,from:[0,1,2,5,6,7,8,9,10,12,13,14,15,16,19,20,21,23,24,25,26,27,28,29,32,34,36,37,38,39,40,41],tar:[29,8],zip:24,commun:[34,19,39,7,21],wsgirestrictsign:39,doubl:[0,29],upgrad:[25,19,27,23,30],next:[0,19,2,39,21,23,12,24,35,26,27,37,28,29,41,16],websit:0,few:[0,19,2,12,22,24,5,25,27,37,38,39,9,41,16,40,20],latenc:34,usr:[19,24,25,39,16,28],checkconfig:[25,26],stage:9,start:[0,1,2,5,6,7,8,9,11,12,13,15,16,19,20,21,23,24,25,26,27,28,29,32,34,37,38,39,40],testempti:24,remaind:[19,12,27,23,5],sort:[0,34,23,24,39,7,9,29,41],dash:22,clobberonfailur:29,bulidbot:24,naturalsort:41,jinja:[17,22,14,19],trail:[24,29,8,39],"transient":25,unclaimbuildrequest:27,num_widget:13,getsometh:12,p4passwd:[29,39],category_fn:20,greatli:29,account:[0,19,20,34,23,39,9,40],buildlsav:5,retriev:[27,23,24,34,5],augment:[1,38],scalabl:23,alic:[0,9,20],annot:8,annoi:[0,7],linenumb:29,versu:[34,5],obvious:0,logrot:19,multiservic:[23,21],unread:[19,39,12],fetch:[39,29,27,37],aliv:[19,23],thid:27,control:[0,17,19,20,12,34,23,24,41,40,5,26,39,37,7,28,9,30,31,29,16],sqlite:[27,9,26,19],objectid:[9,27,26],process:[0,1,2,5,6,7,8,9,13,14,15,16,19,20,23,24,25,26,27,28,29,34,37,38,39],lock:[19,2,21,39,37,28,9,29,41],sudo:0,high:[9,24,29],tag:[34,23,24,5,16,29],proprietari:29,tac:[25,19,38,5],tarbal:[19,8,20,34,7,38,29],onlin:[34,19,7],crimin:0,mybuildstep:24,bb_usernam:[34,27,5],everywher:[7,41],builddir:[2,21,24,16,28,29],gcc:[29,24],"_line_r":24,filepath:24,pycheck:29,qcow2:0,restart:[0,19,20,24,5,25,39,40],deferredlist:12,spurious:24,configfil:25,subdirectori:[19,39,34,24,27,6,16,28,29],instead:[0,19,8,20,12,22,34,23,24,5,25,39,16,1,9,41,29,40],no_install_req:19,sio:24,checkout_opt:29,tryschedul:5,fare:7,delai:[34,9,24,29],elus:39,overridden:[29,34,9,14,16],num_ev:23,stop:[0,19,1,12,13,23,21,24,5,37,15,29,40],stop_inst:24,force_build_al:20,requst:27,onlyifchang:20,attent:[34,24,20,39,5],setcommand:24,getnumb:20,redund:34,philosophi:[7,30],getstat:27,user_usernam:5,alloc:0,essenti:27,html_message_formatt:23,quickbuildfactori:16,bind:[0,9],counter:24,datetime2epoch:41,correspond:[20,21,13,14,38,5,26,27,37,7,34,29],element:[25,19,38,23,16],issu:[19,20,21,34,23,5,7,29],configtest:24,copydir:29,allow:[0,8,2,5,39,7,9,12,19,20,21,23,24,25,26,27,28,29,34,37,6,40],fallback:3,jsonpropertiesdownload:29,vmbuilder:0,elif:[23,24],charset:9,creation:[0,23,29,7],routin:16,wit:19,no_build:23,move:[19,39,34,5,27,28,29],pbchangesourc:[39,24,35,5],sysconfig:19,picknextbuild:28,specifc:29,ticket:23,graph:24,canbemergedwith:[28,24],effici:[19,29],is_dir:27,has_c_fil:34,viewvc:39,bunch:24,accur:[29,24,20],outer:12,inlet:[20,5],disambigu:31,chosen:39,lostdelai:23,notifyextens:39,myproj:29,clickabl:23,suppli:[8,23,24,27,38,15,39,9,29],debugport:5,authfail:23,pserver:29,total:29,anyon:[23,24,7],stsatu:23,therefor:[34,23,5,25,16,7],"13b":40,greater:29,numbuild:23,extra_arg:29,spell:12,innermost:12,dai:[34,29,20,7],auth:[23,39,20,5],devel:[4,20],mention:[19,29],facilit:12,patchset_numb:29,front:[19,26,24,23],secret_identifi:0,wortwhil:12,somewher:[29,39,19,24,23],inconvenienc:7,trac:[29,9,23,40],anyth:[19,20,12,34,24,5,25,7,28,29,40,41],edit:[19,5,25,39,28,40],forcebuild:[23,20],nameerror:25,getuserbyusernam:27,rite:26,warner:[25,34,24],builder_statu:[23,20],qmail:39,buildsetsconnector:26,intellig:24,addbuildset:27,consum:[29,39,9,23,20],drizzl:29,"static":[34,23,29,41],ec2:0,our:[34,29,24],waterfal:[19,34,23,24,32,25,26,39,37,7,9,29,40],special:[20,34,23,24,5,25,36,39,37,38,9,41,29,16],out:[0,19,8,2,39,12,34,23,24,5,26,27,16,32,1,9,41,40,29,20],variabl:[19,1,21,34,23,12,24,27,16,38,28,9,29],userevis:23,reload:[21,23,24,5,25,9,29],influenc:[29,5],releng:23,req:[22,14],rev:[34,39,32,12],reboot:[0,19],your:[0,18,19,20,39,12,22,34,14,24,5,25,27,40,32,28,9,23,29,41],stub:[37,12],uploadfil:38,suitabl:[0,19,8,23,39,37,9,41,29,16],rel:[0,19,1,21,34,23,24,5,27,37,38,39,9,29],hardwar:0,dhcp:0,ref:[13,29,31,39,34],defens:9,red:[24,23,10,29,7],achiv:24,shut:[0,19,23,24,25,38,9],manifest_fil:29,insid:[19,20,13,23,39,7,34,28,29],parenthesi:25,qux:24,scenic:24,manipul:[29,27],req1:24,standalon:23,deferredlock:41,jill:23,req2:24,dictionari:[0,8,20,39,21,29,34,14,38,24,25,27,16,28,1,9,10,23],releas:[11,19,2,34,24,26,27,40,7,39,9,29,41],sherrif:34,likelihood:34,afterward:[29,7],nowher:5,indent:12,lone:7,pig:22,unnam:31,put:[0,19,2,39,34,23,24,5,6,16,28,29,40,20],timer:[13,27,20,7,34],keep:[0,19,20,12,13,23,21,24,25,38,39,37,7,34,9,40,29,16],counterpart:29,scari:24,length:[23,24,27,37,29,9,41],enforc:[27,2,20],operationalerror:9,outsid:[19,20,23,24,39,29,9],vc7:29,vc8:29,vc9:29,timezon:41,mad:12,softwar:[0,21,34,23,16,7,15],branchfil:39,suffix:[29,39,20,41],getchangesgreaterthan:12,buildrequest:[34,23,24,30,27,7,28,9],qualiti:7,equial:29,echo:[29,8],date:[23,5,25,27,37,29],startstep:37,"24th":20,submit:[20,34,23,24,5,39,7,40],lib:[19,24,25,16,29,40],owner:[0,23,39,20],netstringreceiv:20,facil:[29,39,7,5],messageformatt:23,suffic:[19,24],utc:41,prioriti:[21,24,30,27,28,9],publickei:0,ancient:37,changehook:29,unknown:[9,27,19],licens:[29,24],perfectli:12,mkdir:[38,39,20,32],system:[0,8,5,39,7,9,12,13,19,20,23,24,25,26,29,30,31,32,34,16,38,40],wrapper:27,attach:[0,8,12,34,23,24,32,39,16,9,29],attack:39,bbuser:19,libvirtd:0,termin:[23,32,6,40,5,29],gnuautoconf:16,"final":[19,8,2,12,13,14,24,5,39,16,41,23,20],low:[9,29],thread:[27,12],shell:[19,1,2,39,24,32,26,6,16,38,8,9,40,29,20],keyedset:41,chanag:25,shallow:29,flying_circuit:20,directoryenterpattern:29,some_java_lib_hom:29,mantain:39,exactli:[19,20,13,24,5,27,7,34,28,29],haven:[19,7],rss:23,mechan:[19,20,3,21,34,23,39,37,38,29,2],succinctli:37,prune:19,getbuildset:27,test_builder1:20,test_builder3:20,test_builder2:20,emac:40,structur:[25,39,21,27,12],charact:[19,8,3,12,23,5,25,27,28,39,41],test_data:29,sed:9,setupprogress:37,filter_fn:20,stricter:[0,20],start_tim:27,result:[8,2,5,39,7,9,10,11,12,17,19,20,21,23,24,25,27,28,29,34,37,6,40],masterlock:[29,2],stdin:[20,5],exectu:29,viewer:[39,27],favorit:[39,7],py2:40,deprec:[19,20,21,23,5,25,26,27,37,38,39,9,29],clearli:34,robot:23,myproject:[29,39,20],peform:27,bot2:[28,16],coher:34,tabl:[11,23,24,26,27,9,31,29],need:[0,8,2,5,39,7,9,12,41,19,20,21,23,24,25,26,27,29,32,34,37,6,40],p4extra_view:29,buildinfo:29,cvsmodul:[29,16],lazili:[29,24],iservic:24,try_usernam:5,cellspac:23,dictionnari:29,rout:[39,1],atim:38,accuraci:24,mix:[29,21],websvn:39,connectionlost:37,which:[0,8,5,6,7,1,9,12,13,16,19,20,21,23,24,25,26,27,28,29,33,34,36,37,38,39,40,41],sampleus:40,"3_3":24,singl:[0,19,1,2,39,12,34,23,24,36,5,26,27,40,7,38,28,9,29,20],netstr:[36,20],unless:[0,20,34,23,5,26,16,7,29],nonexist:[29,27],branches_to_build:20,remote_setbuilderlist:38,who:[17,19,20,22,34,14,5,26,39,40,7,9,23],discov:[29,20,7],baseurl:[34,26,24,29,39],newcr:38,deploi:[0,29,24],pyc:29,judici:24,payment:0,mi_packrec:29,"_build":29,joseph:5,url:[18,19,20,21,34,23,24,26,39,37,7,9,40,29,16],gather:8,request:[0,8,5,39,7,1,9,14,19,20,21,22,23,24,26,27,28,29,30,34,35,38,40],uri:19,face:12,pipe:19,deni:23,snapshot:7,determin:[20,21,22,34,23,24,5,27,37,7,9,29,41],occasion:[29,2,16],constrain:37,fact:[2,12,34,24,27,39],assert:[0,29,12],text:[19,20,23,24,5,36,39,37,9,29],syntaxerror:40,verbos:[12,24,5],sysvinit:19,elig:20,bedroom:41,desc:23,trivial:[0,23,12],anywai:[24,20],setter:12,redirect:[22,23],highest:24,locat:[0,19,34,5,25,27,16,39,9,29],launchpad:39,much:[20,21,22,24,26,39,40,9,29],subtl:[34,16],forev:[34,2],dictonari:23,should:[0,1,3,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23,24,25,26,27,28,29,31,32,34,37,38,39,40,41],won:[0,39,19,24],suppos:[19,24,7],try_wait:5,combo:20,inhabit:34,local:[19,2,12,34,21,24,5,39,37,7,38,28,29,20],hope:[34,39],meant:[29,39,5],stepprogress:37,skimp:12,notat:20,familiar:[0,11,19,23,35],pypi:[25,19],bear:24,autom:[34,19,27,7,5],bot1:[0,28,16],certkei:23,somehook:23,increas:[19,20,13,37,34,29,9],telnetmanhol:9,tbd:24,lossless:3,buildrequestsconnectorcompon:27,bzrginor:29,checkoutdelai:[34,29],enabl:[18,13,23,24,5,16,9,29,40],organ:[15,11,21,24,17],twice:22,upper:[9,23,2,20],gerrit_chang:29,throughout:[34,21],split_fil:[39,24],setbuildslav:37,stuff:[25,24],integr:[28,29,27,35],querier:9,contain:[8,5,6,7,1,9,14,15,16,19,20,21,23,24,25,26,27,29,33,34,37,38,39,40,41],comma:5,grab:[29,24,2],view:[34,23,27,40,29,9],toe:32,legaci:19,modulo:41,unimport:[27,20],unavail:34,googlecod:[23,39],knowledg:[25,16],want_stderr:[29,1,38],changeid:[39,14,27],elast:0,smtpuser:23,try_build:5,bytestr:[19,3,38],configfilenam:9,stack:[0,12],textlimit:29,bonsaiurl:39,statu:[0,1,3,5,7,9,10,11,12,13,14,15,17,19,20,21,22,23,24,25,26,27,28,29,30,32,34,35,36,37,38,40],wire:20,correctli:[19,20,12,23,39,28,29],pattern:[39,29,8,12],boundari:38,trialtestcasecount:24,slavevers:37,tend:[19,29,7],addchang:[27,24],lua:39,state:[19,39,21,34,12,24,25,26,6,27,9,29],virsh:0,mislead:16,unauthorizedlogin:5,progress:[8,34,23,24,5,37,7,29,16],neither:[28,29,27],email:[0,19,20,34,23,24,5,39,40,7,9,29],jsonif:27,kei:[0,39,12,34,23,21,24,5,25,27,38,28,9,29,41],changecommentlink:[23,29],isol:[19,27,12],logmaxs:[9,21],job:[19,8,20,34,24,5,39,28,9,40],entir:[8,2,21,34,23,12,26,27,16,38,39,29,20],joe:5,basicauth:23,useless:34,mailbox:39,directoryupload:29,addit:[0,19,1,2,39,34,23,24,40,5,26,6,37,27,9,16,29,20],doxygen:29,instant:32,plugin:[0,19,24,30,39,7,9,29],admin:[19,20,23,5,6,7,39,9,40],status_gerrit:23,equal:[2,21,34,29,9,20],foobaz:39,dbconnectorcompon:27,etc:[19,8,20,3,34,23,5,39,6,37,7,27,29,16],instanc:[0,1,5,6,7,9,12,14,15,41,19,20,21,22,23,24,26,27,28,29,32,34,37,38,40],grain:16,ami:0,usermanagermanag:15,samplepass:40,comment:[12,34,23,5,25,27,7,39,40],unclear:21,cxt:22,wall:[29,16,12],hyphen:0,arriv:[1,34,24,39,7,28,9],set_result:12,walk:7,hasproperti:24,solv:29,buildstepstatu:[29,37],respect:[0,19,23,29,5],beach:24,qemu:0,append:[0,1,20,34,23,24,26,39,37,9,40,29,16],stopchang:23,alwaysrun:[29,6,37],quit:[0,19,20,23,7,29],iauth:23,slowli:12,creat:[0,8,2,5,6,7,9,12,14,16,18,19,20,21,23,24,25,26,27,28,29,30,32,34,35,37,38,39,40,41],addition:[23,39,7],build_lock:2,changegroup:39,compon:[19,20,21,34,24,35,30,25,27,7,38,15,39,29],json:[17,19,8,13,23,27,34,39,29,41],tryhost:5,treat:[21,34,23,25,27,38,29],rpm:20,hottest:24,immedi:[20,39,21,34,24,6,37,7,38,27,9,29,2],try_quiet:5,myfactori:29,every2hour:20,buildbot_port:39,upcom:[24,7],inbound:9,presenc:[34,5],"0x300d290":40,vmware:0,parse_log:12,bulk:19,step_statu:37,bsdict:27,p4base:[34,29,39,5],buildboturl:[9,23,21],usehttphead:23,last:[0,20,13,23,5,25,26,27,40,34,39,9,29],haltonfailur:[29,6,37,16],present:[19,20,21,34,14,12,24,27,38,29,23],buld:34,replic:[9,27],multi:[19,20,35,25,39,9],svnversion:1,plain:[29,39,19,24,23],align:[23,38],implic:26,unsuit:37,defin:[0,8,2,3,39,9,12,16,20,21,23,24,25,26,27,28,29,34,35,37,38,6,41],lsblakk:40,eventhorizon:[9,21],wild:9,observ:[29,24,37],filedownload:29,layer:[23,27],usersauth:[34,23],opensourc:39,helper:[17,13,9,40,21],updateus:27,almost:[39,27,7,12],virt:0,site:[19,24,35,25,16,9,32,40],"4c0":24,blissfulli:24,slaveportnum:[9,32,21],projectnam:[24,16],archiv:[26,4,16],substanti:[0,24],fiddl:20,incom:[20,34,23,39,7,38,15],revis:[8,20,39,34,23,24,35,5,26,27,7,28,9,31,29],"_trial_temp":29,irclookup:34,let:[0,19,20,12,23,24,5,39,16,29,32,40],welcom:23,iemaillookup:23,referenti:27,cross:[27,7,5],member:[11,20,7],python:[0,8,5,39,7,9,10,12,15,41,19,20,21,24,25,26,27,29,32,34,35,16,38,40],gui:[34,29],aws_id:0,addstep:[8,2,24,26,6,16,28,29,20],difficult:[21,12,25,27,7,29],nightli:[34,9,35,20,21],feedurl:39,overal:[1,34,24,7,38,9,29],slave:[0,1,2,5,6,7,8,9,10,11,15,17,18,19,21,23,24,25,26,28,29,32,34,35,37,38,39,40],hostnam:[0,19,24,5,39,9],denot:20,divmodpyflak:40,expans:[29,19,27,20],keepal:[0,19,32],upon:[19,8,20,34,23,24,5,6,7,39,29],effect:[39,12,34,24,5,25,6,27,9],libvirt:0,cpan:16,collid:27,logfil:[0,19,1,20,3,23,24,5,36,6,37,7,38,39,9,30,29],pdf:29,php:[9,39],distutil:[19,16],expand:[25,34,29,39,40],iservicecollect:24,warnonwarn:[29,6,37],off:[0,20,23,39,37,7,29,40,16],center:0,sleighpreflightcheck:20,firstli:2,myrepo:39,builder:[0,1,2,5,6,7,8,9,15,16,17,19,20,21,23,24,25,26,27,28,29,30,34,35,37,38,39,40],failures_onli:23,well:[0,2,3,4,5,39,7,9,12,15,19,20,21,23,24,25,27,29,32,34,37,40],versatil:29,thought:27,pedant:7,exampl:[0,8,2,3,5,6,7,9,12,16,19,20,21,22,23,24,25,27,28,29,32,34,35,37,39,40],addtolog:1,interpol:[24,29,8,30],undefin:[25,29],fail:[0,19,20,3,12,34,23,21,24,6,37,7,38,27,29,10,16],metricev:13,piec:[19,12,34,23,24,5,25,37,7],latest:[19,34,23,5,27,29,40],sporad:12,newest:[34,23],stout:24,less:[20,34,23,24,5,29,9],"boolean":[19,20,23,27,37,29],percent:29,xen:0,obtain:[0,8,34,23,5,39,7,9],tcp:[0,20,23,5,39,40,7,38,9,32],"10mib":19,previou:[0,19,20,23,24,5,26,6,37,39,29,40,16],pythonx:19,heavili:12,deferredgener:12,simultan:[0,28,34,21],slaveversionisolderthan:37,sre_match:29,smarthost:0,web:[0,3,5,39,7,9,11,12,14,17,19,20,22,23,24,25,26,27,29,32,34,40],amd64:29,idiom:[17,29,24,37,12],nullabl:27,priorit:[21,34,24,35,28,9],htmlresourc:22,script:[0,19,20,23,5,25,26,27,16,7,39,29],add:[0,1,2,5,39,9,12,15,16,41,19,20,21,23,24,27,28,29,34,37,38,40],valid:[0,20,3,21,29,14,35,6,7,9,23],mybranch:39,apparmor:0,bool:37,smart:39,warrant:6,match:[0,19,1,20,3,34,23,24,5,25,27,28,9,39,29],knob:24,outlinereceiv:24,candid:[27,12],royalti:11,rememb:[24,19,23,20],datastream:29,db_url:[9,19,21],try1:20,source2:39,buildrequestdistributor:15,built:[0,20,34,23,24,27,16,7,39,29,41],source1:39,window:[16,19,24,29,32],know:[0,19,34,23,24,5,25,39,16,7,29],press:[8,5],periodic_interv:9,lineend:29,password:[0,19,20,21,34,23,5,26,27,40,32,38,39,9,29],recurs:[29,16],my_project:39,python2:[25,29,24,16,40],insert:[0,23,39,27,29,40],mainten:[9,19,30],resid:[19,29],like:[0,8,2,5,6,7,9,11,16,19,20,22,23,24,25,26,27,28,29,32,34,37,38,39,40,41],lost:[29,23,37,5],header:[24,9,1,23,38],getprocessoutput:12,slavelock:[29,2],test_:[29,12],unord:24,necessari:[0,19,1,3,12,14,21,24,5,25,26,27,37,39,29,16],have:[0,8,2,5,6,7,9,12,13,16,19,20,21,22,23,24,25,26,27,28,29,31,34,36,37,38,39,40,41],lose:[19,27,12],userpw:[9,5],change_filt:20,page:[0,11,19,20,24,23,4,5,27,37,7,34,32,39,9,29,40],time_foo:13,"100mb":29,therein:29,extra_opt:29,exceed:[9,29],revers:[19,23],captur:[9,24,29],p4sync:38,mistyp:19,callbackkeyword:40,mystep:[24,37],self:[2,12,22,23,24,25,27,37,38,15,40,41,16],sophist:29,"export":[26,24,29],superclass:29,read:[0,19,2,12,34,23,21,24,5,25,6,40,38,39,9,29,20],flush:27,proper:[1,23,5,27,38,39],guarante:41,librari:[0,19,20,34,23,24,5,27,16,7,29,41],tmp:[19,20,25,39,40,29,32],win32:[9,5],identifiertouid:27,leaf:37,pinpoint:7,lead:[0,8,12,23,25,39,29],anybranchschedul:[20,35],xtoi:23,avoid:[20,21,34,23,12,24,27,39,9,29,41],use_uniqu:9,thank:[0,26],buildstep:[17,8,33,34,23,24,35,30,26,6,37,7,38,1,29,16],addsourcestampset:27,leap:41,estim:[29,16,7],leav:[19,12,23,21,5,39,16,29],launch:[0,19,30,25,16,9,5],speak:29,wnet:29,getnam:23,mode:[0,19,2,23,24,35,26,39,16,38,9,29,40],encourag:[9,16,7,12],investig:19,usal:37,importerror:19,usag:[27,9,24,29],symlink:19,statuslog:5,ignore_ignor:29,how_mani:24,although:[0,19,8,20,39,29,34,14,5,25,6,16,27,9,23],interdepend:29,preferenti:29,f_quick:28,cpdir:38,simpler:[29,16],hgchang:39,about:[0,19,32,39,12,34,23,24,5,25,6,16,7,38,27,9,29,40],rare:[16,37,3,21],interven:[25,29,38],column:[20,34,23,27,7,29],addlogobserv:[24,37],http:[0,19,2,12,29,24,14,4,35,36,32,25,26,39,16,7,34,9,23,40],glade:5,metricshandl:13,clientpath:29,winddk:29,limit_lin:23,includ:[0,17,19,1,20,12,34,23,21,24,5,27,37,7,39,9,41,40,29,16],constructor:[0,19,1,21,14,24,26,27,37,29,23,41],discard:[25,29],upward:5,disabl:[0,19,23,26,39,16,9,29],subset:[28,23,20,34],own:[0,19,39,22,23,24,5,6,7,28,27,29],addfactoryargu:[24,37],additionn:29,submitt:[34,39],ignore_upd:1,easy_instal:[40,32],automat:[0,19,8,12,21,24,25,27,37,7,38,39,9,29,41],frobe:24,pool_recycl:9,automak:16,faileddelai:23,central:[19,13,39,7,34,29],browser:[25,19,23,7],forget:[19,12],mere:[9,21,24,12],virtualbox:0,merg:[20,39,21,23,24,35,36,30,26,27,16,7,28,9,29],cancelpendingbuild:23,refnam:39,unvers:29,transfer:[34,29,35,38],andthisnext:12,secret:[0,23],mykei:23,debian:[19,24,23],intention:23,mung:19,trigger:[8,2,21,34,35,25,26,27,7,39,9,29,20],downgrad:19,arg1:27,"var":[39,23,24,29,5],rev_pars:12,individu:[0,19,13,23,38,5,16,7,34,9,31,29],"function":[0,1,5,39,7,9,10,12,13,14,16,19,20,21,22,23,24,25,26,27,28,29,30,34,37,40,41],respositori:9,gitignor:29,beta1:8,simplejson:[19,41],brand:34,subscrib:[39,23,24,7],fileupload:29,keyerror:[27,37],togeth:[19,34,24,5,27,7,39,29],not_real:38,addlog:[23,24,37],overflow:12,warnextractfromregexpgroup:29,bug:[0,19,8,12,34,23,24,5,26,27,16,9,10,29,40],wherev:21,count:[19,2,13,24,35,27,37,7,29],succe:[29,34,23,37,12],made:[0,20,39,34,23,24,5,26,6,7,27,9,29],cleanup:[6,29,1,27],displac:0,whether:[19,21,22,34,23,24,27,37,7,29,41],wish:[17,11,19,20,23,39,7,9,29],consumeerror:12,displai:[19,20,21,22,34,14,24,5,25,26,27,37,7,32,9,23,29],troubl:9,asynchron:[27,12],record:[19,1,21,13,23,24,5,27,7,34,9,29],below:[0,19,1,2,39,21,23,24,5,27,37,38,28,9,29,40],w32:9,limit:[0,19,8,2,39,21,34,23,24,5,27,28,9,29,20],indefinit:9,otherwis:[19,8,20,34,23,24,5,7,38,9,29],problem:[0,19,20,12,34,23,24,5,25,6,7,9,10,29],nevow:24,evalu:[11,29,37,5],"int":[23,27,40],dure:[8,2,21,24,25,26,27,37,1,9,16,29,20],pid:[19,39],useprogress:[37,16],twist:[17,19,1,20,12,29,13,14,21,24,5,26,27,16,7,38,15,39,9,23,40],fed:7,mtime:[19,38],remotehost:9,mergeabl:34,statusgui:[23,5],probabl:[0,19,12,34,23,24,32,39,16,9,29,40],setstepstatu:37,p4bin:39,aplic:29,quot:[40,20],usetimestamp:39,minim:[19,5,26,39,37,7,29],boot:[0,19],detail:[0,11,19,1,20,39,12,34,23,24,5,25,26,27,37,28,9,41,29,40],virtual:[0,29,39,5],other:[0,1,2,5,6,7,8,9,12,13,15,16,19,20,21,23,24,25,26,27,28,29,32,34,37,38,39,41],lookup:[27,23,24,34],futur:[19,20,12,13,5,27,16,34,28,9,29],branch:[8,20,39,34,23,24,5,26,27,28,9,31,29],varieti:[19,34,23,25,39,16,7],handle_result:12,"3_2_2":24,adderror:[26,21],stat:38,repeat:[29,12],star:[7,5],user_map:20,fulli:[19,20,21,34,24,27,29],"class":[0,8,30,6,7,1,9,11,12,13,14,16,17,19,20,21,23,24,27,28,29,33,34,36,37,38,39,41],is_curr:27,keepstamp:[29,38],mondai:20,webform:24,strict:20,repositoryhost:34,smooth:24,log_eval_func:37,stai:[39,2],experienc:6,sphinx:29,eof:38,exeuct:37,trial2:16,googlecode_atom:39,reliabl:29,rule:[29,12],eol:40,msater:15,amanda:[39,24],portion:[27,23,24,39,5],forced_test:20,decemb:20,invari:12},objtypes:{"0":"std:option","1":"py:module","2":"py:class","3":"py:method","4":"py:attribute","5":"py:data","6":"py:exception","7":"py:function","8":"py:classmethod"},titles:["Buildslaves","RemoteCommands","Interlocks","String Encodings","Resources","Command-line Tool","BuildFactory","Introduction","Properties","Global Configuration","Build Result Codes","Table Of Contents","Buildbot Coding Style","Metrics","ForceScheduler","Master Organization","Build Factories","Buildbot Development","Buildbot Tutorial","Installation","Schedulers","Configuration","Web Status","Status Targets","Customization","Configuring Buildbot","Release Notes for Buildbot 0.8.6","Database","Builder Configuration","Build Steps","Buildbot Manual","Definitions","First Run","Classes","Concepts","Configuration","File Formats","BuildSteps","Master-Slave API","Change Sources","A Quick Tour","Utilities"],objnames:{"0":["std","option","option"],"1":["py","module","Python module"],"2":["py","class","Python class"],"3":["py","method","Python method"],"4":["py","attribute","Python attribute"],"5":["py","data","Python data"],"6":["py","exception","Python exception"],"7":["py","function","Python function"],"8":["py","classmethod","Python class method"]},filenames:["manual/cfg-buildslaves","developer/cls-remotecommands","manual/cfg-interlocks","developer/encodings","manual/resources","manual/cmdline","developer/cls-buildfactory","manual/introduction","manual/cfg-properties","manual/cfg-global","developer/results","index","developer/style","developer/metrics","developer/cls-forcesched","developer/master-overview","manual/cfg-buildfactories","developer/index","tutorial/index","manual/installation","manual/cfg-schedulers","developer/config","developer/webstatus","manual/cfg-statustargets","manual/customization","manual/cfg-intro","release-notes","developer/database","manual/cfg-builders","manual/cfg-buildsteps","manual/index","developer/definitions","tutorial/firstrun","developer/classes","manual/concepts","manual/configuration","developer/formats","developer/cls-buildsteps","developer/master-slave","manual/cfg-changesources","tutorial/tour","developer/utils"]})PKLk@o??buildbot-v0.8.6/bb-cfg.html Buildmaster Configuration Index — Buildbot 0.8.6 documentation



PKMk@;2buildbot-v0.8.6/objects.inv# Sphinx inventory version 2 # Project: Buildbot # Version: 0.8.6 # The remainder of this file is compressed using zlib. x]Ms8W0b'bloacnlWyvi,jHHbEpIжo&H]IHd| L~d?h0oIV0MCtq`ߢc,. Ue *HHx*c󪭎as^#&ixWOB0Mf֌3lIr6$_,# i%w`_k_Ž" ,:aLaqR*"Ҫ=ځ-lOEůAE=Bך_ @ϲS1L G'L+^rI+Jza'׍nKRCWhJF zygd0ra9ə\$Kedo,4cy F$Я=y%jex{-냬^D ) ic@7 "I*s[l,; Nv;RoQPc9)Vޮflt+}o2_ eZ(^+f q數;AA"% vݺ@xDP)¿l)Sv{$2$ɇPSZ麩?ƣ\>:(b ^Ӓr8!k1`F}ug^Ym˨Hjp)vp]+[V$L+;3!tYe8 ߟ\QC>-ΥF|)kǸYj/%< mmDH `d𭗇EONMp$e{ u WBgPŲGvwy4ț(__s(e1) _t5t? 5Fqח3\XpBy2$z2ǵ'\|ArZ&YN<˽#tRN(Y K1r2mJ w@7[>cUw!~p t;D ܫ}rfHJף3VjjbPoI8}2(C}.#.cN3veg>Nz%aL] YРE k}JaQ(vY0[zxY K]NS9ߵ a{Ʌ '`,>H"hX*}C5sj<1 h8:bﴝs]ʋ=c+a*D*]B)╡=0豮6yoMcsK[q_f^[.b:b.p|eLBq[7@}!ѯ >ijD'#S vYZiG]:OՕK6DZGCG9OOiv'$nn o=H/4Κe_ Y`Ai))1\ZP9N.R|x$>: Gq&؋&vn JlDF.3)#Q4eҳZU|5H a nDQ#M5By %& d<'S-jobkq*3o@uM6xyF!kiH9$ধFPLߊ})﯅t"=6V9AWh,I5/5hiH Yz0}rX4*jqgk_n6+Lukmy9YVs䩎!G#ԑ<[-MˠRgP >JrV;짫rez$2FʐUvp1?@2S@q 0ZF䧘F6bv 왓6ٳ^ U-GG!c;貁)l+&\Җ0ʹB 5M5 ` 2u ۊd.=6lH[VYs";(MF؊%RyD0Kj9ZijJueXf^;6vf}'o΂!P*_%*fw4S2堵go4},ix{ksf@u];-~ޮF9WնAD6s'(-<}U <[2*< )qt7A"=l+Fʀ\WZҧ;/K) 7"o(97lVdviX;1dm@2W ׳e2@Hyl;鏒RRo3-S, ᮹E7j@6փ)aSQ@?7&>5fVy:3UyG:LV˘yACꪢ7cGָ!øWgih c'۵RXhk qYg~wٲw\*- `Iw%~9h@aqVݦ2{=L1aHs-Fo(elz,oWoOSooD S؁':S#4ne}7ꦽE݂p~%v-}{=,oɑ|3;\^=%Y:EyC1ۢ"PL m ]^ŇR%v#wN ۵Vbah׼]t+\%X<2CJBL§{tQ[S&t:L7כC[/1}d{<>Z&g8%Ƕ^0\@5Dr f{]%GX?¢bInaM3@6cj-L9`{!KּhoByڶ(t!VXÇlf#'N zަ0e!fzQ 1GL1 {A ;6Vܨ^;9-{;W(m"{x*lNDA<#^XѻК>27WM;vv+ss9k|dP{֣/F}vV9=C># }qe=k.knj0s!)y^ $tfNe:ޑ悘D)α FxHMS7cɚtW#f1wvm{dwӞtuCk3ZO8 uI{vvnɵOƽRoȧo@E~F9/,Go]*i{*KPKLk@N-N-buildbot-v0.8.6/bb-chsrc.html Change Source Index — Buildbot 0.8.6 documentation


PKLk@P!bb"buildbot-v0.8.6/release-notes.html Release Notes for Buildbot 0.8.6 — Buildbot 0.8.6 documentation

Release Notes for Buildbot 0.8.6

The following are the release notes for Buildbot 0.8.6.

Master

  • If you are using the github hook, carefully consider the security implications of allowing un-authenticated change requests, which can potentially build arbitrary code. See bug #2186.

Deprecations, Removals, and Non-Compatible Changes

  • Forced builds now require that a ForceScheduler be defined in the Buildbot configuration. For compatible behavior, this should look like:

    from buildbot.schedulers.forcesched import ForceScheduler
    c['schedulers'].append(ForceScheduler(
                            name="force",
                            builderNames=["b1", "b2", ... ]))
    

    Where all of the builder names in the configuration are listed. See the documentation for the much more flexiblie configuration options now available.

  • This is the last release of Buildbot that will be compatible with Python 2.4. The next version will minimally require Python-2.5. See bug #2157.

  • This is the last release of Buildbot that will be compatible with Twisted-8.x.y. The next version will minimally require Twisted-9.0.0. See bug #2182.

  • buildbot start no longer invokes make if a Makefile.buildbot exists. If you are using this functionality, consider invoking make directly.

  • The buildbot sendchange option --username has been removed as promised in bug #1711.

  • StatusReceivers' checkConfig method should now take an additional errors parameter and call its addError method to indicate errors.

  • The gerrit status callback now gets an additional parameter (the master status). If you use this callback, you will need to adjust its implementation.

  • SQLAlchemy-Migrate version 0.6.0 is no longer supported. See Buildmaster Requirements.

  • Older versions of SQLite which could limp along for previous versions of Buildbot are no longer supported. The minimum version is 3.4.0, and 3.7.0 or higher is recommended.

  • The master-side Git step now checks out 'HEAD' by default, rather than master, which translates to the default branch on the upstream repository. See pull request 301.

  • The format of the repository strings created by hgbuildbot has changed to contain the entire repository URL, based on the web.baseurl value in hgrc. To continue the old (incorrect) behavior, set hgbuildbot.baseurl to an empty string as suggested in the Buildbot manual.

  • Master Side SVN Step has been corrected to properly use --revision when alwaysUseLatest is set to False when in the full mode. See bug #2194

  • Master Side SVN Step paramater svnurl has been renamed repourl, to be consistent with other master-side source steps.

  • Master Side Mercurial step parameter baseURL has been merged with repourl parameter. The behavior of the step is already controled by branchType parameter, so just use a single argument to specify the repository.

  • Passing a buildbot.process.buildstep.BuildStep subclass (rather than instance) to buildbot.process.factory.BuildFactory.addStep has long been deprecated, and will be removed in version 0.8.7.

  • The hgbuildbot tool now defaults to the 'inrepo' branch type. Users who do not explicitly set a branch type would previously have seen empty branch strings, and will now see a branch string based on the branch in the repository (e.g., default).

Changes for Developers

  • The interface for runtime access to the master's configuration has changed considerably. See Configuration for more details.
  • The DB connector methods completeBuildset, completeBuildRequest, and claimBuildRequest now take an optional complete_at parameter to specify the completion time explicitly.
  • Buildbot now sports sourcestamp sets, which collect multiple sourcestamps used to generate a single build, thanks to Harry Borkhuis. See pull request 287.
  • Schedulers no longer have a schedulerid, but rather an objectid. In a related change, the schedulers table has been removed, along with the buildbot.db.schedulers.SchedulersConnectorComponent.getSchedulerId method.
  • The Dependent scheduler tracks its upstream buildsets using buildbot.db.schedulers.StateConnectorComponent, so the scheduler_upstream_buildsets table has been removed, along with corresponding (undocumented) buildbot.db.buildsets.BuildsetsConnector methods.
  • Errors during configuration (in particular in BuildStep constructors), should be reported by calling buildbot.config.error.

Features

  • The IRC status bot now display build status in colors by default. It is controllable and may be disabled with useColors=False in constructor.

  • Buildbot can now take advantage of authentication done by a front-end web server - see pull request 266.

  • Buildbot supports a simple cookie-based login system, so users no longer need to enter a username and password for every request. See the earlier commits in pull request 278.

  • The master-side SVN step now has an export method which is similar to copy, but the build directory does not contain Subversion metdata. (bug #2078)

  • Property instances will now render any properties in the default value if necessary. This makes possible constructs like

    command=Property('command', default=Property('default-command'))
    
  • Buildbot has a new web hook to handle push notifications from Google Code - see pull request 278.

  • Revision links are now generated by a flexible runtime conversion configured by revlink - see pull request 280.

  • Shell command steps will now "flatten" nested lists in the command argument. This allows substitution of multiple command-line arguments using properties. See bug #2150.

  • Steps now take an optional hideStepIf parameter to suppress the step from the waterfall and build details in the web. (bug #1743)

  • Trigger steps with waitForFinish=True now receive a URL to all the triggered builds. This URL is displayed in the waterfall and build details. See bug #2170.

  • The master/contrib/fakemaster.py` script allows you to run arbitrary commands on a slave by emulating a master. See the file itself for documentation.

  • MailNotifier allows multiple notification modes in the same instance. See bug #2205.

Slave

Deprecations, Removals, and Non-Compatible Changes

  • BitKeeper support is in the "Last-Rites" state, and will be removed in the next version unless a maintainer steps forward.

Features

Details

For a more detailed description of the changes made in this version, see the git log itself:

git log buildbot-0.8.5..buildbot-0.8.6

Older Versions

Release notes for older versions of Buildbot are available in the master/docs/release-notes/ directory of the source tree, or in the archived documentation for those versions at http://buildbot.net/buildbot/docs.




PKMk@O##buildbot-v0.8.6/search.html Search — Buildbot 0.8.6 documentation

Search

Please activate JavaScript to enable the search functionality.

From here you can search these documents. Enter your search words into the box below and click "search". Note that the search function will automatically search for all of the words. Pages containing fewer words won't appear in the result list.




PKLk@4K:buildbot-v0.8.6/genindex.html Index — Buildbot 0.8.6 documentation

Index

Symbols | A | B | C | D | E | F | G | H | I | J | L | M | N | O | P | Q | R | S | T | U | V | W

Symbols

--keepalive
buildslave-create-slave command line option
--log-count
buildslave-create-slave command line option
--log-size
buildslave-create-slave command line option
--maxdelay
buildslave-create-slave command line option
--no-logrotate
buildslave-create-slave command line option
--umask
buildslave-create-slave command line option
--usepty
buildslave-create-slave command line option

A

active (buildbot.process.buildstep.RemoteCommand attribute)
addBuild() (buildbot.db.builds.BuildsConnectorComponent method)
addBuildset() (buildbot.db.buildsets.BuildsetsConnectorComponent method)
addChange() (buildbot.db.changes.ChangesConnectorComponent method)
addCompleteLog() (buildbot.process.buildstep.BuildStep method)
addError() (buildbot.config.ConfigErrors method)
addFactoryArguments() (buildbot.process.buildstep.BuildStep method)
addHeader() (buildbot.process.buildstep.RemoteCommand method)
addHTMLLog() (buildbot.process.buildstep.BuildStep method)
addLog() (buildbot.process.buildstep.BuildStep method)
addLogObserver() (buildbot.process.buildstep.BuildStep method)
addSourceStamp() (buildbot.db.sourcestamps.SourceStampsConnectorComponent method)
addSourceStampSet() (buildbot.db.sourcestampsets.SourceStampSetsConnectorComponent method)
addStderr() (buildbot.process.buildstep.RemoteCommand method)
addStdout() (buildbot.process.buildstep.RemoteCommand method)
addToLog() (buildbot.process.buildstep.RemoteCommand method)
addURL
addURL() (buildbot.process.buildstep.BuildStep method)
AlreadyClaimedError
alwaysRun (buildbot.process.buildstep.BuildStep attribute)
AnyBranchScheduler Scheduler
AWS EC2

B

BaseParameter (class in buildbot.schedulers.forceshed)
BasicBuildFactory
BasicSVN
bdict
bid
BK (Slave-Side) Build Step
BonsaiPoller Change Source
brdict
brid
bsdict
bsid
build (buildbot.process.buildstep.BuildStep attribute)
Build Factory
BasicBuildFactory
BasicSVN
CPAN
Distutils
GNUAutoconf
QuickBuildFactory
Trial
Build Slaves
limiting concurrency
Build Steps
BK (Slave-Side)
BuildEPYDoc
Bzr
Bzr (Slave-Side)
CVS
CVS (Slave-Side)
Compile
Configure
Darcs (Slave-Side)
DirectoryUpload
FileDownload
FileExists
FileUpload
Git
Git (Slave-Side)
HLint
JSONPropertiesDownload
JSONStringDownload
MTR
MakeDirectory
MasterShellCommand
MaxQ
Mercurial
Mercurial (Slave-Side)
Monotone (Slave-Side)
P4 (Slave-Side)
PerlModuleTest
PyFlakes
PyLint
RemoveDirectory
RemovePYCs
Repo (Slave-Side)
SVN
SVN (Slave-Side)
SetPropertiesFromEnv
SetProperty
ShellCommand
Sphinx
StringDownload
SubunitShellCommand
Test
TreeSize
Trial
Trigger
VC2003
VC2005
VC2008
VC6
VC7
VC8
VCExpress9
buildbo.util (built-in class)
buildbot.changes.base.ChangeSource (built-in class)
buildbot.changes.base.PollingChangeSource (built-in class)
buildbot.changes.gerritchangesource.GerritChangeSource (built-in class)
buildbot.changes.mail.BzrLaunchpadEmailMaildirSource (built-in class)
buildbot.changes.mail.CVSMaildirSource (built-in class)
buildbot.changes.mail.SVNCommitEmailMaildirSource (built-in class)
buildbot.changes.pb.PBChangeSource (built-in class)
buildbot.changes.svnpoller.SVNPoller (built-in class)
buildbot.config (module)
buildbot.db.base (module)
buildbot.db.buildrequests (module)
buildbot.db.builds (module)
buildbot.db.buildsets (module)
buildbot.db.changes (module)
buildbot.db.connector (module)
buildbot.db.model (module)
buildbot.db.pool (module)
buildbot.db.schedulers (module)
buildbot.db.sourcestamps (module)
buildbot.db.sourcestampsets (module)
buildbot.db.state (module)
buildbot.db.users (module)
buildbot.interfaces.IProperties (built-in class)
buildbot.process.buildstep (module)
buildbot.process.factory.BasicBuildFactory (built-in class)
buildbot.process.factory.BasicSVN (built-in class)
buildbot.process.factory.CPAN (built-in class)
buildbot.process.factory.Distutils (built-in class)
buildbot.process.factory.GNUAutoconf (built-in class)
buildbot.process.factory.QuickBuildFactory (built-in class)
buildbot.process.factory.Trial (built-in class)
buildbot.schedulers.forceshed (module)
buildbot.status.client.PBListener (built-in class)
buildbot.status.logfile.LogFile (built-in class)
buildbot.status.mail.MailNotifier (built-in class)
buildbot.status.results (module)
buildbot.status.status_gerrit.GerritStatusPush (built-in class)
buildbot.status.status_push.StatusPush (built-in class)
buildbot.status.web.baseweb.WebStatus (built-in class)
buildbot.status.words.IRC (built-in class)
buildbot.steps.master.MasterShellCommand (class in buildbot.steps.source)
buildbot.steps.python.BuildEPYDoc (class in buildbot.steps.source)
buildbot.steps.python.PyFlakes (class in buildbot.steps.source)
buildbot.steps.python.Sphinx (class in buildbot.steps.source)
buildbot.steps.python_twisted.HLint (class in buildbot.steps.source)
buildbot.steps.python_twisted.RemovePYCs (class in buildbot.steps.source)
buildbot.steps.python_twisted.Trial (class in buildbot.steps.source)
buildbot.steps.shell.Configure (class in buildbot.steps.source)
buildbot.steps.shell.SetProperty (class in buildbot.steps.source)
buildbot.steps.shell.ShellCommand (class in buildbot.steps.source)
buildbot.steps.slave.SetPropertiesFromEnv (class in buildbot.steps.source)
buildbot.steps.source (module)
buildbot.steps.source.bzr.Bzr (class in buildbot.steps.source)
buildbot.steps.source.cvs.CVS (class in buildbot.steps.source)
buildbot.steps.source.git.Git (class in buildbot.steps.source)
buildbot.steps.source.mercurial.Mercurial (class in buildbot.steps.source)
buildbot.steps.source.Repo (class in buildbot.steps.source)
buildbot.steps.source.svn.SVN (class in buildbot.steps.source)
buildbot.steps.subunit.SubunitShellCommand (class in buildbot.steps.source)
buildbot.steps.transfer.DirectoryUpload (class in buildbot.steps.source)
buildbot.steps.transfer.FileDownload (class in buildbot.steps.source)
buildbot.steps.transfer.FileUpload (class in buildbot.steps.source)
buildbot.steps.transfer.JSONPropertiesDownload (class in buildbot.steps.source)
buildbot.steps.transfer.JSONStringDownload (class in buildbot.steps.source)
buildbot.steps.transfer.StringDownload (class in buildbot.steps.source)
buildbotURL (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
buildCacheSize (Buildmaster Config)
builddir (buildbot.config.BuilderConfig attribute)
BuildEPYDoc Build Step
BuilderConfig (class in buildbot.config)
Builders
priority, [1]
builders (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
buildHorizon (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
Buildmaster Config
buildCacheSize
buildHorizon
buildbotURL
builders
caches
changeCacheSize
changeHorizon
change_source
db
db_poll_interval
db_url
debugPassword
eventHorizon
logCompressionLimit
logCompressionMethod
logHorizon
logMaxSize
logMaxTailSize
manhole
mergeRequests
metrics
multiMaster
prioritizeBuilders
properties
revlink
schedulers
slavePortnum
slaves
status
title
titleURL
user_managers
validation
BuildRequests
DB Connector Component
BuildRequestsConnectorComponent (class in buildbot.db.buildrequests)
Builds
DB Connector Component
merging, [1], [2], [3]
priority, [1]
BuildsConnectorComponent (class in buildbot.db.builds)
Buildsets
DB Connector Component
BuildsetsConnectorComponent (class in buildbot.db.buildsets)
buildslave (buildbot.process.buildstep.BuildStep attribute)
buildslave-create-slave command line option
--keepalive
--log-count
--log-size
--maxdelay
--no-logrotate
--umask
--usepty
BuildSlaves
AWS EC2
latent
libvirt
BuildStep (class in buildbot.process.buildstep)
Buildstep Parameter
alwaysRun
doStepIf
flunkOnFailure
flunkOnWarnings
haltOnFailure
hideStepIf
locks
warnOnFailure
warnOnWarnings
BuildStep URLs
BuildStepFailed
Bzr (Slave-Side) Build Step
Bzr Build Step
BzrLaunchpadEmailMaildirSource Change Source
BzrPoller Change Source

C

cached() (in module buildbot.db.base)
caches (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
category (buildbot.config.BuilderConfig attribute)
Change Hooks Change Source
Change Sources
BonsaiPoller
BzrLaunchpadEmailMaildirSource
BzrPoller
CVSMaildirSource
Change Hooks
GerritChangeSource
GitPoller
GoogleCodeAtomPoller
P4Source
PBChangeSource
SVNCommitEmailMaildirSource
SVNPoller
change_source (Buildmaster Config)
change_sources (buildbot.config.MasterConfig attribute)
changeCacheSize (Buildmaster Config)
changeHorizon (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
changeid
Changes
DB Connector Component
ChangesConnectorComponent (class in buildbot.db.changes)
chdict
claimBuildRequests() (buildbot.db.buildrequests.BuildRequestsConnectorComponent method)
classifyChanges() (buildbot.db.schedulers.SchedulersConnectorComponent method)
Command Line Subcommands
create-master
create-slave
debugclient
sendchange
sighup
start (buildbot)
start (buildslave)
statusgui
statuslog
stop (buildbot)
stop (buildslave)
try
user
commandComplete() (buildbot.process.buildstep.LoggingBuildStep method)
Compile Build Step
completeBuildRequests() (buildbot.db.buildrequests.BuildRequestsConnectorComponent method)
completeBuildset() (buildbot.db.buildsets.BuildsetsConnectorComponent method)
ConfigErrors
Configure Build Step
CPAN
create-master Command Line Subcommand
create-slave Command Line Subcommand
createSummary() (buildbot.process.buildstep.LoggingBuildStep method)
CVS (Slave-Side) Build Step
CVS Build Step
CVSMaildirSource Change Source

D

Darcs (Slave-Side) Build Step
db (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
(buildbot.db.base.DBConnectorComponent attribute)
DB Connector Component
BuildRequests
Builds
Buildsets
Changes
Schedulers
SourceStampSets
SourceStamps
State
Users
db_poll_interval (Buildmaster Config)
db_url (Buildmaster Config)
DBConnector (class in buildbot.db.connector)
DBConnectorComponent (class in buildbot.db.base)
DBThreadPool (class in buildbot.db.pool)
debugclient Command Line Subcommand
debugPassword (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
default (buildbot.schedulers.forceshed.BaseParameter attribute)
Dependent Scheduler
describe() (buildbot.process.buildstep.BuildStep method)
DirectoryUpload Build Step
Distutils
do() (buildbot.db.pool.DBThreadPool method)
do_with_engine() (buildbot.db.pool.DBThreadPool method)
doStepIf (buildbot.process.buildstep.BuildStep attribute)

E

email
MailNotifier
env (buildbot.config.BuilderConfig attribute)
environment variable
HOME
INCLUDE
LIB
P4PASSWD
P4PORT
P4USER
PATH, [1], [2], [3], [4], [5], [6], [7], [8]
PYTHONPATH, [1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [11]
TMP
error() (in module buildbot.config)
errors (buildbot.config.ConfigErrors attribute)
evaluateCommand() (buildbot.process.buildstep.LoggingBuildStep method)
eventHorizon (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
EXCEPTION (in module buildbot.status.results)

F

factory (buildbot.config.BuilderConfig attribute)
failed() (buildbot.process.buildstep.BuildStep method)
FAILURE (in module buildbot.status.results)
File Transfer
FileDownload Build Step
FileExists Build Step
FileUpload Build Step
findUserByAttr() (buildbot.db.users.UsersConnectorComponent method)
finishBuilds() (buildbot.db.builds.BuildsConnectorComponent method)
finished() (buildbot.process.buildstep.BuildStep method)
flunkOnFailure (buildbot.process.buildstep.BuildStep attribute)
flunkOnWarnings (buildbot.process.buildstep.BuildStep attribute)
Forced Builds
ForceScheduler Scheduler

G

GerritChangeSource Change Source
GerritStatusPush Status Target
getBuild() (buildbot.db.builds.BuildsConnectorComponent method)
getBuildRequest() (buildbot.db.buildrequests.BuildRequestsConnectorComponent method)
getBuildRequests() (buildbot.db.buildrequests.BuildRequestsConnectorComponent method)
getBuildset() (buildbot.db.buildsets.BuildsetsConnectorComponent method)
getBuildsetProperties() (buildbot.db.buildsets.BuildsetsConnectorComponent method)
getBuildsets() (buildbot.db.buildsets.BuildsetsConnectorComponent method)
getBuildsForRequest() (buildbot.db.builds.BuildsConnectorComponent method)
getChange() (buildbot.db.changes.ChangesConnectorComponent method)
getChangeClassifications() (buildbot.db.schedulers.SchedulersConnectorComponent method)
getChangeUids() (buildbot.db.changes.ChangesConnectorComponent method)
getLatestChangeid() (buildbot.db.changes.ChangesConnectorComponent method)
getLog() (buildbot.process.buildstep.BuildStep method)
getObjectId() (buildbot.db.state.StateConnectorComponent method)
getProperties() (buildbot.interfaces.IProperties method)
getProperty() (buildbot.interfaces.IProperties method)
getRecentChanges() (buildbot.db.changes.ChangesConnectorComponent method)
getSlaveName() (buildbot.process.buildstep.BuildStep method)
getSourceStamp() (buildbot.db.sourcestamps.SourceStampsConnectorComponent method)
getSourceStamps() (buildbot.db.sourcestamps.SourceStampsConnectorComponent method)
getState() (buildbot.db.state.StateConnectorComponent method)
getStepFactory() (buildbot.process.buildstep.BuildStep method)
getText() (buildbot.process.buildstep.LoggingBuildStep method)
getText2() (buildbot.process.buildstep.LoggingBuildStep method)
getUser() (buildbot.db.users.UsersConnectorComponent method)
getUserByUsername() (buildbot.db.users.UsersConnectorComponent method)
getUsers() (buildbot.db.users.UsersConnectorComponent method)
Git (Slave-Side) Build Step
Git Build Step
GitPoller Change Source
GNUAutoconf
GoogleCodeAtomPoller Change Source

H

haltOnFailure (buildbot.process.buildstep.BuildStep attribute)
hasProperty() (buildbot.interfaces.IProperties method)
hideStepIf (buildbot.process.buildstep.BuildStep attribute)
HLint Build Step
HOME
HttpStatusPush Status Target

I

identifierToUid() (buildbot.db.users.UsersConnectorComponent method)
INCLUDE
interrupt() (buildbot.process.buildstep.BuildStep method)
(buildbot.process.buildstep.RemoteCommand method)
IRC
IRC Status Target
is_current() (buildbot.db.model.Model method)

J

JSONPropertiesDownload Build Step
JSONStringDownload Build Step

L

label (buildbot.schedulers.forceshed.BaseParameter attribute)
LIB
libvirt
links
loadConfig() (buildbot.config.MasterConfig class method)
locks (buildbot.config.BuilderConfig attribute)
(buildbot.process.buildstep.BuildStep attribute)
logCompressionLimit (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
logCompressionMethod (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
logfiles (buildbot.process.buildstep.LoggingBuildStep attribute)
LoggingBuildStep (class in buildbot.process.buildstep)
logHorizon (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
logMaxSize (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
logMaxTailSize (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
logs (buildbot.process.buildstep.RemoteCommand attribute)

M

MailNotifier Status Target
MakeDirectory Build Step
Manhole
manhole (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
MasterConfig (class in buildbot.config)
MasterShellCommand Build Step
MaxQ Build Step
Mercurial (Slave-Side) Build Step
Mercurial Build Step
mergeRequests (buildbot.config.BuilderConfig attribute)
(Buildmaster Config)
(buildbot.config.MasterConfig attribute)
metadata (buildbot.db.model.Model attribute)
metrics (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
Model (class in buildbot.db.model)
Monotone (Slave-Side) Build Step
MTR Build Step
multiMaster (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
multiple (buildbot.schedulers.forceshed.BaseParameter attribute)
MySQL
limitations, [1], [2], [3], [4]

N

name (buildbot.config.BuilderConfig attribute)
(buildbot.process.buildstep.BuildStep attribute)
(buildbot.schedulers.forceshed.BaseParameter attribute)
nextSlave (buildbot.config.BuilderConfig attribute)
Nightly Scheduler
NotClaimedError

O

objdict
objectid, [1]

P

P4 (Slave-Side) Build Step
P4PASSWD
P4PORT
P4Source Change Source
P4USER
parse_from_arg() (buildbot.schedulers.forceshed.BaseParameter method)
parse_from_args() (buildbot.schedulers.forceshed.BaseParameter method)
PATH, [1], [2], [3], [4], [5], [6], [7], [8]
PBChangeSource Change Source
PBListener Status Target
Periodic Scheduler
PerlModuleTest Build Step
Postgres
prioritizeBuilders (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
priority (buildbot.config.ReconfigurableServiceMixin attribute)
progress (buildbot.process.buildstep.BuildStep attribute)
progressMetrics (buildbot.process.buildstep.BuildStep attribute)
Properties, [1]
Common Properties
Gerrit integration, [1]
JSONPropertiesDownload
Property
branch
builder
buildername
buildnumber
from GerritChangeSource
from buildslave
from forced build
from scheduler
from steps
global
got_revision
project
repository
revision
scheduler
slavename
tree-size-KiB
triggering schedulers
warnings-count
workdir
properties (buildbot.config.BuilderConfig attribute)
(Buildmaster Config)
(buildbot.config.MasterConfig attribute)
PyFlakes Build Step
PyLint Build Step
Python Enhancement Proposals
PEP 328
PYTHONPATH, [1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [11]

Q

QuickBuildFactory

R

rc (buildbot.process.buildstep.RemoteCommand attribute)
reclaimBuildRequests() (buildbot.db.buildrequests.BuildRequestsConnectorComponent method)
reconfigService() (buildbot.config.ReconfigurableServiceMixin method)
ReconfigurableServiceMixin (class in buildbot.config)
regex (buildbot.schedulers.forceshed.BaseParameter attribute)
remote_complete() (buildbot.process.buildstep.RemoteCommand method)
remote_update() (buildbot.process.buildstep.RemoteCommand method)
RemoteCommand (class in buildbot.process.buildstep)
remoteComplete() (buildbot.process.buildstep.RemoteCommand method)
RemoteShellCommand (class in buildbot.process.buildstep)
remoteUpdate() (buildbot.process.buildstep.RemoteCommand method)
RemoveDirectory Build Step
RemovePYCs Build Step
removeUser() (buildbot.db.users.UsersConnectorComponent method)
Repo (Slave-Side) Build Step
required (buildbot.schedulers.forceshed.BaseParameter attribute)
Results (in module buildbot.status.results)
RETRY (in module buildbot.status.results)
revlink (Buildmaster Config)
run() (buildbot.process.buildstep.RemoteCommand method)
runCommand() (buildbot.process.buildstep.BuildStep method)

S

Scheduler Scheduler
Schedulers
AnyBranchScheduler
DB Connector Component
Dependent
ForceScheduler
Nightly
Periodic
Scheduler
SingleBranchScheduler
Triggerable
Try_Jobdir
Try_Userpass
schedulers (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
SchedulersConnectorComponent (class in buildbot.db.schedulers)
sendchange Command Line Subcommand
setBuild() (buildbot.process.buildstep.BuildStep method)
setBuildSlave() (buildbot.process.buildstep.BuildStep method)
setDefaultWorkdir() (buildbot.process.buildstep.BuildStep method)
setProgress() (buildbot.process.buildstep.BuildStep method)
SetPropertiesFromEnv Build Step
SetProperty Build Step
setProperty() (buildbot.interfaces.IProperties method)
setState() (buildbot.db.state.StateConnectorComponent method)
setStepStatus() (buildbot.process.buildstep.BuildStep method)
setupProgress() (buildbot.process.buildstep.BuildStep method)
ShellCommand Build Step
sighup Command Line Subcommand
single
Properties; WithProperties
SingleBranchScheduler Scheduler
SKIPPED (in module buildbot.status.results)
slavebuilddir (buildbot.config.BuilderConfig attribute)
slavenames (buildbot.config.BuilderConfig attribute)
slavePortnum (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
slaves (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
slaveVersion() (buildbot.process.buildstep.BuildStep method)
slaveVersionIsOlderThan() (buildbot.process.buildstep.BuildStep method)
SourceStamps
DB Connector Component
SourceStampsConnectorComponent (class in buildbot.db.sourcestamps)
SourceStampSets
DB Connector Component
SourceStampSetsConnectorComponent (class in buildbot.db.sourcestampsets)
Sphinx Build Step
SQLite
limitations, [1]
ssdict
ssid
start (buildbot) Command Line Subcommand
(buildslave)
start() (buildbot.process.buildstep.BuildStep method)
startCommand() (buildbot.process.buildstep.LoggingBuildStep method)
startStep() (buildbot.process.buildstep.BuildStep method)
State
DB Connector Component
StateConnectorComponent (class in buildbot.db.state)
status (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
Status Targets
GerritStatusPush
HttpStatusPush
IRC
MailNotifier
PBListener
StatusPush
WebStatus
statusgui Command Line Subcommand
statuslog Command Line Subcommand
StatusPush Status Target
stdout (buildbot.process.buildstep.RemoteCommand attribute)
step_status (buildbot.process.buildstep.BuildStep attribute)
stop (buildbot) Command Line Subcommand
(buildslave)
stopped (buildbot.process.buildstep.BuildStep attribute)
StringDownload Build Step
SubunitShellCommand Build Step
SUCCESS (in module buildbot.status.results)
SVN (Slave-Side) Build Step
SVN Build Step
SVNCommitEmailMaildirSource Change Source
SVNPoller Change Source

T

Test Build Step
title (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
titleURL (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
TMP
TreeSize Build Step
Trial
Trial Build Step
Trigger Build Step
Triggerable Scheduler
Triggers
try Command Line Subcommand
Try_Jobdir Scheduler
Try_Userpass Scheduler
type (buildbot.schedulers.forceshed.BaseParameter attribute)

U

unclaimBuildRequests() (buildbot.db.buildrequests.BuildRequestsConnectorComponent method)
unclaimExpiredRequests() (buildbot.db.buildrequests.BuildRequestsConnectorComponent method)
unsupported format character
update_from_post() (buildbot.schedulers.forceshed.BaseParameter method)
updateUser() (buildbot.db.users.UsersConnectorComponent method)
upgrade() (buildbot.db.model.Model method)
useLog() (buildbot.process.buildstep.RemoteCommand method)
useLogDelayed() (buildbot.process.buildstep.RemoteCommand method)
useProgress (buildbot.process.buildstep.BuildStep attribute)
user Command Line Subcommand
user_managers (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
Users
DB Connector Component
UsersConnectorComponent (class in buildbot.db.users)

V

validation (buildbot.config.MasterConfig attribute)
(Buildmaster Config)
VC2003 Build Step
VC2005 Build Step
VC2008 Build Step
VC6 Build Step
VC7 Build Step
VC8 Build Step
VCExpress9 Build Step
Visual C++
Visual Studio

W

WARNINGS (in module buildbot.status.results)
warnOnFailure (buildbot.process.buildstep.BuildStep attribute)
warnOnWarnings (buildbot.process.buildstep.BuildStep attribute)
WebStatus Status Target
worst_status() (in module buildbot.status.results)



PKMk@W{Obuildbot-v0.8.6/.buildinfo# Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. config: cf38abc00539af6bd2a7698dd7697c0c tags: fbb0d17656682115ca4d033fb2f83ba1 PKk@ؒ  ,buildbot-v0.8.6/_images/runtests-success.pngPNG  IHDR7 ĀgAMA asRGB cHRMz&u0`:pQ< pHYs   vpAg7?jIDATx^wxcy yf<̙9g>8ȖeAq>-R:U*V1*s9G $HDfqϻ6Hvud?ikv Q_??US)3U)Ui3us~wj:ܦ>9(yf_#G3oz_B#׎[g;R=VHOEyau.| >;BjsZvrzWr;^뢣Qਚ1Wi[{xt am E1r?uȮ=) l_ҀN᳛twB\n?mO_S]$|*pq1>+i_b" $N_~|Hw9c4jqiy>2N.C-p_ڋkTbk8^1E+>-4Õqu'#ǮZ%8Vji$QT4SEy[-m-OU2")٢ύˑ1> m*2VJǵW-1jW_¿+n7 5&~zҰyqYð,bTsZ; =pX;hpx n1WsP k6jthvl}ٻ/̒?^yg[q9;k*Kf'w`B_9ӯO'^Yш6_]< lv1%ܮ%~7mbӼZ+6E&[SicZfzf1cir5AR4QN' (szV{ \WnWϚ7;7F[;{ u$S3IUՆ݌UѨnjn%| yڧJ\TNC0PVNWYC򧽪g3G^:s9c\rJ:ޣ]loVw8iir6sIׂaq\Ъbhe]ی[39i9S8#]^tz9g# OCeՌ't>|mw w6]7scXZ8{9}V3rFf yĦ%|bapT]aدٔaMlGpۿy5{z֌T2i\OxwJk@+%WL_2@1Ҵ1A_;NAyj-W%k]nFfRm4a)WX]P9?̙U;c|Mj/rTC\5XVQTxVlcnyɄ>wH#a0h?Yڰu.֍'L+ z#\?Ji^Yp&ͲA9gYNjov16ڗ3:ך&@ѵup롤\EQrf%J+Nq|sNi,O )EROuehjygzb]\)wN\ʂ|>Z?&q ⪑֙> #.-ˇ}W5S'e)GԩҜιu9=˅T{>ޥe&h۪9.9 m|'7.nXěV̀p/z8" 4 K%]v$sjr6MT̘3{_ yL!_y_w*u?VV%DZAXiݧӚQyQ띧S;v8qz@ml(oN4쳗 潳yݕ-ۆnO0V!)5!1<^yz`;U4wl:qid_/LԧN0o+ z%QZMPa*1&CQ: EYi?/{q_[MA $7ؿwW,nsNqx]4wKw3g@ D;\cӰ1=r5N\K5L N9*PUR}Rf"uԋYR[DOzU=NirHAFe:10g?Ml_/`|Ext%۽{xqXYTs~nI ٥ݭ\,?0Sܒv\-0k&gf7p݌MK~pIieir;ű-!Ny";O3W4?kZ-VVSږoLNfmIs;!ٓZoLNM!ܱ!VO;'OZELm_y#:_KRXs &xWHdl"[f֝J A Һm_4o=D8~0gzx@IfNA@&Mob-A_5<˙)3bh^mKFRz^7SʺW+ W)i]|\+(JX:s!&˙Ǯ&Oe]em48ˆf {3d qw [C\/nNT)cv"Z7,G bAzӻ7Lm*aϺIU9v)/uX6U<ջu)D"k-w # A; 坌V 2Dhph:g7_@f+SޫNo_ ~5pzһӺ7~c;+A>e5-5ȞKoT4NEU &V%7[K$,eՋ$<-Җ,/~Ife-%5 ֓[$m#*"KiA<ٌi#tp⌭_kY+\.\]Dǵx!ZAیv>*~sG/_A 1#ѶD?">"}N ()"nXmr0]+ HK="f`[ksU#+}8ţ:qvq5+1@alV=*,!(Y;%)$> -lԌ6ɑą1uIf .m~R:N;7 IIiyX#|XUɏiZIhšNdoB&#t;;<K>:.%wǶb4IN67F} % 0Gĝā61 }/9ܮW+I!׺%94Ɗ\˟EU/ޫ"dO`zieBqBHD.ܭZAQ»UهٓHl[#8$~}Bz|"WڣN%?ؿt/s̩GfoG%t 6Qb[S{{˾p臓4]'/jȩFDDBqQ/zPp8tdP'?R bl.O/GN#?k9n/r qp`ί>uyg'reF(< vHcgrD64rVɓO{/DDn)]􀿢eDy*Ϗ/?@'EvB0xaXl"b؆(F4h}Ҡq1xt #/Ij/%%\bŜE\b0RI]ܐɮV̡ Υ߶8rލ|bEkE]s[^\=,q"]yG <\Ф'w,r"w{SS7 ?{Ϲfr˿Q".dT~RSr><3EG˽O58gS]"5hANC4h<|"G><˄g@7ݫݫEʨj1$딐?iP#ވݭ#EAhv}orrpr?$?:M;N%Л3͹c= ˧;+ fP&]ٌ9Nŝ1qcO>:8G0z3zr?zbc{FwaI9b ΰް%bw/֠֠ݤVF:1ʫsTo1o5 j qc{GZFjnbX ^%N @7NA#߻ڿq.9Vn ;7n ${oؿ5(<3tps᭡C7o:ѣ;#G7FoD[c'5Jc(ކ?1vz'Gag;?;;=~zθ6&ݛ<g&&wQ)ǽ)iǃIgєC̜EO;8`fѳdzΘYףYW̌+zÀ~p?C sX jbf=sC'!aLOxİ<ez"Jn#zyatrܩlO ۓv'q.JfY3H`8H g,vѣi;813'gOϜ<>:z48zéK{0y5q|㇓''ݛ:Eè* '$>(!SQ)$B*]PJ8&1&TAJR41q"؅XrJ#Җ(F`oj$2CBÖ'Rb.%hTB=Ri0G%].JL #ES=4k:6'3) )S/n†I˛qe.Rw% &*Y?jt+#˜,W(aO] ZJĽ c)ߟ# #x,U4B~j]!cW6d`w0Pӕ! "CHM7*KTʂ?Ÿ pUV , K}/}/ʹ<|pTߟ@wߋIT&B <*}0yf:g5; a9 7E<z 2Ec ~˚1Qfyy'a<[)ҟջ3:n:w^_7UJ|ta{J\}<&K0ު%M~ҙ9p,GI@Ԁ&5]MuQ?MZfxژ?߾ (|-[Yד_wdTA]]x!w§ZݤzRkT/_>eZ  [sft ^Q풟T۟+>+V53gFfϛ?0QIG֌ޔK4iMD?{7G+8>￐Rښ]{EWsXuzN]I"4OLFڠ#}Hh&YB!Y h$ C|*]*W}n׼,  } n"!54!@!.#Up!$Aw@ё`d8 "Z'aؕHM,feW,ȣe* p!gwSrɨ7{;Y]K/\yP4|=kމ+Lh(%G\yAreʀ/_)~ǿȨ޺2^' QX]=杤w~aw_5oG)7˛JD";{Jr_|r|'읻I5sbG}~{oD=_~q'wx3d _ݏb2+=ïވK}f>8Wżv+lNqn7aV_]A&w^^w`Wy!}aic_P4z#╏˧V 8ILgi!1+a|G5>Nw*&;)u/w~/g-iuc 6RO!"˘ތ)ݔv7^|7*;?Va'?jNWfLH@9ٓh-?$Y4CY4 $"FsAR Q,GH-?#Z)f$3~H"8=H bnH'@ \,d6}$4O$M(#%hLd$&:QC` @SLJ8]P KC˴ʥ @GM؋l9]E[ 'K)!gLPwNljwRe+i5+ʧ7q؟,k~v6tf\areߕ啛 >QzN_rvfG]o&_ULRnT_~x/aqSBP7ki}06aaQgrgzzrk~(O_/q'wOV>O}㜌I] 8!I.0#^t|/=温[?{;YNbryY2[:h*y?Q'n 08GOo>{ݛ1%]@ Mܫ Sgԏ>Mid+!`;Ej1 >Ӈ3g,6=9#s^$|s?"HrǠR4r=׬#\pbak%&ܱPx7՜3VdK&7I@?&TӛB znBHbY$NB(q!pKA.%$ bW:'Rh"$vz-J""! i& ol"vKFTnEɑ%Ѡ7Ͳu-wUZޞj֯NЭuæ\\7jY34sl|AѩPzkVB 21IVbi 7$ȋ vnꑅStEO&B2*hC $*zW2Cg:4z`$ћaRQh|r~<Q*Fʭi.ݢo?j" Mth%yp{ӧƅҞtP>S( (]wB\?v5ךv?t$: 9{BixHa*sz<눙u@+=q[1&2 rϺ07mhyLl;3Dt፟ёb:&D/Hs, D `xpID4A[9x. z aZ%6@27 $.xx.vC7@:!($]B BHAڈ䌐FiIHȤ[$FԖ.BMz(.P4-ggt-yUh,:Ѡnmn./oW zˠVo7;m#?{Ne;ݛA@ !I@BYHE1@av0 |\"RCCB"#"y0O+ <ʽtphDo*Op!`F5b5*-\.ZWKrmtHaz,f\M.{XV=Jjk ϐaDp=!W*i]=ղ|3*jb خe`c{+g͕'K.EP$īVPQ˙}"ÜayTw~h.UԾV/>㬮ajR%?ye`yI|)H/y=ܖUcfEzVFa"D^ͳ/|2W\*iZ ߮Z$>J*i+qDw/ ˪;E==_JC uّuR=d"*zv]b &CfTz\yOJ|nj\y_jNXѼԦH~,zx )4M˜+%)iڷ $-o FѤ 3;odw/ȃg#Og(cfPI4fPRZ!1,z4PE A J)+Jwλ@yDv sDU Dx&T" D|O\LD1%q<ɗ@"aVESRJLJ#JǁD0d҅tA%B)B%:"9 a( !NCEOScHa "۝R߽g?ŕS5jM.[-LU [զA &l9޷:):\6cwOnTl gP8 "qL14.8%Z%њw&:L#!*!)pPN)Bc!).bhZQ ҷ@AX* 1Te:(2, ,c$$dz`b䚏K{iՓ/򗀯 \qQEѧr n?L,-j"{AIլT4P{d&]T iHc[v%~nM[T&ϕ##ݢF__{ש|G70+G(]pJd@$p%^víԒiְ**­Tؗ+K>HʬPY3A.m&P%:!a!^IlQ%K>|j>FC*zVEKSX|E.+t,6 P)x%X_u BϤy y+(Dv˷RWit`Xڑb~K(vB(|qs4bNN󭌶+E` J(A"ȟ*ꡥ )&!j 1@m_'5,Įut*[>]lP%>6&҆.TUNfVP\ӳbuXXTjB "˔8.*}. EPgTբ 3 l$ɚI6|_b-#6mB[I{pYlr*XHdn &CC@ J 57%4HL LLz%qREXv B%O1Gr! jr hHD2P'>S²$d>r:ءH,,nO|;7{w  *ǻFv˨lMz~{l{NvNo6M=5mϞi3Rv`SBaB6(P`y!I$&S.|@ F@Zʔ{RF%DDZn5u ~J6ϭ5T&1X.UtM|3\.%UI(,Xx\4FHA?ޟJ9aS/?myVXM,_c ,"5'vyhxJ蛷|.$1a4lz(Ho"c?>wD =bX[ KRx3Bg%0OOfAXǓ sX ADhE+~,~JրkH?!`%: nAxM "g"@ H`ڋ;u$-D+5xJO2˝,=\bIO2DM6!C(ʁ'\|*| dx(HaJ ~ )J'5V"<\R4?DP"EY0H'1DV6I!!D~(H "e̖9! T;Q2UGVa=ˑBj굜/W_ⷮ}~W;yMs z]VYv6ˎnCmhwwtVj440kߤ=5v5ʣFmܔ6; IYU"p!!@A E5a't:;Q=4P"PEJ 64@ !*WQҽh@AJRIUm*UTQ~EvRMmP XĀ8i^l11Ej蒼 wia+/k"{/|(g3LϏ8OsOXL>wF;y׏؃I%kXԘ-jq 1KԈް6+"9bIC" N" b>18:L#h87l"V>Û@y%QIt=QI,Z%6SI= 17 ]!H_3a8Y^ $OדIA4fN2r8nҺ.6G}Jv/h(# a#B j$cP^ JQ,wijJ"rI4h7!"$JؠJW"Q0ނkFI\gM7w דvr4ϓȫ>((EI攡:y ?Yki *N8HKJyQX$ 7p d1)@@$w&dH\d^lPp! sgP0)1ɀMd@ AzHb)V範 V(X26y4f!y?GO|GQ_z|_/}>gh{cCRk :͚|eG= Vñ>y;]݆A!Vk2̴.JEza St܀;" 'H&"5TiD R`f HP 0M*\^ZBTRpC 6( &TVmSfU[tS}VKr1n0 8a9g$B=KE9:,ҞE7E{e|$sxOg,`J4}KBykwpNSB4&2L!5J^_w0 7rit I&2h N84$~s"u)~ %6iC~eߛbS||oU/B_d*(3A(g. aOE,#xwݏLJDAS'I`86AGMD(IKTjґDI` /҄B(*Yq0,D"tB0/b"%Lރ>+;PI؋` O;-R^LMt2TNfʊQ1-TM]䅻㻿O~Wè?AjCRY{ekۢ2od5Efө ˆ5F}@yfL%.[*Vh$s$ @VOD0"v@0PҸM5mS*44qLlԓaIkиB/ 0FiP _źApa/ /7)C8hVދ8OmCH<y{MōgГsT,GVΨNt9}`Jl\l/o]ٟߡ9QN{wa5  h<Vd dCjRw5:T8Fi (r yCpNLTR?`oYgVP="{_GeGԂ=` 3mlaTb@> ܧ{Ԝ?i|(?1o6bנ񅡁7CvD Am>C;i͹Mi|Jo` as W?ږsqψq)Si>Vܳt#+K_p~g,) .$G 5J4LVFHL4p <4Dh06 }'B*e<.V'"bY0|/.s9bxqDsPR([>"H"InZ1$6| GR )Ʀ,9x=\LtPO/"!M"X !&jhPJ :x+EKeSՃUj 1myE2rG/ґ {ðP G{}y߄}ƗnnOVd%ںcnm[jچdɸ0l(LUΆ¢Zk֏mX/x*A<2j&>R "\Ȝp& 48U զTvUnR` YC2u+4w*u%va168`iG javUAPO;#=i7F`KBU&\E-Z/Pk<_,vJ߿B,gJ`L~jrtdRVVUIMiͪJxSÝO/f%j#!ǿfVĺ.>7 nƤ=)o ~F0uZXnbѵQKE7]sj᧯2:?dϒ|4{;AVL=.l)niꆱR3x3_jJ+Q6+ [_ajR9vi۾1EKKl7NhLW6sIeď8rdK {Ć7ݓZa^8E), ;epaXnD q3x;'X8{w=O&"{Ie溲<#I DA( 3POB 1)6 Vey3i0zOyBh%S1!T΢/.q  PR0_*QK!)_,$$Oº0J' <J$H <*Y ZQeDF݄H Ј&,pj/_#3k֑DQ8BbÓ7ͮNjIlm韪\ Z W(¤Lf3ܨ^Jho?ceWoo\?~_xsp;߻÷S1"Um%&u~M^^)uK 2(&MeU+K[Yʍ]oo% Ѐ)H-+Ijئk\~Wb˷q9MCckD%$dwN=L,o~[#/9z9/i~zuW/kF<)[QL Pw>zY1Q9p7!k"*.uZr1g뤸ckJ;?{alImIɫx ٷcRF-ԶB3k@1gȮ6j3\bXa{RHyg97tLeBmpZRg =ŋ`lQ PѢ@[ ONPʾnN~vCIf}YIϘWFyiueMuCyNBfvU{ulNCi'6|z3&$Ɗûsz%(*$::-Wb Yq".T&ߘS6>WUzb&KQyF,(,]Bv<e~e#?R?0, .,#[@w&IbLYBwaIʒp -xeғTxd{"ɂ]huB%X0R ~8d :< |lʓrev ( V@ (XJ$i"Q*rޯOHP() p] ʈDUYǿC_4u pf#\ mbm-rϭ'c{M'fKCnv{7iimo1gHV5֬j[{yUA 4?WɏooB^_O~xO'D&O;߼էbO(ԫ&՚UlvcW I!n*ĬVtvΤR,n}M"_|aUQ'P> DŵC T3PιCP;TDND2"{(w;5b}~Fۏ ST7q_6c"Ԁ1ܭRӲ/̭C[5}1":[y"o]"v"'Mn.9$ޢEW"T:zSkGE-U]e}yUxIHyTzشGO&޹QR_6^V_Y5eԓIÜiEKf&mb2h@Ə]sTPRE0G-Xnմu$T(p #.8 m >m.@S p BO ~;o]@(`bl =>n*S8K@4 BIBP&hX( %RDybdWP(d"覕@ yǓ _BK䒀r&N**\B^L$0 M:#`h0%SB%0 V:y-P!ZR+~} l_yWOACDڐh ӐPIa0B(rD`4b 3£0Se LSƣj Œ]jnb!c (VӖRj"D ^84w'f d'@-FJi`qnS%TI=KjJ⮖x*ĮVEbjv~73=R:CN<(Z=;iXⰸCSm rLz^3EAĤx/mC3 W@3$6aa@Ld*GNC1LD zЁPEwĊf5! X^"X)t^Zy !"V(a"pz-erH(<HB7R+byd9d^.nZ yl5P|j/C1!Z%oRL!hVRD=A(A%Mj3԰A:!SBCQ5¼;^\o+fUpdۡ|uhe"W2)ʼc6LpbfqSmv:Nmd Fe9ٍUՎvK]ojmo?~kGP~7~?ſݿͿz߼toz/|~pnBY_P߰rEjR+7V ʍ3Ԇ LlV:MFB (jW 2ٚP[CK$Y)?NNU!v1QFbpF@sؤ)" AҴS6a@Њa sOvb,;ŶQl0FKM<;^6@f GFSc"qsx V2  3MEH}R.<2OmՉSkO'szYz 3MJG 8W&Tm/1=`Qgt&W'jtѦ<p[vV3UVrh C$UaKKzȉUdi\9bu #KhYF82@VmFUfmVC"E.Rt]HD&bW11gx 6//}jS_-YAFK oԋ_$`HrJVe>hII iHusBOĈ¯lZ :Lƻغ{zT- W5yowwgǤlbsX"N==-ɾE.ʖ囪i\3L7o?὿y)?/FK03; wQҝ~旾[w2k:GTIԲeP\HeRmuZr--.$2pbw}IV-ՖlT:=sΚ&Ը3f! Ԙ4n;)5 $r,$v*b vk8‚]ja8XT'8ߥ8vZFv!~Ơ) 5@0n+VhO}rO_vwaOaP,bJ(H&`.J iϔ>,v>'44ϵyfȩ~fKWJ<\.&.?A$pğhk[^%S9V#W-$Ϊ%;b%.hJ1|Y<OFܕ28 \ꭐydJAOٲ|Wo_⫐*pV@@WXR\DqU0`H**I{k~T*jւ5"PWjփʺPF![U$d#!r 5u~'6Jt׀u}A17?$6XLöE/чB*HPmMz˴O4Ѩ3ו[K䉥K12NEl`tyE?K18g/y=y1-p1ɦqg+ wt~\ȳCc9O 9FH-]bw֌6U"|Y]A!#mX!4:,47Oj?]FhBG60 LhcX `sTO, e%i6Q6 MS }`2&w¤Ctg HK#i#͘`asFj6ifI%7Ss1y#5o 3hC4˂ouG۞mLlvMѦ}owbWw P/f f1mmjz{G TjwfjܱM}^Р3{_`W=uM=݃y 袏SoN\y3j\[ ^w5b<|Y{QqbƔ|T ]+*^*zRT׌*Y9:@\]Wo(j٠;[m#<ӣO(8H MǔZ;G*#18!:6OSJsނsBGvV'][OIu `:F8N)&=ip&G^AõGֺtV`^08Zbϊp$ .HtYI#.G \CP爡G ]C۳~GBH*/hg|nFsb`ܦ^Ɉ=#Y"2m{|0Pl #Pu"s4ƴZfK#"5OO]0k A]4 ^I "`as:i°Д1<M (ghflaY0 a1lG4A":}kS:#)ie?U̮˩/ihH5gVlL*D1[^^nm77 +k?[-gLJgr!Z4DZ7882=5=[YU\י]x=zJĪjdD4?nzt76*bdKJiJoK(lm^qR9=-s33={?ټęg^%͆&~PE@33']H=]yn3#c}] -umMS >v}|}d0)FbS=6O2-;*b)ÎьVk3ج.9=1>7=962<96:1<89401?;4RJ ZkhnCM}#vַ44<ۛۚ[ڛZQ{Ѧwldph 6<7280?9:4><8?<80@W 'FGap&GGpScӰq$g~D AΐňmNL?^97`PqRC =rW_5yݳnֶGlKM> mUk`SXݫ;%;*< :L;9LS;v{EKp_0xzwtf5܎ )C  i|.;:̲fZn"3>szH1֭卹-϶ 9'iXNgڰAމ'\dՍ zĤ+ L.+4ie혵, lEڠ`ih126V\t=_VFȎعo!G3z8ؼ#m>ٵ7.ZZ;6'1EN! VzJ\4l~y]g̶HK4#f"1lU Նr[drE!N[LWlS,X](:^^gMM3XhUjn?<)!$PC ꌫ<l/i$3Lu6%r2-y6)O hwތeVhIAƠNA.vg$6nӖxX՞Os|>jP(sM:[ў('<1{x:> <'ZWXB)[]3rYGyTSgmا$AeVU3V;STNweV_u D~Xvx_`^O|mefռv|SP-RG/`U-6}5A*IDp4"thf$f1>|o t)Čt_$q-G;s?G%98z'La!Cv(̺d0JZk:Rs@SO |d;:<;S/Dv<l`' #ӥvy!Gqg8 ̉9vM.,.p.rh-c䈏;"׎[C%} 8]^=(}m}r>sO]'.;=nǭ:>ۋt{Ϝ@ Qcѩ ܧg3:;s:.X0CX']S v~QiDa) A ɖVqW5ƶS`  #;_0Ќ켗)4u6sh^ 1E|ժ>2|4 %mS7'ق~X&cr5u/mL~ 4<AK57~ r4fphp`X{:vO]\AlSj g9Z)x] B^?C >ARڇy~MPg+!Ӆ y10 0&Cih>< p<8սm}Gǧ~VDo[MhK@K|6r~/-fnkx|jQ65.WVxl$sxŧhDo`AqrmvyLV:=<5 d=d3s,pQ,^[Z}-`FfsQOVN{qQci3b {QGn ZįPPX_Ǧb,)fR40+k&M7/du<^9mHv F\7Rt4 Q..Ik,I'&Q\=~%~3Y6`rRbvHzbn[.z&d4q V{$O:Dal RYOSBY_,[RԲ)Y,V JCKc [P*5ӲB)˱ϖ MO2_Tt{܎y.gJfnbKBǹf-t;gm EkvEqPZ‹[XuFwhweded7{ǧK*kW7 "ImS+ r 5`ZfnQyurFyd"#;?~e]L(YzD/x;"Hry  &bhtp$A8CG; 96Wijiz?$O*yT=ǧ'Ț,{NQv/,,?%Wv<&dw'e  \, HEHGϨlYe 'v++vXw ]bLim^s7;U?}w|!;I`{^g{qҌOZNL6oZ@+.,D\,6mlE`A y|zAWءuiErp@E9۪EwslOvMw; 3J mv$z' !>'ו*H937"_-IEItyۘ@okOkٵԦS z<(-.))MHI/jKi A' _/f42LRj&7 v7E2Zس[p,ĪU$mo;&9W;1_^Ʀ"}&nIDATbR=kYDJ{b\=XRКSWWYYUUٷGi-Ǧ+J*S TUc6wt8BkZ@&O`2_0W\ CCچnB tp̳[:rЬoxg S",d|RJjFbin@TYӀm 6*I6T_?#KH{72 563ӓo ;734WZhknŮeEWĒe 52spOB8aG(I6g)r=F%p=E [ɩ>y=\[. =wd-M XVyE.#xt`Lh]><8Yz{GTnRN߭[4uh?}ʇW>˯{˾j0OR9/;v ɩ%Bxp`Ho̕ MUĉP%`YK1F?!\18 ^NⲔ +fyg)L;fnionYlDA =?|C={f= S_lN-iKVjΪB\:=5?hjji_WiE21 ǧcSM#c|Ҏ\DUH$[&Jqi7`W5Fe;8OIҞfUDV8&1J1Z8’2Ӌz_ XXSs5Y'gΑF|Z:8<|樄<S3]}m]{^,a@66r JDҕ.\׃qcvx,^yU-Oc$]6o^).Roȑ!'&%" +RF EUH(h=Ep ,C! A"]}*B!8 ԱҙOIe6Y9bX"F܊W_}|H9[[2 Plv2(UPX\{wr|zMr-N:>:kγS},>QOg^g?-)-e=ZWj&fLvdS<`ͳ\3YXB)9Es3 Ѧ5Xv~񎅤 !Gn ₌"xcI.x񵺡aAoinQgNynV..*|^̮lTv,Ju~eT<̬z?S-V ?t;,*{1svv4Øo4h,ݙ%طKT2)}aw~bVEgT|v5alV )P*~?JjIk(+,۱m?YCRk`_ƫ@zGĴzk`>^ɱxkO% ſ%G,Ƙ<ݼ!ol&Oz0kH Ieq'gg6V%ݓXqp+o1mX1w*ʄDNd$]kQacNk:[GkGzٛ[ZPt~dbpPn%fnml'Uv}La/b)bFH9,dVFVnyuL64O>Mh ž_ZYp 0X39E%ohAR D~նKxֱyO~(]YڍbV;OM_X Bie5.޾"\#Ŷnim/88nkdkj8c72KPcك{@Q2=;`Y<m0jD0-m EkJ@d9|&kA$ßh>msGPYNNd,R{B;혬cr^ox񭺟Xxrtgkv؍R{GV|(5+Oɯ+gYԢƩʑ;C ؼ {9Vzq]c@koý;}U|PƊJQe2ۯ=iX:^̨g/g>,cMHŽvR53_;(+wRksu9435$;&x!WmʻثX7lJ,>/f05qH/$/Z!"1yKGa)9 <ђv{[57,G, Hp]iRo v)) ,P LZqiNW~QiHc^oX߄B,9 'N/ĎmоYXd;LN4Gg.NG)Llm{zF\ Ņ9,yHW ˋMh( VŮrL*_ }0=~)^VŶ j!dD,T&Tq D4yp2PX0ZDA2.h ϋ@ $p;C*1.MT]*)df郰0+o fLgYq<t:JJ,#Z¿>=n1kC,2'x.,!zrrmcKg){XZ=-j@;̶]ƿ;c'u/poSgGnَ2z.un&8{& cGV Chك!7֣|Dd%}ն~p 3T7D=bV4td A[4x=,t_xW`{dǿF'Y'_칑R1'fdJՋuJhe5)ÌY}kFʇ}:;;8 JIk |3BU™[#œwFx\qpIkjd47{Dž-ܦټܶ>ve7K\Lj e;Z6R BpkZl b-=[󒶮fB{ 1u~ز-U}ʍŪta]T'g= ŏS^ @d49|HE7I@,_^#IA=:ɲ`Lɇ<#)j[`1sJamHc"Q0{Hiv.[F`" e|0@$a/*1#î&|9z8 @!(@>H` YPGw cb>+\Q'GrzF crph若X[`C-.cu; `r[!EwGz+$ Ȋ" pB7H !z2 # p@^p HS^,G@[:M= M\JgNj:M9lnamtjJX][z'sZw?iŢs,M8qcE&{:ِ>\腌J,_0ۏvdG cb׼{!?{za>)$߈34 !Y$Eo,eivДW =0{FfyGb1f1er::юQ擮{Y=+;GrJ* Pԙ ^I{)]vZfǙWdե6$4'T`#9dZf;-o&5[nBu6_h0iiM lC Y.\&38[8R5lZ\:nl^WA9/qqu+{W!".ўneoڗv\H!btВ22_RZ^Q>PT\Tۜ_8W|r꥝9 [\ӀՂP$KDeVLcleM,]A'XD e;@z~qv!YVR4+#zf3>icl'132,$վgyl6r}6wQb .DӅX3MVŊi0$黋fG;`>ÏfZm6=^1c,#7l;&V٪۱B 10K`-!DőL]h-`1c5RDv56(IM33^?MQ}Pp7Պ &3B!:99us]Avo7687+jI.IKyu~JlZUk[(сדMͯhfbָow!=:l TiCFl.QllR]m4 m"*7kF@Lmj^QmiPҋ5#.^oz?m6\Ŋt=шrw;*״X64m0O<8 9mT5Ql݃kox+;jZ:bҞqiWRKiIە7[^Mj{?Zzy=-=S5)W^_yX蒗Ujt۱EUzLfLOswLtMVu7745 U YDaVÊb/D~h {lb|6F*#F|OJ~ r88<$a|Ey␽l.ÝgYy6esQa9tglTM%Dr`b0 Fj68L13˘FLȐS33SS3L&zũ5Бlyld3S3eiHR7F}OSN[g_WwGws[WK{76ѫ/nFdp snjbrvzblܐ)sƮ6g~d,p yz]!׾æko<*~Q;J^}P—o?}nodUztKI(;k_{=jJuRNcuSOaeGc{_fi3y%{E?6p WbT ~Uᑹ좮ځԼζNLwud44Naǚ|TMe;Y6熷a'RϔhO^`3}/w]4tLjϟƯ<Pʃ_M{Fs3 C_1qXs> jӰ?q:hQz/|]ߦݴ{Tش{6φͭ7mM[LgpǙ/q6Խ[ڻ쭵u7y-YWV,K$+Q93g `#H`@DsQb~ $8 {{ ^!wV)9rէRvj ,+=r=vΩwK+=x7^RӻOl8Yq"|NܒC;o/?;%bݎU[lUxݶ axM\e[^cgJ+KW\9+.-.q˖-;/:Y2N,T0xUV5y3Y77`QZԼ)O]3nE&/˙:fTV.M\mgU^=oY>-ncMcmt[c{+-?RX| 6*q{A1ڽ!sseyELL3\cfƧ}h~C뷗'o*Q]"-tR.YpMznkL޺aSUKWݽi{쥫g/]j]|҆Ԭrvo-J.ZqǼ-+RvI͙bk̼1 6M];vƨe Ĵ)K6&E.(1iaFBjaƖEe{sgܰ0sKm9uDw8vc6WAR3֭Xd7gdMjkNYYqeQaYZؙrV'$-X&=Kkמl-8w_Ư;)~&%h-syɔy3{_N[~} I)|˝g'j:?8,+r*[rj{i^G$'3:ٛ+d<%*}ZթkO]:U'rWRqJ .?MKeG/OuU9J/;rЅCg/:ppgvVعXENXcy7U&m)Jڜ*sgzvqfNI yyw+ߟ]T]Xl\ 9ErK3deے!`k7]eU҆e7Jʚ4yefV\oݕ ܒa؂rM&g3J^HnGZƦ܌,|ܕz;K7g<#.!+9m̍en]&cQdoQRTP=wWfC9مG=sUgOpnƑ{+ʊ33GO^Sy؁#bG?uUY7.K4s٢i۶/0)7 1>i._fuVII-GŮ4d~LXs.C4?jjq7 8DKDO6^m;c^o7iHcIc[VTh#gLo髝?MOs_}_;o;]Z駯t]~ZӿO?=߮MɫR r*wmI]hݪ[dn=b-2iʬSFΣ_2JPe{wVRmeE<*{UvU%EEJTZ#B~i Wq)ʫ*{zi9yQLUJ^'_T͞2(Ģ,*dNaIaAIrȍq:X#J}wSUUQNŅ XYV eXKʟҔTURX"zwEwU L$M xWW{5U T='T|_OT0 `TtNDE/*PS,U*}; bT κӧN|ׯ]c]dd|Eq(^تPAKԸGaec'ucV_YjO(WզnB:svIuK}$OvKIխtueJ*]RV- YD-q,&.,W{u-MmZԷEH)k߻rW*K~[_Ⱓ ֑)}ή*,d֨0PM'nP\IR}J\oMSMvsqm%IlWܢrk_ q8)+Tլ};q#a}ڍlZn RFj6ROW-oHkfo4R~uRAZ[(SGЮ[@W% }tGU|UnLWkWuU%H={՞!쫕V8,,u:;8P{_٥êκt-"urv񣚰\a0^qCS#"aJRV>)?!]MA2Ri6Z=N XHiu )K*\tVmbg q+)P Њ6AJd mCFFSqTD>4tAe EVſ!Wrv@anF͑ K3x+wFh:X:zRIAzW:keRWnux9\.D+O "ma}",5$uSLڠ:v H"HbaAXWaqkSh#4  f#u³-0hDiZi\%Ko=*M`s6}0Ez ՝]ˁ*\?GJ2:kO}UF=mסl" |W ./RD^=ʓK$ VvRVnzRʩ_r YIU i`=q)7T ׅU#Y{?eJU rJu 40Kuv.º¢,E=ȊKC^*{)V&"@l$q1:u.BHh* q%qqU:S"#`:v($e#m^CBX}P+F爵Ν;߇#c ΉFOc8E9Q>GdIg#EEEݳ/%5^[[fM" F7nt6r(6q/^Λ7 g͚y3f@FF\(u gJ-0a"!9>>{k?~' zNv椴=zTً=b'sK9gLidDR"X]c-giQ~P@ ٳ>|/94>>>:z4r4Awdz#9o߾+W7.8DN-L>}w4 x񒉓b33)l߾=55r'ص+,"(Νz왒v s=tA@֭|_H0~QPD14' jQIq~]Q“Ȉ_#m g^Jb=ҡ,E|iW&GJldCNح~Y w`twlބ*_o<>}2s׸!:yڵ&M>}I8Dϡ}U YK,]|)S~*9qIz^z .=+WAUqq237Ll8 Ν@g#;vV>cL]c8ڵOⅴݻgs̙?DJLL1b>Di߾x(>io#Qآ6%EhE0ʈhb({;6%5mȐ猌A2ujRZ3/o'>ܳg/LvF)x~.]´Ya1^iCxZ# `ܸqI_œw|u-Ջ~NA7B`I%.i>|8Dptx"zPؼʌ%).]ذ>1%fGma=?33_l6|8i:҄AP!qqDacbbȎ:bڿ]ǎ] B C(l!ip"pѣzچN*O,\@fԩl(YD _Ȉ\j͚5ݺuۺ5|vк?1NAKSm:?l$KeANw9VP~- 2X}K: ,ՓX'oUy$ k[;?r^0tԴt~[*F[IMMEtI\~Aƶ5`sI~91뚞;_.Z1c ~8&$^| _`j^䂵Oذa#gV$&%-\D@-@aI,=\Ʊ+s׮d;Kg|ޕElr2,`I`Z†t{~ii-RttDA|>xE .#kkg͞!P'%%0f6],Bݻtl&}~oH3.n9 eP‘&C ]\bāΙGﲳsT%X>,i(`1  p9s¬Ys0TH5IM%#AE#QXTD` #dIj553YsV,qyXd&DV/YΐlNه'CAb' =:,\F0ϩ.C&S 'N9\|9Y0>{C%K`=^t)m9бiI?Rk׮ba1)@~2)A0q'I/^%> T"g?|e`Ϟ)/ bi X]$K-؍I_ Dyn⒔&qb):4k!n$:"Sw:CU(R Zm@ߙvLv8SW@Oijpիs9/T$FF C֪5KVA-uuCmH)qT D'qoH$. qǂy3} Wm;n}BAd2Ue]KT$e번Jgi]W!eR^^+hhZU72'Lu^՟*od:_'qpVj`yd'ir[8*_O\'NtaD(tjjFROKFV.U 6NXT Z$IW.޼)ANRdACawEuԭ%eT*|TrDmN~O S ,z+iƮ A;eK6A ,5vX\Ԙϵҝ!z$l*ms s4v2octn;:9ˎRS֯Sy+'d:qy?U^%zVhB)k=\N"TǎkHji;gAn5RA4Vl87M;EuyJx횶r]N4yi)aX,v]&GxnW *j+xy^/usI5rIulf|P_vQ久ΉN.gVL `nXcFlDJ:FӠ-$-۳Yued3Gm v}_!J)H#%z"R֊޵`fmh!4T@>8?N{vܸ4wK Pf'Jk4tԍV X5]~BH* URyZ-#U=)) #[v9 v5$ԭXP%I:@и!)VTeW*GU wʭUhI)åBCܖ6};6~>+Ru >R1u,6@O}u[Ly*6[d*ԎN\ߔ&e!:FsQɣ>BKD, eMȗRx[+*7OԮ\I_[Jj7]ykvղhxݮZt!UaL| ag OTƥSt߼[E̼ؖ5@^qW-/W*w\ \0eEv5!dw'.Y޽OZZYSOm|FYk .uK+ͲK]=N**`ƪeME08ܭfUΝ|2g>M',؁pJCxCӇ4zrpuVF#-l(,,d+)N@Lz- .x1fx9_'% k}qVAUչ.QP6 zt)G`.4t ns! Z&սE@Px>Yݺ{|tÁ:[㖾!w|B??[ȅk8EUt.?⸨쪇IM'"#ߍ6G?bo>,lǍ(* ,eD Uw[׸[J S-B 锨JչSKu!{eiRVA)plүܜg?h7NH8hqH} !orLJp^v88`1_O>57wծ]McB9׉M{DIKO'Nb͉9VDGKԒRMAn8?vӵoWK+ۿ9RݲVӀ%G|)?4V>)|JU AأsHR*O,%;lk%jUuJ# n/]okq6cr??pR'@eddpX>f䈝=wBa bO(l2U\R3v).ÒIiIC^F[89UJW,HUxN :(`y < j:m(QRS  W܆ǐ8ʲ[aiMj3K0Q#(C3gN맟~:fFmuo3ld au9z?K)by˜ٷo_L3Ohx bU|e #N8X[s˿p78MYX ҴzH(i٣ҿJ)W#5Rz@b%=Jz+_#>(m2t4ú!,,{bjaP+LcA%p͋/xȑں/?'m#S8O4hпۿ1Dm1O~@X'O,((Z;usK믿^R\o}{=ZLa-Zd媕&ݷoРPԩ_^ xPSs9q7V،3oYiw7aVݹ>:K %zR.]Z*: W(UL<äѰjEJSb4Qqi/nҍT։aݫdjmB7a7/ K,QN=p b8< `G SpJ0SL3.pܼy {hTXd2]pqW渚8y‹gb&cqKX X.OF,::DjAO zq(:VOT/aAA?#U53vZ&F#@zDsX8\PJYOKXj٧aYsP5ĒN,\\t/[9Vpo=JM.9<.}buW(Hg[ %zt I'4f}W+c=.h-DQtKHti2%G4T6b Uۭ`|/lJ'RT C W}N8r\,@ DuAWgKp \U:n@t+ŔPσre#DAeOqJ]*(*1{5Iʐº;Qsda-3)u6AX7n>:HJF*&4詓RAX2*Tc[1h?՘R=xʶTHuصT+ǫ~uu3R_sh85$;`TR v *RI\(ߧB+H]W7Y ӱ- KHHsP%xA@+w7׹KA0Jss)KH]PZgUR(հ{ׂKV*uJ[Gv#pKuu.݌u6QzѸ^Rwg+G,lJu=ra)_*6Rwo B&h㓐z*1Vᐪn_^i ŦֆıruZ=qnuZEuZ-DflO"\@"_Jga=+8F)ISIqiWTבƺ96Չ⟦ǧ4oI4'!;gUN7.U5wvu+|ՎGI :)ĝwN,V#VJ䝿~ư<*ꅳ VD*NgKF;衢xV/iqè0QVܤ%Y8F֫;ZM9]{NsVux>q.oSHI`N6!۲Rm;S=O o` MM50t d_KUf:UukTGRQ[m˗ U0B;ɚ;v 1c^=f;/>S)wﶦ$2D<'['>8 &>L4>'VX!5 nuߺp9 {w<@XXBX,Ǻy㺇&|H&`R=qIkԑB/K>DG~ 0ۦQ\yU Vqm1j`M]?a5qu{gF6#tIՌi3M&v?sc _K|}=3#v[V7S+ ,0C~ J!DIJ1K_ kyRUm :=j55maing>(͒ n8 /Ss0)'H}z!qq"F/EXڒpf=8Os3φ>mg|}xǽ7,k{v䩑vzWVI]!z7ȏ|4>q9ׅ뒅 H&,maQ%a1 t.8Aa));W^8ߊSNy|>^`;5N>v v[677wzE#G|OǭmZaOP/~9t=;aQ=:,gߝ}1sCρ{oyE硇vY݅0uKc}fV],$d VNU qw6vh6oy <\ΥxJRֺpXkWjhaBbXMt3gEIQ Ox^Sc]\SO8KD %M3n @@s=5ud]l,nA*vi.oX=T )jmuyt=pvאPYXT<@HrZ#_ 'NĘz5Ҫw;niGd:}Μ#G;oԩӗ-_>vaÆ?bjma)Zoڐ0Ɗq&c1"8S瓯7s܎C?$Yr!-T㭐FJK=`~TtTK5 NpJK D+U$V L޼ɩ{5R4I(noNhiӦ-[n߾}Ӧ͉IE[nhvxץK $%%gmx-RʛOȜ͛7󎯴u0R]T:[+̍&XXLkfk3hH[df5 ѴiCkƥ֦=v|Tmڱj'6Zcj8Gaȴ2YȈbmZUnO!,úEȥOi/U OHn0b=rܡIkj K=$yD_i };p}* 'STrhm @!:F|aݷJkKiu1]j-MxYXbZ~:4ǚh ފcgc"`xg*J kVu:S.~jm=g[o Zx:Op{ (+:>I[X Z0ɿI7nKJi]uk\B%@6 Jv[X7.O}=TT/Ł2ƬNժ.%%^c^aopA s N@7VwUd% bj_'Q&ksFV6U~:E"ghV|VXE.!V,,=$"{ Ҹ4P Ik?A1Jg{W_K /Rjj"GG'VamkQ!f5s `̈F&qCxO܄ ~5& >N Egrd ׄe?%kͮ 5ReRqIk7tH_JC.S'U2鮟ʤ;ˣ}k/ΝŤܘzN՜\9rrjrOqYí=]mm}MjrpF}fYr6~M`Msm#t0m5:0Q"$th[j~z`ݗƨkůJbĉvK RKy$ 8`FݪmD5LY5a1MX^)Ip ./͔+{K8x@)ھWݯ} rR5?_óįzGIıFm۶A}̙s2d?#:=:xN>7b'رwٷo);w'ƍcbbXOjoSl2?~媕3|={vԉLI {>ڿ?{F1{l?BX,o߾=4J{=w={@m-A[ ֵԑTUդzBCboyjTelMFARnDjIPJ`X&.ªӄ% Wz5MJWVnKV.5/}5U^ fI\Ha]j ې|2&U[.kFe40ѼUGrR8X.&JD#)Z^ufш)T4q9HzJ f[7oƁIy|/-^Q 'N>usŰY|j\J0OqAJ:zm( ^(jxxT AπqTu!47VFjF >2VvlFԶ\uKG(4uQa]+Ʌ$OHʃ17TQ^T|q߽yBI9PzVa[]w5S*M\΂ TGS_-#uwan6G(࢕*(4TҖŶWCXjx[Xm %9$%K 1gy.XC.&ȓ5ip}p!I9*>HމzQ&dҽ^P{[ϚԷSԐP*f6ظ r3Gѯ~+VHK ׿fR׮]Y%~>U;sCoݺE,3SD8Xa#,.%, @H!, ala*nrA>` SLaFx˜ PJE70aP THm-!hy[\2dXVZ5caAX!")VJ%^{E~!/LfuXQr[gd' ŪqV` vЉX'YߟwU,%}EG]ɬ*`=\%Ļ3X΢V4a=ٳ'R Ed(T8c5)a.l):5WٵP6kHV{PC?Rmw%չZTSG>=9,=K|tNa><:6h{,wy)0:%'VDXtڱcE>\p^U`C[\ Hy.rc;*݀X ۽{w 7 ۲]Dl0+[n셤\V:L8q*I8ɻ[TwunNmR[#UU+l+",dW'JO[,&&b3ǒ%K1I`ҝ9,Vc`!$ A@0! Ν;BT[a cӅqH`m۶ ;l 4ieMh(2iس sBͷ$%uQq=S›%PCCpKui)>hxIuHw/{R A ԃ/_oV  Ky'?6W[M$0f_yb bvHS'C[ak q[,a"R& 2BGG|d7`(ODBɰyD Zi&AF .=z)8pM-.XH8aɕ,h-IN/"ē0 8c%0t!΂<.&[DL¸|l!CјV5hvUD`P K³χ:x'<Oָ3,e`M]#޻g dcY\MBXeU:J^z27G`?,`F V^p4rJI5u* baIUTju >hO>Bc\&HR]UK$O0;Di']vy;KUI-ox.$R6RZha44a<%ԓzR$7r ŸOsb'nƃ2á+'ǑNfMuhrm~2M&WvՠT:Tx Z O o۫X*߿$1f l_vDp,"ə0:ȡ%Y,mZtW(R''#u2 C\u27|vLrRO]SAA^hE6)y]9nk +ċ9,uFeilwGK]SgFX b?ڊil{5Jn'}QVT NV<"?mDuVU[M&O&=њ870kŒ7_cZcqd7jz;\IXV9 LXSV[gY[G[!ֈrSX[k5V2]ZkY` a=2aFMgZyVaLkf wTYUۭӬiiV"kk~k !g"!G&,%y}{ްn,v`AUV᛬M-g2DV Y11gBit(pGEq+(_q3D>T:3a CX!,J&`u'MX?Qmud 0Dn"D aNh:NXY@@S|F]yJ}C5d7@da\wBo&dkBVHjh}> 递 ԫ㒎1czoݿڰ-us! MYBG֣AN:=8kbׯf|5?snmgWӾ³뚮 kK !zЍ!Л ٚ0h%3Ȱ;tO>j(4(vYݥݼv}鰠WnvƒLijMƔ !j -4Vv궶[n %vе⎝wGZX6''kLO IX,1j e%K Zqy Ç=vW<zv?;lՑrVrxՠh` ǜz#: 0,b+ TMʡ-{YgowDJ6ͰoEmB[FƉ|=d~6’QU[s+(+weM^XXF5 (NuȢ%^VyɊv>S3Xx&Țx+a{2FCXSXaǔ3M$z̓Vfq'æh2Wζf0hFBЬÊ~zΝ'Nܿ%ޚ2 )؊8^f83g8Sqkt#Xu .zKN j,CXaLM*33pV%)CXN8pwp!{ *9W2Yʂ0Ԃ0-5nԄڴiӹsSN aJX2- /( HNS &yGeas_x&W~wXƆ555HC1 a=aaڰ ksDy _b]N|g.+L~g!-(\ChZBX1xԩǎ340cz# [{jTN b9(ʧ1c˿V!O>K/%''9s<7 Kz4tVxN`|=PA`po{1}Woٲeǎ.\ ;аj aACn12qsZCYmU ރQcƄqmjfo2޷oŋӧK.~‚!G#,9s>#:uj3 '}@X=7l?}ߝ}9ya aP"p&U~~>;Ss{P^ZdoW}mgS_~t8/8)_߾ǺmFP:u[n۷ں|rFFe& a="aTwM{KAi7zpiE'N뼲3ǺwZމӲD3Z4Vӕ3V׮]3Uku{ [f/!cXkR߭޳wF=l3G}zO>== T[ՋsxObXS^0v&e& gCbhkH+%X}1qZeh 75P_‡Ju:cmemimi;nڐ:@^ؚke*BsVxI-ha}7L+r]rE89nG?C}dI"ӲZ0->DBh-kF,$Bք1D8",`u ;oܸs|{XBDo=l4oeYYꬶa-uVIz-RV[+i8j(GuUdsHXXCpӦM̙ze˖޽{7LcDsMII9}tBB¼y 0K,?r%ɊF@ FxzvIJZV0wvuի꼒ſ:(>xƍTCL>9 ca5"!D’yyy=k?w{ݾ}{UU{QFٳO$&&?/))a_hڶ 9CL*67 3Պz)JH40VX1i$L*8p ܔa2>ƀ4~u!o8ܹsKHmС" C!,,OªbР֬[e>9? aޮ11V={ͪ/u#VׇGP\] @&A/ W^yw1B8U^@7[ȑ#Y?{1k(VbO_\{+,5DAa~֧ϛEEA[qq,Xٱ~:v޸ڰ a]~Ԩ?mf8+8=Q5Pm%ZV=AҖQ眜OfsrGSV}h,x;kΜ?|W>v[~tXCa$,(Wu@#`+PC0~38\7od܇\n=.(ID|(2ZXH 񚀺pNm}a7l,3SOpge}ƍO<'wr'II_|rյjlY44uRMh!&ӊ@ ٳQMWwHXX^[X0aB5yDzm<8|3/M_ݞ8D&g-I 0fxZѻ4 Fy `"0ؤ; $#B%-uʷ b}]]7pխmQѼ;Dz7U3t"D D@![uM}W'Sܼrqק!, 7>&V0TDdf0PL>1' ?9a͛]J]v13Ģ"|듖v]H*..ЊIoG=̰FgCU!6+!ȄY8x&qF*cɓ'N(Pm۶-===;;Yv\ dD ItEAǎ3f XJtg':bРA,'REd4?QW^`ǑL+W2e ]cէ)AU#D‚ڵkf؁V ~kh7q,],=zq,U%60,aP>..$dSYFi@kG K;d J0^b |`8r߿?>q'<'!!YB3Xc'+p,D';ɝ xJx>3 OM /H+++ anתxd’ҳ.'q\~OE'%dP'ベ$2/rq%YA u2ɑ.DqNͭO:)#sϢqi0e|/'X>E` "D AwgYrnPqK/K"AVE8qsMy3)'K`q݈~ F%Y/%}A].q@I:j/k8ܞrX@U} _fj(A Ȅ%u}a?رcGo kdI'_پ>9]~aK /PPU0ϲuV7ȓ+o3dm=I,B \o߾=ֵLC[#>a H"{Q݈%G 5!XrSbq RRBc +[cTED958mِFbd)QX*;+4' /!J9|I0}\"qqL44G&,tB֣C(lc @:%8X i%T}삖 {h( }}]vec3B$ _Bto/1&x8JxtZr$w {oM>P^a؝t4JGcѴi؊H|uV!X[ߣG ORѹsgvQ OH l]$H{7ݺuw'kBE9i  t¢rvFޡA l A( 6~Ώqݒ~E?dS!'ѡ66KHh :$#}?$[oa`|g>"w4̙={ғI9  OȔ!bPP`)_| d6lO>6)) N hR>;(#Kꫯ`I֋>HY7+9aK bxǧ~J!)9&$I 'E+ixxd’F/[XUȓȰOqT-V 6݌H` q`Lq$Rx1FaCJfg+"v](8VbbX&#c/Pp = tHC E`i %%ACĂfJ ;Ic4ALs ,4 İE }.R١l '*I1@ `^| $re!w:>!gU"Db$E+ҵpI7 9z< D&n.فrP̝Tlʠ dO{B>`FT"#qXN:.%);IDAT7 Vn ,\.bOa"P7ZLX-Zfz#FtK bˈK)3_8%ىȟ >i%pNIrq JRFOt0 LXҫ` `,8/nd!c(Ga"UhʨMh& Ә/g۝5_wg<yO.dG:ŸON:5smb-R(YDD$kR! ЙNӟd<3/3#0b.#3d AГ N1ڼ$wcNaxHd!3\:4fa:fyyȣ:gʟQF/L-qn*Ń?1cJ' PS]FyӅ#S<AX e0/*Hh<ԣӷyXFWvDfr1s0ƃ0&6`18ra>3yk)v2<:TA΂X Qi"7 `y1=>L $spp(i5¤%YDMLS4Ʈ̧A!Ȅ%/ E>g:eHTrgL=(p3bYªO^yUFJ^LRLzK{{O{@@ z xe4UMvcD_YԷ9ڮݫfMv o1v c5cwo͐YWG5CЦnnfA +}G3A&Ҡ~/]|4N_\SC.s|W|O 7ׅQ_Rp-j,@ clu'w~Ľ|"PpRBU G^i#˦kU1eSڑUvܮDޭI\*gVLnWL~';xLڥJT h*wN68]Z.%67* xpÛ%)Ob(B_4@3(eĂ* K6p:t,r бt\"P7JrThi sEw'PL}Ad8cg/0:bsɋF4ٽʔE*x|H\bej|b;]^0Q{oZt2.SQ2L{E5Ջ_&`(60IW[+*~';@NUnj6/Zh4M4:fVSxۦm+19Uҙݙ"nXx}r{'ɚ&E[ R۫vJ9,ډ&blLŵ,AerTGQT|P&6K=RDؖ.YU#e`DV<}bhi:Qi@Т/ՂC+-gNAe Z &[ؼ0`2ѵ:Z_7_a`IL lg(~ZjAS*YYz]m gjH)]sj!3NݥHlΫĸ{8KΠ>;?zνu|Q4@hٔѵr;wbf_&^^4 Sj ;eTwnFx&Z%O{?3Ǿՙ(knv_}8|۷L.\},ՅSœs+=O>͞>:;Oo(Olq%7s}wbb{hi[K&p1J VTt`-ۧ6gl v )[]g_Ilt6;QC2\˞2xK;팵#j HS;"Oj[*㞤A _`D[4i۔hK2՚aŬLi'ǖ 3XndOũ-"w㳜{AbbpҚN6w `"}qgjFlfQ h&sN̳ x}VÍ}T2'S:qV"gp sWYב܁!MѸAdᠺbT>IRAb:䎗M"{U4ѹT> M 6(^.UN!.afULGvZ5OZ2P"owpsAvDa9>/_/Nq O'5w8/D Ν)͢Q*=W )*0O~ ÜʅŬGU"8 ëE;cDen KcxW2ͤ1vtjx UN]emx3DiNi/[r< ~^>(mY *:#т,y{9JZZ}X! $|UO8t !W rMNl)@DpTY ng bN hZ˜J8x+̘}RxY Oh>S֍.'zxҙOf4!SE'|PfuHX7MSJ88dNr@ x?.8S#S<|xr G(E ATJppFIV'"\~ a|V'Wp9qٝ 8kYkZƝ^aLR|ZRw V-RL#IQP;5HMȓ]u$ر1!1 ɽWYOO:^x3o:JJ"PBşfMD PlBGO7# A*ϲ'+?I}ئ>}R;qs ;9(h+:,8 n>"U-YZ;{h"?@ \j1#= tĭnVLp! f6&p{, 4DA[A7&KC7 >5rˡ v N\&].rVO }?pC4{b'7HOUrFf~=ӾjTggڡ7hA(/t&R2~M| |M'#L`ĕ[߸֌,B֭bέ"έBb.[Lb QNw_+787OӇW[yoqǥ"7 7 U_nC-:">=8d. \_3%2 ޱK8OgX΍t'+Oy\W':(|jOc׌yZZ'&*Zlԃ]*2Hٕ1\G<%" (UITVeHFrcq+РZڠ<"W.\yR^4q89c~[ݯUG̜b`T8' ?5pxg; <;xz{O >3||wӻgwGO=7#{{;cGq-t`2f}0n}8n?f?n}0f8n0n ?= A9n 'U'NII{Ȕ=t<|Eyyy(i{=l){81spN;3."3HXf33 8tgxH3 faYD9yGĜ#tFчNLD9QLG3mУ10^,/GtD9#x4_7 }OB[&zxuiyb+IyJOypAI8ٸ'$Z'Ilg"˙rijc]$0/籐y{̬-v=c{ZflS'N"&!ggZNç+ 8}DKY?L==F`Ѹ5d4ʤ 3q2h:q2z 8 ?~DKP ;y4~9%<?uCy0Ñӻhs(d1t4?vv>t"OA!(:vpYi=2w:~ZB=v`kq0`-6f{r$UHEO%#Dڂɒ@$"& -tX<@ H  s+U:h -A™9TDTȷc$vxhʔrT*%XQ|g<T+2"݋=k *ItSjxD6Y¡viʒxL 0^KKH 1>N2ў/p@L/q\'e*SL2hL;}YR?OK{FRX([O^0aY2*rO#DIG$/?MTPq,G"׃Li a>|\yHdT<=mKu{/ng<F1D<*OE|p*8Eoo/H^ +OH½"Gdq \-*dI(ɂʐ4pFpPEQ@B C?E<&xF@>p`I_*p!O 9d!H}U@??z͘mkf?J.^Jjy=4mƒ!> 8x\_-!4j xV7!oߍZw陗zspGݬ{-[ XHX)In22ҙu&Mb5B0ʷr J+vIɜ>jL$S{Sա튟RMm3<3nӂ\Kk{楚}@KԭZ3ƅ4Sf~YXvRk(^29> ,$4]wꅯվ] l+ߔ0a4xRѳgø+B߽vbtG/'LGOa/fr.^+(O2F+GI0$"~ޯYts{BgnV29s_oUhi]N`# 0)q$N ;RK@'!'q8G#;C=zGK"eO)(+ExLD$C:gĴ]4!fqD+B&ٓ99Q{%y#Ҽ;4bnP)a0p:E{b{X-C#E1\?|h.%_"- O"w<_,$BA"X? %"A FSKW^stB˾@8opg,pDO% 0":phHDEψh^wC|x@DRCXXwkP|ؔ h0:*2VF3سPP(+пUs{Bo?.՚ފF~~w6s~./߾Fi!ymeoÏ ~Bs? Oݔ=}T:;ˇ߉,z_tGCk=֨JdHi ^rS\EwHA'9S+ދ7{)E}R[;ҭkQ9EcY,\rXgᓐ0dF-_Obܫ ?^X~~7'~P:xfTHt'h4| BK "YIdǀ0J+ЇǓD S؁'2\2sxQMLW$;`i%_ BM`*r4cu5/8IQNh#X`mGCB K*& F đ!y"RJiW1ɣ (鈁@"b.2DC@u`YPKe- ًžT2%sK^ϓ8s| M0$}ŝFWp HL9+gϿṷ7Ʒ*޽6qrC/ePahމ|^YD$O)AI7boG7ίjcQ&٣xQ孈/^x)4izZ!&Vb'vjet3׮O-&~_|*YJ{/g =@U̜5B+r_ίDV=Ȭ}~BT.=w_ڶW">x)QUʷ%|S:9/ ^A#7[q彷R2:oOʟֽɣCܮ⊋ԣSVH8,lFrYt+$l+x H:}PRX=,GEV (a,oE!jc Na5j Xs ,EExb(bʅey(r3 !|s̻c!`%eD &0=爄l!Fs˥sI _ ׉Gi|$)rHrFOIu# Íbb8MaH(Z= נM*wYZLʶDJv][^0 K[UNcК4:Qqql~ǑL>[eHIFp=tA4q%XAC.;>A8>4hhOG ^hBGd" CI;;pE$Oz Cg74t Aч>\(KD/@EK w)7tHr o  ߹1ek5S$71&ԍiW9=,~)J#pZxj!kx?LoZ胴$:!t*CLe/9;YɍNjkd,}ٗ?5`D^`hY&w?gӪ>[G7nT(%쉭g^8׮^Ay/}; T4a ^Z嵈J^|dPL&_VhyݜwoG>N/y?"7uܛumP]:S}A3HWNH{$0!={wDpp"g.bf.s(3X>w"\𕢑T"Α+f _qA DsXBaBh$ͻٮh [<& N<`@HԖ@GpS,J87Eh$sㅻ }D'hH'NL҈h!(#q $'7iTQI쳟|WEfuV6BI_k[*B_߄yG=3ڏ<{rYO g}jY)xB熠@OI h\br*ܡ["J0"!qbZ$ @{@'q0'聂b(+D*o%PJ>[ R+_35AD^rxvxٜ.G3ZZ6^̏upr~Ͽ{jg7jggw0seycR{ $WE*D#6^Y7i+kKJe)5JgXXو g#`!GCd-lgA&ϽwG>JX^A-߲DY-_NI,nӇ0ɥ}7>ͨ\q&uI߽RqmBDy=&qx?+{TU;հP9]ًqR铘»iՅCҌ~YJ,rSߑ>~L٧Qyl]QqdVas7>-W,=)?-1E1Zͭz#fĀpa~~&!eEד*'jfr޺~/(y$`E0lQQA0b6 \x4{ŀ؁hB%l.bh61J,ض:4.W|(&, =AgXndqlW<ە0S8'<W"qP ܁x%""y,9$( )jHП"|p <"%$}9I"I69ai,J> btEywBR2rkK͵ξI$]Ь**F֫Ի;Fh>>4-;#euXvEiv-@, dL(c.* ٠h!ڀ>"!$񀈃D :1/+*!A*" 8E>|Dd@.,kReUL ?p>._^A e>\+TZsLT> ix[dT+U/ eLVMU-y}TwjȒ<ȪPF,^q8]+N\ _‡CȠ^OEҸ|z_S'Br^AU(}ztkclX坭mfgKwd2lZj]d{&Éeppg,^ž{oRA\BC$ >Wn0vp.-~$"JB?,SH7#d!!kTUB#t,VROt* mDڗ(B%UF+EyT<{xZ66 UN\ P7#ўb;c$c& X.b@`SE<6adZ&$6Kv`=<#3}Cg<BcGlj7$+ȕqYDp ;ryxrI >Q@T?煣%@ }h(3yH,X_B!1e F")I2Oz C>:ufO~~[///o?_g !IU)zu ncݨYvw F{֖eg`G{}b2jdžC_CsaBN2G_>3CBFv4 _* # a֥0cg(/77Mx):E^7;a<AP.C3/)"/4`†{ yD3C@˙PL99.n  h _3"x TP4 ww;ՁJ)q|@ fUhz0.S*PNUzl#P(_%PARU@'BUl? 3x3 {"a ߙ-'DǗz[]m`[ߓЋtw-irà==O⪿xv.j v} +1ة]5)ӄInJP /’0k%BSĂ♗8#!$&eRf,;]E(mG 7^l!$YL<"O"ϑuХ3L?ؔFL⣖ /|S Q!x B&J|^0(MKP(}Y("d 2~HBPɟ! yb\c"1-yd69T]e{GFsGAXa=!jRd`Ϣ%Q $e$Inh*q)PLEG03}Uw^|HT7ڟ_<3&pMJҩ7M^ӨO]ƉQe3k%\jX]\X.,+ljpsA~TI8ED&P@ )@~6HP&H=)RUG'Ci(,dA^j$Ѐtlj6=H+2 U9<{ϑwyRo:ۖwf/:6κxbiLk()1Kb,KSX)%3u.vtyc|mf7m`1iC)?e<a^{Ac# #Ђ24Q#jp&,k[8)Fٴ6g##`AyDش9\JfC.27ɴi PhԑfLLiѹKb(Ib2qOXVl¸=NޑF.YJ$ϲ% Vp5Þ *DځE 8>KdZO䞃Adx%Rx3<*0ω<}"$2I|Ww)`;MNG)tgx2Cݛ.`m/iex=]y2Et %^ I$gI|_&ܑP9؋Ԓ4@"0PIBW/'Fy$CDWIS.(b?42ԁpSeే` ²oRm-|HW%P/p"|!;/կ/>}?t?gχɳ 5-ʬљ5[f͆ykskE[Y4o(WLJD"q6V燔{oS/7[MD2D$"^<noB;@AhP KU&Ո*ECJf`j`} h5lA4\ 4nQHi_Ow#~~ӏ@P.Xg'*3099B'( GdW~Dͬ8g ^fm;mzuzyFe<,#U3økIucbb4.WTv-}:;UV\5J(i^TdN̆mV.U30 R h=WxVGcSmNn8Y&t'<|ׯrSJpY>.r3w|crs(LoZѺQ0(OV(W`j!q2}= Ȥ=Idb9_9J[R=e#B+Al%]*,hb[,~Kd9={;OAɡKZO^.yh4"'C<'vHC,3>?$Kr Kaŝ! 0$e t0Qzi$yxˤ`r%Pn񒰄$ BF4C6ыhP `gP NKUyt-0Tace+T2E,J1ԲJy}D?}ޟ7x~77o֟<{ϟ?ɣEL Tw ֢ـVW2A\5Wkժy}٢Y=լ,%Z}kpZe+= pgB{+AצN .QhޢZ-]hRxQGfRPbS?Sڱrؠ1&B,6U3zU Vj7:0IKr.g0z;TӶ;8B'ز\EO"ֽ<3GxKմpz|lreZx+1a2 놓S3Z;cvbax|`_:hlb>nJY?kHa~#a?LxU=/\sADl^5\z'`Fy[?s#*|R[: s߸VT;%gY~~J0’Qs} Gl LbJuß;sl|J4Dj9"q%ml l@~[*fT/G[US^aI +LOͬN~Lsk{mN]ȩ(nLsQŷ>[/adj7.RGeWE'VUJv% `Jѫ_g߽^pa½W>Zzۑ)ńtPv* {Gx|??+Lz؆k|/H or,X҇] JR% 1ȾKm8G7h_D#AT;G4ni<-kGcϤ%cX36,C.Ls$D]pޑ,dS f":REt+K9 '6s"wahGIx6K wNIbw'`Kɑ%*HJR*֨!R b%>G֎ܪ A~YgXJ fbY䋎6IFGӸF*a;9rw^ ~k{rUgo3w{;5JD V4[[ T&M@e;0KkR*W/-6Tpv6tzB&- NhVmm T:ڃF(' )22PR gxϙ}7uÌc_~9~n݃ڷ@6E1S)#o篇}ϥ:@?Dl/]/J<~Ibbɗ@HlfW4wew* 3j jǗ'ThVČ)GLoni%C9ƻiUɩ1H[Ez3tEu#ӋԼLly֬?yI.^Ss"Ӌ# ]?80)?Wޚ\շ٧Q/^:[9,PfTu܉Ha"i5 'uI52~<4<<[.ߎ2gCVet=oزvYĎLv;>M G$tdADN3LdKrD.lHZIJ: ~^BwD!"<@jI{K^[\'W[K}2o޼_/ї/AQ t^R(_GJ;NHIcd < R-=#0nFDU.>NYj^BJUVuvrXjgXR6W:1d#c^vmtmhetq0{@VW+N7ܭް=1"o_=w[揮?]?goճ;ܝzssrpKhDShZxX+'dFh[gLJ[[XZZHdС&3@]vA nc&:T T1P;TméYi?\C0 Ԡ6S:[c?=g{4n#G Gd'ХQٌ?g1NBZ1U SDU^,uHe .f~;e#PJ@+clhXئtnmnCWHcqgCIwuqOqfs+C9$~}LDj{jJYG1 7C&?/7kz&_~*(^YYs7*yzӞ0:|8;G:X:X&j\üe{&݄ƏnT=>ڃȔܲK?6^d. umQ| =ѮWrm>l2x2/ex#?o Py|{|y\--Cg sȆr_Й-Ub"b`KCL $b|'I]W GHܹ:i"vj)GHF^ N᭦ >ԢL$='Ň\5\rO~k?H"i%W4'WAoܩ3#@<#8J5j-P:ZF 7kŝ90W&\^#mlhbD lk+sM9in( q|Kϔ$/~z_o iϟSU}o?o3w~fLC[?onn}A_UKd#Jq)Ŵ66G#dp\I5K[+neywCyaȓ߉ N! lS}z  @#}=%@04h [HjgR᠙6FԄ2I 5G1v!ާYSvw ݷ{ ^}K` ! bDU^*se2J>R*UȜRGݵd ),! #>(1+)%.!6||Du ٟSgWT '."kLY3Ȝ8-S#֙ECRQd g<;:2&Hl8gNe6 r'Vہa-y;%˯^yse3(h%sqXlNEnMny?a'[y;")vHQwlvyg иd\ @4#a1:{uB|'qF8V#^_ xtC"\ . hͤ|!<<"2ybgșK@q" ʕhEڠ . 8U sɼE2_|Ox$#XBɕy|Ero!U"//<(K%\-/ $B$3BPh lsIx > ) >y/Wm$8J;zK(YjT+PāZUŠhkr^49͗TiǰUm r* ̻ehXVt&N4ǘc&Ƙ5C-S,67wBŐoa/?[׿//__~؆!kkUnY_ANjkI8q{ƶzf1ZfuШhՋ|X*me;`+^eL1X`ܡ&8DK10d'0CQ$01@Ҥ)0KMO>5OQ=D͛<<:a[cepR#5`"eYl6RߘW2WQଔ: U Jݳl}T2X//t^9)5|K8Z>z7\XS[QvJr@Mmf?Ȱfz*XЎ (VeaLrL-Yy=V,i[:7nlѢ C[.,#X$)NSV [.Ȣ VAڐSC.ѶxZBބ 4.8r:Il/Ohm B"{!,A!(((WY u  2$ʗr`]$JhI "R"H.]@ / &/`T$O4.yP WF#d[L?Ӈ҃߾p?,g{`uApKW 6ˎYPH #֞VTPY\2(4rŪHjTiW_vSΛ !4#SP å>$ю5m&0ڣ-cݥQ`B4g!´P,llBi p(yԶkb-^`L7C&P20d [pSUu 5r~V%C5΂^ݦ,؅y r5W_Ll8`2qMxzn6pbudJㆌ; AFŽNoyȀбOFpw{9'8,1jIɘąt/z@rR21(w.!9t $x ZRjC+_bAL@lM|0I Mv6\ZʂOLbTrQdQ"r.Ey(Œ""PJ$"H(%x肱XFU G00H)\ .$. R4T]*wJ[)Ux.!Qʗ|e0MK^(KA0U~kj4W|Uk5?I$OK H(ȎTMH'ԒAR-`R7Q45DMjwT ]^I6Z֩MLJMܖWĢoiUiKp mlKZfYӣ=zfJ l59HnO#pyo_=࿽_=_?WBg?}o߾x^ ۯ鏯nq+u`V2L~hmoidbdU2M=ִ孊D+"J`ݶjM[B6wE,^_^DHTo*VO4s}6Uq ʨ8Jp&"<͂G 5k -"0Y| u%"ڃ /4,Irm;~{C]_կ )7TK+ڤ:՟0F\Ppg]~JynԿpDOxcD~DAʅ$O zB@GyX; N): lX-k`F54>%JUЭ=b0شR=΋iҳGH`Us[J OEy3胰 V׶52E|[oҿeY[okE@RXSSMƆjyM!wt&yk}cyIqhҞZVj$$-6: |XbYlZ6Jc6PV6"8T 8%lBn]t$KI`VO1j0Dռ l"Lm/Jʓ64.ЅK;/Ox56ep/u~jV >5QsK(39Ko9ܥJ{-t]DZKHQ̴Jvin>JZ e`(!0o 0~(NLb4 hAKEP*Ĺ-&tTt 'PLD̙t 4kI@ՠ<9DV`YX6 I9RSh@"(8UCP'GHD B% G{{1kQT:ŝ1&{zr_+5횐.1 |sSVW42sxRciv^NlgG-r~lln:Ϗ'';{Fgfk k:*$LWYl氬Fȃ[qET$V>LnHk+hm I_u32,)}zr+,@;:RZEŋ#A.[Bbql0v.N3th Wki4@sZS vJuN^CcxR#__-2gNDD{apV+GŁ_ncQ:6ҿV=!#|.Lc sC9 0iNY?M/!h1(_GƠ\9 1Q0Bp Kz}a9o\0Ӽə $ctrfh|jplsuRN2(W ,MyzbǹPu)}Q%850650:!mD4M'16=0>=H?p + m!#c}m]M-Me-95ݬ^v}|mdg )VWwik36 ̦ãiw{Ǵ-(uݦD(^nmmkoohomkiimlj6R`k ƖfT56655lIၡ!r^h}}}}#0 AoP72Bdtxbdd| 9sb.׼0c R]ȍ6Th8o(="i`ԿQ]Bsqǥ]C8Fς [< wy׫u:wKHs>>i@_Iq;"sm؉2"gy*{ `sm=U6X\P.7lk:~DAAsVfWLp_jnt=?A+&pjljfi3Y#bzS7je;:t`! \6.ѱ|iyZ 6# 4҃Ot\kHfA<:Bi;<9\\5ehM:q0] 3m2\^>}H,[THK, *6/t_^ LOHr G47V+5զfk1373훖[{YG,]oZ iકZDN]Ak+Ao#cfXv3$ܑmGzDe9R[6tkk5JR,)y[\VVU˫*K+QD>kjMB:"/;b4&=NIbK?PZ--V'k|%v,[b7d#,Ɠ}i6öe,qז-طq_;+0[#Bllί 4.M/lMڶft=](_ t^ t>>oJl2MenpN}7~ɷuVUx7L9s^Gi]]L ?EaW/i" =9K}%udA.eqC}*ZR6ÎaR}O'.^JrR#%أx&?~㼗{2%ʊx77 0s7YvwOOlósm ϟ倢(O .}J#|UĀ([cH{L <#t N-qʗF:{\)P+=x9WҴFK} YAg~%"~j~廴{>(1j]- ~[]6}82ZFǧfe# B'ա`3Tkkgg'>u"[YYn*US~GROεtl3SfcyR{䰮,d帋Jeqtb/Nvmvۉrd=8[/;BW[Eytj?>@6F 3^o^s{u`.\sZ>[c%>A俓cu84SѾ7&{uonvCJnhp`me. 6lu>eNW'Vɓ.s d)\`I׸ k'cc[}:zR[w㘥>d*-2_بY]]Y_dispo'Us\#+i=.P p=|n.\t-x' 򞋩:Fqw|t`_t r$ϚENOu:~7O s^]e nza.߹x.Б˜~WX7471:bR~ɇ-*ϣo/%ހk{Gfˑrl;4kD۸{`?6YNQ bPbdlԼwDw=8E]. b; 9.~r:nlvX܀ Xe"?@mrwrtp p)m|l9<7&j11;ƃC[9i( s 8GÙcHC)X3\`f= }p"~'G#F$;=\}Fը2G,VOf 2R-´ >YrX>>NM}B*xyR y|hgV,\>>a|==(DGζo$~Oh<_l;l fR_VQ~qG?%bDžub&e/#z8Ϩ>ƠX^o!?G+ݣ*dAewOx~nC[3nW-L5+2,Yy{G--5s<>Z;{T. q{I>p4u #"31(kL˪Ji 9m~z C.Y.Q3+4+Wr[,ѸLXYeUxX cK'~.O^&֟qt32U #x̪yCkSVWS;3}8[v Ћ 2ԧ?~A1sf݊zhmٷGU'b7Yf 7GE3qIq]~JcjٖRؔV7=lS752ī!UO1KbقX&*m x9- Yi%5L=[^RX\\]8/S&Yͤ|% 7dZ->Z6_e7^4_QNNoZX|oprS} N-N8[6X{jqvgb3zt/~xJ:ߕCE,;`~kdlmmqbvK {Xb8 Bbu]vNao"0U<\liLH,lj)/)/l.ogTZDx|kfU}hdL,]C Iz|tH+ - k9%hSzT(|ư 6 N0216={tfCTXVl,PۻʪܝZme5W}L|RTl/mIJDX+((!*(X\@КW\&]Zcu %edw 4ZySGσhPQۀ^م%٠o]?29 cQyՅ˅Hop426oxlr#@_h 7tA`0U)(R'VCc@Ri"q2F!#f0ل 99#CNgwP7™)T[$'~Khf3Y %ڭڪz*|`gєAO1r[󣃑s~fFbpyo־ܟDֻa~Bf0 J]^[WG&% KL.(`AY\\ XMX^kGĥ2ExM gp|qrq~qtt O^L\[xW1?+< Fx5MKk5:.aĽ{YU ;5ްkIIDATfuCe;RYō3ܡIW$i(kmOfT&4%C>at;j6|NB_/^o *+rV͇WBXq&ፄ??wZBmJUbKbIM≈U<|!NHaH8ftēT64WA9B 0hq)lhl3{U]#@?sXMH,(J*^8$+,V==3~ɱ%,WBgqH.MN $2| <;!%`ڃNLBz3\iNA42:0 _ =;v-,es:zͱCS3 #$uAO T SC(- 0Bw 9^06PH!T; s20I<_XԚm:i2!ND3:ޡ֔/*t<8g'Zid3,D&u\n;/,Oype}]R s_؎vwz{,&bs%d9N5_?8Yz.o潳 7PJNvmNl_ýD+ Bj}k|6Ca!oa|CzEV7u oU.7boέ{na{ܜc8ۚʉanVyHYRNlkHZexF m]pU!كwr }=>5a2j ۛݝ9ƃ񇕬{ųwKW/_x/ϿzADz~Exj뙽%f~u4[,\z-)YV>{*%QRY&j=+&K=ǔ]:(OZ> >U ?_k\qM_ كHMcj#806,ŕS," g*<97{s k7.( gOR92[,7Ut6O7֎VW W.,%E8V1..Td [!ȣfY[W3:XQmrx2N -mټb`Ƞqb|I7a:-3;5#K`hSTZk9,nƗ IY9nOLIG'>'v3S\YSLș>޳gd *(* WTw *jdŁ96NqD).ٸ?OE $'./eC<䃱⾪OncS܎Nɐ2ss٢ڞ=Ihf 6V,.QM{ou]^ X3跩cUxgjǙ 4pNOS"/OLαxӳLE3sL,,BXy<G(O|m!"A$&ޣ}(7TЋ?q!ey^0545warvVKAOZFַ'D?˚ںek5WTؖ0\9Z9 kw⚙,Lnb~֠=:9`rCYKCCKυhVHOV::&vYUyRmf%d&X9cG؛Njp^.yK[|Xs\p֌#~rY\zaeX&R(\  Ϭ.RW0b.;(hI>ڐ f%%FH62r z K+Ƨ椪-&WA o+"o0V.lrǧ[܂b{O, % 4\/Rp"iu82XF`.^x+vD. @2մw P'V I(ۅfQEӞdGG? ѼC9<9ÓvIAf$u;H6cY;>̊' ;Htc3IBGI}<)}؎1ih2`TVp"녇-:n=CF4F F{G\s!h#Q0ܺǃ엟¾ :'  a b`]8=6.xC bo!# b0C/tOd2}a W.M ZY3jlT.1f' *ۧƧZαŐ[;Kk6uhTv8 5њ:ݔ>պi*NC#"'=(k{G`qj?!,?̀^UP$豽ļFXRvA),-8Wjt^H@M(󣤮;oft躞(.>6):=.&#)xVFI7UaL 5&5LmAtݤΆqMy|s3 0 +GKƋؗZu/[|%\xNΊlĸ]އDͮJ?(n%8hW}#Ae\^Q^T\_L܊ں ޾OJڃ|aJbS|"ʥe|$WO}EEh/yBOd@:ڥ>@܁5>iv5ј;YB+%(A#>xӟ>`(D?#ĎdC#E}T؆C]yB,.#]RKP+=*ʃ]ڊA0+nF,Ex #u]wFh̖!L=8};F|kی=Eؤey3. 3nx=K؀Ћnl@6kah2w2 gomb'Ccss98ceX:nqL314>5/9=Đ9w}q&ߌ*NdEfYKغvg ;wv18EӸZbU D6[6I֬rX%R,F6pN ?l05Z 践Z-k* ~ bo4iўjfGeI%k -kQM+yV4VtwƤfQr'IM%Hk$7[A略Gt5uM4$6썰W‹_~TRHEÐN MY족މAFym_ImW}K_}S_I@}%V,<D_=hB _mO2UGӭrX9)(z\#{}Y>?ݓ6O͟r_?xD*Pµ!P( wTopѹ .*FRrWƧ,h.DHuɞ'˜gefdR6V$g+,E,,2=D35.69̹YatNk~n1333SPc2̹YyɘfƲ3G=3M}\ XƐ.QwZKF8s|[O-yyFו6wNONfLOLvt6wbCs{k$֋f$Uh eGi AVH--]}]}ͭ]M]=;66ʜgwu2LJ;zZP;04=͙eNNLLOMHB0|<xPf<<5\\VxUhG|'E<.qaEoz/xaoES~LUoռSvtĪƮެw#@BU<Â_?,zqk!o=*Nȩ*,Om-hmgvdf7U4 $/|3$">* Z\DZ%DxV^D^ #÷Q _~//x~swsq'흇UוOfeϛNf2q'y/q^57 b ƸPMw!h* EUAHt]{{ttU$Kp9w׵{]{d>5XEߏ:=njr.]p]|8 kD9i}]?G)?Ak9>v]>ǹ?yr|\tf>Gl>&;]E؇ǝr/w9n鼝'88t9dZ;#w{m9y4oGn=5mEV]i}+ 3Wm^a_6Y]{E;הZU /ci%󖮛 5kMթ s,\4oe3Җ&.J=7cԌ-ZVyieeDFK{4b~m5y,X,xΒE+V8o\RNzVkVeP܌y,\;oAm{8 ݃q(/8 qUE%V,??}qffYdаɳV/(Yz݂LI={ּ#Jt@’MQϩa`G>?*%cZ>qщi{tv#ƴn?͏f{ЦۄO|q}^l1!''oq%Ys2gO w?Gb_{{z~'O4Gp<Ϟhr oo^9vlҡm)SNڔ3wC ԩg-۵8|$Nԣ[:tz^xѦܜyiSNM'+VN\z5۰vw o3]oKۯ:"ZյsWNX4weZzEg?fؼṖڲ yEZ{e_)اESO!~O6Fj󉦽z׃z>~χ&=ųamwL:;`̔#&v;S}7xbǞ[߹O;㐩3fLOeJ\Ѿϔ<ýgKbg>H䒃<wi`&e3:'P )"ėVUl8t ܆r/>.<]t>;½~ɢ' wGO;<wqd.< vz`ǡܭl޿vU-_kk6^a53VmH[Yt} +*޵vհ꒙ sgdILϙpMڒyY`KNѡJ.ZquKrӖd_Z<}њ+eL[bR UffNJJ`ṯ20\`q⌹ɳS̛;'Mc',_v3(}>sӳ&%]vݦr/_|uBR)ɩY>9H>FN=nJja CX8ua#f-X97u GN7,˖^ۀǽzg~qLG{O="uԌ9Y݇/y[aSmz AׇanޫuQk]UY[ ِ7i}򉆿{x]}ou?wC0X Hcx5?{ݻ}?]k%\\zs8zF7iآ&ϢڽkMZHJ΄iJU0-uv1~=,ȜEūY]viѪvlpϟ<չ9{lυO׶èGƝn{vyoF^gt~Ats/'v~QgkF] "?^'yȝܰ xi{. :?'vxNoM?֤u禟lնOO7t1.|U~}QQY-~qqi*N9TQn5zUu_|Тb+ KK[""zaB/d5# -,$LnbJu_-_P\\)\`K}8ۅ{S_]\W* IHǦ %dIrsi JNEEr*V 9RrAIKȌ`[G\R!|kܝ?kV%_ġDR _=s׬PTIpCB.rg[=@y]HKsJC %].uEҎuwU%a$ jAc#  R}szwV# 'й 4Ag5(IVsWD.]ǿg/$3J?b;b,*{ g!T*'+َL]NK/Ds[1%p_X) \q* [=q"~ZܲS6G3Pͪ4CLDT$ԏVB/bbAkVh^v.:Jd/wt2d $tR rSqn-K *9z1cilI<5g(`w&*A Iv)D*9-*@k&٫sʠMZD[ITlphӸB.N߭ &AX*m- txʤ}Ng{ X9u鳧NsWZ! VVMqHV +K[6l\qZmPO_*/60V7 zN0π;&sRŐT*U,?;Ҵq6*zҡZ^fqcϹ;YiΕ -sA:[Pr:~hl⣈~94biE529u&FUT#һ;¼114 )>dyTuilp}p[ 7 54oX}Z*b<7,T)аacF8מ|9;dFFyNVKU,'sXhCаXiU<'(sHLs[J{jh7l,D V2$}ْ/=W<+.괄d/TwOc_a.̏'tRdv>=}b'ƏJpy{TUʬR$5p,l ;ۨV""R$+)7E*mT5uVeZhTU}XK~;Bˍ7atKNV GrT2[6ٴ[bJOn[71: ',,1%8\Z%&"cM.1:x,|΋V<q`bdL&ܠ:>NI!1RS֗*X_iNH *'ܻFz5LRAxB΋XKHYEj$YYP 4lF7ݐW/1}(TŽAϵy^Z ئ"r6Vi#^Qڅ*vYBLXD1#FZ;%;dQ#Ǩ)iiZu<(=@g\*0CJtK ?R&RiKS/R7.:2E:A䆏PqxQfھ4U9/:v?\gIw x Nh 0F;:3i0ư^{X˳a5k־{oڴ)ǛRgnڴ.ӗ ۼΚ5VAwlيm-Z &w14pիhQʝ:5;<,.ФIC+?v|޼m/wm.oӷo&óyqظq!C̈:`#1Ԉ$pJLknB5@|@UR&"߿?zR;GfRRfvؑp0 %Id1bd¤s0*u jr o]V7o4}'|J"AXSXg7D (99y94 "i:q2d(`ݼy 9V0`QA/U!C6IIӥ #GNJ*98 Ymٲ>(g*/m9vRAgv <.\4xZ zd8Y popAv{h~niGQIPIX@hO&N=zA)uɜjc֯_? V9,4F@[XŴ*~DZ2 b9P6c4##>mk 4C6lY .]݇w{m+ʮ].h)q~VA1Y {ꝑ1"ع رc߭[ӓ_{5WwwiF2>K 6"Ɂs 6LKu3Sjذ.:4"<9'&&"FF0RyVF׮(?$ֵU#Bzz{g-#0F5oР]۶mEDZY!ҥ&O0{^zmڴi۷7/7%&&;sşӦ% :.^ ԥMO ƙS }'pB)“dp;35W>HHƆoZZzQG# …ً> f[1cƌ?y۔{>jܹ3=vaQciӦk/5姂Vܵkofz;t7S/fϞ[ƍT7vط_2c?g^N7-) Zj5/-+2';gdr:zC(SLѳ'6m:k6U㇄#dAP3'ie({w4?3r/:w]> >y^xcT6+*G4RM4vƇt1bCa2*!~ ԩ2Xtq.]N?N:G&MHT;L/g34UC)zGH b2/hԨ1m׾=90\Ǎ 8iH'00T˖-%322(# 3((͚5GBerrJ@ dx cTSFH;zT^ZppkFfv>f츶LBܙb?laaPy(S`+)hϞ}Ӧ 7nH20ϝVqT( xhZ7TJJX>[ igQq;FSm34LׁSP.`(&\,#ȁ48gBF2%E%11TY='y EfR#Ӕ)%qwSheu pZ4[KAxRn tgrgcA,g͚>}ƔbR%&kv_3X'!1MRSY av(I NR;j&k!ـ9U+h̙3T1$$+W *J3D*H&!_QXAZ'&UK!CEsʓMp$>.)z6Nj @*SjQiuI RyR3xRTȳ ??t'QhN扮8Dxn,M!0dž?,T)6GUb~ aDK^ [\W$|.Aܯn q O5śx% X.!HJIWY RHdyw1˄׫ӧ]* Ke%1ᬄ:!)'2_^ל Pt¥#PΓ[By&p9s!' Vsr%z5h(pF㲒ʺ+D+J(u"[jJ^E|R_+I.jQ}6 W.#J k(XT_d֬3^-^^O*UѵU~0BdI0bph!M/ȫ$zk#9Hrz5>y]~ $9PtJ(=WU׿?W翢xxk4'wY&T_=^mW?mur`Zfz!3ozU2;L\>XŧgŬA+T'窑kz]Z}F@ 11QեOlA(, ddg3b!M.U jhXpB9f%IyCrN,U.vd}dGLGgϱYV+b۹RO 54=04*`BȎvϔ?\$a}Bc*9轓uDXGJ-q2SD.?|Zs\i#(Drid}6 bivT 04ʏc<3kUqfrw8uYޤ*.7h-nCUeH2+>`( d/b.s\Z* v]B Z2W1# I9us|J > ra l܏338. $M]!&~ܫc)IKbЖ{;ݧOp9Bܜ8 TK5r*z?+aI]AP.:兜8#Lj[~K[n ~ٽshXMyW1? & 7t)L ֳ;Nv0bSt4S6$ueΌ`x{~m `s[l@H7yӦͿ/yifQ/~gyF 6!ERT]# ehoĨJ,8Gos!,*K؊uyajR=?я0 q8L9DN$]:w~IC$f}80ʄӛD2$XO&ދq920e)a\x j?;.YaqM7 Pبs\g䋧4*:K~3L+|_Т 5p`}# $5i6mX_l F0`;۴ia3im_]6j蕗_(ڣ>(/y?ΟX[衇^~3> 9evUi,԰[߸UAURVNÒ*s8> ={b5nB㎄1J1;3?7־-!P04'&P#4,>|=c%YSgb#RJ9)!$* eU6)؟gL>6l'?%Q.,4c"c{a'V֠ fa9yC]>$DBbQuѪ^~٭VTf>25`Ft(,TbZF2wu(mnE-A,{c矇 `~wЗp}^Ӱu'6&VnG--/Ԗ-[2XPe˖3ZI?t0A gCULAKתz-T9RVv7K*?XԎYiXSNe˅\?{ꩧpcƈǎ|U+_Xy?o7F2O8]%W_C駱cu]X޺m+uR֭~_d޽YGh}ʰoT<]4,u UB]K^(KCXƠ^VVuS 1ba)0 ó1\Ԁ:t7<;vyVVATŒFfPǘBٳfj -b}k֮EXwjRy bV +ê2f׾QM 7 _JS0H}[_vϓm LG Cl"тt?]WPkٺil_(z5*x֯˜FJ2 ezE1VrTLrn[c;GB/ekři@L W6OxPB~%jR#Mdi=04a { l$ юk  > H4Rե+T9W 14oXPnc*d.)a%rwXa}BTQ=zNXsgPa}C9TmA)Pn@?B^аa#o3\,*a) C)N}f- ahT6oe߈ݕ2{ou{ώQVB5M#jKiKU7߿?6!LҮ]3f7nq={2tLnۿ?itl;Sٜ޻woqo۶O?Hπ\G2[>ȆsTlofñSNup L~]@yWO"d;G^'6_i='O<|ӻwL,/cO>f~ mҤI4hP„K5\+PUQ8 e42w;:{l|KJJU uЂVn{auC/ IWnRb[4z$cחK/޽[owv˸ݱs'r`l3{0p͚5_`J6l1 =k߾P+"cmrQ˴/9Up&5 7~}^Ӫ.^+ל2]1} Rn(:Tu DOTt^q2S(Lwޯ9v%HYeÆ L9p@V33dIKj|5Z2edt "FxԔٗbl9XZxJ77εkZainX+T,RO2ӓoI))x> EgԚgL-aJNr8|e0E*>q r^:H{Ʀ,&dwaO,KLU*B O V-XXY7CMZA + \[[UP)1b.OW/n ׄ\HU.ETH7 t֍;@ z9:_#Dz\.Ask8pcǏag;E+U)=-^JL}Q=xޅ۷ = D*ZA ZhgиyшQ&b#^8ѐx[8}qX(Z\3zh, lٲ:uT͟?}c{[&%Lsg?h*3gğ]H}}&L8q1?nq}yiӦlĞ+SRRZj2SO=۴a7<;-y;sLzת׳?llٲᅬ}RQVaS>obL :nA gCfFCJ*y!#a0y 4T) |l”g 獟{9Pm/Sp ;t7YBUׯGQ$0YkC Cozg( #*?<96xԩ+VocϺ=TjѢETڵk石 6 ua>SO钮%eڨv*r<5c5;vr={`tL Z EYYYNw8tm)3!#r&zΙ;iƍ=1[jڵkcw}k-1 6M `ZL/.w3/h[#GĿ޵BCRE6n]|b~__ :S2_&qRO|XՃA^>ԭqTGsu%*&TLnq|5SP3T eEO654nM4J z|dLNPw]>#<{ tzv\!n, oYrkAIBB "dB*A$="S.<"4GϿ (:*{Em䐔B}( x!.x*cpŖШ:Tr*;q\qFݷw>>νW պPGj TYV?VQa*g]/Y\~aK,3]x SAM+0b)ٓl֭|E|c,c!n߂φ-uFsiKiJZq[**6dw}'q dpŸJCBkc %! !X CѭS;ّL(dѢEhFt:ѭT?veڨPѽlh:hK ~ErY`1Pn87Hf98wy2-BbʆEnZD"h .Nc2B#F8Hۺ8~(5hh7^TMĠ.(J_٤1F( Wxy!2lYa]Rյb|QqQ{7^K)(&xÞCC? X,3=d}yXaBB!N BCgqW7B“; ( eJ];\y:*l4Q"<GaA sl8R%U}di2cĨ~*F%DT>5A“(\(V,Zq7%ÿk1l:qxQC urZt\qN >(Jԉ@nsIv;4߸XE BpA*ۙ[ȩ2NiP1ɰ&ڨ}bbf6fEqt_~y=}bPY-. Rlk@2 F"Z'Jи.}5ܔhJgO yߨ|ܯuKtG?~+CB;z u.Lw=lS@Uٛ]6j:2kƊo[Bиu(*c_?C]hp+kRLدE1ũ.OY~ЛɅPP7*𨶊*((^m䷗k-wY"`hUzRp, p :?h0TCqwf=tME?ϡ* Vz9u6Hɻ=8 HkuX#0 Ea 8k[8ژj"H7+T-1ny:m@mJ< q@1,ZMP>jHOU0<(P#k2-J@]!P3ҹú8O"+2>UO–!`܊Ԇaۛ[_7o.YVFU=sṼ&|04Vl!0@fT:Q~znճs)1U IɃ9yE,CCjCUA:-hUJ7՜)UX7rC0oK7dacc5T},Y–Q3g<|0nZjCUt5qlE!WxV8x2VXbF2{G8؇;B_Þ5ʄB2 H`RlId5*֪Xb5%m He@PஏԪtTUM h!`T@5IJ3 UQƕ E& >2^\̸ +ZaZ߳j/LyUVLBʒWXbyʒW_>+ "Y5Ņֆ,T2˷2?63"OQD38 CsūL* 2H Y>aZ f_>P%PiaͩX"TBa<_-*}i ; %Ya'+Cr)BiL Z^6W4(Aj>Pw#7(;OZ|4I^. >Z PaYO} 㪻J}ɳfT]ve%D,٭u} ω3|^LVU߯ŰAblggg4hξ}roӅD\j7 sYS^p6@gB!O䉴-NؔϑVCA&EE}ȪA ;O!q-l@"q&NHEdJWx|Ja>S5mEFo;]in&PvͨskCUPEb7[L`aQ'pؘ! Rnn.'ZPv}8`L}{I9ַ|r… ' p0POCh8 'q0ŋ@67k0O;r6mڔ g!-əMC$OH&Y7߄y =0 69'PIAkrRxx8`p59I"`|E==/qf? ɇ_!.]P_64Pbؘsߘ4Tu {m +I'=.CaF18~ `A7Su 3 +$ {b|Rs8// P+BWkРX50&_WBo0ACH8oܫW/4^A>"&U03NL~yU_D5q`UJDC_҂uQC8D@IuɫT(BEw!2L}9SWX*?1™y⫿?O$&.yEY1u^ j j̙@zLpPkEh`JL@O"P4LG}Y WERU }#UU?w܁OWez[2SU} Z Bŵ8%8},;n gDR.+A}4~Эq4 .ٯ:|~n~iɪs*U Z/#k8 0߁h<̄)E3UDIѵm$'1"3EsSPfzT H5&LfyLTV᠏~K+`>1U!2p]wȂ&\57@۵QD9%C i(!gHC1 u׃8x&H4)ֶ)ryG`+Ԑ1$h TzRs4]X tuM :k^p_~;s1񤂄OǷkzz#Yy JW$ ԆXCi֬yf]gg,]^\۬5f@:Ў #vt%cЦ"_G'kn-#>S a޽{+ IzR,`gjJUt<n`7TGb,S(_!_E]`r[HDy'QUyjS3VC}m<5GaM}0O Nį B4U؋;zYP.#rS`Cō!WQ+ 1!Y~)]+"B%K/\|ծީXDnTH4,USw QOXP*IGJI$& -qE "|;޷]ZRUp`k6Jq(AG<Ԭׯz C @-BCi@K0 PB!!=FUѷI`UBd C zo0B0 "@UE&!`"`T E0 0 LCE*"`#`T}!QU(D0G*60 C P,!`DQUm`@(FUYC$0 PB!!=FUѷI`UBd C zo0B0 "@UE&!`"`T E0 0 LCE*"`#`T}!QU(D0G*60 C P,!`DQUm`@(FUYC$0 PB!!=FUѷI`UBd C zo0B0 "@UE&!`"`T E0 0 LCE*"`#`T}!QU(D0G*60 C P,!`DQUm`@(FUYC$0 PB!!=FUѷI`UBd C zo0B0 "@UE&!`"`T E0 0 LCE*"`#`T}!QU(D0G*60 C P,!`DQUm`@(FUYC$0 PB!!=FUѷI`UBd C zo0B0 "@UE&!`"`T E0 0 LCE*"`#`T}!QU(D0G*60 C P,!`DQUm`@(FUYC$0 PB!!=FUѷI`UBd C zo0B0 "@UE&!`"`T E0 0 LCE*"`#`T}!QU(D0G*60 C P,!`DQUm`@(FUYC$0 PB!!=FUѷI`UBd C zo0B0 "@UE&!`"`T E0 0 LCE*"`#`T}!QU(D0G*60 C P,!`DQUm`@(FUYC$0 PB!!=FUѷI`UBd C zo0B0 "@UE&!`"`T E0 0 LCE*"`#`T}!QU(D0G*60 C P,!`DQUm`@(FUYC$0 PB!!=FUѷI`UBd C zo0B; image/svg+xml Overview Diagram Adobe Illustrator CS4 2010-01-28T18:16:02+02:00 2010-01-28T18:16:03+02:00 2010-01-28T18:16:03+02:00 256 116 JPEG /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgAdAEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A635981f4X0aTV5BJcmTU fqgWa/ntIUE1y0Yd5FEoRIxuaJ0wIYtbfnl5XazuJrq01a2msrS0vLuFryMELeiD0wgku4pGX/S0 q7IqjuRhVNn/ADV8rJAl1w1g2fC3M9yGmIhlvIvWt7eSP1vVMkilacEYVYb74FQMf5z+WZrSS6tr LWblIltpHWC6gkIS8na2iNVvin98gVl5cl5Co60Ko3UPzV8tafFcTXkOrxQW/wBZj9b1WZXubJOd zbJxuT+8iAapNEJU8WOBURof5j6DrWoWFhaQauLjUoxcW3OV+BtwZFkn9Rbhk9ON4eBIJqWTjyVg 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 irsVdirsVf/Z uuid:9E3E5C9A8C81DB118734DB58FDDE4BA7 xmp.did:0D9190091A0CDF1198A8D064EBA738F3 xmp.iid:0D9190091A0CDF1198A8D064EBA738F3 proof:pdf converted from application/pdf to <unknown> saved xmp.iid:D07F11740720681191099C3B601C4548 2008-04-17T14:19:10+05:30 Adobe Illustrator CS4 / converted from application/pdf to <unknown> converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:FC7F117407206811B628E3BF27C8C41B 2008-05-22T14:51:08-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:FD7F117407206811B628E3BF27C8C41B 2008-05-22T15:15:38-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:0CC3BD25102DDD1181B594070CEB88D9 2008-05-28T17:07:17-07:00 Adobe Illustrator CS4 / saved xmp.iid:34001D5FB161DE119286837643AC861D 2009-06-25T23:53:30+03:00 Adobe Illustrator CS4 / saved xmp.iid:35001D5FB161DE119286837643AC861D 2009-06-25T23:56:39+03:00 Adobe Illustrator CS4 / saved xmp.iid:01FC8385150CDF1198A8D064EBA738F3 2010-01-28T16:00:41+02:00 Adobe Illustrator CS4 / saved xmp.iid:02FC8385150CDF1198A8D064EBA738F3 2010-01-28T16:00:52+02:00 Adobe Illustrator CS4 / saved xmp.iid:03FC8385150CDF1198A8D064EBA738F3 2010-01-28T16:05:57+02:00 Adobe Illustrator CS4 / saved xmp.iid:0D9190091A0CDF1198A8D064EBA738F3 2010-01-28T18:16:03+02:00 Adobe Illustrator CS4 / uuid:15cd64bc-c4e3-417a-b6b2-355ff7b02729 xmp.did:03FC8385150CDF1198A8D064EBA738F3 uuid:9E3E5C9A8C81DB118734DB58FDDE4BA7 proof:pdf Basic RGB 1 True False 800.000000 600.000000 Pixels MyriadPro-Bold Myriad Pro Bold Open Type Version 2.037;PS 2.000;hotconv 1.0.51;makeotf.lib2.0.18671 False MyriadPro-Bold.otf MyriadPro-BoldCond Myriad Pro Bold Condensed Open Type Version 2.037;PS 2.000;hotconv 1.0.51;makeotf.lib2.0.18671 False MyriadPro-BoldCond.otf Cyan Magenta Yellow Black Default Swatch Group 0 White RGB PROCESS 255 255 255 Black RGB PROCESS 0 0 0 RGB Red RGB PROCESS 255 0 0 RGB Yellow RGB PROCESS 255 255 0 RGB Green RGB PROCESS 0 255 0 RGB Cyan RGB PROCESS 0 255 255 RGB Blue RGB PROCESS 0 0 255 RGB Magenta RGB PROCESS 255 0 255 R=193 G=39 B=45 RGB PROCESS 193 39 45 R=237 G=28 B=36 RGB PROCESS 237 28 36 R=241 G=90 B=36 RGB PROCESS 241 90 36 R=247 G=147 B=30 RGB PROCESS 247 147 30 R=251 G=176 B=59 RGB PROCESS 251 176 59 R=252 G=238 B=33 RGB PROCESS 252 238 33 R=217 G=224 B=33 RGB PROCESS 217 224 33 R=140 G=198 B=63 RGB PROCESS 140 198 63 R=57 G=181 B=74 RGB PROCESS 57 181 74 R=0 G=146 B=69 RGB PROCESS 0 146 69 R=0 G=104 B=55 RGB PROCESS 0 104 55 R=34 G=181 B=115 RGB PROCESS 34 181 115 R=0 G=169 B=157 RGB PROCESS 0 169 157 R=41 G=171 B=226 RGB PROCESS 41 171 226 R=0 G=113 B=188 RGB PROCESS 0 113 188 R=46 G=49 B=146 RGB PROCESS 46 49 146 R=27 G=20 B=100 RGB PROCESS 27 20 100 R=102 G=45 B=145 RGB PROCESS 102 45 145 R=147 G=39 B=143 RGB PROCESS 147 39 143 R=158 G=0 B=93 RGB PROCESS 158 0 93 R=212 G=20 B=90 RGB PROCESS 212 20 90 R=237 G=30 B=121 RGB PROCESS 237 30 121 R=199 G=178 B=153 RGB PROCESS 199 178 153 R=153 G=134 B=117 RGB PROCESS 153 134 117 R=115 G=99 B=87 RGB PROCESS 115 99 87 R=83 G=71 B=65 RGB PROCESS 83 71 65 R=198 G=156 B=109 RGB PROCESS 198 156 109 R=166 G=124 B=82 RGB PROCESS 166 124 82 R=140 G=98 B=57 RGB PROCESS 140 98 57 R=117 G=76 B=36 RGB PROCESS 117 76 36 R=96 G=56 B=19 RGB PROCESS 96 56 19 R=66 G=33 B=11 RGB PROCESS 66 33 11 Grays 1 R=0 G=0 B=0 RGB PROCESS 0 0 0 R=26 G=26 B=26 RGB PROCESS 26 26 26 R=51 G=51 B=51 RGB PROCESS 51 51 51 R=77 G=77 B=77 RGB PROCESS 77 77 77 R=102 G=102 B=102 RGB PROCESS 102 102 102 R=128 G=128 B=128 RGB PROCESS 128 128 128 R=153 G=153 B=153 RGB PROCESS 153 153 153 R=179 G=179 B=179 RGB PROCESS 179 179 179 R=204 G=204 B=204 RGB PROCESS 204 204 204 R=230 G=230 B=230 RGB PROCESS 230 230 230 R=242 G=242 B=242 RGB PROCESS 242 242 242 Splash 1 R=214 G=149 B=68 RGB PROCESS 214 149 68 R=71 G=152 B=237 RGB PROCESS 71 152 237 R=42 G=81 B=224 RGB PROCESS 42 81 224 R=180 G=58 B=228 RGB PROCESS 180 58 228 Adobe PDF library 9.00 PKk@z//'buildbot-v0.8.6/_images/irc-testrun.pngPNG  IHDR5JgAMA asRGB cHRMz&u0`:pQ< pHYs   vpAg5lIDATx^gtcɕ և;̚yoFjWjdT%TfL2{{ $H 7?̬*Iݷ{OO[ĉc|4g5 a*gfF_:fx6W;F [0oa_0>痛sSݼ7E / o=Љap!.\#= |$qz//܁Z1C7wB:~兇n]o;o;B٤^)NɻN X6˦KS0q'݂[ca Ѡ4@aA9zX3og͖uɊ;_& UMiŔrJ[IٿL{G.oh7k;[V2W5ǢjZßbRѹ^0(R&MhP'`H"*ԤoE}"Eb&~eǘؤXZ22 82 CHg*UcpBG'gNBAA6]I0.ЧKЬdl\>IN& +IkMugn&6J8(ipy&7cb쁝q5:BB.w@ P+as[Ya3laEغvkY`a9~4(erP k״k ֽf=Y+d>Q?_n?^d|BGw+jG%I*W\8S $wl2Dܮf?mbJմQ+3}?4LI֭k@ mj ÷IIthL#/Ѐ0"Wޫ(QjvAՌ>_٧Lh9;ekYL떗Od*auZ> Ӧ+Uh{:Mj7! He9=:GȸĎE^h[XTcg|{Ӭ43Z=W7ookF reh܏iX)}jZ[2^U{}U%K߯,_ i;݁1uŴ>AnLvlNÊͼ^IV}v {3WJ,Cnk~ktIb8gV;b= ۅ}x;Cled P. Yݒb'鑴NK{qIa$S1$hd+ $ ˖ XzL)qS:7&7¾5!EQսMzt3{@ ➔Nha_^WzG9"~N0Q(ZWs{&;,y4qyUZ߱=p/WH mZ:L4/It鍺1Il=4iVll1wmlI \FTdCS5UG.jdIܺӽ9n{a;gpwǻtR`ltzS:s.9 ul`I_2 ef|V=̝@D*l~e/Sݹgwom̛6S۞øczg5_}~ce5 'twyH?nm`{]k8x?ctx^3*)]9:s1LoewsJݑd׺0c0 nK;moS0yV>ٹJѯ,]/JbjXjqvVARk8^\Oni,gp UȰ^]S8gknY*XEX<7X$4 TOntpk<pN.\iKN=+-R5ݳ s{|K*JǸɹQ O4a5Mk3z,rl(%7N͂-#2;: ոe NiZb5Xl,'R.U fSZdJF!5vɟ,1͟(T F p7ӻ&HQ%bJ;N3څ=A)q59|1fdtn25=OsOk^TA{;@"wH^-{ssݢY4[lgRҬvwέՎo"D8̶͛m="3w W_%]83ږq}^oxG~-Rܨ}'@ Mc"y" mImkw 'dmˑ eֵ;ESy [YBL;Ko On_ uu”Rú;Uמ;k)_-S4HȐ/{,k`^%AJ3xf",6v+2Nz8 ^8?ΙCUD𔾗>6[Pˀ΍Y,Qmx>#*3½%Jm]8bۤk͢ڕm#$oSt|7}Re85lv7e=Ԧ%m3 (#yxZfaU׽I)^U|DА³ݼ(g{2=(g=vmWF֑8_n>fw=.ft=i 4n$61,Bˇ˕`_|4K4c)*׌G7IEkgvZgK8s[G;2wÊ&[ F#j*QMap"_ ,*}X{԰$!l?(w&Id#ԾPJIlHw k;^|RpBq B{+ᵫ)ݲ՘v)$ǵmޫZ {֋n `oB{ѝmS)kޯsH^I[A(s+䇎 FHp;ˆ5 uZ%[7HC̣>eܭƴnbث:(}\ip68GO:|0q8b)N&[֭i|&GL>cG _heX.>l@g!Q ڐt3u!I ===gEvqhث3:bQՀ9gh:B'Gd 8\舡ơ m^EЁBW:ʫͫ|R=WC7r\*I=g\5Iujl+?<=/uu/?f؍kOG=&z.1_5(}Aiҝ6^25+YEn,,a+^YĺU&V̺ # ohŋC5׋ 'pl@9ɮ6W]B2mڼ-1z(6eW OX覅蟹EOڠ}4#OFL"-K.b_SC7vvI#ӟt \!WAB͞ NƧ+4xj@pyndEՂPV-P"" jUpwѠ j HKJ>[4{!5bO,}(,[oc>FmpPO;hӿaI/ ޻80&99 xXwn85p?3pxl?;pro[Q<;x|o;C7o :y0t;'FNn 9wPyg8wP= ;=~zk.]^;??;~~θ6&=3AʇSI,|`>m{8i?rG:8:fgsy8GGsh࢛wa3r ށYWi1wc+r|bhe\QL8Θg4tͻ&^pƢxb9I_bh+.qQLc181,bhH, Kt.:pĄQ`kԈ(}Vqfr=K4+eK3dp}(UK{:q ~*FڅC2v/yq0烑sxbc.:q]@ N.Y*DZ8LWȒmD/7,.S]ɋd+J`9ӑt3q {,7o]ĄJ8sѳ珧OM9{<{xIɣ)3gSWp4l4|YiYS0v6yg/|)|I; 뉜w?<9Z<^DF"Q G (1/L[ 0@4 İ(aыl.XhV0fa ı`43Hqqlb l*!6`R0iJRKؤP.QI*K%\*G,K6\*OdTI}"J&za21$IL@e*vPB*EHP=vB%\Rf)+ {Cm7 5"R&Ra+T*1O]%h!2VڣGrJLJ EwW)x6}pӏY&W `|ŌzC l wA+m%z@8x`qHP%DLQ0nbj=(mZvt-:2{͢~wʧni\ז[Wx`C]Gq?׿' _V?(S2xrzxODг9n0转Li dfA_Ҹ^ 8pNpvei5<uY"|غVPNTF|*5`k*Ǔ 0f2ӑ%|3WZ|#b^(NzsVn` g]0bJy+_b۟o a HuŁq|_zp)g:ׂc@+Z[8z?yvJ[*}T ߢș7(O8Tp)hu lE?i|;w:㦍sFc睐Kԛ9ӯ>,P-RܴF;T=R?{H씨3"@"z=}p#06A^"hi @[A9'&P'I 6FC <"> (ݑY$4LQ RD 9O QXn( j;}<W` R+zƁMD3A+Eo,%pE $=Jd~>L8%` /CDR  F/Q\X16yA &T^0 H^A4.B(Ep/) t$J)z) "`7#(t+BSC  It @"8 (]DD*`Kb jcYX fAg,q0:Koo~ʬT *镈O:Eʨ> o"{v?Nl>ֳ3mɛ4fLP9+5pU4v ;_?0sAPޛwcjUԿ\,lOjc ݏpUs;u Y` `zBӧq9ꃼ"g ]+̣ ߌZ@7Z^<약򃼛%RFRD8 䍺՛ oMlPPk|nf1k9ZBOo.>,l͙ o8f@Fˏl"\ut;Yw9޷2{NDZK:foe%YIs<ٳ9Zg͜#5 o'ޕn޵:q~⹽}-É1Bײ_D}X;w*$j^hPaхY#z5; )RFL!6'r?AG$HJN#28$DBN:G/A@z@+D(x)2WѬ$qf(#(&+H`R(a$6Zb="q\tb@A"*v)GT?GrT~@n90OTvH3*4qB!54!L!.#ԀVp!rhV=P0 {0`$RM(aؕ$IMPTre0ID`HG2˞'Jl|7e5wta)͘j/SײX(zb^|ǯ]H(2i@W_fLKhYت\ALC8Jݭ{^B͚{]h{7_0_3Ȝ{'7v|"aUe ^X?ÜGe;ߋ-{~B͜itq3}[VX춟~ }{kE+_]+Y|X>n'._ы|FwTsY-Sv1G3ލyوoF~;_oVv=|j`(a;GH [ _'?QKE&׍aW>rWRրה y HďgH>!̇eߎ*v^~?,{NaG _V)~izPdgqDl,d§3nM]*NA#bd/1; 8L9f T")݄DDQh=EC4AL$ARaJ c1=1 O,:;MXPO84!"ZƱ< $!#D7xte<DD6$: tĠrׂeYЙ%%,⑥! (PZ]uoР:Gfپzܽ[\J$E":.: "+!@ #!J`.h|ZP2M(ј#JMt)DCL $OJ8] Q:MDk$ʥ pGO؋l @& nL6gFWw^tFΘ{IlS2{x}񵔚;ŸYR [鿼zU uD!ESXw-*czvܠʛ#φtf|[е|vB;?UJu픊iY%I,R&eaKxeiX;GôĆ rg ︑zfbsO|0?^ W~;?{ֽ^+=}䐊W(9i{IlgIx[E͞ CUCxI){ȴS׋?}/"dV}tܼSЛ#dI̢⹗aNz=Gk_yvTIWdq7(+!i\Ox>#LGay&"14 =&xOg.,㜏Q(gA%;I16ȴhrEvɅ9g4Ԃ+v7od֜sXdVMd;A 7TH1 ,zB@K`ބEh 0B#|h`/`ǮE2B<%@K *l!HB lB:K#"ºD/qrdx`cjxKP1vV+2ݞ\!6*2Ze5*F՞A2iS39;NΕ]YPGTL:ʤuD&h! #5@UZD+;B'Y'+s !> ^!)WBB4^%'ț66ikA тO>J_ĕ4L_P /mxuOr\5(.]:"y`pe 3&߹7?~+Qu޼ڹ|. Y-ꃔ?W:r7o/_|F oIJx#{/T7k_+Bl Fb'QnĒ[Ue^8ukZZ{a)2}]u+y+>Y\,;dxN~[wbF^inwj޸INnFe|p7:Sp-VRiŲGo١~t-:iohZ/ 8\_z~Nߍ>P9=ܻDQQX<@ bl{o)x㈇c|nFԫ=kwRע#P:AwNS KIk|F9U4QlQ|;奘~j9x< J uAH $as s(z4x5kbz(y~d2M(INA 䏐GjdO4\(9DCLfw(&P2+W,v ͤ2ZzG&[[IwRrG&Z}h5ڏ- = NźnqHfQVS A]4BbPє@4A"*&{=:rybV7e'~<$N&`&,`s3XBoK%`:d(d72+KAHIH)$HjdREЏPN_OGOGy-VxrV^ؘRVlJVEfQ"VmrvgWi AkCjc`a1$WZ&`6CY!pYk$"O삏SH 8yx5Rz %:Bh"4&A"f&U %} āI" ` CQmQ"âfH,fMVf1KֿXs=9x6\o (T*|&`N=袶YK rf+(JW}lHhB0֛eb s Omoڡ29%xުMUE?;[9_Z؅S"DkM$McYH RBO[Q\XfuB riԃ6񵸒-y ղCxpeA u4.[xVg؟F.w붩mP*Z dqO:Y, x:)^ 6rXYsgxz'fj{3"+T:'-:+6,{ PO3wJSD/Ik[ޣc2gN*)U&+ePB v=ILЇ^)iMذ2c<ĭG6]΃>FQ7qEv8X1H7'ٹP"klJX@4GDIq݉ln$An)"MvAF!\"V s$/NHDb:l&P.ɴID ɟ|&Y4>'YmzM=H3$-BPCN"P`A[MBy˟de mUPtpIL[VW"P1m}͵e/X֪ܡ7;[Aa.Fjb5̋$㡞hޢp'5\Sgq,g Y%sT&àUcǮI,'LQbY_:y9s̝amX Fb9B?Vo NY$6by*#W19 "E8N¬9[ $K^cAYXnF pBLa,0@1 WHJDf ˍUHBO6%Ml7RNILQOl%o"QH=8!!\@H%cΚOc{^F$KdRȢd&DyD Aa:o,GVr`2/"InZ4af`H$!z XLA~hI;@S:KV@"i)k[V.5TT,I&X. Vʂġ*d|H0٫^O) ~?~" 'K?kI_+,&FcQofV:4N_=%CzONa4>-F/`= =dXv Ka;8$= Bm1cfNhIϓls籡UOBH!fVE, ڐ!H6A|!YF L$4v- $! )P J 2DZZ:b9kLTxgIhgKXt%ML$B9tɋpdO'yɓE%q})? r  *pPLI qY6)LQ ~ E$ kȢl%2 *ARh ٫A,ΡE 0ը̡SסzyX'eJR%FNW~p/Eُ__½Yx^qgGRn)&bm+*nϬ՘ZJlgP%?ѩUJLr'ꤺm2_ED>@CD3Z'dnOH Ao-z }hp8T*l>h.hCHT.{0T T*  BݦZIIE ȍKőrI,g11j蒼1wea+jB{|(gc}|:N)}a .hY= 9O+]c,ahLoFM?M!{8~@ N + ] 0ƒE Gkdm/ 堘bD&DR<]OJD( @FTUPDNV:X$GPǢ~Eɕv%.֡ǝ)f@IJZ$~*ǛlH%s!(&o`OzS>* mKt/OB&*/iP7!RC$Da1$r0 FxDBJ#h}Dc(АdC;dRVa aXc [#=DEilz,<$'&5o|#'a_Q؟|֗|^ k+ҤF}h&ƪ!Z4JfUJjվJonhT~*߄BΈv#'kR@+IDF"zԃP`ZT>HIa8`:+^&=m-͒`?qؗAg}uk? noJvO)YOLzJֱI{j;-#nmͺ+Jņ~SUF7j*:bqh!qDG$ SWʃ4eB 5" @)`JD!"ĩQTKSKJVSPu%ʪ]* ~Tp`=2rr}lM<4@5#?7d l9C(q 9{Wg{f'evAm<;^6 5S&'12>>1.-|nߴۻ7g/E={2_Wmv(jr1^$o5'5F&#P,DdH$&k$YƺHXH@%IJ%!'.#=؈Ila0 "؀#JXr$,$Rg"\B%x8qɝ&>ۓE37&׶@y&/9F<H`Ŵ @RƲ/sH*X3T!@& a KhT B.J$A.: e8`WDtPFPRM$儗$,220F@+Ѹ C#GHW/.ԣY$`%tRz!O¤? ڋ?O۟n[w~y#sES(A.|O0vL]ڲ+?1{:ũQqnTNuHN 7H΁&Bp,X&B (B0$Y"H1R V(ABz%)c wtDK;QOTD  PHo=ESY;Dlj>ٺH:L=O:8vlfpeQitki.5SKfjlv.j܋ZZ;VOОT4MNgL8 l.ذs]֫=8#h=,.=='аZsω^8 |K.7'D.11ph[,tPzQC!>m=,ԞI7 }I{eyHIMg\ڂ5Q} /C›0RWܽ{L/K2'!jY$A:$ PA<RHMeJGmxb:y}h-XDq % CA.aFZwV^DUx<RB؋rmJEY1j61_jw?}߼/KK߽?g? 7u J?g5vMަĤmmw5xw<\V&6;*fhk$$':pPD0"y hҸK5R!054t@LԓAInи$B/ FiRQRO喷A`a/Ě/ 68hNދ8ϕ|MZq\gT.U5ʬȬRԸln|Njy{Q۰Ok<*9qN˓ Y#c׬ڳd .S0ΏM) q~{i{CyQb]΁]-12qt18aCB_W4wsmԤTv`]5C;iեMLt / +fd*BFVNjn$DmP(-_QVrոZpIzCd7)$ t$ p#Pj?ݿ{%woѷ?ҷ!>G߿;w“bhE4t].5zss[IR|CۖV֩+%G!*GP,^? QI C@+SAf@*آTTj mjR5RQNqi]X T7mvm {{_o [I4P2odդ"(YS|"Dޫ_\r_0&_59u6 Kϫ%'DW4fU=ΩaO|C[?x闳"͈v̖ͨsjN,8);J[s9*7}_~02& o&TQ37%3&wtmDJ,[1{?AZp#./yif?Oj|?/xUw<єdؕz`Onbqzדt%m8T*GvİWNlXTS 15f 9l["Ɔa%#5ı#O[4-m"HP6&"{If;\@$F) 2PNh(> e7`UiYIL2в7H,{)+)/Or 2 Z BE`KDJ$ $Q TD:`)UFQOٰ 0!' l2:o+M2VAaqIHU$k*]yچɞM(zUjڦ`4H:Jd_1ꕸ_}) ❯|?_k?{M^ uH21-x<)5tmocŰMXZ԰gQJ|{߬uwT]?BY`B)D@ ZTա5Jcl v=TS`^۴N.tn7ifkQS-{@jWU3-*? q^`xCc(UFE>e8\r}Ae_y\;f*۸_>6*='jgGRrbS ӓ+dq_N/|Wcr*6? K(-lɪH)kH,oz淯hv/*::<>3^\fjYKlZ8ZS#۶wrzk@ƪ߈LL+oE_(| ^yy$)>#)˶1ָH +;Հ$5{#e/3NheP_S>=t@+akXwlEǖŹbd_ K6S:H{9M{&z<$"%~щTf&k\iP|w6(LL oGEbe~W#ɆwC\>D+lRsɪ] 4@N][KwzMTzǟF|/dv@&vTf]˶5t_|a ke{^(+T%lZ!lʃz]d/tDWS(+V@Ѫ`㝁5?DrklLJP鈞A.A€8P7ࠏȻJV"zTشETlkQRu` nI n:k5,1Y+$kbfeueYX=ֽͬmkl+[W5맭*A^wjjn{;YO?o󷑘oi/5JAiVJ1?xWCsmBXm |B$2*G=ޞAY½M@h7Vm:xhPL\`'-N.a:GCؤzTz.էzuTD.k6g=Q:jHG]kI߹G-?zתH~z>=5vkTsPX6MD~^b0නvNrDhGqo*]Eˎitjnq06OʋZ:*۫*+FlW%awS:Mw3,m$y 3>~O%TJ/ K̎)jKȪ$,fvǖ<'6$G?#JL/{듻卩={#oDď_F 9(д-l3s⓰Aqv-շ?X B*$BEzjgD5B}Yv'RԆ0K&ͤѝ"<\[>~UBӖD׎(>ks\#Pp̦iD" P._ΐC&W;dTN|s =My"T@|O QR+PO|/Q*UT (^ VM"x*+Tn$7DLtLI Y -Un"aфE[Z)1 Mʂ )F%^",Gd|^لX=645[$bdpw*>O*mKz,G<%`tWdvD |Q1Ed/'n}}囟ѷ?ǷG;g?»I]܅5FfKtUbܨ)E+ M;;GZuWVbsYr$jvWavwwL ׿huJZhH (%j S hHB߀fP? Ԥ6g)+5cfͰ`5߄v}`@ /8X60h RfV` I"dkCՄYBw媳B*k$ \Jfi|rnaψI+`]^SՖTP<#'wquw3vZw|\M#Oɒv37@BQCjICGQ(%oreGO=NOĜł5#rO#2[QGu&756 -2׻[9= Ooe wRcFV9S"ՒZXnB7y&v=&Cl+/kEk*$1U+D:jr>WOm(DB2g^#mis<3, pyFybY* rWіB,_}H4''Tr<lXpEU_[rឯU _(RbӺ`Jl-YJU9D'h%, m` !^a Mx "<"TzB%UE@(, B3$j^mDf$Ӷy1SLgfɎ`2bezkSR.׶5fjj6֤zƠVKVfY,|Mpet{4gi)61O_<5/?ֵ_齿?}KVMM {[kV!J0i918=ZSl3HvbҘ[\T".E:fkP#;ohڐ!%Q:M!NCj>o*'1䢮ƄtA1dbp$w0-„ìZOQTBbb" e!r]Eΐl#.$-(EBwUݴ>rB. E"PDhZzVx[=% 4*1x^5O[.J|EPSPOԺX/Y#wˠ6}eB(U";MH96H.x"D `!PKJ*A4!IdG=xr()SRS˭%|9լbnUlRt;fY%/%RS =0a˟Y)vɁU6zGó z^Yhjm/oڋa[O|7۟WnO Ǖ W JV}a֟[^ CuOeQ+A.UB M֮Xm"&E(\\gsFBča=18#B6iI'jD4Iy+5k`[VB+1bY(Jkm t5s2K04„'M ( F2_b W1iĆ̈́YKg"OU+vv^Xq?%8!=Ӑ%du D~@qcBu%M0c Mif>ihOw3OtM*]``)Ba1Z@h'x98<;89 :D5F&W$tOrBhޑk og9B!x>mH!,U -'WU@FBuT*]v,D`/;ɦQL^**^qO+ iZq KV{`ESI(UڄdՍ_DH xyJVby?d[-]/2Q++PC|b[=j#Pᯔz!Hx.:#mcN(X2 IOXHs o_B "Fd~ۖՊ`$a ^LY&˶;]`n*w:aoo F\ǖ}id:;4iԻeD\7m=9hjo|;_%?w/W70W__Ƈ_x7~WK;K+il1䫫RH)^*P&2uOKR2^!۬3J#1[+B(DQ7Y#0Ԅ7PpLD:zMtG85o 5o 20ـ5ȵR![Rl+~NQ}*(!!$>h5-.kry )]Fj+__k){gkfQկ9TJ\0C%Pz^6rc-Rhh0.z j[JrnO_pauamyfЩ~nϏLwyr^^ih'@mb±E^OkBY%`"T/AێPαԈU+*j Y%|R]B\_.#4WU kJ1W]J1Oٚ|Sw[{*ּp#_SXR܀Pt|U0H(ZI⭖^)UJ j65WWmjʺ@v[U(v#" 5u[~Q6VLt(׀w!A7A@%ȥ6Xd'vvC 0v @%Ulo*Boy[c8<8$Jj;\Vlm-qWvˁ^67HlwU;2pQ3O<>黷|?<~?K/~tk/|?a}_{WþԼE&gfj~/XD=٦\,H-PhQݝ]xeSfYr>#%bƆ^slۏԪwB4ZK3fL "jȎ$d }ĺj zSP%8ػ^\>D`oh )5)X-3%=*77KR:mR9&毞j'F?;N]z@_ɮyjt=$ΓAH3Oy=eƼ,I4=Jz/VKW{Ʌ񎪼t},C7M|cj߸ʇQw>1?l>rDI^`r?&I?)m`R$%Lܤk&P>chFZ)TNal SM#5K*)yH~#5Gۼ11 *~Q[Eדo'MXy;Әw xitǑD?LȬ=L_QdQEu}\.W*-ZV[jTPJB)$z¸:hB#RnKJQwl5Z'f~Fy]';A%>A4l\;$( ~p4(;`gg,lӐN$[& ,pjJCЦ60 ¦t)}pFM j(ghlrbY` y}pp H+ d?-)kQZ;ĭg O㕘 JMCj}kgE,_\/*WWvv>pvpxxxo=o1K2Ze5ծξ)U%-u-"r{T~Da7n&VH(PSfxs?.0ڣȌ1E~YU_:fs%kF-.URvנRJWV % 1>-S($5Qo|sco,^\"'Ai@JzܠPl4yU5,H)h<){Ag m,!삒 ]قzPmr |K$'A``I'c ߥi} ހ#/*zs 5@{Rzz:T_t0Toh6/ۄ|~PW'rA@C֏ J)Ȼ,iLjK#f4xbn>iFڛ mː]rLt1TY3ӛt6@1gO!$ÌDA҈xo)L3Q ="@W!$Z0D&(&V% aZPBD  M^AK(I6d,R$@IRĐ ՠZ$C%%VP7@(!r>¿r>"iZu2Kٵc9U% Ud6ZLÖLIg8kk]L]Ti2Şb{woWc6__S^vv~z|vL}rtpoRT.ale]Wq]gvYI5W}Ws/%29")"~JmXJO#e3Ƒ[GgS&`١Kzjӗ^8i6moǧ.mlj?`/ ?C3G$55#mƧCIUSgK M桰Kf'fH㉧]H=]yi3#c}] -umMS }a-ڔ[&L96NίwXpx :66e2Lj-fŘnkmlokommkljkh%hhonoln54Zj[ZqMm-M(Qh;6284؏㎏ M+Fp08#8۩i8cfrqa3^@ԐHʈ,vႧ9]֝ 0lӀ]3DV{7 ]쮓L6V߆'3{f%8V5!4d'Aip"ht1{v"֔6Ճɿd.i={vǥ8/z4>qڶM{E@Y&W!k?gz;]CЛzj~˼=ccCM7m:tpO=h0א=ӆx8&L,Z^ollu]*KV%Re eL{:lڠJkh12.V<)zƿ u,!0KD6fd׎FO=-M8l%j 8nFjB]CK'?dOoEh/)ͨ3z@ec r3t3FK%3Siu2Bؖ*w'&lA8shgo{!ml=-nY`MMXaOV(VDB PoXt1ݣmrQnɤ[mbcS-ܒa*>o!ؖlnK dSFl~c !8-1B|vOKծjOu{:FROa=^ "Qwo<74 LEJ)/'~I@z / >;XQ1]7Wyg[OW\l݆cY5R#x?os4%PEqvNWT"Pu߹X_M>M{S~թG~쑝z%es3NTvbjBevHE##CY29Cg뼋:ߢ cc1ZG2{m-oӢ8^` v^u]ddߓi>%b57&lMo!zwٌђAp >B &<$*c=jMcf?FTEGQ~A vU 5Ef+=O:ʫ+Bx3qf8PgC2N+4#}PM袮F:ޫ:gjw< HF G!g\~l҃u6S \ :hK^7 w,nɔcԠPRn]ϵonm(vd*OlG3Pk9>tY'ٹ"[c=9l6ə |;888ڏ6b'Юs3ɹ‰0=_8Nyz~_0|N ~)Xg:˃{IZ,KM;]mC}=?.f:<5cHÍvtr;=]v;.˰N5:Un :DjPnA8)P2}+0 gFFCc|wĵ>tֶ?_3_oxtLXuda'Dj Fˡid=7I#>VN&ֶˑCNMrf(ݸgNT;.l TQv\Tg?Mx4pAUzTl4 yB vd7&¢d G'Z2`eee%=/􇎃3Ҧtq~zp`8;^'OMRG7 tB}/G<]KjFײjjGҚx)s:}9 G=fl[lo'E ńhGQXk뫃];f'\Dz情z58)Wy}jNK u..gWlJ$+;\cI/ϒ1xQWOI8\bQO_}s^y;ۓ3}0kS(i\,m-+dVw )zɺ&'Do?29m=>+ 3 OڌMͭoJҲF'QsxznzAo:('_oUړ B Hk>8*2t aꛁ$_ %ٗ_Z3s2,Ge{]GCO/,&gfGJMckJVx .g'v/6sTz3F2w̖S~z *k,:p9=޳ >=tg_ZVqtr 9@;\;;*%KKONN6iDw&ȍN'27 $rtY,՗WTʖ*{i`xÏ>Yds+'fA@!!:A]"TXi9<&+yZ]ǧǧgL3au:=έ\&qvXV<$u3 V V HGϨxM gV^k3]G=ݼ6%Ҧa~敿'.;9= 1ӏo}pbDV'gMC3;\ y"а@v1Yl?33-Sx&O.s>>9! kTY.ÎNIAE/*E갈rnżRݼot-7)U=^vgjacZiۃqŊ]O_D\ff%낕UH5<]6sZSɦvhv3}9i9tAAh؊⒒Դآ汤nYZJo^ P;oT^Ol%: !(0$sj…O3fX+tL.rp^+s<{F}|MH8Yӝv{Nī&'UYY8IJ'0X*p}<R6zH q6ff77V+}z,݇ʡoa6߈O46=)͔`6T z538OA>)9J*XS ,.D95h肓W\JR"ihZ:zl,܄jIDAT@^q9ЃUG큉Ꮴ]'PLfX- `rA_ C=e=:MHJN\2r xʚ4ongqN&gCq+m=Ә[FCTV]ͲؘilӘ nJV>kJHiHL), .) ch1Ȩ2*^[kDǚ~qI84D#e[mGq`щ4s&΁?5x.u+Sֳw}|퓛/ZL*a#? |t`Hu1YjY(:p-0XH/ D[1h}tlR-$fI\(gx,m,omˬOlZ6*1a_/_}<~jfd#_4+?wozR]tg~E_Ų)b,A12Զiw=^Lh,W-C RGkF^477 ^,4p>_·yF׏^kp/-<+iRBah]mH5}=] }-S 5C-[ @,9<%AFu}*ӳĂ/ -L՛,p9ŊxH Nc ˫C̲&SـcU]rPPZŘyEopxpdeHaIC=jEß-8O4ֱ H?15c?L1X1aZ^]3F'G'9Ɋ3ؖgTC{ن|ǰ/*UuNl7:>yjYP\Zy6J7=ftl76f)755a/h56>(qOd#{}n6(He#<#3,Ņh0!D㏏=IzwggM,T=H.O )&q"owrbzL.r;=Lqztwvg*&^uLڗ~On˿x#!%I@2lUc3ж4*|@=Y L6$>=g0 s/J6B~NkkyG:I!`APP`[.IR ɖ߬j5ŷ?)'.,]^gTT%ˮlfTvHre~e[UWuT gvcaݳ3'3mdҝN/|Pź[2|^%^ܽٷ#_zQXVIjۧY}esY-ܚ6n\ hHr=?45mV@آvvs`[1{?1>:38`E@f,/` v]b^+ ;'<`U,oKTwbvl{C=+F3il/c˲ń+_NF|Hf-!Otf4fezzx%QsB<<D&fcow뭝=-`؄!ZY*2()Ph A+$AFZk'0 Sf8DhR'R`rp|k3ń ~AX`̏LTwut--ommlJlǺ҆ΖãS&V=7)adGjlNd3! Jg:iwY39 L`BۡH =$lt||3W+~fG˧'G\{a82g(wtj]?:y=2Qr>U |N.jmJI=aK!J ;jX Ռ.n_Ia2Wr;l*}hL5b[d򬚽 &6Cދ ~xx=alh`@˖tǐ(LG"(U-@0 +kdےQ0Kdr#>]TCiUoUYlZ}S`FNW~QiHc ؒA!u Ta)B!y,ۃH"=LWNΜ\8W:ǤǏu?R6Sc0EF`>$Qٜw %ꝞۼypOggnSE=+v,5CV-!^Ȍ. s6h";Bn u@!h8tٖ vIZ"htS8@sd l UaqECVxxԻш .38B{v H'1#A\. lNϱZ:F8 Ʊ E+۲mFcK,C7I%(jz%F+/ƿ?S u{ʼnScbƸf]΁r1*T:. T+R] j"dnO-؋?PEpʇ㰣]-0h"4fQhsGgUYks;:>|odJpbJj2W˒yP_qZ׭y}5#)CNάCeu\oP[,sF*S8spvx^[+N70J&:8~n81i6}.mUX7'r $շfYHWNiޚُ5:Z]ܝT?/V&7iv ؚſW}u8O$?./OTH)ɋձ3^ ,N4>Kh˸I6O(Y$!@: 9#G|ScBMwe1JaNmHcBQ0GivZ"# h< X*a/*1{1O&|9z0F!(Ⱥ$,pr81Sxc$pBDCZ߅q齀&:E? pN&F.?hi#06jv M2!fڝ|ءj!5 ]XuK8^P= 0x2%` a&aIMB+< ?~`6N0k:zƹs֜sy tcsmt|(=]gsT=񅅥s4"df0RFU! h&9x>dѳ idɖˍP@]~(,AC$Qcys+";nw=깛X^?SR[E=CAuQwAr]72gv0.!9=>6N1%72Kny;>J(FZ)MiL)nXZZfaZs`3٢ƑGe =0klt0kobܴ7~ }+9- {7Bo,EzA$#+~`EkoY(o-mh/ml(k.mίjJh?qe'pud[&4x"hMe[X^%^#'-#! U.c^iFW'|z)[134,zOͲoo XPihCjHu%t v]:}S7g C2|W#Ciz$?|`-PM J3Fv`eZ%D{:3AhŠDm&+[Ī No4 ]֚AM`,ՂJz- L74:#FhZ?eeS}``ڛxx` )"kQ=ߡjdup8cs 쒄I)U#,@K#7c+n&ֽ__2>er@R w}r>Y09-T$l.nR]]4 mB*F@RjJFRPKUz h4~U\ɌԾK9z,G%[Qd 5hstS'nS KԶ5ޮOf5Hx^kף?YQVxƇ)ג?Hjv-Ė>LibݴؼƁ$+GE"WJ^,z7ȒJ}TVQE"&:&f+JZ˚*ZDdbl0KspqR[GA ~S/%ChD'FA_値jFؼ<"Z8=hî'{~4OMg| Ek. (!6yXXAv`o3aK\-YĸH-82dħki j/Ms,rB6Bj XKGos{`@S[oS{^$e;مuv-}l6Xws[7ξ涮nlWOo$^\韛k ?4599?3f/2&&qbl< ZdrY5ĚY0K j9:CE=17W?,Q[ {Tz7YZXᛑ%o>.}/ت7cߌ}=͘*NBNcuSOaeGc{_fi3y-EJ_SV_^׀;8<2]UQ;ך_։ٯټɾm̻+ qYڃ I0dx?vlehׯ- YB#\/'O9o4~YG=o6.M͟*)JeI;!S{nl{;~=3=I2%3əIoSR'e&$@${5`+՘ .`0^+O6~myVYZZ~{I[Zq۱Ǯl;v;qjőۏsR~r.T~փKPz|odΕ?[\Q+ܸ@j Sdm;TqlѮ;T(?3{?:tnױY: Ԭ sR R6$n(Xx漘5qk'%pk7WU^8'7y]}uK=}^|`~ϣ{Wz=J7mX!yᬙ,aO{}~ou<~ܔSf ,<<=k钘Ö.N;~ѳ&O]8f–,fW8ZfYi~r݇O8߱+8/ԝ!fݟO6{)ZlJO~{VkS~GOjaS]럄^ХCK^,9pd}k~g\3{~piO:XHYۏdn;dƒ=[J+ص*jeNGlږ^?wo*޹24asɆ3l.6{{z= wUm(ؾh+s7Ǧd'ϋIɎ\%rEFbS-\(bMʍ]4k.<7r^X\6eJMOLMNɈ\aڒ 6,^7mᚡV r!W b^3fN$%#-2-;?q톑3D'Ί]S~Kl⦤鉫W//ƮnFU,E/۾jzsARnA8p~Ԝ,\n~:^DArT㗿hΣ;q_nՑrw㫥Q9*l;Sq boN[wglݳ`ª򫒶'o)݈ZT:s[ 2K6'm_:c-7Ŧd&ˊY%icƼ 9[7nM(HI/ڐSfKvbJVb**RnҺ섵[7&fĭޘ2eaȸՋ'_xyW{MUlKf1ئhY"xE12!95ak"7GG&E/(**,LےaS>'[:>95q5 %R2rקnNLf̻a] oQޝXض(/'361qE*]UQN6vќ+f΋9q1k׆->syjJڲ3/4uy˖&geZީo/ߌOQƆ=oiؕGL~p97{_4?L{ԓCGdd[fʂ-Ə|toۇgD?tӟO~D;'?Nw=Gͣl?$bqTQںͫΊ[<3.lFQsvЁ3r̤ c=dO;h޼eK#,Z8{~;ToQYQ1916cg&lNI_ c}ᖍJϝxhzÀ;~Ӡg?g*=g:|; zӠ?q$S00َa˝~ݘ?dt>߱߿?C_ٽ?į8uW/Z>c"?/\lfwyxJ ĝ+yRv{I&uM%5ttF)>Ҟ 'OPZOƟ*¹ϳd#/Os:2~#Δ#2#;YiYlcn~D.-,Z\P Y~H0?'PL2cq,y(JSSXE*#¼<~yJ\Dhj |+ !|3:ED`*2bAʁ ֏]@*DVbT ґkC5<#KbU,TUq<fϚ9k gX0m>t8~BPrgKq"гm.T*`yH4Y9 u\eeuL#_ms i RiUmJ&Zģ*脮~Pœ$TI9i] |j:tD'i5,&.FfiLJ=Z,)i!.Ժ-E7򗂰ٛ!xj\UyHyvuU eڙuKnC͡*$,pS%p<5n\RN=%_q ʭ{$=$1aY]}{ڋgyx =e"wwUyi I.A~B=I=ų7Wabaѩwl숺N["t(6NSYB, 7oRX:b4ChRׁYg):z,c'ŭPO)܄Bʋ u)W6TZ6/ giBiuNڳ䐞bV7=|+@DA|\Yl?U'bAJj"PGJdCkۆn'AFcBOkCuOtz =`5I(,&〪-Uۙe۴qg;t2)Óvb¢nI*ʍyBEDnY-T>槎nhi^}Puúium \fgi[Nj- cb|`ƬSZrYӆR>VV-J!Y;ѭF+=s3'TmZ_R\3Jb8`tJS#)k+KÉ]P?zM*Sb%+6mZ&oيYS^QV|`1Y"iGafچ( AjRM|Ҡ{L 5ow͕fՏbNf,̘jׄQCK_VsfvTJQEI:4E`UFuW{M+\ʵP ZsPbi׀RR.PUI|({>z`)Am WB4x:%ө֯Kn׮d]MUrPađBJ:I0(޷_9saKi%%QѴ+W~],@:)8111gY/UdI&q#8aiA%fϚ=|b3t9""rǎ)1b$Dٸ;p11q]fبѣ1X{tTLїhdDRtF@Þt}{}=N2ޣ˿:"(@(_~eyY9E8@|F.%6*&2whѢqai DZ?~|QQ1R }sFL}0EZD RB$k"aW8/pE; PSx#?<#2q gҮn`Kz3,^DP)PsQ:9yҮL6r16#OϪUFv+ uN SYgy:Z|VtTnxN`MYf Jr|xS@o5j?Lx1QUl/'N7~шȑ#G?R4 :O޽>LJ^c`1cE9bH0be]vAh( -Z Z͛7?11i1P㸒{n̡%l3wTu̶X'|Ec>,Yr駟FFEf(Esk޼y8h43g7n<;~I&ϝ;6dP566s`#^zfKZ: ̤ѣΝOqƎ򫯾dM;96l/K@mɒe4pM¸q{ÇG}'Ch~vݺԎ;ZEr !!CAEL6OMC!pL\:)Z֭[%K:0ir|\̗ 48%%O*KHHӧ/޷o?0N=vԩ,4 ;aD:xҲ݌|M^*؊ ?M!к^{OөĤQF/G.8yL<0F9>>KρTނT;'OJc=[uE6L4W-P35ؿQ 6u4oaÇ؇~>!$FN?M#5%rJzPtiNڊC@y]{0j9v')A.3~Zj4{ fѽ1&d)ocΤCW_}W(=Wt>Q̚ t Vy >VY/ #DFFCfDܹ /Oh`(Z `rŇ (>۷_e8 oHä;)2*LG+ jFYHlc-[ _ m`@sMwEOPGs΅aac +(,">O߾Z c4p :B]vm?(t{"mIKw$EH>} j qq @aee*"2'(d}^3 & }F l۷/1+;j@o7,ly` ;tPPzj;ö7|#ba0|9䕘 `AQ M*_4jرc` ë`.%i< ΢ŋ-[gqbټ%ֵsg5](&6EŊۘXxQTxɝh]O4)ON?a85 W!Us)RG;:WϊʿՃY4*\ʭ m1rH˖ѲyЗH^Y/^B㊎&hyh28b{*tf^@@jP͜5 |SS7/zgFF}Uep&MG76}IH,|9GES 'hG9r;?$I 2G,Liьsx") Icp3:TǎK2tjj*2:  8 o) ݺ ƥFPҩ-"p*FĠ?G9\`Y a|JJJ_RaEzܹTPCgyI͗y_ZYѡYY_~M0Ҕݎ4Of&kmwR:mlxUhTmdd$== dh*D[BިK.Q^JwNBU$bE(~SN@<҂% eF)-- yi^3FrFGE9hR+&+@$D(/%~p DtxT刊RADAb)/Db1JDK!K#>IwB Ɂ⑘"Mr!3]n%]I8^[iҍYj>2o񒡢rSZ}gC)+W%uHq Ϸ*j)I]9$>N23%O2+=B\"_&ZqNpq+Tܪ 'Q"eg R$rKr)WtE:U_cs+ΩzW-S"mPNni8G{UC6T u8@!9:-.ϡ%wSjU=kJ)u 0wC_2 iGJ꧀P&5msLp9*QcC5諾.O#I)CUڴ%w6|msBG>Ћ.dʌ~# Tn|Jj&T&EkguCk*Y,z1a,f(ɓu g%SI럫 ni"*Cu׻D U#.Ց uJjAڃ'_xc~~kzHc )<]LQ&)Q9jA1IDPc1 X YajeekȓD,r+kCEh\qiCU3QZHjP2/I6:\P˪mYdž?,pG˫= βСLݻ,>|J7jg U^^#X5:x-XPa 1xg3R"Q 7LI 4u\!+HR;?A(PӋ\ҨJt쇫(TO,oS0jlx0f]ҢyKfb2y"1\G;)~A޽gw}nϒ;v2;xLA9r* !} |衇ymL-?*7:Tw֗PJ oB"֯)Q[ U/pyz= ~:ĤTEMRh@Q]Z)V꧴q dL}{ر:yŊGyo 1-GÔn,sby=hՉn"32^|>no1'w]>}0|0tckO>$>so2?1?~ӦM6lI,((/2^~e(cCYXd&>#}۫ȅ}[>;w{O>voߎ=z`@`$) ”-fU:}r$I r(BMmPLA(w|CU' oP .aI(TW E(݁ѾG`"┞7;Y TU-t</f1jc Loca3{7n7nčY@nl zX#+u]رMHL[T[ouwk _7 ;X8b?\ A 1wE.9J(C'Ɔk <#t?o]0 ov&ۭ">>' *3u;̂xV^zuם'Sf\\U+BCڗ^zge -9bbxE)< {Y@c:"\ fm`e\PUI{( /S߿oNޘ;yɧ 0$2aP3dIYy0˿$:$_ꮅPKC*B7_*g:Ҡ_;ﻡ`0 = q nQN6b>n>裫X3a`Og}'L(5a%&&% ;'z,-U^܏>^j&&nPmb}GEAʷz,vF_;zr̳֫GrZĊ'.zM,VP{ÒubnၹhKEGq.M\t(TKP*(uCtB͉ %)2N51^6wZXvd. UPJUSP'gõO OӇEYVP9@V`u^Q;R˹ɥt`Л+W7 JIRCϫ3- 66`{ OJR^BZWƒ:h:dT7.)P 2蔂e},Uuj]dT uw]EIӔVT"T.cCkHF0ն.+WU32CG+Qu~Nr,fm ^<z+ +؂Y1 m-p7fa B_*T۫ !+x  *tLZaswPWZgrW6yֳ|j@y̴eX{k inWmZ#bd|lfUN.a0ϓV3L$bK(xpb#>rNpٷ3 N$^12>G EHJ-4lgk!+8N;+ۡc'w=Qmgz]~ڂuҁD;s yOS[+C! L%?%l ZV#" B+|}Pte>Z΢%c1Ah_fg9&ٵ{wllΝ;-oȆJfW)wfCUTp:iY5eRRT I(hpq֔V-&zIe,X7 R4.݀Ge 9deŁDƾ;؁DX.(,,(,,/WM+Wclt ~ח{`D!Ť7x=)99/ %eH1؀Yb~ko #yD6TIsYi iveCUKC4fq3~S'Ox0 LnnNEZF`ǨѣL:uY߫kȘ1c ҫW>}lJMC*FƎΟuftaaQ\|ܗ_~]bA8a6! ITQQ/7ڵϻ({0K Ƈ#`[wMU^nPT7ԡ]}[a&WM8m PR ˋGMh,KOσG;vT= r TUUa{b(yRU\~=;vldT$8XW,m"c 8g0Bй8(!fXRfșЄ7l[?++V ϊ^WpEgaw*pZ|ioABIVClZHÔzF AWnt(#Y,cSB4t`qv#0LhrSا]BkPŞ(Ϻh?-QHC1H%#ޡRu*AylCMnxujН~W\yIۺCA NK|cq2{̊QŇúUP6-*`|aXͧVk='Զ &(l]a,G2l!QUluM+ F gb,mW3 F[_Oje%Iچ~ە u76$+_MC?ftƆ^j!vH톮SW(:X:["]_(sutN.;a'_f!IRh^Khjp]jFzj^qbG),ߙ@d@vCkNyu!jƍ 5R+|mP݂]*Z=wSz2OC5W ՘0 ujĻDZϪ9|ҺuʅYW]5JՏr!'0Ҁ>N׈0AD)UFb)2؇ۀ IŭjA*tI&ĹikjҮLIIIQ>UF?̜0q}L:u͚*/uyIC7ګUzJD54iC!/_{FH<ݯzs9B8FrBOd嗫& ^_=>l{c?)6gpZjƌ8pȑCIJt lid+zz a 3Q }wygvvvEEƔv0(p c + N헓scp%<A_j1W_aҥ PCaN?*PH2%}o6Yʯw}xƐ??Ca+<⋘Nݲe ȅ}%pJbC݂Ұԑ`:0BE5ҡaC[}U; `o5~=̺,շ_gy>hN_B4?6l@?"r޽׿'$oò C?ah?<2@ رc=p+Ɲk\{lQ0n}^@c=F> $I@7%} jAe% $* ov-)o 4x_i` tP6P:g-鷪*՝?juM GWUWZb#;*u}`[oYò;3l0tB &(Tk>艓'm۶hRDFp0/0 Ƅ)TFӟ8)C0 ct 2<,Rǎ O[-kPO둼PERnP%瑴+jI k~7<}LkPrZ)u x4{t}=2eƆTsqvSO/YG3@;&)fljx>?oRSQ'TtK*vsմ)IWO9vcTt刨ʾ ] =cCdVVV7DśN;}; #YJ |Pl4466=klxβc#9qeIkGT[XSk>-)ϥ7+kGHNZVDfdꇮR~8̣4ueG*ЙpR0͉N|ŶXR 'n,pPJ%|mZ?գl-ԑL6 ]jcc'NYKӎ.3{FDV YnnI/^ Eow/b8zz:=Pe.Sw U@cHMk$M+.-͕CD1[S&DDxԴxR+I\WE@Yi^wW-RHȹIűYFGkچᑁ,#Su$X}Ζ g!oΝ?gI' gYRSec8ǮD Oӳ[ ,R'- ܍+ lN.ѳ, ‰$DgIp-kYKS!>ez S+f]ҒK7uHYկ00 Y,&"z% -^a VO827ָ8tClia)[\ 21׮]60LJ]4}ƃ<QC(Sd LDc$֤bZ!#,Q"3B1fMRmaD ,|6j@\O:@Q$3o}8aF"H4 $RR7b87}U.wEVm[!,wfo^ɽ:RO^UoB%&_!%n&1PLIw7@@Vm^!Ĭ ;tPy'Yڒ8fe@l3hM՚jj%`%B̒c&x{:YYS-Vhf5lŐ3gX}LY_̣`o|-_@wgY* Y2e1cͧl!sTHnʶhf5b {6\a ’ qmÐ"l>dL/{tV l!mdǢDc7 iՉre}ZYcARH67NĒt(f`}r t?nv6 ޽ڵ+))!E; .@h/vڅY̿٨=`ȀpD`g"5&_NȦv#i8AP{Y X @ Ǭ벟.`a'3[Qpdža`t2c LNl?`e욾[NfvGml J`гСH-0/$SRaʌOX5NC.`+=ֻヒe*P+V-G!,K7nܭYг”<Y>PPT$ɠ[--- la3x^[4A_$Ӧ N!$ sa\Yj9rb%+, b e,@:13(#"Y]+4|҄4 F ˌ3 "(͞=[LB"$IHH@_%0MEZR|FZ ]Y5@@~=m(JH1˷`vJW&JJq!f1$k,KPQܢp$B)I*oeaIЗ}IjXkF6@I>`;VM%`V|ŬQZ ` ,uVXiAdDճZpZ֬n& Ǭ蔂Ç u35 [V+,U?L`1סeJf@p̊NߵgnFaj%Ђ%p-*^M̈́Yqb(7 ANB- ugj6헫f7ˀOPO<'lasѳ^_LÜ?oo^>oOk7S_]VMhDB_6aMr%pm=k[w~Źr&3ؚcΝ6qBHEq7߮B0&*](PU2EbfO1cO`@&*qC #wwYdmaAf",֡$?&:*%37 [_f,Eە= 'l/8rHxj*lQd$rZ=ܲG1JL_yƵڵ+$1XXPP`28i""vw;8$Z==ae>}D' 63K.lV&?'6(A̮B~-;UIE R/"S$P6f@pjFE(=> 9VI1aCfСXÆ d7do6lȋm *Jw 0t}v<1\frӣJHZziFD!_`1a.۱c6ŀ0C&ꙝd N:zg@A3dX7AxP& Q]Q) Fxp=d( c`/m" ljyنa^D'BBYdԾ}{ "wlO0@/c f@RUg}j` 2m" 1 >7ĴNYY)} z{c`=aCrrr 5Gy@~2 ¨,;-^zQRtO a,@,Y"`VsݑF1 &̺uxb, ̌qЂg F ѡC&"x x 2ê*AAyy=ԣbӉ BJ' f l`&o^x\(-bGF/rQ'A:&}(8˨)`z,O@u%kx"P$9!A܃0fnYq1Ϻ"h!_e狀:˩a_qD Մ4-)+kJ>z0JpK5Ku3HDBY"NNTr\;8 {C2kI;6bJmOzd'k4cV;*t=O m̝nx;Ow4F $y]( ⑘ w4wyq"qG2%kMrׅPGGV }+Wsjr׬T)D 5Nxꥫ.J% $ EnFF"ISƟ,Dh""#L$ AV:\$-A_t4II 8fEۿWc0K>3$(P|D>=y\qSD:42RH(o{"H*6"1MDvБHML;1| A/~Μ=sI5M~5{@pMۚow_}%GJ'"HoBL A!IّȖ8xBWOSA^>"jPԦT<ٖ5YB/]۶۷1E[JGp8)$ӷT}\/jht>`݊b,bS26I8Jdi€h:~ 'Hl|ye]@ `vr'k*II(OL3-'c8qs앋WZ3tTͨ5 N.~xpq 2fn)R0wqD!%Ԉʾ.=ŋ #"f $ 3߂DA 7jhK*HCr $F.\L3.F7ID:$uCB@>HQ}|U "$dmB,:TL?0,h=C G%k|c|4$8٫-x饗8J;?^QQACg%!Xy@sKUr|/[6E A/n`%Y.JROV``ji EP>Lʐ <&>f6Nf}Y2%dVˬ!Uԕ{}m Դ%0X&tdhÓY:i=~O?4x0ziLҔ)>c%`/=̪0=)&d|'bΘK_#/qJAt` : >Bu@x2.&Y"A`"˜AJċ-'U {&R6xoaUgD>H@vcE*P" xH/,` ^y!!Cwq@*@H$|A"䉃PA"fxU8vEAa_M"P)P~ٜT͇Y6_X2Rt'X&C'i$.IDATh`=0$EWp61=G+(q<"PqG1P>@4tV?>u@\, C;P LINpj 8PJ z0r!t 22G/ zb!"VrP (RbubkD,BAABhJ(!E(i$.Y=:6c8z-2mA܂koX<6 V M,fy|W+/LK@ {R@^w6i4S ҾjXR;4 BeH8$@kU?tYkJ"/FC1:#e$DAZֻf@g  <`VHgA%rCtu<|RH:(cpG5yK!)M-th o?6&NΡ)R;d?-Y|ATTdc{e&b3YuŊ.ZgV()(Sш/ ! P:ҳ ፋJv7o(G(ne~cHP% B3|d)XfK,2hF/y}g!j9#G␧Lp5_OԅT< U.qeYIKpOr KꅄBuJKf/%&*Df285IqB>kjp̒yC*P?MRXKJf)=(2nFc0w)o?svۏ %AD# yRA^BK*7 e p^ c$.Ѥ8^IsʏͰ>'c? |Amg]W/`nʈ2G,A"@+ >Psׂer1\5ۨѝ&+`Vx`$C!K7@?E ]hf HB=q  $vAǑ֝@"";]7,y>%,a"Pk?g샅N,A`JXk” nbGZ&:A`$XbŊ' b1YEb1$X$YɢYT-隀YW!,0U0qs)">-/ 6b!C\HRCxá8˛PK TBS (%),̊/qOv?IÐ vΰ83,b~o|d\]R;FF 8& }PvdqH^D~a|0哓ʇ|Ktքn'oP7'/\Ps"+ BκR/A֣lPyBIKdFhQh>jQŶ\S~!l+PKbV%l[ X 4,f54--++PKbV%l[ X 4,f54--++PKbV%l[ X 4aȨʾ ͿFnJ6--+++-c'L]vt=SVT>*zۀEEl;hQ0zřX56v۰eC˾RPYR8[4-++!00?nndܨus#o~ R6۱aۨk[ +# n\Bݫm-,*),zV۩j[+6!6^\RTX\XP\T83=-/7bVc[+$5+ʯ8;3-?7bV[h[+6"Ym"m1n X̺I*JH $%e>9WZrbD1ǗI$򕝘d¿AVL*/3D8$i}Z 6}tϜ9 $pvnф[NL k!/o^=++H)1d$8nܸn 2eʟ'N xb훘3~xoVǎq x\;8={p}88erjnz$}oyw++6 &,ѕг^ ^ ׿r '}7@;ӯ_?$أGݻ6lXΝ9/8  <5k|g6m4ֻロc8*CmƙTuV$kΌ Vjf@H0 ȱ:u U( _sz~; &++ u0CbHn:W_Hoʹ>a„z())oy4!9`111\VZ,@  ql{0 퉣Y׮]qՁ0+555'' 7 04p@"3$$=W^!icǢ >GaH 9~ꩧDdLڪk2o%`%GZ]L*GedOMnnNݻ9駏>PF>Cɓ'3R~z*p,(w(kLfדO>9c *3 HL;LO8Ag}cAfdž[ j ,0&nOӀX"`אQ+k@$w:$l`7`}!F)xqs(4av˖-Xa6mY܀I0Y4 ؄ayhY},-fIA f)̙3b XƠA-Z,t۠gرM>:X̤2V”#('ioraVnNƇD 1A#S0G#ic[F(VL3]PF"#I|*r}#rK,|皑}$Ixˏlf Ǭ`c+F ; aԤP_ȸ|#_’; w qJ0OLZ$.U//wa" 8 ^eꙑ/'M" \32$ K3:H 8f5Rjmi=Ғh=C4 .H;ùCDڜ? 5 ew|d|LP3]0Ca^e*$s1I/}Δ "0eF((BS ùܙ-b&ID&CHF27O!+r2e-IRR$ X ƒД(#:Bh'!%D&wGC)$LJrQXDjf⤚ ٴ,`!w7m>)=O4&>#Ϟ="D|)!KLKںKA}ȋE#>uj,C9)Чh0'&BY*GL /6Ł"@a\#ce_!DFЧt-L{UW“VdWN* 3z!CX@sܬc R~1KPV+,kI2]t)Lt] UPP@"7xt2 YA^eK.Xgbh/,$s:6FA*yPr$2Ed|駬,8! E+!XB*Ҳ@ YB\K;t@dDMA_CŁ/&_j:"` R,dE,p'@IDFx<:t1-YϐcCWd4JVQt%zXz#b1ACh&ui(#O PAyP u O 5xeH0k H(FyW!@^N&G. DL!- D8Pbāo-_L N OLKbV)7!,4|]Eۥ.Gцhy8ht3M8 xJZ"Pw>i:m|h\CϨMx$'2qŤ2{e pA_xh$ƄmaO>h¤a#!ad$\q'h=2hg~CŃ4}' 8KǖG u%a$0|IK1D Hwfɋ1wvRd[RQX#,}Ǹ܍dYkjV $8H[xKrgA&;I*JJH)1Kb`}QvNN _KC%.F*=tl- eHIvl`hņ~ |Wـ#xPl|++),lӟx U 4lao;~4˱ UH lc'D6`6ӲMglf_! &%sA}v{+٠.h€T#@e֖JJ $Ŗ?|Ɛh9 >E-ze4[nAv#Mwu{t YXYΠNZ`s;Aロ-`&,fVn%Ж$Bbq;@vqI Xѕ'-(0*a\nX @O#\ ?٠b <8qc8bV[j,VH1K~ .;z?8bEa h zl+++HbV}dX X  Xj)5a`VIQaT9}g^VVV7\!,v_H!HI 1$I@Ԯf _(Z 2"(H/'Iymh.~mO!,<ԍ_%fod>BNja$W  ăW}(/8q˗d%/5__I!Wo*wv~#-lhz2 ;YYIYj`O8!k}[.$d#S$H!Q kJH#gbAb/( )(Y~}rx *C7N< BȸEtAי}yAL4M)L*q2STR?U>Su'rDPD^F>mRMYң8994Z$Gs0͑INOMKlBM4k9+K7=~`==;{G؍Ȏkҝ؆FVƳ󑽇0 "Dd*&9H D` 6(>m"K( Yz}s~H+=\V)pΧc١;; ā|(&9&AJ+лwoD8xDڸA l{TG*䈈 IDjAv\ADH5U> ?1­ =;򲳽O>X'HEt0@FLjP6<=IMqMJ)1 I3#Ǧh^q=hw0hE[qM3i|+;Á > 9]v fa.=a0Lҥ nlSvS?bwV׮]aHA3f ٰVG"٧- l@[qI|Q6'n9%%qƱ"$# EyAUC#>Daɷ[nRF,^' wι믿&HN:<4A+&LA4X/A̓ɎNiӎ|sQ^H!CL qȈ!CaTlD(b&-"/<>,ɛXT^9;UA_}lۂ|ɔ0W_*ۤBY7|M4b{֏'Cf`ӻK!>IsDl3o@4StbA b`}P%Ν;!Nr8A+ 8 Qb=1 %8dMG“TD &-@ +nP :!PXP`C\LBmɗNKN(Ѓ5"DV/DB$KL+H) :bpPЀO' x=T$bP+h!t95jYfa 3@6D\@PΝG y@ @AD$(ؠJTqA7R&}`R {@H0'0.*5yOGa@8пh2.h0x3L8@0FOK-;qI)Ih[07[ahh#"ԸhC!PRv j:ɋB\xiѿ.IrD80 DIbĄ[أC$ȋ P Fr$_r #E S@# "5ˆ* bTBulE15 yB~R@z#7DPy$FL7TҠF)AFBu@ O?D&%Ęue}IƆ7a ;M5BY/BhZnWF@H0K^AҾ}=%0,HZCB\BMK]q d$}#orR35%umJa܆mٙP_Y 1Y9PI.pž[^|JYP& C jsCDI+CSL/ nM)lI WnZwۓ@H0Ɗ}c?ICcvpXp`XAN cbŬ mY$&,bSp 1lm#,aD `,nX&x&DE."sRq0<*-fboP[B-LE}6b!M{<5_fC,!`ږ"11ЃbKN/FEkAL|ֆoW #2uZ \BYTj{ʡCSS֦OܼicM[/mӶ hChu W=@A~^fFZVfzedeV飯޹cgUڎ@PE$*1C¬t''&Qb"c"?v>-[䢥7B7Wmyh%bϬ#- [tY!j/$aI 8,f$̒t{Q _2lri{'G AWJK@cVRiqaIQeofN뫟|.$871F1BPp#<2YBٗɛ͇W$%lm`3LU[+JWn,/.).l f "Uf"R#]I - b= MȲFXy >P-fyUB e%$f%&ǢR%;aiK g ,G7s'ߐTY-IQvr+'n;H;,̹ 鞜ɪza5sfy>U/((a+;r0/sp)+!>gŬVQ-J/jX߃vrSꝹY7M0ˈ9| s>;Ѽ8l*7n`@ )Dt&ΎGu@:N?g" DAcg"h'ۀ8NPc#Vc^YloИuhf|Ux39 Zm޴IaYB̓Afz Ř_&L CL)Xs̘1ӴiӀTs{>{"buildbot-v0.8.6/_images/slaves.svg image/svg+xml BuildSlave Connections Georgi Valkov 2010-01-28T18:17:14+02:00 2010-01-28T18:17:14+02:00 2010-01-28T18:17:13+02:00 Adobe Illustrator CS4 256 68 JPEG /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgARAEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYq7FXYq7FXYq7 FXYq7FXYq7FXYq7pucVSn9IXeraf6uhyLCGl9P61dQycTGBVpIozwL77KTRevXvRxmcbh8z+hyvC jinWUXtyBHPuJ6feiG0ez+vSajEvDUpIzF9Zq5FKbApy4kAitP6nJnEL4h9TWM8uEQP0XdKH6TuN Ms4TrbK8jSGNrq2ikMQH7DyD4/T5dDuRXvkPEMB6/mPxs2eCMkj4fdyJF/DvTXL3FdirsVdirsVd irsVdirsVeZebvzLXyvp+n32pTX0v6SWSRYbGK0YRrDAbmUn1+B4pGpp8TMfc4qh5Pzl8nxRvJL5 ku44452tHkaxkCetGGMih/qnFvTEbF2B4r3IqMVVbv8ANzynaXclnN5luTdRzG2EMdm0rSSqzIyw iO1b1uLoVb0+VDscVbu/zZ8q2d61lceZLlJ0a5Vz9SYxqbJ2jueUotTGPSZDyq3Sh6EEqoO4/PDy Nb8hN5nu0KAGVTp8tY+TMirKPqdY2ZkNFehP0jFWR6X5wj1PT4tV0fVX1Gy+uR2hd4kWJybhYJeD elEXC8jRkPGo774qzjFWPax540fTrxtPhSbU9USnqWNkokaPkKj1pGKQxfKRwT2BxVLV85eapByX QbWNT0SfUHWQD3EdrMv3McFppdD+Yn1Y/wC57SbjTot+V7CReWygCtXaICZB/lNEFHc4UUyy1urW 7t47m1mS4tpVDRTRMHRlPQqy1BGKquKuxVRu7y1tITPcyrFEvVmNPoHicVQa+YdLNhDfM7pbzsyR NwdiSrFeiBiKldsVbHmHRzKkX1j4pGKIeD8SQQv2uPGnJgK1piqY4q7FUun1YzQXA0cRaheW8ghk j9UIiOevqOA32epABOVHLYPB6iHIjgojxLjE78vuVE00PexahcSSG5jiCCFZG+roxHxsqbBia0q1 dulN8Ix78R5/YxOWomA5X3b/AD/UlF/+YHly2uJLW3kl1O8hPGW30+Jrjg3dZJF/cxt/ku4OWNKg 3n8oOUnl/VFQfaYfUpCP9jHdO5+gYrSZ6L5u8v6xM1tZXVL2McpLGdHt7lV/mMMypJx/ygKe+Kok 6Z6N1dX1m7i6uIyPQkkc27SADg5T4uJ+EAle2VeHRMhzPyb/ABriIy+kHnW9fjvWw6usUdomrCOw vrtmjjtzIHVnU9Eei15DcDY+2Iy1XFsSmWCyTjuUY9aTHLXHdiqAudd0u2uWtppSs6BSU9OQ15fZ oQpDV9sVbi1rTZpJ44pS0luHaVOLqQIzRqcgK0O22KqthqVlfwia0lWVO9OqnwYdRiqJxV2KvJPM vkzRfN+k6Xb6vHIY7GJ/Q9KRV+Ke2MHM8o5Pij5c0p0YA79MFppJY/yV8nnUJr29+t3/ANZvJb+5 hmmhRZZZllDrJJBbwzOn79jxaQjt9ksGbWl2p/k35Y1FpxLNepBKZfStllt2jgjuJmuJooBJbSFF eZuda8lIHFlxtaR8/wCWPli4jeKeO4lhkOqM0bzgiusOjzmvpcqoYh6Zrt35HfG1pAwfk35VTWf0 3O95eauZ4LmS9uJoWkeSCQyVbjbqtJFPpyAChUDod8bWmT6TpNpoHlvStAsVb6nYz2cUUkrh5CBd xtVuKRqST4AYopPfOet3zXUXl3SpXt7qeMT6jfx/atrUsVAjJBAlmZWVD+yAzdQMKsesNS8pacsu mWd9ZQNZK8lzbieP1Iwg5SSTVYvUdXZ9+5OPCe5Nowa5oplWIahbGV2iVI/Wj5Fp1LwgCtSZFUlP EA0wcJ7kqc3mTy7BawXc2qWcVpdVFtcPPEsclOvBy3Fqe2HgPci1G3vB5Wuf0zp5roFwQ+sWSGsS o+/12ACoVk+1KF2dat9obgKXpfqR+n6nIenTlzrtxpWtfDChjGtee7O25Q6eBczjYyn+6U/8bfRi rB7/AFK+1Cb1ruVpX7V6AeCgbDChlek6lpf+HdOtpLyKGe3uFmkR+X2UnL02B3K9MCXWr6MJbZbv UoTbWkZjQRswMgEqyJ6gK+K7gHsMVZF/iny//wAt0f4/0xVCaj5m09o4RY6jEjieIzFu8IcGVRVT uUrkMgltw9/2NuIws8Xcfn0V4fMXliCMRw3UMUYrREHFRU1OwGSEQNg1ykZGybYrrGty+armeysZ 5IfLdsxhup4i0b3symkkSOKMsEZ+Fyu7tVa8QeRJUIi1tba1t0t7WJILeIcY4o1Coo8Ao2GRSqYq g9T0my1GNFuEIkiPO2uYyY5oX7PFItGRh4g4qmPlvze8E8ui+YrlRfQr6tnfsBGt3b1ALED4RLGS FkAoNww60EmKey655cmULLd28ighgrlWHJTUHfuDgIB5pjIjkoaX5gskswuoalbyXXOUllZacDIx jGwXpHxGRxiVerm2ZjAy9HLb7t/tRX+ItC/5bof+DGTakl1O60641SO/t9RteUCxemkjkBmjaSoa gNBxk2OKtW02i2639zJqEUl1cC49NFkBRUlYvxAopqTSuKsItLy6s5hNbStFKvRlNPoPiMUM00Xz 7DJxh1RRE/QXCD4D/rL1H0fhillsUsUsayROJI2FVdSCCPYjFXnM9vqFzoKw6deCwvXhjEN20QnE Z2JPpsVDbbdciyYa/lb80odavrvTdchhs7vVIbgQXM0t2fqCmQyxIJYvSgqGXikSf60hoMKoHyz5 K/ODR9MtNOTzHZR2Vpayww24iWXg6QcbekjW8bMnrMWaoqFVRVviqq2PK355zaXJb3vmezkuJ47q KUxKsKqHtglu0bx2qShxOzs7BhQBad1x2VG6boX50pq1tNf+YbOTTo3ia5tkWImUCeP1QCLONkUw epwXmWDUq5HRVnt50tv+Yu0/6iY8AVC6Q5urnVtUducl/qFzxalP3NrIbWAD/J9OAN82OEoDzS4/ L/zXd+Z9Zka2WOwun1Vra4leHgPr1p6EbqIyZuRbZg44heg5ZkjLERHwY0r6b5O82vqFjqF1p4tj Hf6R6kHrROyw6dazwyzEq3GjPKOKj4vbAckaq+/7U0h9N8vecoNN8s2tz5Za4Ggi6SeGS5syk4uo ZEH+7DQKzDlXfwwmcbO/ND0Lyfoc+k+U9O0e+KzzW9uIrgfaQk1LJv1UV45RklciWQQdhetJoNtp dxqrcdNeaxNt6bbJaTNDCXYfaLRIjb4ELfq2n/8ALb/ySbCrENRn85Q6hMbG3FxCZVWBWMIgEHpg sxq8c/q+pseqhdwGOWgRrdilsGr/AJpF29fQ7UJwbjxlSvMRtxrWc7GTjX2+/JGOPvXdUi1T8zmn HqaPaJAQx2dWYbmgP78b08Pw7Dhx967sx0hGn0+CTUpBa3rRobiFULqJCoLgFWYUDV7nKjV7JRn1 bT/+W3/kk2BKG8ypa2WgfWdPuvV1CUNHHERsJHISJj4fGw2OKplruk/VfIWpaVp8byNHplxb28aA tI7egyrQDdndvpJxgfUPek8nmHlLSdd0e90zWrjRr36lZXb+pb29tKr0l0/0eUdo/wC8H72vqP0Y 75kzkCCL/FsQoaL5c8xaRaxtd6Vdsba80G5kSGCSVikDTyS8AgPIxhgGA6HY4ZTB6960nbWGpah+ YUmqWelX9vNPqGm3EV9NBLAi2MdqBdxu7hV+I/Dw61yFgQqxyKerOvPFqDpCago/f6XMlyjf8V19 OcH2MLt9IB7ZjBJQZsb1SVa3kBGxBRqg/dhQlU2uaTDdyWk1ysU0QrKXBWNfh58WkI9MNwBbjyrx 3pTJcBq0LG8y+XFUM2q2YVtwxuIqHcj+bxU4eCXctr117Q3aJU1G1Zp2CQqJoyXYgEKu/wAR+Ndh 4jBwHuW1FvNPl1ZVifUIULMyIztxRmRY3IDtRD8MyEUO9du+Hw5dy2v/AMSeXeAf9K2fA0o3rxUN agb8v8k/djwS7ltMrX/TIFntP9IgcVSWL40IPcMtQciQqb6Ve6/paPc2yuLZCPWjcEpv0JU7j5jA lXMWo3vluJNPuxp97NbxGG6MQnEZIUn92xUNtt1yLJ57q/kf85z5gvNS0bzTDBbPc3E1jZ3Es8kc aTqUVXjaN4yEVEKrQqrFiP8AKKE0bQfznNux/wAR2n1l42QKqRJEkgtoljk+K0kZgbj1S61G3Agi jIVKFl8sfnYxa5Hma0F6tp6EC8VEKTMtqZJSgtaOWeKf7QNAV4hatR2VlH5e6DruieXmtddngudV nurq8uprbl6Re5maU8eSx03bpxwFU+vOlt/zF2n/AFEx4hXnnn7RtRv/AClJolhDLLdW+uXELiNW ZkRZp5YpH4g0BRo2r03y/DICVlieTDk8v+eNSt9U0640y5+t+Y7q1vbuSRHhgRFSeZ42lKsq8W9N aeO3XL+KIo3yRSb2en6xf695evrvSby6uZYLaz1W3v7SZYYEQGOWaK4JVUqKsyEfF71yBIAItKV6 l5KkspUmtvLzSIus6mrI9lcXEZtFFLUtHCUdo/i+Ahqd96ZIZL69Aik88qaFq0H5gx6lJpk1rZyX 1/S7EMyMyNaxiNJlYUSCpJjYk/HUZCchwVfckDdmnl3TmjifXry0e50m+urudDH2jMzrE7DbZlUN 4GuY6tm40okn6nJ/yOA/5l4UMd85eX7XzDZQWsLvYiCYThyfWJdUdV6elShev0ZPHPhKkJNB5M16 OSyZvMt04tmRplIl/fBZXch6zEfErBenQZM5R3IpG+XPLep6Xf8A1m91ibUojH6bW8hlC1+D4x6k 0wDfAe37R7bZGcwRsKUBlvr6V/yxyf8AI8f9U8rS719K/wCWOT/keP8AqniqB1q80uHTWuFtJFa2 mtrnmZeQVbe5jmckBF/YQ/LFKe+cpJo/K+pPBfjS5hCRHftWkRJABPEMw8KgVHXHH9Q6pLzjy/51 FrceWrjU9QntdP8AV1SC6nuLqWeC4aOOD05Fd6M8fJzw5Voa5kSx3dDuYgpVL5s80yX+q6nHd3sd jcO+p6MjSMIpItNuuMsUahj8DW7FnUihI77ZLgjQH43W1WHXtWXXdFutT1K6W31mOTUBbHUJrOKM TXlIQoAkDqIQKR0Fa9ceEUaHLyW3q3nSYR+VNUB3aeBraMf5dz+5T/hpBmEGZSw316xLNcSEncku 1SfvyTFI9R8q6DqU0k17a+s0pDSKZJAjMEMYcorBOYQ0DUqO2TjkI5IpB/4A8pfVhbCyItw3P0hP OF5bjlT1OtGIr4bZLxpd60irXyj5etbyK8gtONzCxeOQySsQzLxZjyYgsw+0Tue/QZE5JEUtLW8m +WXljlewRzFQxo7O0YIQR1EZYpXgigmm9BXoMPiS71pDxeQPKUcnqLYnmY2hq087fu2jMRX4pD+w xUeHbD40u9aT/T4xp1nFZ2TPDbQqEijDsaKooBUkk0HjlZNm1TfTbfXdTV7S1MkkMhHrFj8ApuOT H9WBKKOmNe+W4dP+tz2bPbxJ9atHEcycQpqjMGArSnTpkWTziD8uYbrUfMsXlvzyllquoakb6+XT 6NPAVmuGMUypc8q8rgI32VPAVTlvhtCKm/KTzvIECfmDfwUWVH9MXRDeozMD+8vZCCnIKtD0Hzxt LNPJXlzUfL+i/UdR1i41y9aV5pdQuS/I86UVVeSbgqgD4Q1O9N8Cp9iqhedLb/mLtP8AqJjxCrvN 1q2h603mAf8AHI1ARxau3aCeMBIbpv8AIdKRyH9nih6cjkigKoIIqOmRS7FXYqleqSXd/cp5e0ty upXyn1p13+qWpPGS5bwP7MQ/af2DUICC9DsbG1sbG3sbVBHa2sSQQx9ljjUKo+gDChIta8kafe8p rOlpcnegH7tj7qOn0fdirBdT0fUNNl9O7iKVPwSDdG/1WwoZv5U0XSbnQLWa4tIpZX9Tk7KCTSRg PwGBKbf4c0L/AJYIf+AGKu/w5oX/ACwQ/wDADFUHqvlrR2tU9KG3tWFxbMZWUAFROheP5yrVB7nI ZOXOtx97bhI4txxbS+47/DmiLjyr5cuIJLebT4WimRo5F40qrChFRv0ybUwrR2ubKSXy/qLltT0w BfVcUNzbdIbpeteaij06OGHhgKQmmBLsVdiqX2divmXzDHacfU0bR5PW1J/2JLsLWG2BB39PkJX8 DwHfCEFmX+FvL/8AyxR/j/XChCaX5U0xbJRe28M9xzkJkjrxKGRjGP2fspQHbIY7rc2W3MYmXpFD b7t/tRf+FvL/APyxR/j/AFybU7/C3l//AJYo/wAf64qo3nlnQUs53SyjDLG5U77EKSO+KvNLe2nu ZVhgjaWVvsooqfwxQzHRfIP2ZtVavcWyH/ibD+H34pZhBbwW8SwwRrFEuyooAA+7FXm+oWmj3nlo 22ssq6ZJDGLlnlaBQBxIrIrIV+ID9rIsnlHmTy1+UOoatqFnqGv6ob9LqaY29tEzmKS6vqSx23p2 j+rW7cJQF2DCldjhQn+m/lh5A8yaU+paXdXv1HVA7PcelFE83O7a79QG5tvVHxNw5LTkiqDy4g42 l6dgV2KqF50tv+Yu0/6iY8QrO5I45I2jkUPG4KujAEEEUIIPUHJMWGXHkS/05i3lm7jS0Jr+h73k 1untbzJykhX/ACSrqP2VXFbQjQ+cY2KSeXnlcbCS2urZ4ifGsrQPT/YV9sFJtVh8v+ddQ4iU2uiW 7fbdW+uXVPBV4pAje5aQe2NLbJ/L/lvS9CtnhskYyTNzuruZjJPO/TnLId2PgOg6AAYUJpirsVU5 7eC4iaGeNZYm2ZGAIP34qssbG3sbVLW2UrDGWKKSTTkxY7n3OKq+KuxVRvLO0vbaS1u4Unt5RSSK QBlIrXcH3yMoiQo8mePJKB4omiEOtrqEN9B6E0f6LSIRvauhMilQeLpLy3rsCGH05ERkCKPp7mZn AxNg8d8/2JTqOlaV5ts1mX6xp+pWLsttd8DDdW0tAWUhwVdGFOSnkjCnsQceQSCM2E4zRo+42kU9 r5v0wsl5pn6UhQbX2mMgLCtKvazOjofZGkyVNdqJ1mcgCLR9Vll7xCxnSm9PtyrHH/w+NLaKg8u+ bNYJS6H+H9PJIk4uk1+69wpjLwQV/mDSHwCnfGltmel6Vp+lWEVhp8C29pACI41qepqSSaszMTVm JqTucKEViqXeXksE0e3Wwd5LQc/TeT7R+Nq12X9qvbKcAjwDh5ORqjI5DxfV+xMcucd2KrZollie JqhZFKkjrQimKoXTdI0/TYvTtIglftP1dv8AWY74qjMVdirzHVLjQrbywZ9eETaSkMZuhcR+rFx+ EDklGr8VO2RZMD1O8/LTT7u/8y3OiXohtNTa3uNUWU/VxexXImkdYfrI4D6zapyb0l5tT7QJwqyf 8vPMWhahYy6Ro+m3elQaIsMAs74Isqo4bh8HqzS0+A/E9OXYtgKstxV2KqF50tv+Yu0/6iY8QrPc kxdirsVdirsVdirsVdirsVdirsVdirsVQmp6Xa6jbiC45qFYSRSRO0ciOtaMrIQQRXIZMYmKLbhz Sxmx9u6wzanDfMskUb6WI+SzqzesjINw6UPPl2Kn6Mjcgf6P2p4YGOxPHfLp8+itYajY6hbLc2U6 XEDbB0NaEdVPcMO4O4yUJiQsGwxy4pYzwyFFJPzC0+81DyndWdkHNzNLaiMxqWZaXURL0Xf4AOR9 hlOriZYyBz2+9zOy8scecSlyAl/uT97y7XNH81XmiaXHPo11NJaw6jJcRrCzKJ725uAvw0qxBVHX iDQUPQjNVkx5DGPpOwPTvJek0+fBDJMicRZhW/SMY/tH2PZ9Ds4rLR7K1jiECRQovpAU4niCRT55 usMeGAHk8jqMhnklIm7LWiSNJpkLtaCxJ5VtQvAJ8Z/ZovXr0wYTcRtw+S6gVM78XmjstaXYq7FX Yq7FXYqwOx/3ht/+MSf8RGRZIOXyz5cme7eXSrOR7/j9eZ7eJjP6bBk9Ulfj4sKjl0OKq9jpGk2E txLY2UFpLeOZbuSCJI2lkJJLyFAC7VJ3OKovFXYqoXnS2/5i7T/qJjxCs9yTF2KuxV2KuxV2KuxV 2KuxV2KuxV2KuxV2KuxVKNb/AMO/Uv8Acnx+revvw5/33E9fS3rSvXMfN4fD6uV/b8HK0/jcXo51 9nxdP/h/9M2fq/8AHT9MfVP7z+7+KnT4P5uuMvD4xf1dOaY+L4cq+i9+X9qlB/hj1NW9H7dJP0p/ e9Ktz6/7L7GCPhXKv87myl41Qvy4eX4+ajL/AIP/AEFD6n/HJ9Y+j/f/AN7Rq9Pj/m67ZE+DwD+b fmzj+Y8U19deXL7mQR8PTXh9ig4/Km3XMocnAPNdhQ7FXYq7FXYq7FWFXP8AyrH6xL6vo+rzb1OH rceVfipw+Hr4YpU/+QWf8V/9PGKu/wCQWf8AFf8A08Yq7/kFn/Ff/Txirv8AkFn/ABX/ANPGKq1p /wAqz+t2/wBX9L6x6qehX1/7zkOH2tq8qUxV/9k= xmp.iid:0E9190091A0CDF1198A8D064EBA738F3 xmp.did:0E9190091A0CDF1198A8D064EBA738F3 uuid:5D20892493BFDB11914A8590D31508C8 proof:pdf uuid:fd772761-a3ec-4632-8af9-c0442bd7dba6 xmp.did:05FC8385150CDF1198A8D064EBA738F3 uuid:5D20892493BFDB11914A8590D31508C8 proof:pdf converted from application/pdf to <unknown> saved xmp.iid:D27F11740720681191099C3B601C4548 2008-04-17T14:19:15+05:30 Adobe Illustrator CS4 / converted from application/pdf to <unknown> converted from application/pdf to <unknown> saved xmp.iid:F97F1174072068118D4ED246B3ADB1C6 2008-05-15T16:23:06-07:00 Adobe Illustrator CS4 / saved xmp.iid:FA7F1174072068118D4ED246B3ADB1C6 2008-05-15T17:10:45-07:00 Adobe Illustrator CS4 / saved xmp.iid:EF7F117407206811A46CA4519D24356B 2008-05-15T22:53:33-07:00 Adobe Illustrator CS4 / saved xmp.iid:F07F117407206811A46CA4519D24356B 2008-05-15T23:07:07-07:00 Adobe Illustrator CS4 / saved xmp.iid:F77F117407206811BDDDFD38D0CF24DD 2008-05-16T10:35:43-07:00 Adobe Illustrator CS4 / converted from application/pdf to <unknown> saved xmp.iid:F97F117407206811BDDDFD38D0CF24DD 2008-05-16T10:40:59-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to <unknown> saved xmp.iid:FA7F117407206811BDDDFD38D0CF24DD 2008-05-16T11:26:55-07:00 Adobe Illustrator CS4 / saved xmp.iid:FB7F117407206811BDDDFD38D0CF24DD 2008-05-16T11:29:01-07:00 Adobe Illustrator CS4 / saved xmp.iid:FC7F117407206811BDDDFD38D0CF24DD 2008-05-16T11:29:20-07:00 Adobe Illustrator CS4 / saved xmp.iid:FD7F117407206811BDDDFD38D0CF24DD 2008-05-16T11:30:54-07:00 Adobe Illustrator CS4 / saved xmp.iid:FE7F117407206811BDDDFD38D0CF24DD 2008-05-16T11:31:22-07:00 Adobe Illustrator CS4 / saved xmp.iid:B233668C16206811BDDDFD38D0CF24DD 2008-05-16T12:23:46-07:00 Adobe Illustrator CS4 / saved xmp.iid:B333668C16206811BDDDFD38D0CF24DD 2008-05-16T13:27:54-07:00 Adobe Illustrator CS4 / saved xmp.iid:B433668C16206811BDDDFD38D0CF24DD 2008-05-16T13:46:13-07:00 Adobe Illustrator CS4 / saved xmp.iid:F77F11740720681197C1BF14D1759E83 2008-05-16T15:47:57-07:00 Adobe Illustrator CS4 / saved xmp.iid:F87F11740720681197C1BF14D1759E83 2008-05-16T15:51:06-07:00 Adobe Illustrator CS4 / saved xmp.iid:F97F11740720681197C1BF14D1759E83 2008-05-16T15:52:22-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:FA7F117407206811B628E3BF27C8C41B 2008-05-22T13:28:01-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:FF7F117407206811B628E3BF27C8C41B 2008-05-22T16:23:53-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:07C3BD25102DDD1181B594070CEB88D9 2008-05-28T16:45:26-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:F87F1174072068119098B097FDA39BEF 2008-06-02T13:25:25-07:00 Adobe Illustrator CS4 / saved xmp.iid:F77F117407206811BB1DBF8F242B6F84 2008-06-09T14:58:36-07:00 Adobe Illustrator CS4 / saved xmp.iid:F97F117407206811ACAFB8DA80854E76 2008-06-11T14:31:27-07:00 Adobe Illustrator CS4 / saved xmp.iid:0180117407206811834383CD3A8D2303 2008-06-11T22:37:35-07:00 Adobe Illustrator CS4 / saved xmp.iid:F77F117407206811818C85DF6A1A75C3 2008-06-27T14:40:42-07:00 Adobe Illustrator CS4 / saved xmp.iid:32F582E93563DE11BB48ECB7764A1480 2009-06-27T20:06:51+03:00 Adobe Illustrator CS4 / saved xmp.iid:530E91AC4863DE11954883E494157F9B 2009-06-27T21:32:58+03:00 Adobe Illustrator CS4 / saved xmp.iid:05FC8385150CDF1198A8D064EBA738F3 2010-01-28T16:15:18+02:00 Adobe Illustrator CS4 / saved xmp.iid:0E9190091A0CDF1198A8D064EBA738F3 2010-01-28T18:17:14+02:00 Adobe Illustrator CS4 / Print False True 1 792.000000 612.000000 Points MyriadPro-Bold Myriad Pro Bold Open Type Version 2.037;PS 2.000;hotconv 1.0.51;makeotf.lib2.0.18671 False MyriadPro-Bold.otf MyriadPro-BoldCond Myriad Pro Bold Condensed Open Type Version 2.037;PS 2.000;hotconv 1.0.51;makeotf.lib2.0.18671 False MyriadPro-BoldCond.otf Cyan Magenta Yellow Black Default Swatch Group 0 White CMYK PROCESS 0.000000 0.000000 0.000000 0.000000 Black CMYK PROCESS 0.000000 0.000000 0.000000 100.000000 CMYK Red CMYK PROCESS 0.000000 100.000000 100.000000 0.000000 CMYK Yellow CMYK PROCESS 0.000000 0.000000 100.000000 0.000000 CMYK Green CMYK PROCESS 100.000000 0.000000 100.000000 0.000000 CMYK Cyan CMYK PROCESS 100.000000 0.000000 0.000000 0.000000 CMYK Blue CMYK PROCESS 100.000000 100.000000 0.000000 0.000000 CMYK Magenta CMYK PROCESS 0.000000 100.000000 0.000000 0.000000 C=15 M=100 Y=90 K=10 CMYK PROCESS 14.999998 100.000000 90.000004 10.000002 C=0 M=90 Y=85 K=0 CMYK PROCESS 0.000000 90.000004 84.999996 0.000000 C=0 M=80 Y=95 K=0 CMYK PROCESS 0.000000 80.000001 94.999999 0.000000 C=0 M=50 Y=100 K=0 CMYK PROCESS 0.000000 50.000000 100.000000 0.000000 C=0 M=35 Y=85 K=0 CMYK PROCESS 0.000000 35.000002 84.999996 0.000000 C=5 M=0 Y=90 K=0 CMYK PROCESS 5.000001 0.000000 90.000004 0.000000 C=20 M=0 Y=100 K=0 CMYK PROCESS 19.999999 0.000000 100.000000 0.000000 C=50 M=0 Y=100 K=0 CMYK PROCESS 50.000000 0.000000 100.000000 0.000000 C=75 M=0 Y=100 K=0 CMYK PROCESS 75.000000 0.000000 100.000000 0.000000 C=85 M=10 Y=100 K=10 CMYK PROCESS 84.999996 10.000002 100.000000 10.000002 C=90 M=30 Y=95 K=30 CMYK PROCESS 90.000004 30.000001 94.999999 30.000001 C=75 M=0 Y=75 K=0 CMYK PROCESS 75.000000 0.000000 75.000000 0.000000 C=80 M=10 Y=45 K=0 CMYK PROCESS 80.000001 10.000002 44.999999 0.000000 C=70 M=15 Y=0 K=0 CMYK PROCESS 69.999999 14.999998 0.000000 0.000000 C=85 M=50 Y=0 K=0 CMYK PROCESS 84.999996 50.000000 0.000000 0.000000 C=100 M=95 Y=5 K=0 CMYK PROCESS 100.000000 94.999999 5.000001 0.000000 C=100 M=100 Y=25 K=25 CMYK PROCESS 100.000000 100.000000 25.000000 25.000000 C=75 M=100 Y=0 K=0 CMYK PROCESS 75.000000 100.000000 0.000000 0.000000 C=50 M=100 Y=0 K=0 CMYK PROCESS 50.000000 100.000000 0.000000 0.000000 C=35 M=100 Y=35 K=10 CMYK PROCESS 35.000002 100.000000 35.000002 10.000002 C=10 M=100 Y=50 K=0 CMYK PROCESS 10.000002 100.000000 50.000000 0.000000 C=0 M=95 Y=20 K=0 CMYK PROCESS 0.000000 94.999999 19.999999 0.000000 C=25 M=25 Y=40 K=0 CMYK PROCESS 25.000000 25.000000 39.999998 0.000000 C=40 M=45 Y=50 K=5 CMYK PROCESS 39.999998 44.999999 50.000000 5.000001 C=50 M=50 Y=60 K=25 CMYK PROCESS 50.000000 50.000000 60.000002 25.000000 C=55 M=60 Y=65 K=40 CMYK PROCESS 55.000001 60.000002 64.999998 39.999998 C=25 M=40 Y=65 K=0 CMYK PROCESS 25.000000 39.999998 64.999998 0.000000 C=30 M=50 Y=75 K=10 CMYK PROCESS 30.000001 50.000000 75.000000 10.000002 C=35 M=60 Y=80 K=25 CMYK PROCESS 35.000002 60.000002 80.000001 25.000000 C=40 M=65 Y=90 K=35 CMYK PROCESS 39.999998 64.999998 90.000004 35.000002 C=40 M=70 Y=100 K=50 CMYK PROCESS 39.999998 69.999999 100.000000 50.000000 C=50 M=70 Y=80 K=70 CMYK PROCESS 50.000000 69.999999 80.000001 69.999999 Grays 1 C=0 M=0 Y=0 K=100 CMYK PROCESS 0.000000 0.000000 0.000000 100.000000 C=0 M=0 Y=0 K=90 CMYK PROCESS 0.000000 0.000000 0.000000 89.999402 C=0 M=0 Y=0 K=80 CMYK PROCESS 0.000000 0.000000 0.000000 79.998797 C=0 M=0 Y=0 K=70 CMYK PROCESS 0.000000 0.000000 0.000000 69.999701 C=0 M=0 Y=0 K=60 CMYK PROCESS 0.000000 0.000000 0.000000 59.999102 C=0 M=0 Y=0 K=50 CMYK PROCESS 0.000000 0.000000 0.000000 50.000000 C=0 M=0 Y=0 K=40 CMYK PROCESS 0.000000 0.000000 0.000000 39.999402 C=0 M=0 Y=0 K=30 CMYK PROCESS 0.000000 0.000000 0.000000 29.998803 C=0 M=0 Y=0 K=20 CMYK PROCESS 0.000000 0.000000 0.000000 19.999701 C=0 M=0 Y=0 K=10 CMYK PROCESS 0.000000 0.000000 0.000000 9.999102 C=0 M=0 Y=0 K=5 CMYK PROCESS 0.000000 0.000000 0.000000 4.998803 Brights 1 C=0 M=100 Y=100 K=0 CMYK PROCESS 0.000000 100.000000 100.000000 0.000000 C=0 M=75 Y=100 K=0 CMYK PROCESS 0.000000 75.000000 100.000000 0.000000 C=0 M=10 Y=95 K=0 CMYK PROCESS 0.000000 10.000002 94.999999 0.000000 C=85 M=10 Y=100 K=0 CMYK PROCESS 84.999996 10.000002 100.000000 0.000000 C=100 M=90 Y=0 K=0 CMYK PROCESS 100.000000 90.000004 0.000000 0.000000 C=60 M=90 Y=0 K=0 CMYK PROCESS 60.000002 90.000004 0.003099 0.003099 Adobe PDF library 9.00 PKk@e3G??'buildbot-v0.8.6/_images/force-build.pngPNG  IHDR5gAMA asRGB cHRMz&u0`:pQ< pHYs   vpAg51IDATx^gtcɕ և;̚yo{[joJJURImKdf{{O < $ azʪ}}zފ'NDC{G3%ݜV~\3k]ܯdh z7jgMs&O;410/Rs4,ys2,/bn\~aIFN [qq]q//'Yދ ^n~%3rq'1&QN^\x3~ѿpM]ǧ Ӧ;e̛n]4u#<]9c7 XY8yحyQ *Р4@an"Fhg۞)TGSRnX~<_=U3g6VMTwށrouolNg{WacWNdv ɭIL[%SM<_Y؄=kLNBG Ů9tFI3ӇPCЧMWc}zg3ljѬt\K"'xqbfh;d՜Iٸ% .bLܹ3)Сc6r-#5{.WG.j\TA u~Q;Rf|il]6W0/3KYqEsغ;eX[E%aheZH3ct"F!Je֏v/q+U[Y:W1;sTuck)OV4b%AMJ:SZ^VvSW*M}Ɗ:_R:a#'wҺ>|#9oZi{e&f)3T: <.45 թݛ-wHS>R'Kب3ce4Nf h(ѥwчX!t >wOkrx K׆[eFGȸ΍Ԯʹ^U~ߪdtt'7@-+8hJfFbX`4HS9:pV][u<){5wh;_12#j^~5ѻ=hSwG3kyc3&V^n'9c5 ՜9 ⛖o菳GZXʹaKhMt >>S=S:SнɾUgUᅰwk-o~`@]:S:Gw݁q]qDmM 4N~%ez=o-[1=ͬ)׷wΩ,NfQ*ΕAj ,(*<'fu1HvZ cs{fLUJZZfsn#YV?!o gFQKvw7OE+8CXR}Fr:Q33pO&w`_ل`T@cs ~^8i9U'IzWEe˴"ii^qLtv=>s5,U*9*mz*@Ƕ֌gyømfTѤNt&Nt4dұzh:T T\Z"mXwg~T/OF<󙎨WS {w`+{Psu<-*RMX޲ʘ29N&/<]hLPRf^i@F\lpe,ErnСvƔ|Jo;H/Նn}fir->#v<˂t'gerMCݭR7UNJf;7:Ϝn)Ž + k_Q4>]JZ}3[1>^D|hμ{Hk>Q/ݪZUDg2*$N磼YJzGN-V8;KPiŅD1цYo=oog]Grz6o,]dv1/*&ƍQ%}`Y[T#BJ1Vкr(`8]cD0ݒa3Het)im_Qw૩>MZFj췿iP [fDڒFYFlR4MGU ']ҤqIjdlR uZUxJcZx}̭&&"Jlvo$JRnN[dSږ#hQKHc!^oL1MR̝{͘YjL3@j~\/ꔴ*nrqP8m? ؎*B*A^5AARTqj| $huh2g` Av|ޯ<8i]6}pt;c=c=GX/~u SۉUyRw)ݛd7D7*EV p]|^vNڳu^*OP@&q|{(zZު^FMT/,R{{oVwjWrF['Iڈc]V/Ï8Xެ?h\Pwj$q*q8r69fHwǴ1έjql:-UD.g^hCLp;2`(.RGܜGkd|qiz;QF7t(8mO 8a1 O|/9ܪ=IB K94D7FՈjVr&19}gܮ6waj!N5iaF!AZuL&w*RC|F\"ϐҫN!>tqLCgCSX1@6#_[3{{/"n#.7?!#OE#bc眬 hr#'4 OqEN,2 ~92Ap/}8r 4rV.7/H^H\D|Rq"Dr'/.|¿xɳ@$FhvI\}v>=/uy/?&Ev|0dA}X<lBg nCAe4>mдU2Kӆ&6_<\/e_++a_+^^!Vx F*];o_WKش#5疟/ 'I1ټsΓ]\vԣcB ]Ndbp|8dדf#\SD?c{ˣ>iOs'|R92}|~iYz1Կ#^' N>%Rsv.D8dH'm"G\'X}7n ܻ>xػ9l]ؿ5xt{p'ׇ<6txsÇ7 ^95|tw7ǎn]=5qoqn<=vz 6~zcu?7vvg4j$m8w'ϰ5E=8?y~wδ3jvoSii}qݟ=q>===s?s>sߟu=s=u?uEϻ32C7f'>Åsy#'z~~OϏƀ 'o+u1847bi8J2=K!Le{REO'qѝ~b,W˕r3qxy4tKFS'ϣ&ᑞ<0?ģ=7=s'z5{8g<x͢{0<އ{ޜ/}=d=^=ZE?` L#&cfm'>+ ưB1ǬPb%,&;x1eSxǰql*KP p1ISxdȧxؤQd.§R>( ̧t>,$~ *>IH%akjQ $&RETB;(QIJ1*&NPKYRP.QiOHe 6؛ LPie*CJ Ӥ3%TJ=*zt!-T dI)$fgX7~5 )N'/ :O]t^>sd5`RXΔE':iW(rb\IDAq&Ñg~& W}).@*[N=H?R#`JE|*}_<=P&W _n'yd)\5 WppLY1}d$cKU*g94t15~pe\ћy5 %+A"|>dgTTǥ ǗK0`qs;B%ղ%ԭiT~rTB*' 2i\*FrϏP5dA3h"HӬМ$kfyDT8hF A{veF2R搽lt}* mB\rW8,"Km^FKnJ^~2k5_x'2]$O5:^ Aw^R2$֏0k%/uuajIO<)ufۉ+'w#,xkoG.o|/ -JE'y?o_/6<,]N\;wkU%,^$)qe]oDe\i/mdm{vJ1.-=/Wz=67_هznƗk?=no >țw|璘r:z-37*_$bZ^>Hd:cOc \ 'O2/z3h+'¢W܎o~;cyNjV;ϿZ;t3bfiSy0-e__R1X EC$Ũ7c<έZ_?H糁7c+ne~Wؽ~Fbޠ?ejʪiŻFL*wS>C+Ē{\%5N?(\u/9;a^Ȓ/~4czq'oOPf|{ANlY' DT͈O}!{+ͬ=J+mUS/G= |3Ff~z;I}[VԚ}݇9>Mҧpܱh{=V4f`0`8͞.@R4r=<ל"SZpbaJkY$b1PO 87|y?Ȍ8LH'c&ɔ-GOLo<ĂR [ Hbp d0x-D^`(]i` : E$$ H!CEERB`RKDȖQ%MS#eiǰc6t=-u^R,ꍝ5râ߶u޼Ԟc; NNv[S2G Ј,:ʢNЬ!d\!X#,LB( `("y UHA"hNѻV8ġ yFyk/BU ]ktXNX\ר_Ɨ6ΜQi Ͽ{c~;\OjB=$+f|Hn/]2,Μԥz荔W=>մ.^69/K6R_Y*$g_<ՊQQVrzjw{~Vӗ~V x-FB΂ FRILr^s~x=v%+YoπTR޲M *?m,,\f0퟿_2|q)ވ8[)݈(I Ճgw+&St%zrY߸֫~x%&yGo^ms_rArnnGM[53'}ՏWX@gYq "껯,UxVfDݯ+7ZfrVbewK C>Bf⹷͜RwxoGftP1W]/ 8COBl+_^xcK^t?#: 9wBwHarz4wx*ѬBqIn" gܜ XjɆJZ>0D'޸yo,БPrɗ1A(o& D+%I\Pɗ%CaǤD")IR eD4P7`Q0@#Z"EDC$# #$TRBp2z" )! DsKW/Eӫ_\~/%;x||\\שפ}պ-_i7tJՎf[Ql`1mNչk,|fԬ cP Z!|Jd|h5D'LttF"2TBPNM"P(>r4&"f@:U } ā+b@ `CQoP"â g)Ƨbz`O{GY)KAV'OhRQ*P$7p bfTfTFIIIeXjFߥ0w1Wb 5}/-Ѭ\V5`.SA?;X@JS* .%+iwso`ƭPWnۦJľ 0z>AI&[^mD&|ћ1 ,O~t_}?o\\5n{f5oB x` ;;rSePfj:r;n)x8#:؝OC…dBq ZB}hq! R"ڠ6ue&U&DЕl*ޤ*oQڊ^O?ԮA "ˑ.}!DJe T&ժjւlg12Ȉ}0ؼEZUH{2׍@\6+_ c6U̠O ':Oj)r]j2wZ׼BBHMΒAkSLtwJ.\&`S>jXg'@11Ƣd&5YP'̓X,gX%٫jjX'wJ?z5x zQXEVN!]uL?bڰrAn%\E$HBSGN cpSDF!p{ 0܄V `D/^wd9k<`1&'R< ŮN ez܀Q2PX dS<ľ0P)TxZJfb@")ȅ O>)ќ`:Ǘ"\'J`?**!# :!XKayDq30Fl!4IcB fH̵u@Adn B-!SpǡexFBg9pwt/t~x+߽_޹\<<618r|44V7¨tpu.(i*[tf{*iD5T2Q˔] WmˈCUnQ12s³G1 L 2,,O&TXM,"_ct"5'vyhyJ蛿|.$hؼ8'I P CD@w" |GnC$_Ka tD  e%݋CTT5mpЦJEUbmWd@EVO$ƅH8"o\';u-RCMKC XyY{sGl>7s8ܻ8/?i?i{vb=>b#ΧqbQ147'ƭQ#Vl;ÖN& !"h1.8 C==#XЍ&0. ܠb&D>b#ˆJD0ȍHX  X/y9$'Aq>$(#6Ӹ4Ds) A%xP0Od|@0!u.2J4!^B3"2-WB\4I$ ²FBp6G "D4J@ I;Ci0ae6H4ΐ4-,>NTy0A  EE2RSY_8?o]ҷ?o~G߾#X٠۷,&0t:۶Ʈr{zNU7=kӘ,.Uiu`$}&m.DaM !ԃM2\ͭp^5h@p-. TVZEՐp:\WPVS(k}!FU:UDI-{>5ldOH. >-}-.G}a|mkxkg+}*ČEI_`Y$$vFK?x=XPIZ"G4h蠤7!"J}$6:(#'_ሷ9xJY(yd'}ѝ¡SK\O2ύ D+6}P Q*Nj Cor'OST @*,$*c?yϔ9L_"x i1p s!pHV; p2Jp/G6'8aP `x2'IKaӈDU&{O@+a %TDC$]  HDrF$TNI]㨿?QԗB[}~r?ԪԺm͎^j뎬&V\աujr=&ʊc{kWUrӺ̴!3otRAfuaA%5±,\ "A,vy+!(IU0͗;µ[Z @ B I5!"UT=KSGpJNWQ%!m* ^C*6Ugejm*-pX 3~q]bntV)3tN/uQo< 휆fN&fqQ'#'5]4 8e:c|8m.iӇu>}rQOWU~ls)izJjOSgd - Y0#//Pi vI4C ,y2L( g<ǗG3/KWH|x܏W4A J =`Z"2 )E0M 'E(S &$P8il0N-@`$\6)IP!I-U-/PG4h&:4PxjI$Q׼*ddѬd$`tTQj\֟_מ?n?Co}O{/~߼YNQYj~Kejm۶ξ<2kOlCآ:hMUl٨XUK$:٪rEZ Ӄ}k' HDt|˕aZ z"Y$#Њd4P*"`G==hЀ6:\&%|hA6ՈhIw'i1Q*jMGPJJCD`W1ỳ|q :uKycEk .<;>(%ĵ9KfZ9GTrѼs1N4cМasAsE^b=|[k0unkqK>M vһ Fw|kbbprJt肽\ /h/"]4C .g}H{,ӎOc/K#%1/mOio1C:sg!Z@I^ydi24MpFlDa)tg2#q#yJȀTl"ks¡yK)<¦TOL 9A|oߋDR7 \t!5OgOޓZg a"_6EJǼjP% f٢ , `&-LPFHp2UdA"1$QCR:F 4IDE=+b"DD QM $遞U#E G'H`/&+&:{]FlJP0,TMɳ{??כ͏k[è!jSRizUmj,۪u~}ͪ^7n[4{zκlw{3>< &WjVKf5ށAhFE$"ڇMD0"s08ҴM5oSM$24nLl4aYhи B/-0FiR _冿Qp#a/zB.7+C8h&DBE_Vm/yBOr%T0znnVu:*gsiuzluH:ܺn=z-` j=ѵȪ̪SKܴe)|sZ`쇹vi~O%:t]s:R01M52{/\:P~dvۇsèE7wCtH-Z8%8aC"_4wsmtTv`m5K;Mk}Jo50 w:}>O[<#/a\LFH=O㜥qSR43 %S?J9y.$/"M҅&VК(B(P TƐx`PIdЗ=> )ɟT2DYaR\-r!>({9 ġP$T B eDxDڴV"<"9lS"0$SMYoVZ{堛0_L6åT1"5CURC@4$9M&Р\NQA<鍚ꉵ11CaERF/ґp {ð"y@W<'߿/=Ƿ-ȫ_ٛ?{I L&Yi6ѺV5jdٴT qSaUڍc;V5Jy`7e"y#2R "<8 zm|in­Z]K訖p.ܮ -Wj%ee&<w)%va5 `iG*a&ئ [F 2S [US! VZ1T/:$]??ƚ<䕳j5X8vzjldJQV NImˮ[˙7N/$kk:8[=̚ XTё[-ܣFRGɹ5ߌ^Vws>˝z_Æq?r'TƖq4JWn~^zRa; 7ϯWZY*}{ɍskKAλS9 5Lh|dmaO^b۾ zדt%mcO9TF)G5^bث$6Q ʄq쳬 ;8 6 ΁aM+ 5q"~O9M:7?|xKr叿{O^xdDV%júĔ߾^}hT+zŊ^l$ڱYoWklJzuecyEyܵ-q`;@-^P@8) 0®V-Duv]SpɦІa15еylZ`UGíPաZȽj,a6"m hmۡg߽2*aPJQB VLqS,tURw;lTH;RNjnɮ}t/<$*57.5;(#j|5r?+1E/qflnUAQuE]s*߽z'+Wg~Ws/!+v|VZy[\zQF@`F7aOϫQ_ &VY ti}@7O*j|ZĒ~/'$; ; wR7 0"DS{'/b^l^R?Dv]S{՞q8#Spfvؗ=gs ~9IJ8gCel#GљsBpP/pDY<$/c;jZ% oЇ׭Ho`}9p(Kߛ'PaM/0CJoY<k@?o[( &i O,| 6!EM?I*;GĈ&VC`SJ()(z?/Qcy6'tMDPXw0,V @pJxk-} ͣ]=35Mc S¶7s՛Z8z e /\Joڏ|M?՗w⇷Ƿ"o~{_+?GސyʪE]Cmm-t+uZ&լg{nK)j9֖VvfXtTHvmEP0R nՅvLP xho:#p.}]Au1a+=FHw}&S{+gi/ō"agIcY1ܳCw1x=Co>|[eK^pXH>zJW1=?D5+VBKB^*\]6<~8mZ 5-U=삜Ҭq"7qWRK˛SZ :'SQ?8P1v+.OoƤfUVuZ(ʝG?=qeսn,` ,Ӻ=TlQSu[Y>$݈MPu ?zu !j#/lz?iz)a[駒;n=N)awAO,OqDCƑ_|ؘBwLE]:.OmT9Ev!uY>e. N2we r0,<ptE"8`H-`  5h"GdU _NU`6^<.p&J~+\\H6m4 [&gye6W<>89,] j&z;zXuͳU%KòJvMl8U3?߽?W??a}?ևkxR_~)reKBzͬZm꠳!6M@%XԪC755JXWRhG.=7*ՖЧJ"2h`AtJt3R/Bwߡ H>#mPi v!27r1RFjFk}$}zkT7Q.k&MԠ)cR93/?ί CU5HJ-τ狚|B.;.k˖oQ** QEqkg@G`SIwCye~GUj > {-*VLjyÌwF6Uv ft%7d4ꟽ^I7V%QI9-Qٕ]Ei3ZeY\@RS JzVfESZYS}FtAC 㫶W޻3+Y\i^*(*fHbl[ɬ|EB!Ou!! 6>B+}Fi֓MRF#0JL꩚1M1vyyYBЖϣD̞?s<+MpΡ9F:" P.\Ck%O\7by"TzsȻJSH4y >h|H*$/e(`ďW d:Th%6(JVe9~P)2VeJ:#rƆP"" ։!ETkLJ@o"~ i 7lI 7C%$Ө )N&eY`uM)1B.wU 2dkS6"L$ Es̆ڞجΘ{Ń=M]t-y z|n/+x'E E_ԇM N$P" I(%4I`,P<ɂPLU&Utl- %N$)\BȆHWJ$ M:#T}h*R$ `Vy7z0̋jVRx g RN٨@5 4fՂ5ۺu@$_)؜MͶk? Ç<ѕcfBQS'ԸC,{TgmԌ Ì]j~b)-ܗV3QVjL \8vH~sL-9hmJ=OS쪑%RjS*oꃓ*!TJ,ia K8kۇY<9%?֏MfX s,!9h͡'=REk_4Fz w,D2]1,ZC;ڃ,S(V1cd9m@rD-S!P]9'uyuO7&~֞hw$6A߃)vz5}TU%"tJ`"bЋ(`VSX ^&r"؋[,=E Kk"o$[,$4=TW,l^AMRb`S~__!2R&Z4A2(&j_,] "ˡ U*:RKp*)9vLU d*n"  `#%n[MǑꉪT4R*>xm^I˜qoS$ͻbXoHD 5Y)*rh1lprviKmq9t:d4Zƴ##srQQnn8Kã mmw;|߾x|{_~On7;[$ܝ;#UYޔ(7lS;Vodbrcߴk:+0)j(@Piml](Я#@Vޢ\;NN-S !d5S#&bpF!b`ل5rMo{æ4ʣ=*DSD"Oڣ>*=Sj(.>=9,F-#d=97'GT#Ø2dpb:Go _,A,DxB:r-U 4#/5*d͔4}|z-T&:'[&-K_*r dS*!,,eŴT-{JK}b(#)T -zR`ˀ-_2QI4!_̇؇Ve+0T. V%POkJl+Ppp*yJbʌ(&&&߅@$Hz@_g$i&,V /6# 7KjC 2 0U/caͩx}["Z.jwwF^_,fyI:}bݵZOݶpIX_a%lnmhz͛x/~x^OnQҽ?U?_/}/n|[s7ߺ^Q1&`RB&QVp@r]+WdJ (L[O!ZZ_ZRId玝֤Y8bڪju͠QidS9g“Pf θ% cD)kvjP G領v )aAq"TXUG{Pe] A/Gc.2IR˻gsfײiZ~V=**h9fiVz>AiX[$5t==isƂEGv1zWdg|!r#]ŰW?9+b֧5]O,>D$^Z@MㅌX6Wp2Z^#V_ C {WȜ/S!THat]%㩔x+JZ歒x+V|^V嫾Jr_g V~RGM*h}Y W4dSR$ծk$EVWoj7uPfZu$R#!B 5~6VItֈxDszA+<#HvX44 :`;k0E3p&4r.T J(,m5}L&aC s%N/kT=IZ+mk5[J1[k4;-ׯD7>wn|ʣٽCŸ|/}?=מ/G}Gz^ڏnoK,4C*˗%[~k])d; ئƛ7JX.TG&ù)\P&m&fr8CP!fm$[A:!DDӂ qH Pp/HK{t/,ݣiC%@bn{qiQ$a@FZMnOZb3ΠݦJ k=3~|I7LgxFޅ?p>٥AGHcI%q Bꟲ|2S/|:Zd̋$@ۧ?]I:҈]tt|r/M#(ybm/6it%\nv}FE Loiم%z CFڰCRdYoYFi}Zl/'51.}EmƵIm`\9O'M24@f(iЇiC!02gi'82I 3.6IO& 3&5(M\dB͑J JoicXX`3hCôP,+)͞%r[-VqbCTwffGQoPOrRk6n1'[LތYMf~E]&omʯhqK߈.$FJݭIU7+?-{^kw?)0%3d|PAtɇ+|D" ;;;:ҩJTTJjKnR,z݀SF)Po*tjeGmG6yBO=G쀒Q+G$mdd1vLQ#J~x8uL6ONҞ5pN(TŽcD6KPvJm`SXXsJ8.N39)ZF 6,X2|Ej:?K ?]I)$=e% #\C).ԙ2.ʡO`^Ğ#,"h~I:'w]FH佰ˑ,mBD $!4 k*bOe 1!TZaE6=MEF6aNE phlIV:R&hhfS ԥTMb}`J矺 ؜mH 7MU`!Դ 3͝N6m M³lXxn'r,af؄c&%شHEEF_'H iNoٻيa~avdjU SMOerkJӚB-nh4zr :m ζnk}aGY5W%oF]MT}5zb%Jl޼QLWK^YZIl;ދ.~66פ+fnn#2±S+++kJlsE:m^XSJWlfîxg۷Y4J|oGaPiIq%?ǀ 8< O*LSJ}Fm%uFiωM 6@US ;`p*.a=H&9 2[%в0H}Hk+B+}3k.l'5Zҡ7OYړz$ӧCE_ECEFvaMd7 uydF)%XPadӆO'H{ۧ"x_2bER\SJHyQńC+ڰIO|YD E:J P<;=>"0ɮUzFggKrʛ%T\K8Yѹ-rd7IJ$⣘wr bZ~Xs5Qn[Nyok,W*{&~cT Z,-8MImԁFlV<ۍ&@<7V%,3Ω-'P`CN=u mV Z@ *Z S+{!#]^wQgx(,}hSr'X&V,'φbEP4@ l^.i@6 1aL2ѻv,ch\44&-/_ BhO5'rDhѸJ,klz,R?=7<13<1}aß̅gͧ KOI mpf"HPFtSg7K OKf&gIOz&fF&gG&gF{:ZۇJg M = S#LGt-87ƟbHe+$bՂd*&v6+g9391?35>:25>69245<89407<8ZF kliGMCv566 \aXPٽ|>Ԝ2Ao(Ɔ99@A n9tp }a{ xҸe:L"\Yߔ7"&]Uek5o8zEG̪7Z`-ʹ;΄O)#cncEΓ~qHsdWhFvi &=Ҋs&]zyoHMġK[dtzIG[KJ*ynhLDnzmbD3bfbJRl6j~bruMs݃L@.(,2j럞aAթJqxx"$ܑd L. c~N*:f#chq'[ J\‚R|V#&\[\Sl[(ַH=>k(ao TbG:%T4L;2m^5uFR=:ja>d܉"!wk>5Zl38V+Ҫ@ QP}RÈцH$.1:ƘZb_Ϥs)~ϸl56B,p'$0PBRoouN7DQ0Ei PTvP‡]G6# "{cJߓhA/!>mxHwA3s]^zHq"zyN"pё>P&rQ]md^35ዻ Q$E٣3S ^A"úsϧAB<9y\>r-e4102-ljdWrաtl1aZt@kSlUV:9<.__E^{vr 87]('WT|NO]G'3tyx?>'v:.1~x<:q:#أ3 `0 ??~8BtUG Ba/}ɦNs8%ntm>ۧkVsfs}>fT(l0s]:[՝( '\ut칹5h#^e Mgi6qd+YiyohSՎ׍+5cɍ ma:źs֑\A+wFBuXQb㱶:+aChva`>ڠ\Ժۇ]HP'.YCwqyО{qF^.?bdzh uf yÔѾxz+{ `&ԟ` 'nGxt0rT:awbE{'NXfǓ5Hו!4yIKOpxsD@vpQ0NGqBr y |p{N߇ 8^ۋ -=:sǧV񀝣LJg8.jA ĹY{{GQ>=;?8:ΜN\?ºű)fWj]{b6fid1ĒJ ;z>Ƣ`t5<2SX1>8=>zttov3/OK_?zV>bXǡپ1žo=:{6Ҁ4F{w/ԃcձB~`?PÃ3x\.y~D=suv~~v*'Jy^ ̻i5?[Q23>5Q_Kի8\RqO^~>AKYB.hFL{t*k+/bUWtͫucEr?R] |$Z:z'YEqtI363˫ҵ)PN-@  RyEt旔+;Gg юm<^LNuC `Z ʪҲq,RrFnf^$y烫(qvJV^V~q6f8:qa/`3\kZϽHt bm~pLS2h??=:TToyUh/A^t|yQ9`s{<^8D5>8==PT̬P"ZSm(5-F@K|k&6_ȵX--zfdbzI>=dEsdhDž-U>u:=]X\ޣ3 %cv5uH(γ8<$}@.0 B~? /'Ӣ" z/.S7X`?T7srrNCa/mAa <~aaCLj"VY-%>FbU6 [puMnsdrn[;8:ZEYq~ygi$Xӏԥ=x(up҂.~FŠ=hcYI㽿ꃤo~ٙ]i91JuYPٝZ}7 /9uuU2BvLbJ^QLKg晟ܼ70'5w5dQ]d;ڻ,QzN~zv>Xw| N$um01ԀYy5Iٖ݃ܢ2U0dow$k`ѶWPZ 5XN]^C}K8qbک3:5=83Zr Ku bpc=6ʇɓLzɎ%UuaIyCs-clt mllrqHw _㥥eWWPQYT[ګ9ܡ?646WTLM%@hBpC"D1tztzD(Ha?$)yN=ǧ'Ț{2;QFέorkKi_*c3FlEB.9H"0k|rwLŊ / ی;ݝ]sbLiiYNAw[?񅌦,P۶w[E9dѦJ;19g;Ʒ҅&>s;`"d <Ron%|1b.щclȫ]]"]Nu qcwF .Amf"n&)iV/18񥊦~V7;nt5HL %BD$P "ڪhY*HGf*B~d~Y[[XJi^W6sփʲҲ䄸V~ybe_Ioc&󳯤 g4VjYBspsXq3,Τ&ɶ:\|o^w&0S`iOWLHUG+Sfw#.[7, ~!5uWlc=!V0W>0.1H*gF8B &9=_S׀1+" fyDgUTllnA"Y`jP]]}cSV0@Cã5u5`1B =$8Ĵ׋TBF~YCp d/30J)/X[oA=4N1هQPo Dօ5ݐG+ξaƺf}mtXֵp'?O}rߛ._H~-{؍%NV4)Xg ,lB =gƳZT "`gxeɺ$}.&#$ԡHhr:}$`ݡh]{˕?{ŷ_z/Rrg$7M*Ʀ>N5vIs97#i:j4jvo&|99J+i:6 0!9C^]:LEMJN1! b.nbҵupIt$rm{$+R9S5EC-!X0v@"eni`(/Î {*J "5LM k;M%)"^f9ĈO]AZl+ |AƥH``@.™tz ;\ThpڨCdsN_N(@:Cȷ*!$WAVQaR5#I4BPfX 8J-dv2'\J,e8DӸc,:!id&m HHa!P$AčC}XЀDLBZCA,` KWIZ _W8v$ˎۇp{yۅ2\'F.>b1)NؐifJtF獌ٽ+*FsK++ Pԛj_}\AF{|}5瓬g'5v$VbZ%tjV;)o&6Sn|I\Mo0غ[ME==<"& YL+nMX>Yɶg#(wPWm~V6l+6?@J;BE_[JLnٍAtGbEutci@!]9 o\c3 O(%"Ɋ #6DxC. RSXR*|8{pD6=s!H3?®6?6=L<꠽c#1#BL{ȃ~j]za6;vQB`ׅcߵ~j6n1-BafBlw^b6cQFC 6(mp0ٹAP`@hAimPM)Ycb6ņWɼ Pcbd:vhHoOpdrt%&l0Z0aDzc০ ݰl_vc@{ //*-8C655b =ŮQn8w|fi~[XݚS}^rLju[pi FU\K7ub:Ӟ}߅{ƳcӦmd։iZŦ RniqP^0@FmLjAѪ4Zr|h½`GJ4؋[aǕ[mxy(čd‚{TbAkZ;YQ6{u\K^INCXrqj(~vդ7nI̕[5-m=S3߸~j˕?hFR뫉\M8Vzg\~ok/&sA7Vѥ/+})c^.}1 a/138?50]Z%2Êb/D~h Z./ra2bħkqhGj. EorYl.ȶ"v"RH(,6ٻa9 ca,rPf.\D%D\DK$D X,I:z"c9O3sYH#&Yd陙ٹY&ékc#d1 DXffFabh92>Y\N k 35>1=Ɖ3::5Ajfg`"y?6>=/I߹9r 8əy\.mnv|l6s3kn69ˮY(hȮɩb4η-k;{Yrl~vӝ.I.Z\Qt^즟\8ewh|lbrb||nf hjꇵvtbq ;);ȮVҠQii33уM} sx=q&͜|"n49_Į9" gadL{Aޠ|aAȵn7uo<,ya;K__oe~'׳^*z=GeWWzl uտ[qrMbnSMsoQUgSGVY y%Ż?0p [bTɫ UڽFʺʮ.owf疶65"]';wa'RJ4b.w'F7x~Pʃ?IMwF Ÿ*~⢤iڣQP{ԟ Ō ;FT4^@W-̻(M[po][v jԻ^RRSܾ2,l[cUʪhU;ɒͯ2r޲zCiX௔ۻ7?+_;{g{{wws^m0` &(h D @hF9gr9"D#5ofHZէNU};Uut9w*^~ʰ1 /߲j,^iBV>#1o!S+MZt LFmw~٤+Wn߾e}Y3ۮg3f{G}sG_ۡ' فeC玙<7FX:o߻M 8jБÆ2e]OvME?;yog>Lgzu×̐aVL]G /{~[6{_6yvn\`ˊE,[pe ؁_?=?/O=*ݮ參~7wQ'^y_|ozC/_`w^鑗y[Η{^=].]׋~»:_tgy߽tݝqokP; Ro5hW{>zȲn/y;=`#fo޴k}r|ms'oc։ȍZ}U |E ,$?z\dLA䯠D B[@A[w_?YcbǕ>:w^xv~>ZرpӡE-rH`=욻v;&-2qq 6L\i}K7_q->qqs\}ힻjK,<v]uʭ*7]enƱ3t壧-.l'>qȊc.3u13xEag;`*,X1q7>?0f#' ;i셓/2ni O}Gք='9c<{SG% _k4oqSgv~l&/=y⥫Ϙ;z'/4e5aؙsۖ3g|%_V.Y>{Բ}xN7*/YrFuyuȱ GcYj-;No~~4nzi݇n٘y=L~Ёcgވ_{7cGJ|}Ow}Ov ]nb ;-K.>yÒYCs%|6߼?g[Ǎ[߾{-_?q]3?.h ~z?ί֯o|F k݂{QCzrڿ:vx+|<O}ï<3hظS]4|g~cy٘#6X[9ó_1c¸E'\p%ݵM_ Ϗ/~?˟?<~ev.W {;w.Se|%_tA:!.?ew")}gm;_N?O;^r?şşv};_}]iR.Uc}/h޲вVrgO ~coŎc/"U_q2+v}1˜¯*2yI˴#ߪ|X>VD]sHȨPȫrQۏ,vd gZвߒ-Xiߢ΅\ ,ظo=xgz]6잿v׼1k֙7]ejݢ,rӖO\zv9ݹl;'ߺ㱞7?鮃:&<~Mbwk7={C{h n~:=}w N7bEy{&<_z?ֿ?樂?w?6߿wp6¶;On7?]x?׿7?|kn89SΚ4ۣ157nw~.rx-w`kew>x|`%[V5lԴ^4|)O^>oZ圙{7ý:~x?-|du˃~mOMKtv'trS niw/j᧷uy om6v6M+x)_mt?[]|{oi]϶}wtϛ׭~~kKn緵s=';?NGv{feƎ׭[ac]_!TG!Ն_-_ʈG%iGG:ei3'S VEV@խ 9vm`DRW8VWs7dݤb5ׯ۸)¹buUr ~kV󪕫d6P=1W*<֪+ 7-'<ŮO~ z JnΛK+=UePBQм|/nY]YYI~K!ը%KJ+hUtS\bja+Ȋʕ+W\brl(qKU.{%zdܯ\u[]cނq`ⷼr2B؅r1`խ,…k{ۺm R^3ʱ|pfV\gRk7mT5TC~U[ \[~]r5piPa}W6em uXU`_* TEVIt)( zNVHqcw~^V_eU_ӑH$1V\=?dԹۧ'+7gV06)쇓N||r+G^ov#+z7"m %ť9("=_G{VיIeE_MyPӋ? ȗrB9ɓ%_*/c̰qo""sf V5VV/I>!#`aKt߽9{䉉ҫH4!>lա}gxmTL޲qä [5甊H9rxyf-] /Y][#!hB[a+2CBۼmR}dت =T@BÇ7wtFeӦ")?F9R8%2(U)u&@B"`qcFg7ogN2o3[%i/MWB `AXjuk,[]V:|M mUQ尨paRs|aSم(\1aɸ$bgϏ=Ʉ@ ԆH"E nU$ @F\UkVq!? W-Y `Faz2dȽ+\Խˎ;`k?wA4nŜO) @U$a[m//.yʲz-TTTأ[o޽;{`֧O;ΡC.]:rÇ 뮻ثh(FƨK.xJ̜9s 5I}49s& g" > @FQJk}'@SVVo|Vwqo[1*Hǝ:ut.h1cnԮ_|f޽}چAq" :sYGdϬڠb׮]YPk) T95hΟ~iiKD L,cDżyG#6,<  0pL)*FFU2&#F`e˖7|Ӿ}̛mϻ yl:vE~B[tMm`3,gjd+γ՛>۹y}6Yh-5GF%rɳm6߿"GyEW<(%_}ȧ_ '|Hub3QE;^~LUA{衇*YAHFI43K A{c+ÐB]opr6Z A!.%金gL1pR2*t-tiOR=\uhoxvL$3m= :W᭖PNJCC?ٓD}n~/I/@sbfARY!a<%[9i$ZI-GkN^P wXcCdz>="J7̸|'iK|Q35#|7Ǜ^\K4J"{cKjHօ,Ʋ#܈ÀjI~_aL/LsmlZʐ (m,\HXIpF;W +T .u経kZAsYbFYX+ţ?*G%'q~4ZwR2 W YkfFvUf #?8%šSHy hc(I!Z֐HSSY{@&#Y W55Ԕ C Ąs@/bʲ8:n,Bưd*UK7x 1@=xiX^S(,,z;ud^}?z.LpS@GI/]i [PRQ+]aa  O=D'YsEeHmphxA֘Wa8,BpJ̓NE x * nУjxD*-O`\]°gxEJ5~hJրE߲iMFJkbAIEirGn#ܕD$?gxO8?ERydp O#DFUb|iKܷ^4/ңaڡ0B4b=GxLBOP"-'{ m&/lofpGU#+kФ dVZC{ц{҆M(Q51TaI3)í,SHH1' %\sV<ɓq(sV RIK@ þVNnđR~Q";,LI#?0("x +wY8+mRlvF^7yE B&J]eGT  ʞLWTԷj^UbonLv6ȢCwKGI7*dB8F #&:_7_ m ";{G#RkG qSG Y9f3#2|#(Jb”0Y"9RYd!-\8*rSTr #YcFQy QY g+bDw@L ܼk+/m٪ij`UJ|TidJiJB|n|ܫN.=O045QyS8'!( V%)eRH$[w !h$j)2!Hlށ@By PbʾfЩC QNd O<)UB !pn(1[UL| z^u(Q8E&ҰU J,Xgbe9ӇgT-*g^ȠU׬NjX[̎,ޭo3z6 @Ұ  U8 ˰@ ~2b1nY4dT1ˈK/eAi%K(n_|lo) I1W\q4FڦpB !|([|f0d`,b/ޥg' jc}ʐmtXŸW*KÀ+;|;{UvGй;^O%J|O*yB !!PbAbЌ-0N/Ⱦ _/o&/Ž_=1?m8"e9f,ַ|7ƴ삂 ⵟ't퀥@b'Z %f+[#+Vo~,Ѱ=@B"PcKH's" &7;n H mDPMZ{变z7[OgL 7JH!PJn}V0`8j eԘt+!hFJD(+WdFO@Ty&!Pb-H$Vg`JH%[%S6 " L @)i輻`j:',E#U&SLmLem|Q^qYYT`:~$σW$ExV$ùb%)s1y`Rx5= =[Q,5R@)*BoK{xGo 537셮fGp\fŋ+/p_]yL$gW'.3L\|3-m$!?k/|%XE9JɋϽHUY(0$##: ТeC4l +Y)s.d/"Gf]vNn Ugabi(ghS5+~yx"f K2\@pVwZ| Fv( [+%bm;a„0qOre>5Hoqxdž ! llqrx00HGwq]wk¦G*eb=KtGx3j*)fUKeG.m>Q}Qc = ͏w͌iN ,!%ꢹ"BgV׿+)‡zI+XRVtpeԞ9q"dR% Nj- aPY; ,9  tbxd,yL؍e(uHEXRq[K- .Ϛ4.G)`^ xrk (?jJ Kuo31`ǟx[XM( [Q/ ^{Nsmj.o'w]@gDSho^#ii4Wc{3< 6Gg9pW_|PKmXPH FB^P0=m.G4Z3"^+5BqK؆u֍I 1STHMo:w,96Q*aFe3 HXPq`R$t]HSA^h mn[o'ʋ6Y(bm)~gө`VXc.|灒QGP6kMTڮ];e\HCx䙑]PRTϑ(婻@ ZQb@g Mxɂ ʚ -[쩧ҟ\]vuۉEd5Kr1`)^f@$ݻwHRb,Nk9X@'KOAy4BYk1z LIG U~.P]cRԠ#? =rĹΊI%WlwIM^4K]w([M]Sb1\RG=)@!Ĝ G˧##wTrP`$tâ+cC1Y ;bQK  xAgPɩҫECSJ 5/] +`F)[< 1p7 RU "t"ѐ&.!2Inȡa 85&c݈Ey0*2eP",kbSى0JR$٥Zrje"zޙ$!%ĤP|ͪ@mVEE*Je##ߨf(RejM6`" ER5OMXYg7Kq =.QdQP"'KOʭ2d)t`JVTpȇ͋Նum2ym*jӐ/T)d>Ӽ|ğR90Ȩ(g]x5D;|JjԜ.6xIDFHݪC@٪7zd$SLCdQ)ORGܫK_n*_9fwX/I^VJ93픷 Po>||fEv/p 0JV- ƫNQ-yFN u#J#LG@O7M$[$S] #꣏mݲy-eˎX, ր@aٷwϰ!F>F1lڎ:r[M(/[lgfϜeH+oƭd+ bsccGܼigce+kb%_6U+id2z=(s8GdaL J:<)=jcMҚLNVEhEu/ [wzaUWXH=6[Jv%UR/ ,̬٬2CeșQ+eeUg~lf°].%I\D6eԗlF͢B1a+ňƣWelгgk'(&J[ cZ;ٱQXۃݿ[b9y}ֹR%Jlu/|RЌ([`PoG@f zIV͋^ O-ط$cAUbk =cO6&6-![ ``3nv觅@*r)v81}1LV$$bC`ۭĶ$%nѦYNYTͲv[(|ܰ~@pZJԜ(1[Eճs&M(_fnjic&X9V-\vMvٜ^Tք@(=[U)X"CFH.8a-`׿$h 4?AlN}TMBێ|˗ܱjφ-}۶۷}=w/7wUdت)4T PbʦKPъt+ {6 .xj#i9&|XT@՚U+W\z ukV-Y`Y_&哏 TN8:Yon^T w;ҊN s6y†ׯY,_p܆`ty#U=&_Xot#Kb9{aY"zXUVTsɻs^Ti `7' g͜iv}k8o6>x[TweAW, UX;2_UL 7֑Z#I!X*褙wO ߥ|EY8dfJ UN$eO۽]uN?w3>{=7lU+p72W<놉_] ,2w–r 9:&0sx9eN 0nęzl !2KW- ٝ*%: /4:r+×]tޚ]l{f VsA(_ލ>|8?b7`@,U%#(lդrJΝ35K޾mǔتI0u#GٵsG [p~+-o];mDaoݯEhX^}\$uX٘ƌJec fˊlL_T@p4|ْ%Ᶎ>{TykM@ŋl@GOIm>PVlLt63R !hܾUSŐ'p:u¦EЦRDU@S'@Wײ*?=m$ 4Z>[)ie-j}\T (lURCJuj:2oEDë`uS%|6M>P[muj"NYL]u%uhC=qjOWZ$߱Ӕ(=[4@;as'8ɫ[%5o)i"PJ NYi N O6oT[jO4d@C#yY*㾦HZ[5SF%Al( I"C@VvP`c4lhyBXuX&E 5vlU&(jC&7MJVlH),lp#=_W ݰaM7ݤās 5, m2I0 f' E>Pd3$5L>Px[N(=[y?՟ ɌctplYe/'T`Bg %Oj74oKت 6T:(%[Ց͹}{&}/S DQm!kJ]HUhT'E |,TدB"c mP1YT@UfǕ͜>m)ӧ~ӦN9cz+Ia&RTÇmݲiQp5Wr mfaǁ}GBi"к*߉#-DmeQǎ9r*װ#1Ab&_hQĶ!;gƍ eho99O.f1dBbsш&[a T˗-5BH2 @U_Y}$AEl(/OɣewڵkȤ[NK4RU4~je93)1oUD1y&0:VEEҥKEF¬_~VkDfb]KZ6nkd6g+6Չw.n|)"PJʲfM3<3sLnmĈ8sȰFfTTF,=uM6q:ё#G r%b0(kĄڷoGU؉߽k䒽!Zd##[U~C[:l"cT$]:d䥪#mg+ I˗.^^ 9gmtNؿ*B}&<~TGLjCQ*c:kq7&3DyT 2lPX}ihshu/!ٷ"|ǃ'iZ0mx[g@UV SDL>+a>ImH,/NUMԸjR`[:g% uO>ѷeL_牭멖Yɫ קqz_p,r"I+D ©SSyVCg)՚*GLW<(zk&tC"g[3+=[V?5qD4 wš)7cj:2"uF3\*̜[JW_}uPX תŗ*J"sudcjk~gcJl+g%#l0y|\ yjg`B1Jl=Vg 2c W}2[o1qh:mڴsn۶-;Y_23@N /a0Ґ뮻βx]>'n46:b섣ds `eKbQh\4=NS?8gi2)p(Ol,TB豏]2`'||[Q:ؾ ||>e r1X1L~ـn mTM1Y2Βw߭O\h7<2WY g GyD͡a+g/A%*z|_[U8-y0>b1gW5؏=ٍ󠯪%#[eU;[1QY)~ yUn0}%&Fy!%Px0$\8f)7TZagsyYc˺5_UlWeVaRjAOlcCw=O>)[3Z–fBg٪ƲzxfEIKˬaԘZ}eIqd @7,{wxUaY0_ฺӶ2t{N(lp=nm5* UqeimZ9@ݿo+3 7vˌ}ͨ-VIɓ&fJ2m쥯[1nڸ9:Ùk={vW' o3Z =s./ 0 sV/\i%7bƶ?gX-7[ǎ}hS?:v - ޜ^ǟ;wh ~Ln=ZTA;fT`q#1FΟ7wΝԝQyΰ:>ۀ4s5ZeMFjL<͞(_Ͳ'7L}fO9`7^Xo+a5S,{l'gs3eכwvު_[U/eV<<1N^I>phiCQ,N:vVw,`N%ɳ^+PibmBmOk]7|m!\u@E(*!p; Zʟ*V$8 X쩉LV&oZjcRpV݆,4KCWbhN93s푡0™x}LV6VP_pŪ9F/Չ>a#ǁXm Iϲ<$*FVHluW >oUyl{i +<.C"nELJ"q6⫫VcFo<Ŵ#ҳЫ-j~T ٚ厣+qiCm/̙ʎ1&xm֗Fn4;d1V‘E:"]7Lh J2Z$q8N,@7xp6"@'S {4s&Yۻ?[=yX>J8v f|4RLB !мhڳ^?P|!l' !0Tv7 ln-{=bv2iV\ip%<([gLتy h ҷ#3qfOl+[ovZuݻ;l&L@@\fMv^7r~4uTN"l.!A|sYAj=[SdB9"Hluo23Myy7pÌ3x /U XlD+ @"J}4?WAXtR*h3Us|)S5"l2plo1bĦMpt.2رc={%PY/Q#_n<> ~|WL, *ӑH4wf@Gc=xAq'} v{Uʇ B[=l߾͛/[套of5 =zNݶu ڛo(;-Yh.7_VHt}{+&#!h4[3gEǭ=t?B^pu`?fO>v şn_G,VH[uKL܍?sɭ"HO#IK=9UsISU0*&9z=@L:N'E!-q֑e' ,=ZP3 M)[#!h -?yiS&Ot/ߺySJ @iVVgۻ{mfom:e)'-Z. @SC* ¹!ʓHVW*!HԆ@bڐI @B Uz4 @m$ H4-[5JHԆ@wlH$DR1T>lU\LB !h(d H;مʦvLGB !Da'clXly1rܹy i1hTJVmڴ~iӦqƵh" ʼnFطo_}窆-t= |dۊ+xԊyh~>-'T}:t|%.C p_eeeM;W;¡_/ć7eЁ۷яdj6lߗB$GTK/TF=!/YqW56ƙ9r~} 5cԨQ'N4Ѩ|@Fŷl2f̘gyF8WHOAPW{w* ϴ,&M^{m@;=lԗ2)OԈ@)*OqihH[z񔶤hkEL2کS''`~u#Pؽ{w]_;[n\x x (YzRvܙBy\ڧTĸ뮻#\o߾3Do#)Z}衇TУԶmРj*"wJ[y"9c[&|aÇc^jqgeǏQ{mKy/Ɨb'@J3F~ęRYFXO3f #!(%[_imXflX#V?\D M4T4? 8~z! /h:zjz rDshPڵ&a{D)/+܄_o75o,)SEG xI#Ww\ At14SqG8H .X^KU_u{DsU-$rDOVy]W9h@^PdUN/G@ZM S_|ɄZ+j 䥋dIK[܄A!@ ˜KoKN1)uo(Rb k+tJ@S=f#!(%[EU5oCu֩11# o~]+2v8gV*>Vy3pm"^ U:/P dKņY;|.^h4 M(bQm21唗!>5_ .MytܥDSwREoBѓ|Fz"яsW?%PSD׬( DB|(/;θKC䫛FBW5QMeX;+Tt|u*XVsB#PJfm53l6Wcj7,H< 0EHԛ0,2ۢIEcLߘBV(ozcLSfy|ȓig0#Mָ@vfLu2eH"hrZv#ᆊ l @%!,L~.g.͗}7#t9/PP(oY.J⃦0桤joe*^B:dLkiMjx^kc&}:XC# eS0xǗ2`]vZpa,;2oݬfp4lYp@Q CE An[.ͩh! Trw -&})b#YIK%]4cI77D8n*2V}ȋ} *>EB|Tl_ݺ+@*DLd:TJVZpYЄ@C( Iۢh\sM,z1 7ܠ壾>E:u4lu4u]!Y*;y^FmZk%GCAK2@FTw}bXj9B,3ʦÅ=kttt/܊`+Iha (f[/GIb4dC*޼⋣7!Ilt`JV~,x#G*=&-%FQ}Y%Uw^$׹ _z)U c.i~Ns=Ih=}z@-ѓBndSc)qNCT)٩ZtPzIN^*ѧS}3ƀ(IaNb4 Jgu[Vt!@zF1LTՂ[iZ PJSj`m:׆RTz)ٴBmS|Be (lk7$A")ȟ) D84d#]:|Y'n2K@d-:C(Y(a6oJbá*F9!"hx7E!POX7!8{lJUH$!!)@B$jXI4!8$:৬  ت`%ф@B"N$@bD s@bs~:!hVM$!!)@B$jXI4!8$:৬  ت`%ф@B"N$@}פeN7b`¯q2& F@ ȱ _1hGLcޮcwt'jԓʄ@B[WgĴwL5hқ&0s#ʧ%j8)EB !(֣G̙1O޿{vnٷkS&Ol(' !p KO8;xի'O M FAV Vuʔɓ&M?|5W~>C]qV% ݻvضkvn6A_B !h  wЀ~~VX_rc'%tEXtdate:create2011-03-13T22:59:24-07:00̳%tEXtdate:modify2011-03-13T22:59:24-07:00tIENDB`PKk@#"buildbot-v0.8.6/_images/status.svg image/svg+xml Status Delivery Georgi Valkov 2010-01-28T18:21:55+02:00 2010-01-28T18:21:55+02:00 2010-01-28T18:21:54+02:00 Adobe Illustrator CS4 256 248 JPEG /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgA+AEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYqxfXtRvoPPnl WyhnZLS8j1I3UIPwyGKKMx8h/kljTFWUYq7FXYq7FXYq7FXYq7FXYqx7zV5yttDeGyt7d9S1u6Uv a6ZCwVigNDLNIfhiiB25t1OygnbFWKzW/m7Vf3ms67NagkEWGjn6pCnsZyGuZPnzUf5OC005/LkJ UhNS1eNj0ddW1FiPoedl+8Y2tL4b/wA8aHSS1vP8RWKD49Pv+Ed3QD/dV3GqKze0qGv8wxtaZp5d 8x6Z5g04XtgzUVjFcW8q8JoJk+3FNGd0dfD6RUb4UJpirsVdirsVQ0ZX9JzrzYsIYSYz9kAvLQjf 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 XYq7FXYq7FX/2Q== xmp.iid:0F9190091A0CDF1198A8D064EBA738F3 xmp.did:0F9190091A0CDF1198A8D064EBA738F3 uuid:5D20892493BFDB11914A8590D31508C8 proof:pdf uuid:7385d860-ddab-4cd9-b389-94efa1ea2700 xmp.did:0AFC8385150CDF1198A8D064EBA738F3 uuid:5D20892493BFDB11914A8590D31508C8 proof:pdf converted from application/pdf to <unknown> saved xmp.iid:D27F11740720681191099C3B601C4548 2008-04-17T14:19:15+05:30 Adobe Illustrator CS4 / converted from application/pdf to <unknown> converted from application/pdf to <unknown> saved xmp.iid:F97F1174072068118D4ED246B3ADB1C6 2008-05-15T16:23:06-07:00 Adobe Illustrator CS4 / saved xmp.iid:FA7F1174072068118D4ED246B3ADB1C6 2008-05-15T17:10:45-07:00 Adobe Illustrator CS4 / saved xmp.iid:EF7F117407206811A46CA4519D24356B 2008-05-15T22:53:33-07:00 Adobe Illustrator CS4 / saved xmp.iid:F07F117407206811A46CA4519D24356B 2008-05-15T23:07:07-07:00 Adobe Illustrator CS4 / saved xmp.iid:F77F117407206811BDDDFD38D0CF24DD 2008-05-16T10:35:43-07:00 Adobe Illustrator CS4 / converted from application/pdf to <unknown> saved xmp.iid:F97F117407206811BDDDFD38D0CF24DD 2008-05-16T10:40:59-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to <unknown> saved xmp.iid:FA7F117407206811BDDDFD38D0CF24DD 2008-05-16T11:26:55-07:00 Adobe Illustrator CS4 / saved xmp.iid:FB7F117407206811BDDDFD38D0CF24DD 2008-05-16T11:29:01-07:00 Adobe Illustrator CS4 / saved xmp.iid:FC7F117407206811BDDDFD38D0CF24DD 2008-05-16T11:29:20-07:00 Adobe Illustrator CS4 / saved xmp.iid:FD7F117407206811BDDDFD38D0CF24DD 2008-05-16T11:30:54-07:00 Adobe Illustrator CS4 / saved xmp.iid:FE7F117407206811BDDDFD38D0CF24DD 2008-05-16T11:31:22-07:00 Adobe Illustrator CS4 / saved xmp.iid:B233668C16206811BDDDFD38D0CF24DD 2008-05-16T12:23:46-07:00 Adobe Illustrator CS4 / saved xmp.iid:B333668C16206811BDDDFD38D0CF24DD 2008-05-16T13:27:54-07:00 Adobe Illustrator CS4 / saved xmp.iid:B433668C16206811BDDDFD38D0CF24DD 2008-05-16T13:46:13-07:00 Adobe Illustrator CS4 / saved xmp.iid:F77F11740720681197C1BF14D1759E83 2008-05-16T15:47:57-07:00 Adobe Illustrator CS4 / saved xmp.iid:F87F11740720681197C1BF14D1759E83 2008-05-16T15:51:06-07:00 Adobe Illustrator CS4 / saved xmp.iid:F97F11740720681197C1BF14D1759E83 2008-05-16T15:52:22-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:FA7F117407206811B628E3BF27C8C41B 2008-05-22T13:28:01-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:FF7F117407206811B628E3BF27C8C41B 2008-05-22T16:23:53-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:07C3BD25102DDD1181B594070CEB88D9 2008-05-28T16:45:26-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:F87F1174072068119098B097FDA39BEF 2008-06-02T13:25:25-07:00 Adobe Illustrator CS4 / saved xmp.iid:F77F117407206811BB1DBF8F242B6F84 2008-06-09T14:58:36-07:00 Adobe Illustrator CS4 / saved xmp.iid:F97F117407206811ACAFB8DA80854E76 2008-06-11T14:31:27-07:00 Adobe Illustrator CS4 / saved xmp.iid:0180117407206811834383CD3A8D2303 2008-06-11T22:37:35-07:00 Adobe Illustrator CS4 / saved xmp.iid:F77F117407206811818C85DF6A1A75C3 2008-06-27T14:40:42-07:00 Adobe Illustrator CS4 / saved xmp.iid:921461FF4F63DE11954883E494157F9B 2009-06-27T22:56:11+03:00 Adobe Illustrator CS4 / saved xmp.iid:0AFC8385150CDF1198A8D064EBA738F3 2010-01-28T16:32:48+02:00 Adobe Illustrator CS4 / saved xmp.iid:0F9190091A0CDF1198A8D064EBA738F3 2010-01-28T18:21:55+02:00 Adobe Illustrator CS4 / Print False True 1 792.000000 612.000000 Points MyriadPro-Bold Myriad Pro Bold Open Type Version 2.037;PS 2.000;hotconv 1.0.51;makeotf.lib2.0.18671 False MyriadPro-Bold.otf MyriadPro-Cond Myriad Pro Condensed Open Type Version 2.037;PS 2.000;hotconv 1.0.51;makeotf.lib2.0.18671 False MyriadPro-Cond.otf Cyan Magenta Yellow Black Default Swatch Group 0 White CMYK PROCESS 0.000000 0.000000 0.000000 0.000000 Black CMYK PROCESS 0.000000 0.000000 0.000000 100.000000 CMYK Red CMYK PROCESS 0.000000 100.000000 100.000000 0.000000 CMYK Yellow CMYK PROCESS 0.000000 0.000000 100.000000 0.000000 CMYK Green CMYK PROCESS 100.000000 0.000000 100.000000 0.000000 CMYK Cyan CMYK PROCESS 100.000000 0.000000 0.000000 0.000000 CMYK Blue CMYK PROCESS 100.000000 100.000000 0.000000 0.000000 CMYK Magenta CMYK PROCESS 0.000000 100.000000 0.000000 0.000000 C=15 M=100 Y=90 K=10 CMYK PROCESS 14.999998 100.000000 90.000004 10.000002 C=0 M=90 Y=85 K=0 CMYK PROCESS 0.000000 90.000004 84.999996 0.000000 C=0 M=80 Y=95 K=0 CMYK PROCESS 0.000000 80.000001 94.999999 0.000000 C=0 M=50 Y=100 K=0 CMYK PROCESS 0.000000 50.000000 100.000000 0.000000 C=0 M=35 Y=85 K=0 CMYK PROCESS 0.000000 35.000002 84.999996 0.000000 C=5 M=0 Y=90 K=0 CMYK PROCESS 5.000001 0.000000 90.000004 0.000000 C=20 M=0 Y=100 K=0 CMYK PROCESS 19.999999 0.000000 100.000000 0.000000 C=50 M=0 Y=100 K=0 CMYK PROCESS 50.000000 0.000000 100.000000 0.000000 C=75 M=0 Y=100 K=0 CMYK PROCESS 75.000000 0.000000 100.000000 0.000000 C=85 M=10 Y=100 K=10 CMYK PROCESS 84.999996 10.000002 100.000000 10.000002 C=90 M=30 Y=95 K=30 CMYK PROCESS 90.000004 30.000001 94.999999 30.000001 C=75 M=0 Y=75 K=0 CMYK PROCESS 75.000000 0.000000 75.000000 0.000000 C=80 M=10 Y=45 K=0 CMYK PROCESS 80.000001 10.000002 44.999999 0.000000 C=70 M=15 Y=0 K=0 CMYK PROCESS 69.999999 14.999998 0.000000 0.000000 C=85 M=50 Y=0 K=0 CMYK PROCESS 84.999996 50.000000 0.000000 0.000000 C=100 M=95 Y=5 K=0 CMYK PROCESS 100.000000 94.999999 5.000001 0.000000 C=100 M=100 Y=25 K=25 CMYK PROCESS 100.000000 100.000000 25.000000 25.000000 C=75 M=100 Y=0 K=0 CMYK PROCESS 75.000000 100.000000 0.000000 0.000000 C=50 M=100 Y=0 K=0 CMYK PROCESS 50.000000 100.000000 0.000000 0.000000 C=35 M=100 Y=35 K=10 CMYK PROCESS 35.000002 100.000000 35.000002 10.000002 C=10 M=100 Y=50 K=0 CMYK PROCESS 10.000002 100.000000 50.000000 0.000000 C=0 M=95 Y=20 K=0 CMYK PROCESS 0.000000 94.999999 19.999999 0.000000 C=25 M=25 Y=40 K=0 CMYK PROCESS 25.000000 25.000000 39.999998 0.000000 C=40 M=45 Y=50 K=5 CMYK PROCESS 39.999998 44.999999 50.000000 5.000001 C=50 M=50 Y=60 K=25 CMYK PROCESS 50.000000 50.000000 60.000002 25.000000 C=55 M=60 Y=65 K=40 CMYK PROCESS 55.000001 60.000002 64.999998 39.999998 C=25 M=40 Y=65 K=0 CMYK PROCESS 25.000000 39.999998 64.999998 0.000000 C=30 M=50 Y=75 K=10 CMYK PROCESS 30.000001 50.000000 75.000000 10.000002 C=35 M=60 Y=80 K=25 CMYK PROCESS 35.000002 60.000002 80.000001 25.000000 C=40 M=65 Y=90 K=35 CMYK PROCESS 39.999998 64.999998 90.000004 35.000002 C=40 M=70 Y=100 K=50 CMYK PROCESS 39.999998 69.999999 100.000000 50.000000 C=50 M=70 Y=80 K=70 CMYK PROCESS 50.000000 69.999999 80.000001 69.999999 Grays 1 C=0 M=0 Y=0 K=100 CMYK PROCESS 0.000000 0.000000 0.000000 100.000000 C=0 M=0 Y=0 K=90 CMYK PROCESS 0.000000 0.000000 0.000000 89.999402 C=0 M=0 Y=0 K=80 CMYK PROCESS 0.000000 0.000000 0.000000 79.998797 C=0 M=0 Y=0 K=70 CMYK PROCESS 0.000000 0.000000 0.000000 69.999701 C=0 M=0 Y=0 K=60 CMYK PROCESS 0.000000 0.000000 0.000000 59.999102 C=0 M=0 Y=0 K=50 CMYK PROCESS 0.000000 0.000000 0.000000 50.000000 C=0 M=0 Y=0 K=40 CMYK PROCESS 0.000000 0.000000 0.000000 39.999402 C=0 M=0 Y=0 K=30 CMYK PROCESS 0.000000 0.000000 0.000000 29.998803 C=0 M=0 Y=0 K=20 CMYK PROCESS 0.000000 0.000000 0.000000 19.999701 C=0 M=0 Y=0 K=10 CMYK PROCESS 0.000000 0.000000 0.000000 9.999102 C=0 M=0 Y=0 K=5 CMYK PROCESS 0.000000 0.000000 0.000000 4.998803 Brights 1 C=0 M=100 Y=100 K=0 CMYK PROCESS 0.000000 100.000000 100.000000 0.000000 C=0 M=75 Y=100 K=0 CMYK PROCESS 0.000000 75.000000 100.000000 0.000000 C=0 M=10 Y=95 K=0 CMYK PROCESS 0.000000 10.000002 94.999999 0.000000 C=85 M=10 Y=100 K=0 CMYK PROCESS 84.999996 10.000002 100.000000 0.000000 C=100 M=90 Y=0 K=0 CMYK PROCESS 100.000000 90.000004 0.000000 0.000000 C=60 M=90 Y=0 K=0 CMYK PROCESS 60.000002 90.000004 0.003099 0.003099 Adobe PDF library 9.00 PKk@]Y22!buildbot-v0.8.6/_images/index.pngPNG  IHDR82gAMA asRGB cHRMz&u0`:pQ< pHYs   vpAg8v2IDATx^wtcuY~~ߚ֬Y3%r-yJƒZRխV[+W*s9LY̙ HD" @$r}Ͻ${>sϹ؝ ]s/.G`6父#Kdn.s']}Cc3srda˷Y7;:ӶZo4ls"73'Y\?ql, Y'eՃcE5{WTf+{v0T݄Q1U.,%= -%Ҫƶ̼#\ɚ׵cQ(FXS(ۺF'+w#/3lξ*DaMJOʻmRڛzb`/-2`>2jWpNaT,8s&yم!o(-?<(scuMO0wb=;6a&?[:0К_W\1<>ވOIZ`aNЇ&*F$VWRX3_%nV7)q%Thf#:Scb|+ ;ĥs(QHb 095l IPh.tIApҡ *ˇʆp03 ƙ63ChFk W:9!2MU؇ЧhX13>;X8yQsf¸ptgFhㅝiɇ>JDžCwŬcKq ;f-enJ"5{C_(F 4p0ֳ?w8;=s9pu$ 0w>1= gC̝Dyq/>)q_\&h̖ b(Ώd6rR1#;G8c|C[=N[x*QG``V~V^Ņ1!9ZE䤿\ uD9\.^f!p2a=sҠc_Ux*TgT͜9C8Zŀ(q0~=f4+3\dC &6GBșNgF@ ;zyyDocv '#*-gxn'>Nwޑ|V1[r_tK/n/:_3y^|T.M.p6i2=2+%K扣=}ٽoNZ~tr*ÊJA'aᩛ>n{P6; z5:iT5A6\7{]`ٱ<-eWR]}J$vTKX[#Q((D./ Ӓ4;oy֋|a1?wuO/H&A%\bvfJĶveѰlP2c hP<߿t%idD_6ff;7by*tTO hh#>\; n$>Y-@uL03B0Cո3.- d>d>:6/ldw&0i6 A/U0rIVaqv4 >=KB_g?N?7ؙў>x}fbg}}ь9^\]>S\z:.<_ŵ_Ss&8ǟe]h&5,M-K 8i+Y0U5s4sȄG[8h0Y=I7Gk`oC&*(wA]^Y^W?911obR^,[/P2[7#1cfatiTgˊ i~]v.M.YLlm_[X{U m2'yS:ANBtJf97lH|^/h #+V.Eϴ*S .uLC%F֥7gjVS:Tm&f!Wu,AuNIӧ2{4cFGZђ)\ŀ|RK~գʼnһ+hdl̄O9 AaBV6C˯dt c?X[7r+FukvhFdӳQ@j!O0&@ZF?i=T153:fw>Eϗ+OD'ZIWqVv靌Rl*.?,o|qW%fNՔnyJT|*J=o!iIrؒPaR?aS9r@jHiP/^_sj5R&XVž 44.S51g8wjw%ccEs~mnXA\-8ť@do/)߹7Zؿޮ(=@zCu;c z4rDe<PSOގ_k}.S2[y߭w?W">C{h޽[]jAfAiLݴXo+>PIf*A @55|S* ֱ]#|X;yŨ&֪R_TS$5[ꭇ5܁FEhUIX[4۲ZEvQ #S鵷9-+'Fq+{uucNWn᪰}~PL#WO# Uеnִl}ǴgEe~Yq5P?sheˆDn2zuouerMʙG5JQl"U*|7,K"nC$.Ƶ!߶"UN!H,*kIϥ>U2^?sf?oNVprito~TiaS@a{c}+ubzQRc:(g] (~텇<) @7lD:@FYZzBrd_}IʌE$=(#Ev|UvqV2Zu3|^(%̧cJ2N=Ã4z!O8_)ݫ^j֍G紐eKHuOa #$v=i9oM٘L7mec^D|z:ۇb-C/q_yzv1?E~'4wx_A.SJ$0no?w"=c]J|8 V.zT,;;d? ,m@Ag Fצ5#׉0q DFR\| اڤ}'ZwRrb5gG6-g,ݯY& LKPF6(TݯGdIsq+a5 ` ܩ GkeJ ݮƴ,20"EVͣ1AĘhAĶ,D13NS*(I0̇isj Ol_Tq^T7)@З#'v%FY0s9`&È.0'%oĵ.'=]__%_)W9 V%9U#JF0 pN/34Qrr6 T,0֭eDZsK$m5[d=AӦ7<1G[%@oڹN xLhNfa 32ElLfztdz:12X'~v>hsab8\,=sK ]cDf <ɓP%s-_|y~f ?3} Ύml,2YlZ&g3zt6(@4@H@(@n%_QUs.]/_/ponPB'b߿7' _7_x4gT?{ ;h4tR|v(rfm+g3>EG2,c/B;[*9RTܺ~+y8j$}39\kkKHzbѬ#R2 j0uu9vS9z9zpBCًُ    g~˽ZYYݾӳE-H/]^H΍tyҵskz'0v|Ե Az(-wѽ{QXPڽI']O:ftZ.+hI.޵{4z'O´:jՏ|k#z:nv޽սw{FQPf'D?ݽg=7zn@9{xfэ[G!}G7G7o?|sѭ(Ƿo8zk OqΠ5lzwӻçNoz KP[ÇwFmF PFmlaQQ{؈=lƲF"Xpqqqg8`|lǣ 'l3bh!vE;L3rlg+b I)I)IZ8ǰ:P}4匚t>rFr.<8#'QP*( s]dI#є!q<ڣ8h4-Sr4{LqEM;yHm}:\*-<|8GIxSDy$3L >",HG@Rn4Cn{v\_ơH y>mw;xbы>t.o2>m`Drӡ`t1/5"yӡ(GS1<17ͣb!RSq|*D'( %8PЅT"*I=nHBWTJ2K%xTE RTLg, *IB%RPTzTnpv9&qJAIL3!G9*ybL!sTREZI Tq\.T+x&n]ݝs;{Y",xزeTʕSq SI\G"1b؏^,LvHҴ=~>Hx0g&Mp(m֟8MI'OfBO:Lݙs!fL\<$N9o"C&](P9ti*Ύ =U8ux-~ =B ;7y I8cѓV"8)㉓(I41L'3Y ѣG@Q8aCD=?tph?|8|(F?t6|9'T9~4?rrwݡ{Cp" :?p6pt-9!-9;||o^$ n»ä b[ç#'00xGV`&נy`필"löÎkus^(΂{fYq0 z0N\ql7`hp`9};IO$ۃPC(ڣ)I"=$|4h~,r5 pA1t v@Xt `?,{FZ,cDxa0^ &Ѣ`L0N[AcgPL A!.n&D ;‡3:$aLfC Aq0^[( B Pl(IЊ$ORdI(IJf\&9~A}.2:H\((6JRM`, A}-FW{h0_~ړEr*s.}A>,{Az{ά/5z/a'bTZ.oJR0F8e.?*8q4wʜ2ːe-ڤK  SSƕ‘Di3.3g1m%mʨo!zq ˜ iZ=nف!k)2G?>8 =oei=w 쾞hh/b-ISH' nڝѓ{ap19 k!pC苎dt(d[ mUۢqo vD@>ℎ>10"z4t=$$rG7 <"1 "؄Gg`CI wp7VS>xXP,P&?9s|Q^xUc.@(^#n0T:A#;(gD,`.^JX!a00C`E HXzLxDa ldhqk@@A{ sqnWp!B."` H (IIp h7 4aD*q[1 =P:|%kK0{Q;=&㋥˨EJ,kU+W o=X7~V?S5Oy\SJ򴩃edCrx}[S0c-效7o ,fho>J|Rn K'^fuqo[H[)ڎӥs?)J㞾ٝ8uNݧ,~ qk_yɺ'OޫOmFTK$ he?5 p #JhPQ~ EXw!ͻP'WEVT MnϜA6YL&[Wk'/HmYbLr~y#杈o|wv36gXCg4u_ʯ'Fw^xG=yN~gW Z'~kɝsT)~QDRfدRT¥4@7(׷%~]2›Ŷ/ek Of^Ì; ƒ/O^Q^X͜laЛ}pH侕o䵼.AӨI+ "'y+;MqO#;{~3z/"FB!+u15c/]? <'ɬcdv/q;T2/yx;I?oK_QXD?(2b 0 0"٨1d͈s1y0&a̲U$m %G%A2@!Rl$!vI`Cj(w$xID,'<&L@)hXG\oL#x<4&S 7.#8p BA $:ё1%x Pq1""`$"d T̓;c͒2$`D={.Z~G7Nvvl۞U_<2#I?:t@(r0. ]Jz<4!Ї[D#1ҜkHAJ1lxF 3w A`AP"GLE6(H.)lPR(~!3{*@<,/a/YS1|Pw35ks=[DvY<FtGqϯDtw Oyېƻ۞6ֲA%p>[wR^.Kn {UX;_{A{Zp(.n.D̴ XM?Շ܍o5l;w3T$ S OXgM0mLt,ֽѕr9XVCؤעyދ/հ;)EsGim[ӧ cPWs;.Rd+! 1nzCUN!XX ,]#RKdˉe/0w1Yr=F\HO'PP<)WԄ/H9p8"{ P\o4_ E@x/GPP.q j7$sL$SA %7Q ~nAL.MI & TIHJFSѭEHa0l˔饍)ȼ^jҮK ZZ1[m~kSeXwoSغnqyAp b3бU:C"ЇXG0n :  ! #BJLJttЅJD!``CӇAar)Q"D2OT(GB:`)lk0ڧBxhHgk٦^ OndR_;r+nbA Ϙ3.LHhGHGW -97³w~kwS+j?}/"PlO"h=,$t~/E$NڨJjcNWgs&OuooGx&?7u/zqKܯe>I"6~}ܧW?Wțһ/သJBes \Z'QofA>r1?Ci~ƣ SX[ϿqcɕfSӟL]+x?A,!w"s'b:^zv  WUD6n +s]˨rUiIŶ~秿LM8n}\&ზ~G.<֍1OtDַ4wNo?k|[9$# l.mٶ٤ !V09n#Ͱ\&"fHucP3|eQ5,^¹; &QD]"a&Lyc!xOTp!48('jt&Q^ Ň8.H (h":!i ĉE 7DHB$$EHxJ$")$&E$qt6J؍J[|5",:kAүp4 vvʸ(oiw j^kЩU fy٠l&ng˴q`1ۏ,c = OOOU !I@LDv] &4]CBE @ (r@< qD( s.4r=]&Jr({CTr()r-f%TJSmxXko^lXwQF(HUUMQTtyO"6 +d j]eXf`7ܫ<W:+a~Ƶ19MK)P O1P H$  l":Ķ6 DN:!v@f8'[l@(Rmr=@#l!)0 `łJ\7T,t'vrӞ8'~ mFRB &_ ߓ@&< arLdf@1ADA$&3$Kt7Yq 0dT!tFhB!R# :1 r!7^#b_k>?߯\UljVi׬WH+J~tCP 5h6mގcpQS׮پ媖dP(dH>"qHV`"~teD|"Ҙ8G94&-"qvT> )W8@ GXsF.`!e#d3Y@1Z!a[!<*X )4^W)(yT*Ut|e(MA }rUZ@ݬ~Q7nť>*`>&pP-j)Kn0ya55*%հFU/ey挷vR1E_d*a%qӪ?{QNHDtBwj(S, ΤۣPrr%V'0*~zՍr~X.4TJ0S.eԵҩJš']1A٥! FnՠaT3GoԐb%P᜷ W޼?GN{f<+T*y>+oϕa9oWRR_l [`#Y]}?2q[FeXp,Q5Tώ])3iBoUXQ KaDO{N_2+a`*UCB~oAUq'ALGc?5e$sCic#`h:b99 .rGM!\wB?uEIqQiX>P叅ģ&7Z!2M`@/ыq1&I$M vnSR)6%HD$ b ެDi J 4t IcCA&R/?W~>o^yQ|N홵{F^kmlm65zCLmdtZ۞zl`V#rhА|>\]]$!"(T@b1XA!VB)lCX<*UJ,S+B)sU8e*eJ׭,[z¡ȖTT:ժ*T#X \41&ʖ%դUT؝غ)eAgΈT7z5Qj {H{h.P(gtA:RF1´$1U_ŌG;D0=07;4tMp.dnrazܴ=Q&V-c x 0Jd%@.!WBB@DQ<)%U3{wCha|͇ Ų_{)O_D|wn7 wnE {&d-$ :Rulz˖iײcПMρa1Kf2A@q#9) xC4B8$c3RWf!6LЁ$:"`BF+@ &DVC*iaAQj2TJa %U"KUFЖP*T *SQ*|v|JyjfUB~!UI/?LF/h}[OA>:V͒s&\4r01{QmG"U-d:iM\!!B9 XHM}Tɏ_/}?*(W(jAc2ַ&𴋀P5m{G[#ҡ^;4LJI; "Yw,"С @֐w@@ S( 5QJ>!TKB!H9U UQkT-PH5Uj"qVRb_XTT X|AB)Il9 /}<£ßn*cPxϟ0\gc/gx?PèEWzhtߋ&L/'Uڂ*`a{3;X aÖxOxm~gp{m[A-8JRE` y.$ho l'P#mt9H /H..` 1BD^:7^H̊K^'E żfW 0& DD7NG̓|Ɉ$$"XK $|BT?o\Sph&=Y) 7!DnDAd'9` $8MpAad,zAN v,3 ,12 "% PEDd,Te$sZ"Gaen~?Ǜ_k׿x9I<'U+M`#*4o ]qKj,}zoCn\t˞C@ʩt)Nh?ha"2xIJ% *CȨ`QE!vi*Z U ?E\!:=4w*a$z)t*WPzd=T%T:(FWDuZB8__^m(!;-P"w֌=aш9oH*дDtyIih\ؙnt0͞uYκ:rov68݋e1y>lϯbKn?@.V5-|--/|~vz3_BБV4&vMjL"}BGVu$r0$Di#F1[4^9.ш6֓ /0.4z#J0`T[s.&QǛO|ވ:4k4S_ S$$>)!4| L_^~P)K%%LuT1PH ̒P& )Ci3Tq0M̞ "#84?+p-]L0el:C `[4&#I\Cً!0z'Q"y Y!`da)$$IɃX˖Xx_gՏX~}'wo<s}eY^j6+K ă;f^i8<69,#IhYWlm,%ӊ̴*R.eMc!Z  ,\*C-PB5c4}B*(4AT*@'THP30BcѬz!G wW#B5jCJJ) -UE7B#cZ5UGFI*lh+w H d4rvϱ j~Ih#!5BZ:9&~n4B_>˧Nw>[~B{1OAg/nѧ{wG3;(FLF]kp{8V"IAhfę-~J,k@91NbyG* vҁWx=8$!HO|gR+'`D (QJ;d#n8B"d ;QGuq!g)gx"2OPI`R?}$]##J:x$!` O,Rpf gDRKb8TKpB@O:Qu--UǠN&1lЀtA#3"CQXɒZ|եxYgЕ)re"g|0]D5Sry nT+_-Pz7D`gRXn 3xxx' Qr+3w77W_;mzNbѻ@.4`Zrt7zĻ!Ά Ә-3C ;,|ٹ g]>kBQ[*n щÔz',Weښ4m(^FJm ^/O>MxSİH*A$Te*gIx *.3$/Ki*99D5Hsg_c7 Q/!/!HD'( A!$8cՌEr>!21Q*jՄt8DɮרQ]sg֌+{ƙ?ŵGؕ4.))[7>Qy$ʝL9n1Ѐ-CMPjֆ~z%"etaR~|5Z18w5bKg)Vԕ-t`KN9 - wKGJ'T@_YSR;~}#!A\Abn\XzMzUi1+;ђ]obXxiO?}o/\='r7w,#bn]AOW0z\̄QPC x @1"AXjף8#އ%@ɷgDl|k. GG*#M@KX $3$5 IaJw:3NTHRT'sƝ1NEIn#8P@7SLˬ7Kɚix&1b:8JL E $\xRԗ=Ơ̆uJ\R޺/ $8EkhpaLu[ rӫ9]iM#r1YuqBϴ[mh⒖QVTje䃤'EK.l(nz_xREd$>LYt ~? ._h3eL3$T.3W,g#0^}V?gAB"5J/JJ(`|&nu/o.( "[ƌ-s=S2LҀ*E"ĮLȬNPg]O3n(lȌ'SHQ&2Ph-;,OͅH  fK};K|\/wΛ3˙,yȅ ^[ uȂdaAM,$-IG{B" " Pep T **YD/WcJP (PدT‹UVjT t5OӔidxJs#!T<8˭jll**o(f%kb FV$vnRC_鍿~=vϟ?ꗿїsOɟ??on?~» "lV[oiV{zjOfT.mCtE$R͙T]~k]XJ7V ܼp֠Xrw&FOw(! # Ah<5P4lRO7MD)D1IB4S-ʓQA/LT1g Tﵸ~=t6 Ew0T?џ JN[࠵H`(?"! sR9խUةfy(J MjX隮il,h(.,hjWO ᱩS厉w>77}=h|zͫ7VewǍcoߌ̪hz[/}cbkۧGu)tLߠx:ky\gHﳃоҳxRKxzf4xVU{Υ v&@l/m6Ȗ;ٙ!UGbO"~';t#K$ ё"+{֕-vgϺC,;k$UY U{31G^0<<`R8MH)w(e ދ*OE&)EDKKPlDV`HE<#R%BHrt(^Z UCh'$ՂM4iPƅ:xBOAdwzvVXZ[W)ܺzcN*./+2J)rX"(-n,y;",YQg}_p/~v?o]ʷww|7_?ɭ?ɍ?2W45V–ӆdrnfy6w{˳sj\kBXZY_uniV@`D?D 醅S/t ^C`L[(PАݢX!NhB,{5˄+WbMO3/Pi uBO?X6T.չPL&ZEWɼlU:,_pW.z E'9WɜCa_W7;ařMiM u 159CJU>(zCV^R\?(V=eMsĂٵI J+U= zQMʬ n_%猪BM#6#$DciŞLwX г0p"A"di]VQ|0_@l/&:ʼT@&J'v8sE rgݹw8EΖtB<.u"@rwbiBKF;񜭝],}Z9'gTKdr۳uZ^_В]BK|tyG/ Cɳl>"4}n#@l/EX9fgt^0 ZQP@3!G F4 $|`] H |"I}X Dq9 JW 4G)X㾂9E_[E2?#T(X/ZWZ$nTtAĝ`H3Y܍m@Xb/sH%gU,q:f8D): 8h"HER7~ԃ*w2IDU8+< y[(,xxU^$ 'Mŋp|%(% tJRe@)-pPOK%xRTSeˁ@j@*ߊ(_ҮDU;B%:0i&!B= z`PxQM^GI^P^hb|Tbq^,,O K{&ֆ`k'85^zd91Ov̛En}˞O,{fX,hkklzѿw_t?o_o_or?!W7*Z|5 -uRU &Ҳ.W$d޺c8X V%ڢ\,.T6Vhd+4ElQf"Ci5FMR!:#'@jr74K\'.` "R< KNf(~R kj^[md4B:ha|([-jHs{-KZ ]/og֧&lD(?2MRٗ*]Jz@ *cAltar˖fNLάabdn}?3}Ehdڟq!`1 FZH 4dY }fu>fCʓ MW.u9p~H]eR'esRL!xY:RLJi弧)# S/iS BtW,GP%r_hqC)Wi (@W!o|Slu*+%?)+Urr%P ` ! wHG~U-Ar~'LHXG&$(0Լj=RROPIkaP'*:ŒZ&[VW {p&.k9=#j@0[67U˪eZӬ%ӳF׾'W*ʚ߉ҷ\/Kڃ>w?~?|;|_}w_{TΙF'DUɂI7dkm`S$wr j _(KTDtg+pbX[DJob5Nh< $4f}JSst)' aArtv/#B'-)ь#`9pd.G)sޡV, CD^x~vEE3fl' gۧ)B& >=mG{?}t<ԥ*cgڟ'|g;?5{ig}UzzDgUz!LetpXh˘6*HM Z]uF:l"~I[^")v=Cj;!P]7q|? zld?{ǰm>:>?C:߿ctT7úʡ RFpPOäF=!0BQC`A$2 5I542FP:Sb(b^6Qcfjd)lߢB&j0&¡-Cq(>6'ǵ'=rs+o}jq{{hg LP]N\n6fKKK{EӖqsǸi17zqˠ7-Mp`PGk6U5~7>)_u#ҏcJ=.z~/og~ʃ"%O KTQL{aXO/m J[]]U+Uzަ~s}uCb1 uʬlX+&VXYWlhNΉe8|V8pHɎ!do~L8cjtB)Z9)O(1AD}J)OCj+O!F$:!]2֬hOaWO+PN' '!L2wDIChd O3a ȅ  ¡s-3PxyFg1& 󙠋\]&7<\Ygtڈȡϕ 1 " P.3* amxh?3)98?%#I {k]DG )0- 2+aSGa"ޑ (v e@`F=I ?cHl0`"R!0?J6fe f`|3@ ce τe$FTF*& A1C1A3984'P%W!2''R]n@j/mO֭^7-ᵼ9vQi\F5V &4޵[׭FiC9?]T[_VT޻ <*uX[Jo%JSvD\{\xaއ *#R+FTވ-~a #jV狖dFicM.W)d:eS_[ϋ%*b}6vuP ZTe[&޶po?hTʥcjM!P xRP@hiePc$r\h4Q|}6IBN)))xD^ݘ6jFilԆ=d@w E$ɩ0ev\&\@ ʦ%Dȅ*S^nsF7f#ؙ4 -/)όb`/쌟;y~"#OwED!((.qfBZ6):~N!RZ΅>J,xErfs$h٢υkˈ(#1*H1DgBij`>y~tbnMMa"  6i 4@3Z0:Bj?/$8$_!x.S\>Dq!w1YyD#UZ95nAI?~4|vfx|ztxglY5ZdQ9!Z,h5Fjsq /L+z޴c;9[![~dZ,=FuYcO:'+jr>)Sq%a $T]*}Aᝄ۱e*ed5F6=jTy%jTԢёQTb)РTe͒umD(:3;7;'eԌЛ Fx-xF\G>8/ rph{)`k^XiQJ)08Dkh(T pabD;Y@1|Apq/8.0Nm:(28> L2]^&bvKӊ ω1H##&/(F r!grfb0JLJ.l&ܤLl$󋌞 b55s>- &G'h##?636w>LA^8N4 },P蒑sK?OT1^(gmИn֦uїi9OeQ=1$FtsqLoIgWCSkMSWaXFPU;/vpjYO</X[wf{X8Ğͮn[F΀WT*k`^:`FY'mO:6574UB*k[kZG+kk`kh!hIV56wsd zzz{{GdžqgGX#]ӂIC&Ycq${tdA,?;@L!N JžWaqKvca۱v8J!Ӝ~WbMݞoe3u.=md[^_XUߊŽdr+6] Q;%f m!3q3 Y< I,<>& 4U"ր`?~&Ԇ{TP@t٦o\Vtu+M :~DˇW,'Vv78 ,̹.$}˖KmƊČ|pt\ ɤ ŜlFR kZJSj>3UhFQ2ʥg4k QƂA.OT/DirrV'{.:6mT?W;fXC(:m-zv0-q\au~iCy荟i\n,drOKUj}tl {],I[?sk)7 ]үo6<~}pre͈кbYF Օ)>~DO,MOMMޖ k]q{ɸĿqXZ^)Et^.e>r(2b䣸 GfH g]d \U՚u5^^WT*;}P4jP4ؓAvFc5oXLzMpQ⇌֎ ng;;ԓa:oxf4"XU|Sm{綨-jf3$2Dz̆[uPmkO7H Xc\ovjCw`kNon?cr]\fjۨ¦q<Qz=jB/&4)@~JL/!{>|#aZ^T-jb&\T:m'LaIK>lЌ_]ÛJvB%qǰknY'`s{oM•((2(t;2?_|-x) L cGʅ6 (ʋkcLƋ{C7xv9MfzCc ..'@]S9~ Q94onocIVVV F6~ X:VGV΁gFKsY9oA-Rn, {dxh|v]=^u6X9L-YF\mjfLY3R7lwuh&ݰO+׷mry^AQD~s/0.9s nOA3Si7O%@ 9J[?;nj5t6LKtT%i^qsDO]uqF2f }~0DYfMBo: >C6J ckvA\tCxPzD rxv vtT@ E+4c€mE5쫴4;CEtw8}!zbu}AjxtTisޠ 0:yy|v7fwOGԁ[%mh%H:;JEvp;\˃:N "ѣS<.+iu]v$8<^M]vm[{Gowfw[G'6݉Fvnm'&QCܬҶ_Um-mfb nCiw].XC~vno384_?E,f6 s<|fӭY?l2#!wm90[ͤ<0 y{w{@ie{вԃ}՚-K:щfs9nt:@JPF[x^6Áw\^;X텭[1#զ?p!vwfjt|J`sh;84o?ymO*r6H\6tm/=wlw <ntK,}хc+WW;.Q$E SRj9) 3&qjlj8뉸[Z=;O}Ւ Xb}3[!Њ#]'c<1z"_h MhH1i8jO\qqT{>91b)̲eSd>Ǧ<ȵe3~3L/t1fL l/ы>F;/~a(ca2s Bʼ{` Z MKJ+">;-<8S?+.78<>;o@pc?=:+s J?H$|q D >NilJzGFs S2e*Qh7[2ҲrT;J I Bh&RU((tA)P,ō7GŔ^ (UN@x|>ۃC)Pnf\tCIW>8<:ޱ`4`89x]>ɩPLNLO  *ҨZW.JպgoN7unCY `Ș˙[ӂ)8Oy/=k/k[?ffC'>|Ybs"X XN6͖=<0:VS.3 kz6}^s8xqW]S hZE!x74'&sskzX">?њLmpAe5<`ue nc U3{(QoIV7ڒNܢ z O.ݏд *Ym XS|$XUϝ#O bOL)U-HcpFbڇc+ån8 G, }VfU mSģʤBH,QA;IL Y%kyw^FszQSFiSD~oGeWRwb kjR/SǕUy2 vq‚kh,I0, =YĆٰbݼ*KJKK3b6 $6͔t{-F_uDv[%x';/:AW+ [;dL/["KULmPq;vIDAT'c-f56~PKlDDDɢ];8N:G}2=\;%u^lI,ԘD R,NJ쐼Q8=<-ocMC}\~T1O~ztRws*VYfVxu_&XdʺΆ蘜VJ˽#kt|2(0Mry0{|G1 v O g7KOk}ЦA݅eUpp[Ii]ãlx~{`ox _5jkZ*jC[mUjYA 12:.QpvAtx)QeKyEeh_R._]Gɕ-3=gBљ0rf3 BZD>N5 O/ @& =,,`!";6) p }n&`;V;HNԁ ;ͩat9>ӾqH2}v+嵺mýU;`߫}?w>7~tOnLxxZZUOp$vpxV_4#"03bɺ?8>>>yaX.)rx]V?ܯ{trV۩^ͺ4Gzr,{sBYc}@PХP)qU Gol +KΫҔj]SU]k5Ou &Œy{USwpx8nT,/y:-Psfd;0>HI|3 GRr#Rpҝ G3Q {lurijbxMWrl^i/!g$ܖ{O%f$V=u':%&\fM[>HTxcf=+j*K*l $_>G?̚,IgpF%|"TG'5 M[useD8ҎCUu_ie$Oҵ=D҅@,ERUא[Xj4g|BJڂ|,JgijV=#;'ZcqkGemU5B GY7_A(/#^"RENABɋ`A$U3"I %"O3EA BB|$ofr[mT@j؆*YL3h<ySTD0 nټm<̌D@T:_".pDB>8e`mISx >2!nWg X;سx֓ݭ.lskf" ^˾VAX@~Wo[!Tmk6Lc p+N\f gf' f`)״#Z$1v-d) C"aAK xJ~FC J#17HțNЉa}=bmHSD"[ZVk Zގ{r/2,ĺ6G/t rgᅲ7 ('&k[7t*ٰ!^œKsL);<Ƿ² ʣ>Jn4 ,f5 cKD?"mF>%j+meX;pɐ.! 't2ɠ# !Jʎ9 < 28 XMsWdu N6gj;]TUn4ꚟ<,/)4K=˾W]bDP|`~R'3]-QSyw Kқ[{H=Keb{Jg0÷Ʒ rS\>{;95 ǑP,–`tH¯yrDvmn  Bx! ݄_Iv^ӖG ϿZ^~2"/ o/OHj8O,y#&4t *Ժ'f&9%-sյilZQk^#+| lvFY}o6ak`O k,F>O$^ƻW̹_ /[E{S3\Oi+-gWMq#J&[3xgqgʞJ[gZqIfS~q">!Õ'Y'# o{wLt{ -;>l7 5{$}՞KvCj|v WqDLڵ df~AQP,Ğ,>EYhS%(=mXa[* ă-PxA,gI6n2ڲr {+X+#&C$"@?#x=Y?>Av@Ⲓ俎X,Ƴ.x Uw{̖}W'6 l =<»€ވxD:%6@Īl7k:/Y-{ XqMIμ3OZ;qЊ40 i5%H* ;zyv,DgОЍICtHrU `GG/HO+Ѵ"bp~2HzpWD"X_@).Wv0`0Z,{Sl¯)1Fs #0Ӎ|ٱ $<=qL|o7S C#Gb{xg=΁aG֮͛ 5ɑn{# sw6e,HZt!~]x^U3RjȾ`lAf]÷L]|x5#^!,?\'Q!99B'BL H¬@ڽ"#ހs#R>L-B:vNVA0#|0 :Iމ I31BdX;>99Դ;'l0[E, ZݚP4]PR\P=šը79EJimZRjlކpԡ<<>SpdYwp@lD{e9/@#;fv*X i{!rXV D5!ǖ#dwNOv, ڰw0F쏳 +HMLpYvG.,>cKN <}X/=Jo~'N|YUӎ2bbfnUghjUdԧ'q5zS5Iխ-}3:Ony'鍨c&]Mn$㔖ck4$wԴ P]MO z PXL9gt G!6UHKs!/ Ϫ-`m;>q/@ŒCբҺªz(Ymmy/^tĢ>5RŅ(hnxl\4;,,"7R/+* ;3 qdC;1ڱ-)^ycttG6D%m~!h  e1`DLul!Bd%C~x'pA''X 82e`;~r2M0Ñ8Ș)9=?<ƒ%-DX" ]Qp.,kl1 %؝w*>Nw|]Od6VqbT@i Zw-ZЂH~Oa> tx;s8DCbS>_kh\7rfZx}Qa'ֶeħddy72o'X@J6$VbQYeM= oe=\afS1PBQ]`&\%dK` )IK\$PFg2w mxp!}{Fwnmmff(⿃ܔ=xN G Dy岌ۃ]FuWv=}|#sNDÓξ7R?Hj0OZ$F|{גZ5HnHR6RؗTЖΣ襰ÊxP7|͈'xh\ q;{Y*{;Z{zkնR>c UFRWCx(QGIGF2zwsֆxىvw(&B?̳?}?;٬h;hm;H$8:ŝ|iϙ]2B'##\34;azb ƁOr2Nqt =T\/)p&LLN#>w*&QŽI:ɞ`MLLp Cl| bS%\r.*0:Aw1qi( QF94<6<].ScccC##cl{gbc }|b||LNYS|ϯɩ̪hlϪ`UD #lAtNºA>;h4˱ewRcs[~q;Ξ.5fw>}9mݭ]X&u=A 8|(ww]H˓njyIVJ2ƫ]A5962# F18=fp|8k\$ ANBYQ,ܧ(:<FJ~Q~eXa9JyNS_惂7#ߍ){'誷bkވy3'mmGJA^_W^7vEqu< MfvT&d5bDn铴–†ڧ-].}X%ʃjO -xB.y3z}|6'qtqȔY -LNjefaJ홅4Qʅ\x6Nџ ֐$9mЖsMZx7 }㰙73{yy{vŀ.+O5,7a٫^6||˴9˦ZnQKn73i3fa5skfYv͓sZ>?iWƏu^/2bӼ5?(\}ĵ-j=z$_v ^wꂁ_7WQyknϛ;|]н'>açLrQ[r%[\/|O3_xX[=dks#.!ggg~e_I/䴯/Y__|[\|qY__)_Yu >S/rԅ\r5\pI]tY.! jE/E͛vWٰqo |6+m~~yW7~'])C{\{i褫+•?=x>'\ W+;CO?v{s.q=}<ʯ}7.˾w|~3CGyטAꚁ q^0kppt^p05Ͽou=o SG,D7z'|cAmR0C+/+_ g}sMp?qEƲ^_kK?+yc铯-eO~.E.}oxe,zΩ]œ5]ܼuO_ԥ/0uc߲~cfBVg~rg*Q3Mnyx sW=1 cf.;s匥[e\~ڢf/]7a֒;ǁEM7brI7sw? GN;dĔ;GN0lB;9F_gi Ι}sW:>4bȰ1w 7m+d&̸nOx ξnEO<3+Gw=w=5c `Ys{uӀ#6v֌Kg͚{ψ)̺o;`ފu/mX˝s¢sлszΚ1q ^Dҫw{GM?gѬY&MԳW?69s7#nK_/\:.e=f =ˇgCru=W3jo9kw?/v[O覽kG܁q'ylƯ3 ׏G76P]-_<>{G!>ovw?_;:uǾt>w'?_}fہw1g>K t ^.ű'qV+}E/.?ҳN?{MX2k1z);l؋ϯ{tY 7t鬉'G[ZflXlz?6? :om|+;}~ul.?:~sEs|Ͻy^1!qWy=򽏻;^1~ԥ8ݏ;d.Α+z\zS\x7r.uEW>wΥ\rM^vSoqnwwȼ W.[6=O翧EdnW5C1V5:Q׳owh֫{mEח?g+~}S{giMz˼#'ҫK //Ɂ/|䥅(<¢G_Z }a-|.|kSV?9{ӗ<:{96^VrL[:vJ04^947IGO]0rʼ&qG3vS'O9n>FrlZ&O?aʬy{F<0zf CO|}L̜9o)'+{GzoՌESz&=3xY'uᕧ{EWL3^kø9/WuGp :ß?sG?{>w'z'v'|'r'zħv;S/W}vnySΚ4bc6jȭ#g7ۍ/?ICgsw?:/|:KCv?ovGԯz78kͣ~s8ovn#W=+!|v;ov>g.<+=9a|38yѱ\|>_ؓ./{GM~tʳ.C=K,Xp!*..R;I7|QnF6ȑԅhY |"5K -_3ey-=wn\Gx+ehY2܌9g<>niG=onIeT{y8{֜9&OI_yٳ?ggEnT1QYϝelP4E [%ʩlo¦sHQjK.XhE WgΙT<8CyXalm9,\q Ӳ Θ>[)K8jY8kiSO|`,̼O&̚;fbU2AΜ>{ڴS1LS&MGg9.7O4m&M6n-lN6iZ!isyfjUYڷȗ͸'0e' u?6aRn夔y,[8e.7'5uOwuҔ8S&O:eӦL!sf̝x.X0d/'kڤ$:S!D4~'M%&=()Syn R3ϘK;W䯤m""6snzۼtdȻұVrԓWhn=SBB%54( -V<R'deߵԬ[Lz ;ڤ6jeۥ)o7`hK4]QmJݲ4ѽYuI5]nI ]KrSۍ.}e]K]Cizr `HJXXMx&WV9:K+;mnTR}lQf!BD'&PiWoklٌJ_E%rBzfj Sh:#9)DL6mۢo`5]&}{|z+Il*<*ɳ$zI"C95N6)CIdSFfsCn 97$:--jCsd=88y{9oPl\u*yG*q򶣽1S:=ʵ4F-+'UYXχWɱM'5Rә 1d96B7L*x`PT@4TDt:w&My((q]w:cx;J:WSqա!+isYE~,96U yE^E);5b>}cF<%;{c5eѯBNe3ܴko&IiMIȐx WNbLԆ$+ZJ$6R0M68‹.ڰ:ze\D #yqACFWώ>O=eK{5k%-pN:˯pq{ŗw$YpsifLu61&5|}SN+H'xSO;M`7tH.ƍ_|"F߻z+ipzM7qGo9jA~hkTKA*Lok{yȕ YO:aÆiʕAOΝ;n2x׬0i$gM8L Un^8䓇zy=ӈc(,!)߹5uQ4\~)A~tٮ!^zY~_ܸѷaeGA(ƲenEY ǞO4Yp@ۥpÍ^%;;i΀; 2=FsWP~O8ͼO\c߲ea ruY@7ohb5{#*{57bVcuE^54.3ϼ[mz]I'|^äa Ζ:h8cP/Wք=N_cO0`&=ZտSLc;8O<z{7fz_ۛ:;vL:ta-&OoA+ GKO;ZH^*R#Õ+"SOmSu%aF)޻ӫW/ay%n1ۻ{X;T}ק޿4{7g?+6ۤ[У&nHmY!{;d<mw=}/>}R- s3O=T: Dos 7yacԀ bCJү_O<驧kEqcS# MwB}G[Wj|?pv.Ʈgy6fxP{ PD<2bH`c>LVz7g8">rh06=4|yD_\somva191>J%RB#eW,'`7zw%rϞWx"!~=N?kYh .хue%5Qs4O5low.#nFoe,Yqk!:<&{t}fDfO\FO<$-9ko}#4ɍS}5p=*!W_}1t饗2VX٧o?Ge.BZVb8PB j=9^V?%K0p բc00lp>|!CF ilᰏoY4'.]F߃Π 0hM'q2{/+C)'̻ F6RbAMd.w~ /=gjW^zh5cu*UVO~m[ú1Y]Agra)|' ɧd"MkS7kM觖0܄HMŒA=|E Ù>f88Xb 3t4 N|֧Ou:ltAz_As6 WZvͨZHf20t񚓦իtP5Qd`Cʉ߹EA|^1 Z`zTR먲5JmK>*G& v=T024x0IC,rjۨ2LҺf^bD$y(/DFX-(y7ŭ!U_\)"0hieRF3{~;veS|f^]}ԕڒx.JŌ`"(>7Mjf`*v,rTVU C< OA"^KJP* j(G3S~]*;x0t>0dȯl7%:%?׫& $w%NR&AXeѴ.:c!I; `&Mc eP+"\D?QO)r^6Е9W.u:S',JceҐ߃< ?塛ӇX̘UiP{=j&E|I Au!dx;0j}XC2:5|If͠xG>˔#o[oIy.;__foD\ lv|#n NqQQψv~k333Wr+W*UGfr䛓T3k0x ҈%|Wۛn65jc.i@nQ(F)>5ۛ*L4%id b$ԜXl`)$4gNR3&'[Ş\MHҨېUlQ&FQ,*Mϵ%qt*Cs|* 8JRYWLh%7]Six{KQ)L6E*[i3 F2DE;Ւ\5IƤ8=F}j.(%)!'f](vҰ:@$Bn3%LtnL 0r!e%(}x?FLk9WV 6fG;jis\v]6yx[Yuކ\e涶zprjtۍVnByƿ툔J b[--`Ndp%/jNsA*c4+y#5,&${_><|+Eel(PӅiTwHǒI0J|ْ= XmUŒI1_'k}op#fiARFє`X8m^߰t"qlɢ+Ռ/d `/RڊI2?s6ɹl^iLÔk7&S[#b䤮ɣ>ڻjQѾmemꅮG.$Gg1>w/]•UU%9~:Gi`l@"^`DGpKSMt^o%z?$fb-K׶SمqfkM[޶XogrHnˡ!LZ^jM [DZֶ C&zXD/:@"{3PoO s`=~YIM8.;M턫jMUZc)Y-Z9{S-kz(D_z饨40msz󖷖7?0=s\+F'.Qu{s^?NPJVm)iHzr\Yhf; h <1w8iNw\iB,"}qҮ6/^>}jUK2%6kȌ37xjrUgUVuxH'7i7tSTG:EXSB75Ku2$\WZ$vUivZA:$sϝ|w=Pozj{<ƓW9 -g%:=t+(21EMJ`~!>g%ΖOla>&Lr$_*#gs&+]xmuf~+>G342T yH#FF{)ˏ#()l>Oq0Oa} qo/9+e8RQ[(<h Oղ`o% (sTR4[aOsCΜHE`)&e&R4|\ve~5^}楇A494^̕R1RSJjS2 Ay˵螴ѵ)_ܥ?/ĦT]'?ɟ'z2>ʻ:zȉiP g,z>IN @F?M3b 1&T!.dm| ד5#٢Ƞ` " ?.ҿ:eTIND?l޼) "z)||j)S*c=F7%VQ0@%/;'3"0#׭!rIIַ$|$SN9xI79Nȁ!/74}}{p|3>݇[ $1c~$ $ɺ|-Hff> {^0l\EI6nNMNMLLPN#ol̉vv~dv3g6#ll!f#oHy%L2e< &&Hh@UU;-K?&BI58S?=u & #F k/%Tq{qΑ9Źzgr%w"y>7r׿u^{qpTǫ"<:L,$ ez_H{e{h~f+"^{ !Ϲ>]Ol4 ?>ZdeΏ \p'> 9sO4m4n68{'0n~'˯q n\x?O?3& lesˣ;pV /S]TcP3flŽC 28Sΐd*)7׭]'G< p$G2&=A>:B\Tk w3gdᇿChŀar er\riajk>GڼĊ,R `D3:Κ!d+T#Xr80/0 Z;hO{p:jYKC xc`UW^구<3UBsbzlY˺lEQKq>=w $?yՌHp }y 17J; .Ό,8P#p rɅc#F_%Bb_bJƇ?aX%_83 pΔ駟Nc0l7ew}k*q 1bpVI2`9塍94i!]{5"ci:3>O0 L2 ]N  Cd|[:=llGZCjWU!?f\1,7OD1zha~o*ja ϛ5k֐-+D`WgժUKJ|rg6WY6~zB=!0MYFɎҀ2xBK)3 \u . /6S[8i4c* 5Ba<+>A#>8ǢhN|>яT--z)'ĕ oc$fQ4G<B) ={&,,'Ա#,+Jk׮e)+ŇAha"A(G>Vvxz$,,/Nb(Lu(?`kd4xՊ/~GZyUH5eѢE?wmr.+!;yÍX&c֘d@^3S1d[ ZVRkQsBb٢nC/|ZK(b!.F*]-_YU˴ǧi lOx]WQ7l{Dޙ秱n"5j-_?(B٬)(#JaHCA'4̐!H^cdZÚ<%VUj\e xڭhf1Ę=[7h Jti?j2eI6ٮut *l q3MԒѤ8'\b82?~=L -QK]f2Jk$|SiU:o 7|K_:yL+qy z[k^,AS]C\,EjEZB@xS q|I1y_~i&AtЁDgQLVH4L,X't) >XW?) ugf~W(`XqYFZ~5W]O! s~Qj*,\0Ɋ\:*[n#FS-/B5@'O<ڛ;b1W!:ܜY,o42W(Hcj>hb`=f4 ;VOK-}M7}9nH ml!f:sm?7FR0&,akƬٳ\ve0nreoX/'&jwpJӔea[a ax{cǎs5~ NaհTYxhb2ZdC#Z&XlbJMy . L}kO=\1>D>ؚ}#gc='&>0e&5SNnMqmoW6nhlXݯs]vjpl`b6{ʩ/;64 9 B&?ē7.Sxhmx qְ B\CRZ@٢T>rcE>.gm1$O&*>w<7k.uqp!'DہݦSBVs.6q[tPs>(ev/[3nkX fIjէcGߧ%ft& !ɢo6H _fc'C\ ae3>fvl%GU`-_S{`9^5^R ^7e:au s5UU=/95^܉i٭*V蝢v; XĚ, XImj>I2ԆZQFpa_cEgs` SR4elMŽFE KŤJ6?ZRŽօ9i Rta4T-((vH5XqW-VkSb\[ʎ7E'^:g/UF2G~KQ2m>$‘D'jmz-Q<̙[E'qdL4U2IEf-Ͳx[UߨI<ֹ R,fEѠ\7˴ooNh^ fԄШ725%͟jIgsc53֐*jx VFD!SȬ3?mS5Ss޶k$hdVҧ!Ə֌+519\12lEv&F[1nbTⅽ/g=ILPJIG~n}r1ȣ:ţc !ɋz nJ(G|I&}MxFy"]S UDӀjJ*me'2TZ3g [4Ј!TTU5!AG]Qx>""D-XuVD*ZUA:'+iNUUvv;&@J b/%xJf+^ۖ 8Q#nM\ԽX W#U)ͽ5\J)bz|sgΧ%n1*@ F@ZN)TviAl> oghW$ zc83j9ꦖ=2 /O6}o3}t'܀OE2y R ȶn:Ao \|rS1y't(7F%mAk`tDXP D3VCoF(ņf䧮._JǾTݵ1d㏃urMu+֦&jsܚ/~D0Pt}/pz\ gd, : #ɇx C1@Q3SyfGs@AƽG1]h]=1)c*ƒiORkY0ā,UJ,[m@3hY žZhG60A3Q TifNec ~)ȁm Rj'0T,"`O9Q*ƛp8Ȓ*7jMX;8qA*j#jǛn2"# 'P3$CemA 4814DQ1Y'vu[ xe̢-f2 xٺdXeS:>sc +(v])^@j.x*g|ۨzYr΀%L8@DŽ;)rlGaՇ딖IOGgGAZOI>ᠵJ#)KYsY3<$fGiU. qWEn럮zE{A<-H $NsL(#Es ()OSf YPS Qmb6!w $C#K h}'6[gTʕs3 )H͕$)eG{.PQte~3)jNԛ`hWSɨ4dr]T" Fn"Ĺ55wz0;$cn_ң3馌w&ߎiJ]Bk yuVܝOTÛNY0ag1)i &}] MD>֬NGGNKQ~nx|C #CVZ >2d`ed6 ryVzȅta/ŀ`^Ff-Y RI=rzM::C]۠@3叿\ '' 惓*b6سdŬSQSs,~QҬYX,ƵWYptjQAقzUq+tD}' [g|`~ΜM7mkTk`F`lǍQ}YBN\22疖YS&0aE+Upk%͜1Cu;Fm|, =uƱ%Ϟ̳7!2mb,p;oxCLNOkpTk֮`7 LT{ OL;v=@G+[X"h?=5|gHFϚ=4xf[IZm**'`E^pyj9s .Cv ` $JҘc~i12 qk( ӹ%qbaOȳ$֮Y{۱!grk6Ygnzێ`ƟH䧝v5Ê@ DbXA)gB]AB\EorC: FkeQAdKniYG[ʠp [ޖ%LSԴ%Pɹc`R1 |37Mؖ`X ȟ l1N=TC-db[!„w ڨuylXjߝzVl(8Tȓ ){ۮ;Gd?~ 1(Ery0u5{gyrLj8!J h{.U :`Q߱ ko 8ށ BfBP۞2Ơ kmG\p℁;!,l; Q)Zʈk,\xʩOp1RTT-8D r9㏏S&Xc/۬qz()8Bp* t1R+3 b6R0O>h&9x"z(KnI:]tqC<8k<2my2vQ7d q:a 8tK:`Qʸu:*EinѽK$˵SAd=f[RcDƶi^#EaȫHnq#`U_wu'gM~ # -c9H=Zݢ)\,3@,4>2͘9.!"(H ϰ64u V -y bjbQ]hϏG,c EBrYu1/t$S8}! gLIL9Amش[$3i5!|(:,aA#c?sz_SOuk(D.qG~p>%ˏtH1~x% p;ń]T8 xɴI˿9Ȁ=N?qb8I޷_+R~áG_=pMhŗ\,ɳĸR!!|ŕW`^G8BSrH%8-U㊨Ot 3< c]SZZm h3%5ʈL7jS@}܉V=лK!^ VB ,F}HڷO_4ʼ2}׿qӯoL4< alryRcyE<Ŕ1e30{iv ѯvJ(+1qxɴ*X}Bb0Γ)\[U FmG$gD(*|}5.)K}AګjlMÉ̪/tBz"EL MR,]B ~29X$mza{:?*BLpk4Uaku~YZY֮[2R< Ru0[$xl[Ґ?Mo_L^GtYlCUh#'ʉÇ҉ךC/ >1]j] %:(vk?O= r!5Th z=Sߙ,IkXGhXXMVs K 9dvRЦ-Z6l|25#eL=9leŐ(\e5,]t%s-orA'-^d=%r@---z [&2.EPV'OT}|ҝнۑk"u6D$Ii4hjrJRUE`ex\dL?*6Y ]TيG-],iƔ!Vɪ=672,.Jy7tێ[MdtqTQT!xL9%r 2Dd0e#ƐM!S,5~HyDF"OȰ"yBZ>/Ծl檪+V}|G, uHR6ecmj@U{f`D!xڷAQۖ6lXX]:`udtbBSOv JO Hdp)bvHl1gM|zTV#DGXA"#gĈQl #pl$+: v;cfJzf˦~|Vl3Y)< jU8D4pjלwxBz<#X'^مLi2[YoTML%zJV̕YT'G[2HFlUoo]*ts PJ"kYZ+N>d|G|*Ee+Yfm!Tĉq"VJ( ,Y겘"zk[V-dcM>$ENh,ٲ ;Dī}OK*-yO|.R~joH$~VlDU$r !@+qh<.j :A0S 9cFqB-S]`8-꣠}C2<D+B!imSsT+kl}`oiYRx2/:Z 11l 9]뢙 ! B}*x8dS$˚vf0c`V_ Eډzj%[I<%OڿM>lĒK}JKfd|tJJndoa%IN0h0e eHeXlm  *hl,?he A/^FU>am,J+ۋN8Q.Kc 싣pkAcƞ<N yYAYAfOW[,m?+LQoFˆ-'C̾ÉcRďnVcηj M@eoCYѷc巜'?ņ dCXK_f(1IG$CO Ґ;6ȡO[x#[ G%bbHh~#O H{^4ƎDHzʷ07kiZJ>8ČVIչiu.4P'MNtwo1[9   }ǐS`mw ۝*ThZSeR&%C8wkh>VJGzۚ!zFSBZ&Q_ \(!Xqi8 QEהMϱMq-[bMeV}59 c<`R8`_zcF^l2v7HhvgB0) Ĝe)aQKXje,K2#UI >RU;lvNK œY* 754%4UJx[Uz8DQ&͑s+-tS)F88x#$myܣԷ۲@ 9E!kQ k'p(j78uM]JDt;dqŰFw (u1 jJNAͣj N'RZ{07?ޫh.k~mjW}EVHڐ<C|]t!J~4AxR:O HÍzXSP#B1R@`$y:{DGVN)"N **CŤ~jU1v G4y5+RԸ䵐d*dgAPV0$Ȋnɿ^*R eKV;"759[Ldڈ, L3UBAGlb3W-7]zaOnw$T$$$hRbm"ɿr;DdnjErE i\o Z B,wS9NI5xo1Uһ?/)c@նZD(ẆcELUy)҆# 8;_YYimIB$^f$$ٳ/y5>]!jNFN)B:do:$YX KڌQcS*|&aIـeJ!~-p/ O/$Cl'7_vd.v=c>޶T[^!B [P,?e|Eڦ<-O<޶-ҫTql v߭egy&L?"GY$ Cv &:?*|EN2.m{.uMB1@oCڊ>~?_**1l͡+gGூ\59`PzR~G쩓 O'd6y|g.x$˽mV5?]cVfG:vԠEՋI8@܂-1IDATCuT~8pd:PHh҈&oyS ]`iZX5;(lϾuyKǴV6)nltI΍alRZY|H<7yofђəLrpcj4)@crzc:c=YJm>Ydm"$ _].ꭒ}L!شlÏ U&Ԕz;-!4[ nt,k2n/ZpufHc3p*K.flsjr{GbJToy#y#h*:U^ 8I[ t,%xS1#0q&2HglUAQ"t"U*J$`ȩzr+7EQb>YN夃6`j%wDXuj"PI p}d0U2e k9\ p(6 D>?CЖD`ˇ~ft{+Nd3f -m`:(M`20X {P'\ d;GN3(8RHQ;bF+ I*HĄw_I'MĚSW7Ջsh(4eFv"ꕁeTgRF~*AR#"¡QqE2X(îvie.F pZXF9n aUW*$5İ;`P ͇~V1C dZ*B+tP,3]359VX*JZQ{A~G@FNt"U+ ~X#IdUQoUNs4qF;²lǽSnB?-[mUX6 [Y*r"!6yMz0wRmY5IRHLgY'hbjr5,7,C7-~W2G)q9P,7X#YҔ1joOμV2_SOg,i?> xԥѪ`LYl@JjFɠbzQ|ä؄%?N` ^KIw\ zZe#iBh]-S}kF%琀R9j)l;mdNd|Dy.PpƢc[\f%{exU؃o%k&59͞]h61`^-A~"H:8}C"ՄnO/!AtK\&D+l !@wФƬ-HtΠoKY , c$l1F*8{(ĥujqL{>)TxN`DP *ۏcX XkHIeCARav[ 2HeQv ^tP"@*Љ^ID@Q5:ey#["[ w [{];n!̢ _`uΈ$ޡj`PD(IXa)GrU QD6eQVHs\|A!p5#Ƭ0`\ TG4;S3D `D(~Hfd2(kFE:IȂEye8Q$1*a(Cpã8&m v:cH#U`;`Hu"&U])vk%H=@XX}b~"~fgVX@lab(p,٘j X^dSP)%2~F~ʊ"aBFc-&]hتw6vݴZ$@i b ndQAVgyOz@I 8g3Pɣ*ULu)W .d"CAJ~Fx_ b] ]QzUWJ)D7&`e;B*3D#@Lc#>Ν 4 )O!YSP((ӥG|$aRGu2t,XoTvM\`FcpEJj@0kT"ugXXՑtڨ-?Y&|?-X/e–iH|+z,fA%lr5,1agE0X %^Yc!g cwTi"]]UiGhAS#A 9&񂮕rUq` ؂;~˳gMR%³f">r57V٭Cӑ7(-l9Flke) [ַe1Voiajꣳ_$QZ&-] 9\V~' @{q` xH]hPxgsPN8,|ee[wDy.GTo|{'MRx٣3lp*'QAYX/1 |Ku[;۲ݔ1SBV0ƱI&$6"p¹ 쥵|(N6% `6k= ir"gd XjxzFᇂY^. LQXYP$PqJVuJP5>$b,H\ ZRS2D* N!$YG?|[J|Y%$"#>V̲a]XBDf@/xI Fu]sçKLW[`%(ńV}W1JEE|KpE<"; 1*~'w^ W@@;TX,mjyzem[wP1kY*CǺڵ]A?%s@@ED#G,EőNU1z|CyCNTOP%HHH ;ਅjpS ^ҌwkN-AmtB.gM>";`&0Rޒ"FY+@I||Te_.l[xQ)@زi,^TPR¼~*eH`,fw^&SʝtxV=>z+ $Yw`NvO`CEG QVʷAo`h7w+{g"b`FW<.8ӟT?j zaA¶Έ,(T-;gTGBS S8,v̲qP`'x"FNE!<`q؁82p@C0Q9 ZrJ$P>v~11ϯ XQr쓝O sqV I&kÔ-ա-F9R c&糜rKN h'Iq8rA q檠JbY(u78%ly%le)` 1]Lքsܢ,9 ?cKRr[[و"-"+Sǀkη:ָ3,v PRhªo.&~Ƽ,C'>'U2wYŴ 3W0]~ |$2ۘXm KEE zteiH_kFx%|˸HH][XV%ŹU]`%NvA$E e+ ԩuҷh+Kua;]wVܖ E;AΑ/^r7S "U?S";mHd`b,GjN]A\~/~ Xmrйogli 5N>h'Тuօ3rxK6 T%Q2lHǜHrnK:Vڑ`ǘ"4-բ##1C]$:v4"DV_6r.Nr#{ϻ5ZB ⠹VaXAP:yũt'8'. GSz[^Ez`5hMCj{]qU5d?{#S;VN?f}y,#{-:N:^{^ټdCoc1BxyT W6n~c/5^B1L!Eh(i2SG8J j-+T#N)… e@ \8 ax?4<˜ W(^*b!/IC*VTmʆnUм|p6@O|N:?==?'Cl&ab:g1H=i{H븫 ȓU2z| xsn`"y9i0ޟ7lh$C tRH,o{C( |6 0!UOfK<;: a$)|zg0H t`"k5j Xb7dK$@X<߬ hxx0<8Ha^0v54|BZA88aBstPj¿YW2 .:[0j{;KE[#-Xށl`ݎ+U~}AD||~{wVq_/Ƒ&p`PLu)TiP3YN'tsuUJIޒ|R߁ORbUmIV%{JNGGܳ̀J uo-(SiTUzPzurV:YO!\YUTWJ;bzN3d`HF]H;K`K(vDC;RcR)(%yӦe˖^pگ_/(ص$vFnX֬n_*CK+H7?/hXn.m+xH`W]tHHH`$vb\$P$P$(V EE `2]U-((U@@.#XLWF `1P$P$H`+k\>EEEHXTM\$P$P$%gx|S\>EEE!-yhm'`*˧HHH`%yoIJk;k+lEEE)ma6^E*@nG-~V5FuQo|ד: c8 λ(%C)*gU^WDvٱQ[]|E l)~+ɖlE;GɻqUZ+#+"1icXEj W𧺪x`g"RlmdgkY>TTJF~U{UhKǂ[/ҒHK`{+TQ]⎜P6߮rk<ǻPK\dpM[[evS+s[ 2mL9sƭTP%SnrM .ڢ.Nøzڍ[*^` ]nQt(r%[mv9 `K$Z,(\|Ś`E;KvǺA _X]~- p/W g=`te<`Z]v}4\ 2w. WR+< ܅ a&tD9 WE]K`{,, *{wmN){=*UBt]Ei&cP= $BowbC&e .,Pd}Aq8˧H`WYeKN8mqMT2by‹H%]CQ] \ )(6%XU1T\60D'; M:  @tR)@G ;&B4O~'DcJ@ @0Jŏɝ20zsϸ}V(}DFt7=q\q/W_"Žbq*0B[1lbdZ'q.Y0$ЇRC[çbD.i 7:J->HWU RYUyU?  hrAn0ih~u WypG T JUb$_$kIj,j;HO{}k.^yvIe`Y$HTJ*|(8ՈCFQu;cVe@JMS'LbM-hKJVO?F&ZARQ.!(+-㧏`rK$~KId^~ #/=C(h2zCPN{U C@JDe,!jy8[1iEo>󡟪mBi9 )}w_kIH}D9@j5 6=ѴefṞoy?VXIՉ0dY͒6D w"Y0Vl\ZP[DJV-NВyae5,2LT.ow(Ɣpm,v,X{t&ݡj6*mަ!P #j"h!m3$zkM<$Yb'YfH4O>9X+9IBp@LKe*l-Tt#fбf,/鴧mзdV,I~:hhqTд\`0d'h~.@IXFn3`YMa =3}|#8:@tB1,f tZf&C1 N*Fđ("3:!p8`>37nPYK<%>X֤0$- 0mXj1ޛ .K `\@Fp,h^YL'Hu_EpXL`N-һqfH|> a>V 3X(!|aVI5 gii(XKK  QۤOSuIcp=@? auQDϾyT624)5ZxfUW?+n#P]RpX'X1&]u98 U/EL Јw[C%PJ'?2-.(AxkqY   @2 v e0Z$P$P""]Fv*  *cHH`@] EE((e$Pkh@@2v e0Z$P$P""]Fv*  *cHH`@] EE((e$Pkh@@2v e0Z$P$P""]Fv*  *cHH`@] EE((e$Pkh@@#> E(EEESR*(Don޴h=/.V')QEEJ,獼Xݪ_ 3EEHL ;J*((=pU$P$ЉV'B)QEESe {KHH )a'B)QEESg:@NR `u~)\  t"XD  tO R*(D:J*((=pU$P$Љ `u"U$P$=%P{KHH D(%HH{JVU@@'(ՉPJT@@@/""N$P"")Xݳ_ WEEHV'B)QEESg:@NR `u~)\  t"XD  tO R*(D:J*((=pU$P$Љ `u"U$P$=%P{KHH D(%HH{JVU@@'(ՉPJT@@@/""N$P"")Xݳ_ WEEHV'B)QEESg:@NR `u~)\  t"XD  tO R*JÖ_kK)EEN]>شiӳ>% ڒdJ|@{ 5k֬_^ރ.)U  t*x$k+_|E `u*Y$P$H`jѣomĈύ?^ `u*Y$P$H 3XG?s `R,(TXsNS^tSO= `u*Y$P$H 뤓N}8j…-z `Q,(BVu˟~s̉H*V+IEE;[Λ7oݺuO>%\2h 0QkgDHHm%zWdXz+ `J""F΋VL){""@Sz[ EEEm뭷.|>jhmiXV$P$P$$曛[3j^~ōoixS׎x$cXX>;B62lܴ"GI*paEcGкuk׮YfCk֬NO<)~KͿSj\h֮\Vu Yt-:n勉NٶT D ́VF{>?n_;/䘯|n}y=n_Lsȓ͟ /p/|w>7nŤ?뮹jذ:>rw.H<9P=j$[Sϸ5rD=C  t7 j?*!.u%tEXtdate:create2011-03-13T19:11:50-07:00WH%tEXtdate:modify2011-03-13T19:11:50-07:00& IENDB`PKk@dd"buildbot-v0.8.6/_images/master.svg ]> image/svg+xml BuildMaster Architecture Georgi Valkov Adobe Illustrator CS4 2010-01-28T18:08:16+02:00 2010-01-28T18:08:19+02:00 2010-01-28T18:08:19+02:00 256 232 JPEG /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgA6AEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FUj81+brDy7bQ+p G93qN4xj03TIKGa4kUAtxrRVRAau7Gij3oCqxGdvOmsVk1TV30qB9103SKJxFagSXcitM7U6lPTH tgtNKLeW5AAYtc1mKRekg1G4c/SsrSIfpXG1pExeafOHl4+rqjf4i0YEme4jiSLUIF/nMcQWK4Re /BUb2bDaCGe6Xqdhqun2+o6fOtzZXSCSCZDVWVtwcVRWKuxV2KuxV2KuxV2KuxV2KuxV2KuxV2Ku xV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxVD319FZw+o+7GvBKgEkCvU9AO57Yq8t0S7/SAvPO+qbS3 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 uuid:9E3E5C9A8C81DB118734DB58FDDE4BA7 xmp.did:0C9190091A0CDF1198A8D064EBA738F3 xmp.iid:0C9190091A0CDF1198A8D064EBA738F3 proof:pdf converted from application/pdf to <unknown> saved xmp.iid:D07F11740720681191099C3B601C4548 2008-04-17T14:19:10+05:30 Adobe Illustrator CS4 / converted from application/pdf to <unknown> converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:FC7F117407206811B628E3BF27C8C41B 2008-05-22T14:51:08-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:FD7F117407206811B628E3BF27C8C41B 2008-05-22T15:15:38-07:00 Adobe Illustrator CS4 / converted from application/vnd.adobe.illustrator to application/vnd.adobe.illustrator saved xmp.iid:0CC3BD25102DDD1181B594070CEB88D9 2008-05-28T17:07:17-07:00 Adobe Illustrator CS4 / saved xmp.iid:34001D5FB161DE119286837643AC861D 2009-06-25T23:53:30+03:00 Adobe Illustrator CS4 / saved xmp.iid:35001D5FB161DE119286837643AC861D 2009-06-25T23:56:39+03:00 Adobe Illustrator CS4 / saved xmp.iid:36001D5FB161DE119286837643AC861D 2009-06-25T23:56:54+03:00 Adobe Illustrator CS4 / saved xmp.iid:33F582E93563DE11BB48ECB7764A1480 2009-06-27T21:11:20+03:00 Adobe Illustrator CS4 / saved xmp.iid:520E91AC4863DE11954883E494157F9B 2009-06-27T21:32:35+03:00 Adobe Illustrator CS4 / saved xmp.iid:08FC8385150CDF1198A8D064EBA738F3 2010-01-28T16:24:35+02:00 Adobe Illustrator CS4 / saved xmp.iid:0A9190091A0CDF1198A8D064EBA738F3 2010-01-28T18:01:57+02:00 Adobe Illustrator CS4 / saved xmp.iid:0B9190091A0CDF1198A8D064EBA738F3 2010-01-28T18:02:34+02:00 Adobe Illustrator CS4 / saved xmp.iid:0C9190091A0CDF1198A8D064EBA738F3 2010-01-28T18:08:19+02:00 Adobe Illustrator CS4 / xmp.iid:0B9190091A0CDF1198A8D064EBA738F3 xmp.did:0B9190091A0CDF1198A8D064EBA738F3 uuid:9E3E5C9A8C81DB118734DB58FDDE4BA7 proof:pdf Basic RGB 1 True False 800.000000 600.000000 Pixels MyriadPro-Bold Myriad Pro Bold Open Type Version 2.037;PS 2.000;hotconv 1.0.51;makeotf.lib2.0.18671 False MyriadPro-Bold.otf MyriadPro-Cond Myriad Pro Condensed Open Type Version 2.037;PS 2.000;hotconv 1.0.51;makeotf.lib2.0.18671 False MyriadPro-Cond.otf Cyan Magenta Yellow Black Default Swatch Group 0 White RGB PROCESS 255 255 255 Black RGB PROCESS 0 0 0 RGB Red RGB PROCESS 255 0 0 RGB Yellow RGB PROCESS 255 255 0 RGB Green RGB PROCESS 0 255 0 RGB Cyan RGB PROCESS 0 255 255 RGB Blue RGB PROCESS 0 0 255 RGB Magenta RGB PROCESS 255 0 255 R=193 G=39 B=45 RGB PROCESS 193 39 45 R=237 G=28 B=36 RGB PROCESS 237 28 36 R=241 G=90 B=36 RGB PROCESS 241 90 36 R=247 G=147 B=30 RGB PROCESS 247 147 30 R=251 G=176 B=59 RGB PROCESS 251 176 59 R=252 G=238 B=33 RGB PROCESS 252 238 33 R=217 G=224 B=33 RGB PROCESS 217 224 33 R=140 G=198 B=63 RGB PROCESS 140 198 63 R=57 G=181 B=74 RGB PROCESS 57 181 74 R=0 G=146 B=69 RGB PROCESS 0 146 69 R=0 G=104 B=55 RGB PROCESS 0 104 55 R=34 G=181 B=115 RGB PROCESS 34 181 115 R=0 G=169 B=157 RGB PROCESS 0 169 157 R=41 G=171 B=226 RGB PROCESS 41 171 226 R=0 G=113 B=188 RGB PROCESS 0 113 188 R=46 G=49 B=146 RGB PROCESS 46 49 146 R=27 G=20 B=100 RGB PROCESS 27 20 100 R=102 G=45 B=145 RGB PROCESS 102 45 145 R=147 G=39 B=143 RGB PROCESS 147 39 143 R=158 G=0 B=93 RGB PROCESS 158 0 93 R=212 G=20 B=90 RGB PROCESS 212 20 90 R=237 G=30 B=121 RGB PROCESS 237 30 121 R=199 G=178 B=153 RGB PROCESS 199 178 153 R=153 G=134 B=117 RGB PROCESS 153 134 117 R=115 G=99 B=87 RGB PROCESS 115 99 87 R=83 G=71 B=65 RGB PROCESS 83 71 65 R=198 G=156 B=109 RGB PROCESS 198 156 109 R=166 G=124 B=82 RGB PROCESS 166 124 82 R=140 G=98 B=57 RGB PROCESS 140 98 57 R=117 G=76 B=36 RGB PROCESS 117 76 36 R=96 G=56 B=19 RGB PROCESS 96 56 19 R=66 G=33 B=11 RGB PROCESS 66 33 11 Grays 1 R=0 G=0 B=0 RGB PROCESS 0 0 0 R=26 G=26 B=26 RGB PROCESS 26 26 26 R=51 G=51 B=51 RGB PROCESS 51 51 51 R=77 G=77 B=77 RGB PROCESS 77 77 77 R=102 G=102 B=102 RGB PROCESS 102 102 102 R=128 G=128 B=128 RGB PROCESS 128 128 128 R=153 G=153 B=153 RGB PROCESS 153 153 153 R=179 G=179 B=179 RGB PROCESS 179 179 179 R=204 G=204 B=204 RGB PROCESS 204 204 204 R=230 G=230 B=230 RGB PROCESS 230 230 230 R=242 G=242 B=242 RGB PROCESS 242 242 242 Splash 1 R=214 G=149 B=68 RGB PROCESS 214 149 68 R=71 G=152 B=237 RGB PROCESS 71 152 237 R=42 G=81 B=224 RGB PROCESS 42 81 224 R=180 G=58 B=228 RGB PROCESS 180 58 228 Adobe PDF library 9.00 eJzsvW1zG0eSBvjdEfoPuA+OsONWZNd71/j2IkiK9HlPHjkse9Z7ExsKmIQkrEFAC5L2aH795ZNZ Wd1NUhagsUyCamPGJhLd1fWSle9P9ef/x3fPHx+crX6ePXZ7zeTRZ59/frSeTS9X679MmDz5ZrG4 urhcg/TF919OjN9rcNXBN+2LcuXfZuuL+Wr5F/5Nfj3B/V98/bcvJ198ie8/zC8XM6KcTy8uZ+u9 i19ffVkfRbc+mV7Sr2bftvu2Mc0k/oX+9d23fMl0+ev04mL+T1wQXetAPFxdLc/my1eHq3/8ZeKb iTF5EkI7CW3Az//P/PvZxS3X7LXe0kUh7dngsl79ZHV6dT5bXn63Xp3OLi6OVovV+uIvk6O30+Xk 2+kr+mU6+a/ZYrH6bXK4mJ7+0r/nZLW8pGu/fbueT8+ogcdHq+UZLvg/e7TD1eKsf9NfZ7Oz2dk2 tx58E16czBczmtbz6eXEyCwffGPsi8Or+eLsr1fnP89oxl1MTHcveBQ/XlD3aST4m+npxTfnRHo+ u7ykmaGn82J9//Vhf+xE5c8Xf/9+9mrOS09L9N9fasvr1Zvz6fqXC7mubWi5mqb8+MPs/M2CFrNM erMXJjZn+nfvb72UxiOXTR7HScqRmonlt25JZr/OZ7/9ZfLX1XJW5uFgfflcuMFTo/Lv8tP3V4vZ +sflHPMqTWWZiG9XZ7MF3dE1cbKYvrrQkZru3+WKH6brV7NL4qLV4uqSebutT6HJfjp9OwOPmPKQ Z29myx9Wf+OuPjZtmkTnqD1jIo0q+IlpufWYaelyfajRf5eG0Qra0Naxlp9/R+v1bD1/NV/+RbuX Xny9np91i5jspJV/8RD22t7/s/6/9JTGfXk5W2rXiYGOvu2xQ7P37XM89Xh5drQ6xxJc8H4jRlgS jyxWr8qv3Rf+jZq4evPos78/+szl/f+9Wl3OLqjFxWyS4/6r9fTX2cTQ3j6+Wq8mxjW9K36eXsz2 X9ISzZdCPftZaLTh5m8u5vT4/bPpq1ezdfkP/b5/Ol8Tf7xczP6x/2a2vny9urqYLs/2n59O16vl /ivaEdz2Yvbycv/ZMbFIkLZBoPb4b5rS15f1kXypfpGffr4i6uX+bHk2vXi9Pzvn/1zSZpvt05Y4 m2EPUGMX1x4qN69m+2crEnkkuCYm5P3/OpvP1jTii8n+xZvpKU1H9PunV+v1bHn6lr7E/Z/Xq19m y5+ntFFNbPf1+v3T1Zu3pc312cvZ+Xw5X9Ltye7T/M9Pp4vl6nL/9ds3r2fL/TXvV7rxbP98eopu 0bTSIu2/IRFOd15d7F/+trq4okmbr9b7l6/Xs1n9Nj29upztn18Rs7p9pp2d0vpza6ezs/liMaWW aB/WO6hDJM9Prxbco7bFj/97NV3TPfjz9XTxUp5RiBcTk+3+AfMDNXUgTzzoreaBzO9BHf0BBrB/ cLx/VLqwf8y37x/zzdTKce/243rfN3LVN/KIb3rXfFOvOb58vf9XfiA180xueCY3POvd8Ez69Kze d361uJy/Wbzdf3axAE/8qAP6UW7+sXfzj/Wu/5Iff3i9WhO3zEiOL4nVLvan8uCpjmfau3sqj57W RqY8HdPZ/qlOx0xun0nrs+5mampW75vLVXO5at57xLxeM6PpWMoDV3L5Svu06t2wKpfU+87mv85B kMm4kluv5ElXg/5c1Xveys+XPBlvlfzosx+ORRSG/3jxwwVpgJ7gdy9Y0BwvT1fQ6n+ZvBhqzhuK 9O/7167Yv3aDCOEf/r9H3DrJNG1bDJ8f3r6ZfVBvoLNvqPBBb0Dav3bDxr2RJ7+grnxH3HDJG/yv b/i39sV3iyv68ev16urNN8uXq0effSFG3A9r4itq69nP/zM7vSSrrBC6v55fzS9ne9P5my/f0xRp kPVsIr/S7fyV/vsS/93k/iezl2TFdA0I9Xj562yxetNruFJoo0z+c7p+s0nj3y2my+l6wj/Utp/O Sf98N6XJ6lrvaBs1O718TcYf6YKL2qp8vdaiEDdp8vnb859Xi/nFeW2wT6l/b9g7kq7LZ0vp5vrq 4vXkh9VqUVsuF5SfuplfX8o99+Yh9eLbHkA/3t/Gj6Zkr5Dse/N6fnpb+7f8Xh/0jns34qJTnvXb njj8qT7s5h334zmY6Jfz5RndwqKom7nV+Ru4cpPnr6dvQMaVJ70ru3YD5GZfMj5+/Psy008Ol/0r vl5D1y4vyVM9IROPuj35z9foDHVwSCBpbSeHZ2zykjdG/zjzvr/q//zk8xeH68G9k9/5Qz6W/h8n gbQEeT10P+z0Fx94++HFdk9u5NYPe269GU89fNKtlM72O1bgKZmVLMuFgjW4Tuqvwv9FQ5J/TGMb 1/gm0Cc2qWmbTJ+D5rA5ap40J6YxxljjjDfBRJNMa7I5MIfmiD5PzLE5sY011ln/6DMbbLTJZntg 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 H9x0V0O1G49xeXX+7PRy+us2Q+zfc2eGwV4TNh7kz9OL2cl69r9XtHG3MBOu3bahyHrXeMzvjed2 RdGXuLMf+qLnPV3//VW5kwV7vrpan86+Xk/fvJ6fbq5Dl5sv13y5I4JzvnzP/hyOyt7dsN43/b1B rd7M1tPL1XrzkXV33PHOOlqdv1ldzC8321gfqRdsHL2/A/tPZi8nX41+6P0d0OiHjn7on+CH+tEP /YT90JfrKVngi7+u5hejJzp6oreO8l54opuLqd31RDcPCY6O6N2LztERHR3R0RH9RBzRx/bBuaJb DWlHnFH/cJ3RbYa2g87o4ezX2eL56+nZ6rePlBrdRfdMbAx21B+chfHz4uo9unWHPbPN3ZWLy7Mn s1/nU3RrG5+sf9cdmxtfT68uLubT5aGs6O6Z8puv1tkWuv3sDpX7FiPaQrWf3aFu30pc7IoMXL18 eTG7PPyTJOFdyohnPNKdlA4LGEco9DxdLVbrv/z2WhyrTcX728UWwdJy+bjJ/sBBXbyZnT67es+W 2WFbY/P6lYur9cvp6ez56XQrnhzcdWcOULP5MGnBrxbT9fE/3qyWs+UWS3nzzjsb7tajPVotLy6n HzLa7s4ddZMeh6bZnD12JDxjmm0GtRsBmsd2q0H9c/NB/fPOLZzvVvPl5dMSeLmzqOvsednUT4vV spMm17Yqe1dMkQ+L5+xKcuWhG1pj8uj+S47N7aZf3OaLg2vvius2V5e/vCfqMxiR3wXb9pctRN8v dyj5tlij9wx+MCJz15rqoVY3bG9f7IoOXswvv5vO3+cF7rASnq7nl6/PZ5dbcOWojHfTrf+A6PgH CKC7XN5vZ+tXM8zrTtpaW8uaB706H7UXYyHXHxYq/PyhBQq3qQzajTChMWMd17/tZh3X0Wq1OFzP Zv/cPEU64ooeHq7I7G1+dMB6eja/2mJ+9Pq7dY0fZlHeFiM622JEd7h5Nx/RrnnCZ/PFdItKlB32 gr9drd+8Xi1Wr97upJ/0kIXhwxOBW8CedkQEPlwA7CgCd0QEPn6ABckPT/JtCbzZBdG3+ZDGwuo/ e3Ee/OET22yoXZERm5uyOyMjtrDOd8w++oQOCNm8Cn53DwjZnFHHA0LuXr29p76sv+u2BGTcLRLj E9dqO1MK9PPmDLgzqnrzIe2aqj7YPId79Hq6XM4Wz2eL2elW0Yybd97VaL/fPAn/waO9eecd67Mn 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 AYgVHTUhwfSBhCK6DllBvEJZEiTDMHAhIhHNOjSr0DyTTZyFRNJMQUS0+Su6hXSTqolmp2R5yHFh kCKSA0ZSFUHULbMsoxmsabLhZ5EIH2TSgoYqqHRNXyGqaWma5JBvP64ICJVJCh1EvppB7FcdXxey 70j2vhM1h6Lfj65+QzA1NHaS9y50jY2Nrq7e2Th27fZ5qOyf9f4dLmIxipxGdDE1kTpWjmZHmf0+ 5uneIKHNXjbE8pmyoka5N3i/w3dSh/xlcG9QFEOM6d6Qn4Set1qgDiqIBCji4kqDghFRehQ1EWWF ogqibFFEIsoDxVYd1fiPE5atetmnOBaOhWNpQCz1WWHqtlrmiqjOu1hOiCL3/WwRVUKRIaLqKDJB xIIiJa5YKBIgStA+OzrGFoJa4mqKYTDk7SqVdu2soD8mtrtO0+x8DvICh5XXrbuwuW7j3/5t48Ti 3HBYG46NbmCh+8///NPv33snrF7fCbaB98Eo97//+/f79z539PVUhe6zvwTT2sNHCB7aBoDTxNrl VHjzr7T1AlsUfkEMXDuw+QFV+NpvrXj0wLZp7cAGudO/DFb4nlhfOp/EMTieGf7pX/4Rtnc8+uaT NyZxIzt/ePw3X3wXMR4P7v//7Z3PbxRHn8Y9g2SjEOaVbKRX3JpISchKaepnd7UgK5Hsi2RsvUQJ vmSVrCyYZJGMvTJkY/4Gaw9cctwILo5Wu+bOnnLmtDlE4Q8wuxY5RHkPSIDDVvXv9rRh5ot7Gofn s6vXM19X11P91ExsVzFPJVs4ncPvXv3h17otk3RPaOI5e0jJJtPEczalsrPD997levH56qO0eJHK C0f64rvde5Msc2zvfbFs42zPrbCdYvrrd7+KPdL6Da9kkzZ/Ge7e4xrY9a1ua+3UbSOXdrIe5PtR 1X3pfPMq3opKt6Dq96vc7tPeu075htPzNprSPaZd/20Y51YR15FvIs49oZUvFTfxymJedItnSoce 19KPjFuPV9wPQmU8t1QZMvdRs6xyya2TRr7iQamVlL7mTJZ6yiuZYHxdVgy4L2UQeXlPQWhvISzr ZRV3XT6svFk+9LyngTtsYqvoNfVx6K2iWn/K5REdspcSPXJX0lxywyX61PJWkWYBZadIjr5T1ODH MZMt2dC6K+zcKsV8+71kz0YHvo6UKIrJZlH9Yrx7hb7sgrxhnrBj/9xzLyM7mt0L8vn346dJm/TL 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 nDv6xv8D5d1SPg== PKHk@Z|55(buildbot-v0.8.6/developer/encodings.html String Encodings — Buildbot 0.8.6 documentation

String Encodings

Buildbot expects all strings used internally to be valid Unicode strings - not bytestrings.

Note that Buildbot rarely feeds strings back into external tools in such a way that those strings must match. For example, Buildbot does not attempt to access the filenames specified in a Change. So it is more important to store strings in a manner that will be most useful to a human reader (e.g., in logfiles, web status, etc.) than to store them in a lossless format.

Inputs

On input, strings should be decoded, if their encoding is known. Where necessary, the assumed input encoding should be configurable. In some cases, such as filenames, this encoding is not known or not well-defined (e.g., a utf-8 encoded filename in a latin-1 directory). In these cases, the input mechanisms should make a best effort at decoding, and use e.g., the errors='replace' option to fail gracefully on un-decodable characters.

Outputs

At most points where Buildbot outputs a string, the target encoding is known. For example, the web status can encode to utf-8. In cases where it is not known, it should be configurable, with a safe fallback (e.g., ascii with errors='replace'. String Encodings ================

Buildbot expects all strings used internally to be valid Unicode strings - not bytestrings.

Note that Buildbot rarely feeds strings back into external tools in such a way that those strings must match. For example, Buildbot does not attempt to access the filenames specified in a Change. So it is more important to store strings in a manner that will be most useful to a human reader (e.g., in logfiles, web status, etc.) than to store them in a lossless format.

Inputs

On input, strings should be decoded, if their encoding is known. Where necessary, the assumed input encoding should be configurable. In some cases, such as filenames, this encoding is not known or not well-defined (e.g., a utf-8 encoded filename in a latin-1 directory, or a patch file). In these cases, the input mechanisms should make a best effort at decoding, and use e.g., the errors='replace' option to fail gracefully on un-decodable characters.

Outputs

At most points where Buildbot outputs a string, the target encoding is known. For example, the web status can encode to utf-8. In cases where it is not known, it should be configurable, with a safe fallback (e.g., ascii with errors='replace'.




PKGk@ܻ%buildbot-v0.8.6/developer/config.html Configuration — Buildbot 0.8.6 documentation

Configuration

Wherever possible, Buildbot components should access configuration information as needed from the canonical source, master.config, which is an instance of MasterConfig. For example, components should not keep a copy of the buildbotURL locally, as this value may change throughout the lifetime of the master.

Components which need to be notified of changes in the configuration should be implemented as services, subclassing ReconfigurableServiceMixin, as described in Reconfiguration.

class buildbot.config.MasterConfig

The master object makes much of the configuration available from an object named master.config. Configuration is stored as attributes of this object. Where possible, other Buildbot components should access this configuration directly and not cache the configuration values anywhere else. This avoids the need to ensure that update-from-configuration methods are called on a reconfig.

Aside from validating the configuration, this class handles any backward-compatibility issues - renamed parameters, type changes, and so on - removing those concerns from other parts of Buildbot.

This class may be instantiated directly, creating an entirely default configuration, or via loadConfig, which will load the configuration from a config file.

The following attributes are available from this class, representing the current configuration. This includes a number of global parameters:

title

The title of this buildmaster, from title.

titleURL

The URL corresponding to the title, from titleURL.

buildbotURL

The URL of this buildmaster, for use in constructing WebStatus URLs; from buildbotURL.

changeHorizon

The current change horizon, from changeHorizon.

eventHorizon

The current event horizon, from eventHorizon.

logHorizon

The current log horizon, from logHorizon.

buildHorizon

The current build horizon, from buildHorizon.

logCompressionLimit

The current log compression limit, from logCompressionLimit.

logCompressionMethod

The current log compression method, from logCompressionMethod.

logMaxSize

The current log maximum size, from logMaxSize.

logMaxTailSize

The current log maximum size, from logMaxTailSize.

properties

A Properties instance containing global properties, from properties.

mergeRequests

A callable, or True or False, describing how to merge requests; from mergeRequests.

prioritizeBuilders

A callable, or None, used to prioritize builders; from prioritizeBuilders.

slavePortnum

The strports specification for the slave (integer inputs are normalized to a string), or None; based on slavePortnum.

multiMaster

If true, then this master is part of a cluster; based on multiMaster.

debugPassword

The password for the debug client, or None; from debugPassword.

manhole

The manhole instance to ues, or None; from manhole.

The remaining attributes contain compound configuration structures, usually dictionaries:

validation

Validation regular expressions, a dictionary from validation. It is safe to assume that all expected keys are present.

db

Database specification, a dictionary with keys db_url and db_poll_interval. It is safe to assume that both keys are present.

metrics

The metrics configuration from metrics, or an empty dictionary by default.

caches

The cache configuration, from caches as well as the deprecated buildCacheSize and changeCacheSize parameters.

The keys Builds and Caches are always available; other keys should use config.caches.get(cachename, 1).

schedulers

The dictionary of scheduler instances, by name, from schedulers.

builders

The list of BuilderConfig instances from builders. Builders specified as dictionaries in the configuration file are converted to instances.

slaves

The list of BuildSlave instances from slaves.

change_sources

The list of IChangeSource providers from change_source.

status

The list of IStatusReceiver providers from status.

user_managers

The list of user managers providers from user_managers.

Loading of the configuration file is generally triggered by the master, using the following methods:

classmethod loadConfig(basedir, filename)
Parameters:
  • basedir (string) -- directory to which config is relative
  • filename (string) -- the configuration file to load
Raises :

ConfigErrors if any errors occur

Returns:

new MasterConfig instance

Load the configuration in the given file. Aside from syntax errors, this will also detect a number of semantic errors such as multiple schedulers with the same name.

The filename is treated as relative to the basedir, if it is not absolute.

Builder Configuration

class buildbot.config.BuilderConfig([keyword args])

This class parameterizes configuration of builders; see Builder Configuration for its arguments. The constructor checks for errors and applies defaults, and sets the properties described here. Most are simply copied from the constructor argument of the same name.

Users may subclass this class to add defaults, for example.

name

The builder's name.

factory

The builder's factory.

slavenames

The builder's slave names (a list, regardless of whether the names were specified with slavename or slavenames).

builddir

The builder's builddir.

slavebuilddir

The builder's slave-side builddir.

category

The builder's category.

nextSlave

The builder's nextSlave callable.

locks

The builder's locks.

env

The builder's environmnet variables.

properties

The builder's properties, as a dictionary.

mergeRequests

The builder's mergeRequests callable.

Error Handling

If any errors are encountered while loading the configuration buildbot.config.error should be called. This can occur both in the configuration-loading code, and in the constructors of any objects that are instantiated in the configuration - change sources, slaves, schedulers, build steps, and so on.

buildbot.config.error(error)
Parameters:error -- error to report
Raises :ConfigErrors if called at build-time

This function reports a configuration error. If a config file is being loaded, then the function merely records ther error, and allows he rest of the configuration to be loaded. At any other time, it raises ConfigErrors. This is done so all config erros can be reported, rather than just the first.

exception buildbot.config.ConfigErrors([errors])
Parameters:errors (list) -- errors to report

This exception represents errors in the configuration. It supports reporting multiple errors to the user simultaneously, e.g., when several consistency checks fail.

errors

A list of detected errors, each given as a string.

addError(msg)
Parameters:msg (string) -- the message to add

Add another error message to the (presumably not-yet-raised) exception.

Reconfiguration

When the buildmaster receives a signal to beging a reconfig, it re-reads the configuration file, generating a new MasterConfig instance, and then notifies all of its child services via the reconfig mechanism described below. The master ensures that at most one reconfiguration is taking place at any time.

See Master Organization for the structure of the Buildbot service tree.

To simplify initialization, a reconfiguration is performed immediately on master startup. As a result, services only need to implement their configuration handling once, and can use startService for initialization.

See below for instructions on implementing configuration of common types of components in Buildbot.

Note

Because Buildbot uses a pure-Python configuration file, it is not possible to support all forms of reconfiguration. In particular, when the configuration includes custom subclasses or modules, reconfiguration can turn up some surprising behaviors due to the dynamic nature of Python. The reconfig support in Buildbot is intended for "intermediate" uses of the software, where there are fewer surprises.

Reconfigurable Services

Instances which need to be notified of a change in configuration should be implemented as Twisted services, and mix in the ReconfigurableServiceMixin class, overriding the reconfigService method.

class buildbot.config.ReconfigurableServiceMixin
reconfigService(new_config)
Parameters:new_config (MasterConfig) -- new master configuration
Returns:Deferred

This method notifies the service that it should make any changes necessary to adapt to the new configuration values given.

This method will be called automatically after a service is started.

It is generally too late at this point to roll back the reconfiguration, so if possible any errors should be detected in the MasterConfig implementation. Errors are handled as best as possible and communicated back to the top level invocation, but such errors may leave the master in an inconsistent state. ConfigErrors exceptions will be displayed appropriately to the user on startup.

Subclasses should always call the parent class's implementation. For MultiService instances, this will call any child services' reconfigService methods, as appropriate. This will be done sequentially, such that the Deferred from one service must fire before the next service is reconfigured.

priority

Child services are reconfigured in order of decreasing priority. The default priority is 128, so a service that must be reconfigured before others should be given a higher priority.

Change Sources

When reconfiguring, there is no method by which Buildbot can determine that a new ChangeSource represents the same source as an existing ChangeSource, but with different configuration parameters. As a result, the change source manager compares the lists of existing and new change sources using equality, stops any existing sources that are not in the new list, and starts any new change sources that do not already exist.

ChangeSource inherits ComparableMixin, so change sources are compared based on the attributes described in their compare_attrs.

If a change source does not make reference to any global configuration parameters, then there is no need to inherit ReconfigurableServiceMixin, as a simple comparison and startService and stopService will be sufficient.

If the change source does make reference to global values, e.g., as default values for its parameters, then it must inherit ReconfigurableServiceMixin to support the case where the global values change.

Schedulers

Schedulers have names, so Buildbot can determine whether a scheduler has been added, removed, or changed during a reconfig. Old schedulers will be stopped, new schedulers will be started, and both new and existing schedulers will see a call to reconfigService, if such a method exists. For backward compatibility, schedulers which do not support reconfiguration will be stopped, and the new scheduler started, when their configuration changes.

If, during a reconfiguration, a new and old scheduler's fully qualified class names differ, then the old class will be stopped and the new class started. This supports the case when a user changes, for example, a Nightly scheduler to a Periodic scheduler without changing the name.

Because Buildbot uses BaseScheduler instances directly in the configuration file, a reconfigured scheduler must extract its new configuration information from another instance of itself. BaseScheduler implements a helper method, findNewSchedulerInstance, which will return the new instance of the scheduler in the given MasterConfig object.

Custom Subclasses

Custom subclasses are most often defined directly in the configuration file, or in a Python module that is reloaded with reload every time the configuration is loaded. Because of the dynamic nature of Python, this creates a new object representing the subclass every time the configuration is loaded -- even if the class definition has not changed.

Note that if a scheduler's class changes in a reconfig, but the scheduler's name does not, it will still be treated as a reconfiguration of the existing scheduler. This means that implementation changes in custom scheduler subclasses will not be activated with a reconfig. This behavior avoids stopping and starting such schedulers on every reconfig, but can make development difficult.

One workaround for this is to change the name of the scheduler before each reconfig - this will cause the old scheduler to be stopped, and the new scheduler (with the new name and class) to be started.

Slaves

Similar to schedulers, slaves are specified by name, so new and old configurations are first compared by name, and any slaves to be added or removed are noted. Slaves for which the fully-qualified class name has changed are also added and removed. All slaves have their reconfigService method called.

This method takes care of the basic slave attributes, including changing the PB registration if necessary. Any subclasses that add configuration parameters should override reconfigService and update those parameters. As with Schedulers, because the AbstractBuildSlave instance is given directly in the configuration, on reconfig instances must extract the configuration from a new instance. The findNewSlaveInstance method can be used to find the new instance.

User Managers

Since user managers are rarely used, and their purpose is unclear, they are always stopped and re-started on every reconfig. This may change in figure versions.

Status Receivers

At every reconfig, all status listeners are stopped and new versions started.




PKGk@BB-buildbot-v0.8.6/developer/cls-forcesched.html ForceScheduler — Buildbot 0.8.6 documentation

ForceScheduler

The force scheduler has a symbiotic relationship with the web status, so it deserves some further description.

Parameters

The force scheduler comes with a fleet of parameter classes. This section contains information to help users or developers who are interested in adding new parameter types or hacking the existing types.

class buildbot.schedulers.forceshed.BaseParameter(name, label, regex, **kwargs)

This is the base implementation for most parameters, it will check validity, ensure the arg is present if the required attribute is set, and implement the default value. It will finally call update_from_post to process the string(s) from the HTTP POST.

This class implements IParameter, and subclasses are expected to adhere to that interface.

The BaseParameter constructor converts any keyword arguments into instance attributes, so it is generally not necessary for subclasses to implement a constructor.

update_from_post(master, properties, changes, req)
Parameters:
  • master -- the BuildMaster instance
  • properties -- a dictionary of properties
  • changes -- a list of changeids that will be used to build the SourceStamp for the forced builds
  • req -- the Twisted Web request object

This method updates properties and/or changes according to the request. The default implementation is good for many simple uses, but can be overridden for more complex purposes.

The remaining attributes and methods should be overridden by subclasses, although BaseParameter provides appropriate defaults.

name

The name of the parameter. This will correspond to the name of the property that your parameter will set. This name is also used internally as identifier for http POST arguments

label

The label of the parameter, as displayed to the user. This value can contain raw HTML.

type

The type of the parameter is used by the jinja template to create appropriate html form widget. The available values are visible in master/buildbot/status/web/template/forms.html in the force_build_one_scheduler macro.

default

The default value, used if there is no user input. This is also used to fill in the form presented to the user.

required

If true, an error will be shown to user if there is no input in this field

multiple

If true, this parameter will return a list of values (e.g. list of tests to run)

regex

A string that will be compiled as a regex and used to validate the string value of this parameter. If None, then no validation will take place.

parse_from_args(l)

return the list of object corresponding to the list or string passed default function will just call parse_from_arg with the first argument

parse_from_arg(s)

return the object corresponding to the string passed default function will just return the unmodified string




PKGk@"hRR-buildbot-v0.8.6/developer/cls-buildsteps.html BuildSteps — Buildbot 0.8.6 documentation

BuildSteps

There are a few parent classes that are used as base classes for real buildsteps. This section describes the base classes. The "leaf" classes are described in Build Steps.

BuildStep

class buildbot.process.buildstep.BuildStep(name, locks, haltOnFailure, flunkOnWarnings, flunkOnFailure, warnOnWarnings, warnOnFailure, alwaysRun, progressMetrics, useProgress, doStepIf, hideStepIf)

All constructor arguments must be given as keyword arguments. Each constructor parameter is copied to the corresponding attribute.

name

The name of the step.

locks

List of locks for this step; see Interlocks.

progressMetrics

List of names of metrics that should be used to track the progress of this build, and build ETA's for users. This is generally set in the

useProgress

If true (the default), then ETAs will be calculated for this step using progress metrics. If the step is known to have unpredictable timing (e.g., an incremental build), then this should be set to false.

doStepIf

A callable or bool to determine whether this step should be executed. See Common Parameters for details.

hideStepIf

A callable or bool to determine whether this step should be shown in the waterfall and build details pages. See Common Parameters for details.

The following attributes affect the behavior of the containing build:

haltOnFailure

If true, the build will halt on a failure of this step, and not execute subsequent tests (except those with alwaysRun).

flunkOnWarnings

If true, the build will be marked as a failure if this step ends with warnings.

flunkOnFailure

If true, the build will be marked as a failure if this step fails.

warnOnWarnings

If true, the build will be marked as warnings, or worse, if this step ends with warnings.

warnOnFailure

If true, the build will be marked as warnings, or worse, if this step fails.

alwaysRun

If true, the step will run even if a previous step halts the build with haltOnFailure.

A step acts as a factory for more steps. See Writing BuildStep Constructors for advice on writing subclass constructors. The following methods handle this factory behavior.

addFactoryArguments(..)

Add the given keyword arguments to the arguments used to create new step instances;

getStepFactory()
Returns:tuple of (class, keyword arguments)

Get a factory for new instances of this step. The step can be created by calling the class with the given keyword arguments.

A few important pieces of information are not available when a step is constructed, and are added later. These are set by the following methods; the order in which these methods are called is not defined.

setBuild(build)
Parameters:build -- the Build instance controlling this step.

This method is called during setup to set the build instance controlling this slave. Subclasses can override this to get access to the build object as soon as it is available. The default implementation sets the build attribute.

build

The build object controlling this step.

setBuildSlave(build)
Parameters:build -- the BuildSlave instance on which this step will run.

Similarly, this method is called with the build slave that will run this step. The default implementation sets the buildslave attribute.

buildslave

The build slave that will run this step.

setDefaultWorkdir(workdir)
Parameters:workdir -- the default workdir, from the build

This method is called at build startup with the default workdir for the build. Steps which allow a workdir to be specified, but want to override it with the build's default workdir, can use this method to apply the default.

setStepStatus(status)
Parameters:status (BuildStepStatus) -- step status

This method is called to set the status instance to which the step should report. The default implementation sets step_status.

step_status

The BuildStepStatus object tracking the status of this step.

setupProgress()

This method is called during build setup to give the step a chance to set up progress tracking. It is only called if the build has useProgress set. There is rarely any reason to override this method.

progress

If the step is tracking progress, this is a StepProgress instance performing that task.

Exeuction of the step itself is governed by the following methods and attributes.

startStep(remote)
Parameters:remote -- a remote reference to the slave-side SlaveBuilder instance
Returns:Deferred

Begin the step. This is the build's interface to step execution. Subclasses should override start to implement custom behaviors.

The method returns a Deferred that fires when the step finishes. It fires with a tuple of (result, [extra text]), where result is one of the constants from buildbot.status.builder. The extra text is a list of short strings which should be appended to the Build's text results. For example, a test step may add 17 failures to the Build's status by this mechanism.

The deferred will errback if the step encounters an exception, including an exception on the slave side (or if the slave goes away altogether). Normal build/test failures will not cause an errback.

start()
Returns:None or SKIPPED

Begin the step. Subclasses should override this method to do local processing, fire off remote commands, etc. The parent method raises NotImplementedError.

Note that this method does not return a Deferred. When the step is done, it should call finished, with a result -- a constant from buildbot.status.results. The result will be handed off to the Build.

If the step encounters an exception, it should call failed with a Failure object. This method automatically fails the whole build with an exception. A common idiom is to add failed as an errback on a Deferred:

cmd = RemoteCommand(args)
d = self.runCommand(cmd)
def suceed(_):
    self.finished(results.SUCCESS)
d.addCallback(succeed)
d.addErrback(self.failed)

If the step decides it does not need to be run, start can return the constant SKIPPED. In this case, it is not necessary to call finished directly.

finished(results)
Parameters:results -- a constant from results

A call to this method indicates that the step is finished and the build should analyze the results and perhaps proceed to the next step. The step should not perform any additional processing after calling this method.

failed(failure)
Parameters:failure -- a Failure instance

Similar to finished, this method indicates that the step is finished, but handles exceptions with appropriate logging and diagnostics.

This method handles BuildStepFailed specially, by calling finished(FAILURE). This provides subclasses with a shortcut to stop execution of a step by raising this failure in a context where failed will catch it.

interrupt(reason)
Parameters:reason (string or Failure) -- why the build was interrupted

This method is used from various control interfaces to stop a running step. The step should be brought to a halt as quickly as possible, by cancelling a remote command, killing a local process, etc. The step must still finish with either finished or failed.

The reason parameter can be a string or, when a slave is lost during step processing, a ConnectionLost failure.

The parent method handles any pending lock operations, and should be called by implementations in subclasses.

stopped

If false, then the step is running. If true, the step is not running, or has been interrupted.

This method provides a convenient way to summarize the status of the step for status displays:

describe(done=False)
Parameters:done -- If true, the step is finished.
Returns:list of strings

Describe the step succinctly. The return value should be a sequence of short strings suitable for display in a horizontally constrained space.

Note

Be careful not to assume that the step has been started in this method. In relatively rare circumstances, steps are described before they have started. Ideally, unit tests should be used to ensure that this method is resilient.

Build steps support progress metrics - values that increase roughly linearly during the execution of the step, and can thus be used to calculate an expected completion time for a running step. A metric may be a count of lines logged, tests executed, or files compiled. The build mechanics will take care of translating this progress information into an ETA for the user.

setProgress(metric, value)
Parameters:
  • metric (string) -- the metric to update
  • value (integer) -- the new value for the metric

Update a progress metric. This should be called by subclasses that can provide useful progress-tracking information.

The specified metric name must be included in progressMetrics.

The following methods are provided as utilities to subclasses. These methods should only be invoked after the step is started.

slaveVersion(command, oldVersion=None)
Parameters:
  • command (string) -- command to examine
  • oldVersion -- return value if the slave does not specify a version
Returns:

string

Fetch the version of the named command, as specified on the slave. In practice, all commands on a slave have the same version, but passing command is still useful to ensure that the command is implemented on the slave. If the command is not implemented on the slave, slaveVersion will return None.

Versions take the form x.y where x and y are integers, and are compared as expected for version numbers.

Buildbot versions older than 0.5.0 did not support version queries; in this case, slaveVersion will return oldVersion. Since such ancient versions of Buildbot are no longer in use, this functionality is largely vestigial.

slaveVersionIsOlderThan(command, minversion)
Parameters:
  • command (string) -- command to examine
  • minversion -- minimum version
Returns:

boolean

This method returns true if command is not implemented on the slave, or if it is older than minversion.

getSlaveName()
Returns:string

Get the name of the buildslave assigned to this step.

runCommand(command)
Returns:Deferred

This method connects the given command to the step's buildslave and runs it, returning the Deferred from run.

addURL(name, url)
Parameters:
  • name -- URL name
  • url -- the URL

Add a link to the given url, with the given name to displays of this step. This allows a step to provide links to data that is not available in the log files.

The BuildStep class provides minimal support for log handling, that is extended by the LoggingBuildStep class. The following methods provide some useful behaviors. These methods can be called while the step is running, but not before.

addLog(name)
Parameters:name -- log name
Returns:LogFile instance

Add a new logfile with the given name to the step, and return the log file instance.

getLog(name)
Parameters:name -- log name
Returns:LogFile instance
Raises :KeyError if the log is not found

Get an existing logfile by name.

addCompleteLog(name, text)
Parameters:
  • name -- log name
  • text -- content of the logfile

This method adds a new log and sets text as its content. This is often useful to add a short logfile describing activities performed on the master. The logfile is immediately closed, and no further data can be added.

addHTMLLog(name, html)
Parameters:
  • name -- log name
  • html -- content of the logfile

Similar to addCompleteLog, this adds a logfile containing pre-formatted HTML, allowing more expressiveness than the text format supported by addCompleteLog.

addLogObserver(logname, observer)
Parameters:
  • logname -- log name
  • observer -- log observer instance

Add a log observer for the named log. The named log need not have been added already: the observer will be connected when the log is added.

See Adding LogObservers for more information on log observers.

LoggingBuildStep

class buildbot.process.buildstep.LoggingBuildStep(logfiles, lazylogfiles, log_eval_func, name, locks, haltOnFailure, flunkOnWarnings, flunkOnFailure, warnOnWarnings, warnOnFailure, alwaysRun, progressMetrics, useProgress, doStepIf, hideStepIf)
Parameters:

The remaining arguments are passed to the BuildStep constructor.

This subclass of BuildStep is designed to help its subclasses run remote commands that produce standard I/O logfiles. It:

  • tracks progress using the length of the stdout logfile
  • provides hooks for summarizing and evaluating the command's result
  • supports lazy logfiles
  • handles the mechanics of starting, interrupting, and finishing remote commands
  • detects lost slaves and finishes with a status of RETRY
logfiles

The logfiles to track, as described for ShellCommand. The contents of the class-level logfiles attribute are combined with those passed to the constructor, so subclasses may add log files with a class attribute:

class MyStep(LoggingBuildStep):
    logfiles = dict(debug='debug.log')

Note that lazy logfiles cannot be specified using this method; they must be provided as constructor arguments.

startCommand(command)
Parameters:command -- the RemoteCommand instance to start

Note

This method permits an optional errorMessages parameter, allowing errors detected early in the command process to be logged. It will be removed, and its use is deprecated.

Handle all of the mechanics of running the given command. This sets up all required logfiles, keeps status text up to date, and calls the utility hooks described below. When the command is finished, the step is finished as well, making this class is unsuitable for steps that run more than one command in sequence.

Subclasses should override start and, after setting up an appropriate command, call this method.

def start(self):
    cmd = RemoteShellCommand(..)
    self.startCommand(cmd, warnings)

To refine the status output, override one or more of the following methods. The LoggingBuildStep implementations are stubs, so there is no need to call the parent method.

commandComplete(command)
Parameters:command -- the just-completed remote command

This is a general-purpose hook method for subclasses. It will be called after the remote command has finished, but before any of the other hook functions are called.

createSummary(stdio)
Parameters:stdio -- stdio LogFile

This hook is designed to perform any summarization of the step, based either on the contents of the stdio logfile, or on instance attributes set earlier in the step processing. Implementations of this method often call e.g., addURL.

evaluateCommand(command)
Parameters:command -- the just-completed remote command
Returns:step result from buildbot.status.results

This hook should decide what result the step should have. The default implementation invokes log_eval_func if it exists, and looks at rc to distinguish SUCCESS from FAILURE.

The remaining methods provide an embarassment of ways to set the summary of the step that appears in the various status interfaces. The easiest way to affect this output is to override describe. If that is not flexible enough, override getText and/or getText2.

getText(command, results)
Parameters:
  • command -- the just-completed remote command
  • results -- step result from evaluateCommand
Returns:

a list of short strings

This method is the primary means of describing the step. The default implementation calls describe, which is usally the easiest method to override, and then appends a string describing the step status if it was not successful.

getText2(command, results)
Parameters:
  • command -- the just-completed remote command
  • results -- step result from evaluateCommand
Returns:

a list of short strings

Like getText, this method summarizes the step's result, but it is only called when that result affects the build, either by making it halt, flunk, or end with warnings.

Exceptions

exception buildbot.process.buildstep.BuildStepFailed

This exception indicates that the buildstep has failed. It is useful as a way to skip all subsequent processing when a step goes wrong. It is handled by BuildStep.failed.




PKHk@l%DD$buildbot-v0.8.6/developer/index.html Buildbot Development — Buildbot 0.8.6 documentation



PKGk@eF,,&buildbot-v0.8.6/developer/classes.html Classes — Buildbot 0.8.6 documentation

Classes

The sections contained here document classes that can be used or subclassed.

Note

Some of this information duplicates information available in the source code itself. Consider this information authoritative, and the source code a demonstration of the current implementation which is subject to change.




PKHk@}ҭLL$buildbot-v0.8.6/developer/utils.html Utilities — Buildbot 0.8.6 documentation

Utilities

class buildbo.util

Several small utilities are available at the top-level buildbot.util package. As always, see the API documentation for more information.

naturalSort
This function sorts strings "naturally", with embedded numbers sorted numerically. This ordering is good for objects which might have a numeric suffix, e.g., winslave1, winslave2
formatInterval
This function will return a human-readable string describing a length of time, given a number of seconds.
ComparableMixin

This mixin class adds comparability to a subclass. Use it like this:

class Widget(FactoryProduct, ComparableMixin):
    compare_attrs = [ 'radius', 'thickness' ]
    # ...

Any attributes not in compare_attrs will not be considered when comparing objects. This is particularly useful in implementing buildbot's reconfig logic, where a simple comparison between the new and existing objects can determine whether the new object should replace the existing object.

safeTranslate
This function will filter out some inappropriate characters for filenames; it is suitable for adapting strings from the configuration for use as filenames. It is not suitable for use with strings from untrusted sources.
AsyncLRUCache
This is a simple least-recently-used cache. Its constructor takes a maximum size. When the cache grows beyond this size, the least-recently used items will be automatically removed from the cache. The class has a get method that takes a key and a function to call (with the key) when the key is not in the cache. Both get and the miss function return Deferreds.

deferredLocked

This is a decorator to wrap an event-driven method (one returning a Deferred) in an acquire/release pair of a designated DeferredLock. For simple functions with a static lock, this is as easy as:

someLock = defer.DeferredLock()
@util.deferredLocked(someLock)
def someLockedFunction(..):
    # ..
    return d

for class methods which must access a lock that is an instance attribute, the lock can be specified by a string, which will be dynamically resolved to the specific instance at runtime:

def __init__(self):
    self.someLock = defer.DeferredLock()

@util.deferredLocked('someLock')
    def someLockedFunction(..):
    # ..
    return d

epoch2datetime

Convert a UNIX epoch timestamp (an integer) to a Python datetime object, in the UTC timezone. Note that timestamps specify UTC time (modulo leap seconds and a few other minor details).

datetime2epoch

Convert an arbitrary Python datetime object into a UNIX epoch timestamp.

UTC

A datetime.tzinfo subclass representing UTC time. A similar class has finally been added to Python in version 3.2, but the implementation is simple enough to include here. This is mostly used in tests to create timezeon-aware datetime objects in UTC:

dt = datetime.datetime(1978, 6, 15, 12, 31, 15, tzinfo=UTC)

buildbot.util.bbcollections

This package provides a few useful collection objects.

Note

It used to be named collections, but without absolute imports (PEP 328), this precluded using the standard library's collections module.

For compatibility, it provides a clone of the Python collections.defaultdict for use in Python-2.4. In later versions, this is simply a reference to the built-in defaultdict, so buildbot code can simply use buildbot.util.collections.defaultdict everywhere.

It also provides a KeyedSets class that can represent any numbers of sets, keyed by name (or anything hashable, really). The object is specially tuned to contain many different keys over its lifetime without wasting memory. See the docstring for more information.

buildbot.util.eventual

This package provides a simple way to say "please do this later":

from buildbot.util.eventual import eventually
def do_what_I_say(what, where):
    # ...
eventually(do_what_I_say, "clean up", "your bedroom")

The package defines "later" as "next time the reactor has control", so this is a good way to avoid long loops that block other activity in the reactor. Callables given to eventually are guaranteed to be called in the same order as the calls to eventually. Any errors from the callable are logged, but will not affect other callables.

If you need a deferred that will fire "later", use fireEventually. This function returns a deferred that will not errback.

buildbot.util.json

This package is just an import of the best available JSON module. Use it instead of a more complex conditional import of simplejson or json.




PKHk@t%]R]R&buildbot-v0.8.6/developer/metrics.html Metrics — Buildbot 0.8.6 documentation

Metrics

New in buildbot 0.8.4 is support for tracking various performance metrics inside the buildbot master process. Currently these are logged periodically according to the log_interval configuration setting of the @ref{Metrics Options} configuration.

If WebStatus is enabled, the metrics data is also available via /json/metrics.

The metrics subsystem is implemented in buildbot.process.metrics. It makes use of twisted's logging system to pass metrics data from all over buildbot's code to a central MetricsLogObserver object, which is available at BuildMaster.metrics or via Status.getMetrics().

Metric Events

MetricEvent objects represent individual items to monitor. There are three sub-classes implemented:

MetricCountEvent

Records incremental increase or decrease of some value, or an absolute measure of some value.

from buildbot.process.metrics import MetricCountEvent

# We got a new widget!
MetricCountEvent.log('num_widgets', 1)

# We have exactly 10 widgets
MetricCountEvent.log('num_widgets', 10, absolute=True)
MetricTimeEvent

Measures how long things take. By default the average of the last 10 times will be reported.

from buildbot.process.metrics import MetricTimeEvent

# function took 0.001s
MetricTimeEvent.log('time_function', 0.001)
MetricAlarmEvent

Indicates the health of various metrics.

from buildbot.process.metrics import MetricAlarmEvent, ALARM_OK

# num_slaves looks ok
MetricAlarmEvent.log('num_slaves', level=ALARM_OK)

Metric Handlers

MetricsHandler objects are responsble for collecting MetricEvents of a specific type and keeping track of their values for future reporting. There are MetricsHandler classes corresponding to each of the MetricEvent types.

Metric Watchers

Watcher objects can be added to MetricsHandlers to be called when metric events of a certain type are received. Watchers are generally used to record alarm events in response to count or time events.

Metric Helpers

countMethod(name)

A function decorator that counts how many times the function is called.

from buildbot.process.metrics import countMethod

@countMethod('foo_called')
def foo():
    return "foo!"
Timer(name)

Timer objects can be used to make timing events easier. When Timer.stop() is called, a MetricTimeEvent is logged with the elapsed time since timer.start() was called.

from buildbot.process.metrics import Timer

def foo():
    t = Timer('time_foo')
    t.start()
    try:
        for i in range(1000):
            calc(i)
        return "foo!"
    finally:
        t.stop()

Timer objects also provide a pair of decorators, startTimer/stopTimer to decorate other functions.

from buildbot.process.metrics import Timer

t = Timer('time_thing')

@t.startTimer
def foo():
    return "foo!"

@t.stopTimer
def bar():
    return "bar!"

foo()
bar()
timeMethod(name)

A function decorator that measures how long a function takes to execute. Note that many functions in buildbot return deferreds, so may return before all the work they set up has completed. Using an explicit Timer is better in this case.

from buildbot.process.metrics import timeMethod

@timeMethod('time_foo')
def foo():
    for i in range(1000):
        calc(i)
    return "foo!"



PKHk@\CC(buildbot-v0.8.6/developer/webstatus.html Web Status — Buildbot 0.8.6 documentation

Web Status

Jinja Web Templates

Buildbot uses Jinja2 to render its web interface. The authoritative source for this templating engine is its own documentation, of course, but a few notes are in order for those who are making only minor modifications.

Whitespace

Jinja directives are enclosed in {% .. %}, and sometimes also have dashes. These dashes strip whitespace in the output. For example:

{% for entry in entries %}
  <li>{{ entry }}</li>
{% endfor %}

will produce output with too much whitespace:

<li>pigs</li>


<li>cows</li>

But adding the dashes will collapse that whitespace completely:

{% for entry in entries -%}
  <li>{{ entry }}</li>
{%- endfor %}

yields

<li>pigs</li><li>cows</li>

Web Authorization Framework

Whenever any part of the web framework wants to perform some action on the buildmaster, it should check the user's authorization first.

Always check authorization twice: once to decide whether to show the option to the user (link, button, form, whatever); and once before actually performing the action.

To check whether to display the option, you'll usually want to pass an authz object to the Jinja template in your HtmlResource subclass:

def content(self, req, cxt):
    # ...
    cxt['authz'] = self.getAuthz(req)
    template = ...
    return template.render(**cxt)

and then determine whether to advertise the action in the template:

{{ if authz.advertiseAction('myNewTrick') }}
  <form action="{{ myNewTrick_url }}"> ...
{{ endif }}

Actions can optionally require authentication, so use needAuthForm to determine whether to require a 'username' and 'passwd' field in the generated form. These fields are usually generated by authFormIfNeeded:

{{ authFormIfNeeded(authz, 'myNewTrick') }}

Once the POST request comes in, it's time to check authorization again. This usually looks something like

d = self.getAuthz(req).actionAllowed('myNewTrick', req, someExtraArg)
wfd = defer.waitForDeferred(d)
yield wfd
res = wfd.getResult()
if not res:
    yield Redirect(path_to_authfail(req))
    return

The someExtraArg is optional (it's handled with *args, so you can have several if you want), and is given to the user's authorization function. For example, a build-related action should pass the build status, so that the user's authorization function could ensure that devs can only operate on their own builds.

Note that actionAllowed returns a Deferred instance, so you must wait for the Deferred and yield the Redirect instead of returning it.

The available actions are described in WebStatus.




PKHk@v1I$buildbot-v0.8.6/developer/style.html Buildbot Coding Style — Buildbot 0.8.6 documentation

Buildbot Coding Style

Symbol Names

Buildbot follows PEP8 <http://www.python.org/dev/peps/pep-0008/> regarding the formatting of symbol names.

The single exception in naming of functions and methods. Because Buildbot uses Twisted so heavily, and Twisted uses interCaps, Buildbot methods should do the same. That is, methods and functions should be spelled with the first character in lower-case, and the first letter of subsequent words capitalized, e.g., compareToOther or getChangesGreaterThan. This point is not applied very consistently in Buildbot, but let's try to be consistent in new code.

Twisted Idioms

Programming with Twisted Python can be daunting. But sticking to a few well-defined patterns can help avoid surprises.

Prefer to Return Deferreds

If you're writing a method that doesn't currently block, but could conceivably block sometime in the future, return a Deferred and document that it does so. Just about anything might block - even getters and setters!

Helpful Twisted Classes

Twisted has some useful, but little-known classes. They are listed here with brief descriptions, but you should consult the API documentation or source code for the full details.

twisted.internet.task.LoopingCall
Calls an asynchronous function repeatedly at set intervals.
twisted.application.internet.TimerService
Similar to t.i.t.LoopingCall, but implemented as a service that will automatically start and stop the function calls when the service is started and stopped.

Sequences of Operations

Especially in Buildbot, we're often faced with executing a sequence of operations, many of which may block.

In all cases where this occurs, there is a danger of pre-emption, so exercise the same caution you would if writing a threaded application.

For simple cases, you can use nested callback functions. For more complex cases, deferredGenerator is appropriate.

Nested Callbacks

First, an admonition: do not create extra class methods that represent the continuations of the first:

def myMethod(self):
    d = ...
    d.addCallback(self._myMethod_2) # BAD!
def _myMethod_2(self, res):         # BAD!
    # ...

Invariably, this extra method gets separated from its parent as the code evolves, and the result is completely unreadable. Instead, include all of the code for a particular function or method within the same indented block, using nested functions:

def getRevInfo(revname):
    results = {}
    d = defer.succeed(None)
    def rev_parse(_): # note use of '_' to quietly indicate an ignored parameter
        return utils.getProcessOutput(git, [ 'rev-parse', revname ])
    d.addCallback(rev_parse)
    def parse_rev_parse(res):
        results['rev'] = res.strip()
        return utils.getProcessOutput(git, [ 'log', '-1', '--format=%s%n%b', results['rev'] ])
    d.addCallback(parse_rev_parse)
    def parse_log(res):
        results['comments'] = res.strip()
    d.addCallback(parse_log)
    def set_results(_):
        return results
    d.addCallback(set_results)
    return d

it is usually best to make the first operation occur within a callback, as the deferred machinery will then handle any exceptions as a failure in the outer Deferred. As a shortcut, d.addCallback works as a decorator:

d = defer.succeed(None)
@d.addCallback
def rev_parse(_): # note use of '_' to quietly indicate an ignored parameter
    return utils.getProcessOutput(git, [ 'rev-parse', revname ])

Be careful with local variables. For example, if parse_rev_parse, above, merely assigned rev = res.strip(), then that variable would be local to parse_rev_parse and not available in set_results. Mutable variables (dicts and lists) at the outer function level are appropriate for this purpose.

Note

do not try to build a loop in this style by chaining multiple Deferreds! Unbounded chaining can result in stack overflows, at least on older versions of Twisted. Use deferredGenerator instead.

deferredGenerator

twisted.internet.defer.deferredGenerator is a great help to writing code that makes a lot of asynchronous calls. Refer to the Twisted documentation for the details, but the style within Buildbot is as follows:

from twisted.internet import defer

@defer.deferredGenerator
def mymethod(self, x, y):
    wfd = defer.waitForDeferred(
            getSomething(x))
    yield wfd
    xval = wfd.getResult()

    yield xval + y # return value

The key points to notice here:

  • Always import defer as a module, not the names within it.
  • Use the decorator form of deferredGenerator
  • For each waitForDeferred call, use the variable wfd, and assign to it on one line, with the operation returning the Deferred on the next.
  • While wfd.getResult() can be used in an expression, if that expression is complex, pull it out into a simple assignment. This helps reviewers scanning the code for missing getResult calls.
  • When yield is used to return a value, add a comment to that effect, since this can often be missed.

The great advantage of deferredGenerator is that it allows you to use all of the usual Pythonic control structures in their natural form. In particular, it is easy to represent a loop, or even nested loops, in this style without losing any readability. The downside, of course, is the rather verbose style and the requirement that getResult be called even when no result is needed - this is easy to forget! Twisted's inlineCallbacks fixes many of these shortcomings, but is not usable in Buildbot, because Buildbot is still compatible with Python-2.4. This will change after Buildbot-0.8.6 (bug #2157).

As a reminder, Python-2.4 also does not support try/finally blocks in generators.

Joining Sequences

It's often the case that you'll want to perform multiple operations in parallel, and re-join the results at the end. For this purpose, you'll want to use a DeferredList <http://twistedmatrix.com/documents/current/api/twisted.internet.defer.DeferredList.html>:

def getRevInfo(revname):
    results = {}
    finished = dict(rev_parse=False, log=False)

    rev_parse_d = utils.getProcessOutput(git, [ 'rev-parse', revname ])
    def parse_rev_parse(res):
        return res.strip()
    rev_parse_d.addCallback(parse_rev_parse)

    log_d = utils.getProcessOutput(git, [ 'log', '-1', '--format=%s%n%b', results['rev'] ]))
    def parse_log(res):
        return res.strip()
    log_d.addCallback(parse_log)

    d = defer.DeferredList([rev_parse_d, log_d], consumeErrors=1, fireOnFirstErrback=1)
    def handle_results(results):
        return dict(rev=results[0][1], log=results[1][1])
    d.addCallback(handle_results)
    return d

Here the deferred list will wait for both rev_parse_d and log_d to fire, or for one of them to fail. Callbacks and errbacks can be attached to a DeferredList just as for a deferred.

Writing Buildbot Tests

In general, we are trying to ensure that new tests are good. So what makes a good test?

Independent of Time

Tests that depend on wall time will fail. As a bonus, they run very slowly. Do not use reactor.callLater to wait "long enough" for something to happen.

For testing things that themselves depend on time, consider using twisted.internet.tasks.Clock. This may mean passing a clock instance to the code under test, and propagating that instance as necessary to ensure that all of the code using callLater uses it. Refactoring code for testability is difficult, but wortwhile.

For testing things that do not depend on time, but for which you cannot detect the "end" of an operation: add a way to detect the end of the operation!

Clean Code

Make your tests readable. This is no place to skimp on comments! Others will attempt to learn about the expected behavior of your class by reading the tests. As a side note, if you use a Deferred chain in your test, write the callbacks as nested functions, rather than using object methods with funny names:

def testSomething(self):
    d = doThisFirst()
    def andThisNext(res):
        pass # ...
    d.addCallback(andThisNext)
    return d

This isolates the entire test into one indented block. It is OK to add methods for common functionality, but give them real names and explain in detail what they do.

Good Name

Your test module should be named after the package or class it tests, replacing . with _ and omitting the buildbot_. For example, test_status_web_authz_Authz.py tests the Authz class in buildbot/status/web/authz.py. Modules with only one class, or a few trivial classes, can be tested in a single test module. For more complex situations, prefer to use multiple test modules.

Test method names should follow the pattern test_METHOD_CONDITION where METHOD is the method being tested, and CONDITION is the condition under which it's tested. Since we can't always test a single method, this is not a hard-and-fast rule.

Assert Only One Thing

Each test should have a single assertion. This may require a little bit of work to get several related pieces of information into a single Python object for comparison. The problem with multiple assertions is that, if the first assertion fails, the remainder are not tested. The test results then do not tell the entire story.

If you need to make two unrelated assertions, you should be running two tests.

Use Mocks and Stubs

Mocks assert that they are called correctly. Stubs provide a predictable base on which to run the code under test. See Mock Object and Method Stub.

Mock objects can be constructed easily using the aptly-named mock module, which is a requirement for Buildbot's tests.

One of the difficulties with Buildbot is that interfaces are unstable and poorly documented, which makes it difficult to design stubs. A common repository for stubs, however, will allow any interface changes to be reflected in only one place in the test code.

Small Tests

The shorter each test is, the better. Test as little code as possible in each test.

It is fine, and in fact encouraged, to write the code under test in such a way as to facilitate this. As an illustrative example, if you are testing a new Step subclass, but your tests require instantiating a BuildMaster, you're probably doing something wrong! (Note that this rule is almost universally violated in the existing buildbot tests).

This also applies to test modules. Several short, easily-digested test modules are preferred over a 1000-line monster.

Isolation

Each test should be maximally independent of other tests. Do not leave files laying around after your test has finished, and do not assume that some other test has run beforehand. It's fine to use caching techniques to avoid repeated, lengthy setup times.

Be Correct

Tests should be as robust as possible, which at a basic level means using the available frameworks correctly. All deferreds should have callbacks and be chained properly. Error conditions should be checked properly. Race conditions should not exist (see Independent of Time, above).

Be Helpful

Note that tests will pass most of the time, but the moment when they are most useful is when they fail.

When the test fails, it should produce output that is helpful to the person chasing it down. This is particularly important when the tests are run remotely, in which case the person chasing down the bug does not have access to the system on which the test fails. A test which fails sporadically with no more information than "AssertionFailed?" is a prime candidate for deletion if the error isn't obvious. Making the error obvious also includes adding comments describing the ways a test might fail.

Mixins

Do not define setUp and tearDown directly in a mixin. This is the path to madness. Instead, define a myMixinNameSetUp and myMixinNameTearDown, and call them explicitly from the subclass's setUp and tearDown. This makes it perfectly clear what is being set up and torn down from a simple analysis of the test case.

Keeping State

Python does not allow assignment to anything but the innermost local scope or the global scope with the global keyword. This presents a problem when creating nested functions:

def test_localVariable(self):
    cb_called = False
    def cb():
        cb_called = True
    cb()
    self.assertTrue(cb_called) # will fail!

The cb_called = True assigns to a different variable than cb_called = False. In production code, it's usually best to work around such problems, but in tests this is often the clearest way to express the behavior under test.

The solution is to change something in a common mutable object. While a simple list can serve as such a mutable object, this leads to code that is hard to read. Instead, use State:

from buildbot.test.state import State

def test_localVariable(self):
    state = State(cb_called=False)
    def cb():
        state.cb_called = True
    cb()
    self.assertTrue(state.cb_called) # passes

This is almost as readable as the first example, but it actually works.




PKGk@Hu ? ?/buildbot-v0.8.6/developer/cls-buildfactory.html BuildFactory — Buildbot 0.8.6 documentation

BuildFactory

BuildFactory Implementation Note

The default BuildFactory, provided in the buildbot.process.factory module, contains an internal list of BuildStep specifications: a list of (step_class, kwargs) tuples for each. These specification tuples are constructed when the config file is read, by asking the instances passed to addStep for their subclass and arguments.

To support config files from buildbot-0.7.5 and earlier, addStep also accepts the f.addStep(shell.Compile, command=["make","build"]) form, although its use is discouraged because then the Compile step doesn't get to validate or complain about its arguments until build time. The modern pass-by-instance approach allows this validation to occur while the config file is being loaded, where the admin has a better chance of noticing problems.

When asked to create a Build, the BuildFactory puts a copy of the list of step specifications into the new Build object. When the Build is actually started, these step specifications are used to create the actual set of BuildSteps, which are then executed one at a time. This serves to give each Build an independent copy of each step.

Each step can affect the build process in the following ways:

  • If the step's haltOnFailure attribute is True, then a failure in the step (i.e. if it completes with a result of FAILURE) will cause the whole build to be terminated immediately: no further steps will be executed, with the exception of steps with alwaysRun set to True. haltOnFailure is useful for setup steps upon which the rest of the build depends: if the CVS checkout or ./configure process fails, there is no point in trying to compile or test the resulting tree.
  • If the step's alwaysRun attribute is True, then it will always be run, regardless of if previous steps have failed. This is useful for cleanup steps that should always be run to return the build directory or build slave into a good state.
  • If the flunkOnFailure or flunkOnWarnings flag is set, then a result of FAILURE or WARNINGS will mark the build as a whole as FAILED. However, the remaining steps will still be executed. This is appropriate for things like multiple testing steps: a failure in any one of them will indicate that the build has failed, however it is still useful to run them all to completion.
  • Similarly, if the warnOnFailure or warnOnWarnings flag is set, then a result of FAILURE or WARNINGS will mark the build as having WARNINGS, and the remaining steps will still be executed. This may be appropriate for certain kinds of optional build or test steps. For example, a failure experienced while building documentation files should be made visible with a WARNINGS result but not be serious enough to warrant marking the whole build with a FAILURE.

In addition, each Step produces its own results, may create logfiles, etc. However only the flags described above have any effect on the build as a whole.

The pre-defined BuildSteps like CVS and Compile have reasonably appropriate flags set on them already. For example, without a source tree there is no point in continuing the build, so the CVS class has the haltOnFailure flag set to True. Look in buildbot/steps/*.py to see how the other Steps are marked.

Each Step is created with an additional workdir argument that indicates where its actions should take place. This is specified as a subdirectory of the slave builder's base directory, with a default value of build. This is only implemented as a step argument (as opposed to simply being a part of the base directory) because the CVS/SVN steps need to perform their checkouts from the parent directory.




PKHk@Fbb+buildbot-v0.8.6/developer/master-slave.html Master-Slave API — Buildbot 0.8.6 documentation

Master-Slave API

This section describes the master-slave interface.

Connection

The interface is based on Twisted's Perspective Broker, which operates over TCP connections.

The slave connects to the master, using the parameters supplied to buildslave create-slave. It uses a reconnecting process with an exponential backoff, and will automatically reconnect on disconnection.

Once connected, the slave authenticates with the Twisted Cred (newcred) mechanism, using the username and password supplied to buildslave create-slave. The mind is the slave bot instance (class buildslave.bot.Bot).

On the master side, the realm is implemented by buildbot.master.Dispatcher, which examines the username of incoming avatar requests. There are special cases for change, debug, and statusClient, which are not discussed here. For all other usernames, the botmaster is consulted, and if a slave with that name is configured, its buildbot.buildslave.BuildSlave instance is returned as the perspective.

Build Slaves

At this point, the master-side BuildSlave object has a pointer to the remote, slave-side Bot object in its self.slave, and the slave-side Bot object has a reference to the master-side BuildSlave object in its self.perspective.

Bot methods

The slave-side Bot object has the following remote methods:

remote_getCommands
Returns a list of (name, version) for all commands the slave recognizes
remote_setBuilderList

Given a list of builders and their build directories, ensures that those builders, and only those builders, are running. This can be called after the initial connection is established, with a new list, to add or remove builders.

This method returns a dictionary of SlaveBuilder objects - see below

remote_print
Adds a message to the slave logfile
remote_getSlaveInfo

Returns the contents of the slave's info/ directory. This also contains the keys

environ
copy of the slaves environment
system
OS the slave is running (extracted from pythons os.name)
basedir
base directory where slave is running
remote_getVersion
Returns the slave's version

BuildSlave methods

The master-side object has the following method:

perspective_keepalive
Does nothing - used to keep traffic flowing over the TCP connection

Setup

After the initial connection and trading of a mind (Bot) for an avatar (BuildSlave), the master calls the Bot's setBuilderList method to set up the proper slave builders on the slave side. This method returns a reference to each of the new slave-side SlaveBuilder objects, described below. Each of these is handed to the corresponding master-side SlaveBuilder object.

This immediately calls the remote setMaster method, then the print method.

Pinging

To ping a remote SlaveBuilder, the master calls its print method.

Building

When a build starts, the master calls the slave's startBuild method. Each BuildStep instance will subsequently call the startCommand method, passing a reference to itself as the stepRef parameter. The startCommand method returns immediately, and the end of the command is signalled with a call to a method on the master-side BuildStep object.

Slave Builders

Each build slave has a set of builders which can run on it. These are represented by distinct classes on the master and slave, just like the BuildSlave and Bot objects described above.

On the slave side, builders are represented as instances of the buildslave.bot.SlaveBuilder class. On the master side, they are represented by the buildbot.process.slavebuilder.SlaveBuilder class. The identical names are a source of confusion. The following will refer to these as the slave-side and master-side SlaveBuilder classes. Each object keeps a reference to its opposite in self.remote.

Slave-Side SlaveBuilder Methods

remote_setMaster
Provides a reference to the master-side SlaveBuilder
remote_print
Adds a message to the slave logfile; used to check round-trip connectivity
remote_startBuild
Indicates that a build is about to start, and that any subsequent commands are part of that build
remote_startCommand
Invokes a command on the slave side
remote_interruptCommand
Interrupts the currently-running command
remote_shutdown
Shuts down the slave cleanly

Master-side SlaveBuilder Methods

The master side does not have any remotely-callable methods.

Commands

Actual work done by the slave is represented on the master side by a buildbot.process.buildstep.RemoteCommand instance.

The command instance keeps a reference to the slave-side buildslave.bot.SlaveBuilder, and calls methods like remote_startCommand to start new commands. Once that method is called, the SlaveBuilder instance keeps a reference to the command, and calls the following methods on it:

Master-Side RemoteCommand Methods

remote_update
Update information about the running command. See below for the format.
remote_complete
Signal that the command is complete, either successfully or with a Twisted failure.

Updates

Updates from the slave, sent via remote_update, are a list of individual update elements. Each update element is, in turn, a list of the form [data, 0] where the 0 is present for historical reasons. The data is a dictionary, with keys describing the contents. The updates are handled by remoteUpdate.

Updates with different keys can be combined into a single dictionary or delivered sequentially as list elements, at the slave's option.

To summarize, an updates parameter to remote_update might look like this:

[
    [ { 'header' : 'running command..' }, 0 ],
    [ { 'stdout' : 'abcd', 'stderr' : 'local modifications' }, 0 ],
    [ { 'log' : ( 'cmd.log', 'cmd invoked at 12:33 pm\n' ) }, 0 ],
    [ { 'rc' : 0 }, 0 ],
]

Defined Commands

The following commands are defined on the slaves.

shell

Runs a shell command on the slave. This command takes the following arguments:

command

The command to run. If this is a string, will be passed to the system shell as a string. Otherwise, it must be a list, which will be executed directly.

workdir

Directory in which to run the command, relative to the builder dir.

env

A dictionary of environment variables to augment or replace the existing environment on the slave. In this dictionary, PYTHONPATH is treated specially: it should be a list of path components, rather than a string, and will be prepended to the existing python path.

initial_stdin

A string which will be written to the command's standard input before it is closed.

want_stdout

If false, then no updates will be sent for stdout.

want_stderr

If false, then no updates will be sent for stderr.

usePTY

If true, the command should be run with a PTY (POSIX only). This defaults to the value specified in the slave's buildbot.tac.

not_really

If true, skip execution and return an update with rc=0.

timeout

Maximum time without output before the command is killed.

maxTime

Maximum overall time from the start before the command is killed.

logfiles

A dictionary specifying logfiles other than stdio. Keys are the logfile names, and values give the workdir-relative filename of the logfile. Alternately, a value can be a dictionary; in this case, the dictionary must have a filename key specifying the filename, and can also have the following keys:

follow

Only follow the file from its current end-of-file, rather that starting from the beginning.

logEnviron

If false, the command's environment will not be logged.

The shell command sends the following updates:

stdout
The data is a bytestring which represents a continuation of the stdout stream. Note that the bytestring boundaries are not necessarily aligned with newlines.
stderr
Similar to stdout, but for the error stream.
header
Similar to stdout, but containing data for a stream of buildbot-specific metadata.
rc
The exit status of the command, where -- in keeping with UNIX tradition -- 0 indicates success and any nonzero value is considered a failure. No further updates should be sent after an rc.
log
This update contains data for a logfile other than stdio. The data associated with the update is a tuple of the log name and the data for that log. Note that non-stdio logs do not distinguish output, error, and header streams.

uploadFile

Upload a file from the slave to the master. The arguments are

workdir

The base directory for the filename, relative to the builder's basedir.

slavesrc

Name of the filename to read from., relative to the workdir.

writer

A remote reference to a writer object, described below.

maxsize

Maximum size, in bytes, of the file to write. The operation will fail if the file exceeds this size.

blocksize

The block size with which to transfer the file.

keepstamp

If true, preserve the file modified and accessed times.

The slave calls a few remote methods on the writer object. First, the write method is called with a bytestring containing data, until all of the data has been transmitted. Then, the slave calls the writer's close, followed (if keepstamp is true) by a call to upload(atime, mtime).

This command sends rc and stderr updates, as defined for the shell command.

uploadDirectory

Similar to uploadFile, this command will upload an entire directory to the master, in the form of a tarball. It takes the following arguments:

workdir slavesrc writer maxsize blocksize

See uploadFile

compress

Compression algorithm to use -- one of None, 'bz2', or 'gz'.

The writer object is treated similarly to the uploadFile command, but after the file is closed, the slave calls the master's unpack method with no arguments to extract the tarball.

This command sends rc and stderr updates, as defined for the shell command.

downloadFile

This command will download a file from the master to the slave. It takes the following arguments:

workdir

Base directory for the destination filename, relative to the builder basedir.

slavedest

Filename to write to, relative to the workdir.

reader

A remote reference to a reader object, described below.

maxsize

Maximum size of the file.

blocksize

The block size with which to transfer the file.

mode

Acess mode for the new file.

The reader object's read(maxsize) method will be called with a maximum size, which will return no more than that number of bytes as a bytestring. At EOF, it will return an empty string. Once EOF is received, the slave will call the remote close method.

This command sends rc and stderr updates, as defined for the shell command.

mkdir

This command will create a directory on the slave. It will also create any intervening directories required. It takes the following arugment:

dir

Directory to create.

The mkdir command produces the same updates as shell.

rmdir

This command will remove a directory or file on the slave. It takes the following arguments:

dir

Directory to remove.

timeout maxTime

See shell, above.

The rmdir command produces the same updates as shell.

cpdir

This command will copy a directory from place to place on the slave. It takes the following arguments:

fromdir

Source directory for the copy operation, relative to the builder's basedir.

todir

Destination directory for the copy operation, relative to the builder's basedir.

timeout maxTime

See shell, above.

The cpdir command produces the same updates as shell.

stat

This command returns status information about a file or directory. It takes a single parameter, file, specifying the filename relative to the builder's basedir.

It produces two status updates:

stat

The return value from Python's os.stat.

rc

0 if the file is found, otherwise 1.

Source Commands

The source commands (bk, cvs, darcs, git, repo, bzr, hg, p4, p4sync, and mtn) are deprecated. See the docstrings in the source code for more information.




PKHk@-77&buildbot-v0.8.6/developer/results.html Build Result Codes — Buildbot 0.8.6 documentation

Build Result Codes

Buildbot represents the status of a step, build, or buildset using a set of numeric constants. From Python, these constants are available in the module buildbot.status.results, but the values also appear in the database and in external tools, so the values are fixed.

buildbot.status.results.SUCCESS

Value: 0; color: green; a successful run.

buildbot.status.results.WARNINGS

Value: 1; color: orange; a successful run, with some warnings.

buildbot.status.results.FAILURE

Value: 2; color: red; a failed run, due to problems in the build itself, as opposed to a Buildbot misconfiguration or bug.

buildbot.status.results.SKIPPED

Value: 3; color: white; a run that was skipped -- usually a step skipped by doStepIf (see Common Parameters)

buildbot.status.results.EXCEPTION

Value: 4; color: purple; a run that failed due to a problem in Buildbot itself.

buildbot.status.results.RETRY

Value: 4; color: purple; a run that should be retried, usually due to a slave disconnection.

buildbot.status.results.Results

A dictionary mapping result codes to their lowercase names.

buildbot.status.results.worst_status(a, b)

This function takes two status values, and returns the "worst" status of the two. This is used (with exceptions) to aggregate step statuses into build statuses, and build statuses into buildset statuses.




PKHk@nQ%--&buildbot-v0.8.6/developer/formats.html File Formats — Buildbot 0.8.6 documentation

File Formats

Log File Format

class buildbot.status.logfile.LogFile

The master currently stores each logfile in a single file, which may have a standard compression applied.

The format is a special case of the netstrings protocol - see http://cr.yp.to/proto/netstrings.txt. The text in each netstring consists of a one-digit channel identifier followed by the data from that channel.

The formatting is implemented in the LogFile class in buildbot/status/logfile.py, and in particular by the merge method.




PKHk@ 22*buildbot-v0.8.6/developer/definitions.html Definitions — Buildbot 0.8.6 documentation

Definitions

Buildbot uses some terms and concepts that have specific meanings.

Repository

See Repository.

Project

See Project.

Version Control Comparison

Buildbot supports a number of version control systems, and they don't all agree on their terms. This table should help to disambiguate them.

Name Change Revision Branches
CVS patch [1] timestamp unnamed
Subversion revision integer directories
Git commit sha1 hash named refs
Mercurial changeset sha1 hash different repos or (permanently) named commits
Darcs ? none [2] different repos
Bazaar ? ? ?
Perforce ? ? ?
BitKeeper changeset ? different repos
  • [1] note that CVS only tracks patches to individual files. Buildbot tries to recognize coordinated changes to multiple files by correlating change times.
  • [2] Darcs does not have a concise way of representing a particular revision of the source.



PKHk@`==.buildbot-v0.8.6/developer/master-overview.html Master Organization — Buildbot 0.8.6 documentation

Master Organization

Buildbot makes heavy use of Twisted Python's support for services - software modules that can be started and stopped dynamically. Buildbot adds the ability to reconfigure such services, too - see Reconfiguration. Twisted arranges services into trees; the following section describes the service tree on a running master.

Buildmaster Service Hierarchy

The hierarchy begins with the master, a buildbot.master.BuildMaster instance. Most other services contain a reference to this object in their master attribute, and in general the appropriate way to access other objects or services is to begin with self.master and navigate from there.

The master has several child services:

master.metrics
A buildbot.process.metrics.MetricLogObserver instance that handles tracking and reporting on master metrics.
msater.caches
A buildbot.process.caches.CacheManager instance that provides access to object caches.
master.pbmanager
A buildbot.pbmanager.PBManager instance that handles incoming PB connections, potentially on multiple ports, and dispatching those connections to appropriate components based on the supplied username.
master.change_svc
A buildbot.changes.manager.ChangeManager instance that manages the active change sources, as well as the stream of changes received from those sources. All active change sources are child services of this instance.
master.botmaster

A buildbot.process.botmaster.BotMaster instance that manages all of the slaves and builders as child services.

The botmaster acts as the parent service for a buildbot.process.botmaster.BuildRequestDistributor instance (at master.botmaster.brd) as well as all active slaves (buildbot.buildslave.AbstractBuildSlave instances) and builders (buildbot.process.builder.Builder instances).

master.scheduler_manager
A buildbot.schedulers.manager.SchedulerManager instance that manages the active schedulers. All active schedulers are child services of this instance.
master.user_manager
A buildbot.process.users.manager.UserManagerManager instance that manages access to users. All active user managers are child services of this instance.
master.db
A buildbot.db.connector.DBConnector instance that manages access to the buildbot database. See Database for more information.
master.debug
A buildbot.process.debug.DebugServices instance that manages debugging-related access -- the debug client and manhole.
master.status
A buildbot.status.master.Status instance that provides access to all status data. This instance is also the service parent for all status listeners.



PKGk@.,{,{1buildbot-v0.8.6/developer/cls-remotecommands.html RemoteCommands — Buildbot 0.8.6 documentation

RemoteCommands

Most of the action in build steps consists of performing operations on the slave. This is accomplished via RemoteCommand and its subclasses. Each represents a single operation on the slave.

Most data is returned to a command via updates. These updates are described in detail in Updates.

RemoteCommand

class buildbot.process.buildstep.RemoteCommand(remote_command, args, collectStdout=False, ignore_updates=False)
Parameters:
  • remote_command (string) -- command to run on the slave
  • args (dictionary) -- arguments to pass to the command
  • collectStdout -- if True, collect the command's stdout
  • ignore_updates -- true to ignore remote updates

This class handles running commands, consisting of a command name and a dictionary of arguments. If true, ignore_updates will suppress any updates sent from the slave.

This class handles updates for stdout, stderr, and header by appending them to a stdio logfile, if one is in use. It handles updates for rc by recording the value in its rc attribute.

Most slave-side commands, even those which do not spawn a new process on the slave, generate logs and an rc, requiring this class or one of its subclasses. See Updates for the updates that each command may send.

active

True if the command is currently running

run(step, remote)
Parameters:
  • step -- the buildstep invoking this command
  • remote -- a reference to the remote SlaveBuilder instance
Returns:

Deferred

Run the command. Call this method to initiate the command; the returned Deferred will fire when the command is complete. The Deferred fires with the RemoteCommand instance as its value.

interrupt(why)
Parameters:why (Twisted Failure) -- reason for interrupt
Returns:Deferred

This method attempts to stop the running command early. The Deferred it returns will fire when the interrupt request is received by the slave; this may be a long time before the command itself completes, at which time the Deferred returned from run will fire.

The following methods are invoked from the slave. They should not be called directly.

remote_update(updates)
Parameters:updates -- new information from the slave

Handles updates from the slave on the running command. See Updates for the content of the updates. This class splits the updates out, and handles the ignore_updates option, then calls remoteUpdate to process the update.

remote_complete(failure=None)
Parameters:failure -- the failure that caused the step to complete, or None for success

Called by the slave to indicate that the command is complete. Normal completion (even with a nonzero rc) will finish with no failure; if failure is set, then the step should finish with status EXCEPTION.

These methods are hooks for subclasses to add functionality.

remoteUpdate(update)
Parameters:update -- the update to handle

Handle a single update. Subclasses must override this method.

remoteComplete(failure)
Parameters:failure -- the failure that caused the step to complete, or None for success
Returns:Deferred

Handle command completion, performing any necessary cleanup. Subclasses should override this method. If failure is not None, it should be returned to ensure proper processing.

logs

A dictionary of LogFile instances representing active logs. Do not modify this directly -- use useLog instead.

rc

Set to the return code of the command, after the command has completed. For compatibility with shell commands, 0 is taken to indicate success, while nonzero return codes indicate failure.

stdout

If the collectStdout constructor argument is true, then this attribute will contain all data from stdout, as a single string. This is helpful when running informational commands (e.g., svnversion), but is not appropriate for commands that will produce a large amount of output, as that output is held in memory.

To set up logging, use useLog or useLogDelayed before starting the command:

useLog(log, closeWhenFinished=False, logfileName=None)
Parameters:
  • log -- the LogFile instance to add to.
  • closeWhenFinished -- if true, call finish when the command is finished.
  • logfileName -- the name of the logfile, as given to the slave. This is stdio for standard streams.

Route log-related updates to the given logfile. Note that stdio is not included by default, and must be added explicitly. The logfileName must match the name given by the slave in any log updates.

useLogDelayed(log, logfileName, activateCallback, closeWhenFinished=False)
Parameters:
  • log -- the LogFile instance to add to.
  • logfileName -- the name of the logfile, as given to the slave. This is stdio for standard streams.
  • activateCallback -- callback for when the log is added; see below
  • closeWhenFinished -- if true, call finish when the command is finished.

Similar to useLog, but the logfile is only actually added when an update arrives for it. The callback, activateCallback, will be called with the RemoteCommand instance when the first update for the log is delivered.

With that finished, run the command using the inherited run method. During the run, you can inject data into the logfiles with any of these methods:

addStdout(data)
Parameters:data -- data to add to the logfile

Add stdout data to the stdio log.

addStderr(data)
Parameters:data -- data to add to the logfile

Add stderr data to the stdio log.

addHeader(data)
Parameters:data -- data to add to the logfile

Add header data to the stdio log.

addToLog(logname, data)
Parameters:
  • logname -- the logfile to receive the data
  • data -- data to add to the logfile

Add data to a logfile other than stdio.

class buildbot.process.buildstep.RemoteShellCommand(workdir, command, env=None, want_stdout=True, want_stderr=True, timeout=20*60, maxTime=None, logfiles={}, usePTY="slave-config", logEnviron=True, collectStdio=False)
Parameters:
  • workdir -- directory in which command should be executed, relative to the builder's basedir.
  • command (string or list) -- shell command to run
  • want_stdout -- If false, then no updates will be sent for stdout.
  • want_stderr -- If false, then no updates will be sent for stderr.
  • timeout -- Maximum time without output before the command is killed.
  • maxTime -- Maximum overall time from the start before the command is killed.
  • env -- A dictionary of environment variables to augment or replace the existing environment on the slave.
  • logfiles -- Additional logfiles to request from the slave.
  • usePTY -- True to use a PTY, false to not use a PTY; the default value uses the default configured on the slave.
  • logEnviron -- If false, do not log the environment on the slave.
  • collectStdout -- If True, collect the command's stdout.

Most of the constructor arguments are sent directly to the slave; see shell for the details of the formats. The collectStdout parameter is as described for the parent class.

This class is used by the ShellCommand step, and by steps that run multiple customized shell commands.




PKGk@˃b'buildbot-v0.8.6/developer/database.html Database — Buildbot 0.8.6 documentation

Database

As of version 0.8.0, Buildbot has used a database as part of its storage backend. This section describes the database connector classes, which allow other parts of Buildbot to access the database. It also describes how to modify the database schema and the connector classes themsleves.

Note

Buildbot is only half-migrated to a database backend. Build and builder status information is still stored on disk in pickle files. This is difficult to fix, although work is underway.

Database Overview

All access to the Buildbot database is mediated by database connector classes. These classes provide a functional, asynchronous interface to other parts of Buildbot, and encapsulate the database-specific details in a single location in the codebase.

The connector API, defined below, is a stable API in Buildbot, and can be called from any other component. Given a master master, the root of the database connectors is available at master.db, so, for example, the state connector's getState method is master.db.state.getState.

The connectors all use SQLAlchemy Core to achieve (almost) database-independent operation. Note that the SQLAlchemy ORM is not used in Buildbot. Database queries are carried out in threads, and report their results back to the main thread via Twisted Deferreds.

Schema

The database schema is maintained with SQLAlchemy-Migrate. This package handles the details of upgrading users between different schema versions.

The schema itself is considered an implementation detail, and may change significantly from version to version. Users should rely on the API (below), rather than performing queries against the database itself.

API

buildrequests

exception buildbot.db.buildrequests.AlreadyClaimedError

Raised when a build request is already claimed, usually by another master.

exception buildbot.db.buildrequests.NotClaimedError

Raised when a build request is not claimed by this master.

class buildbot.db.buildrequests.BuildRequestsConnectorComponent

This class handles the complex process of claiming and unclaiming build requests, based on a polling model: callers poll for unclaimed requests with getBuildRequests, then attempt to claim the requests with claimBuildRequests. The claim can fail if another master has claimed the request in the interim.

An instance of this class is available at master.db.buildrequests.

Build requests are indexed by an ID referred to as a brid. The contents of a request are represented as build request dictionaries (brdicts) with keys

  • brid
  • buildsetid
  • buildername
  • priority
  • claimed (boolean, true if the request is claimed)
  • claimed_at (datetime object, time this request was last claimed)
  • mine (boolean, true if the request is claimed by this master)
  • complete (boolean, true if the request is complete)
  • complete_at (datetime object, time this request was completed)
getBuildRequest(brid)
Parameters:brid -- build request id to look up
Returns:brdict or None, via Deferred

Get a single BuildRequest, in the format described above. This method returns None if there is no such buildrequest. Note that build requests are not cached, as the values in the database are not fixed.

getBuildRequests(buildername=None, complete=None, claimed=None, bsid=None)
Parameters:
  • buildername (string) -- limit results to buildrequests for this builder
  • complete -- if true, limit to completed buildrequests; if false, limit to incomplete buildrequests; if None, do not limit based on completion.
  • claimed -- see below
  • bsid -- see below
Returns:

list of brdicts, via Deferred

Get a list of build requests matching the given characteristics.

Pass all parameters as keyword parameters to allow future expansion.

The claimed parameter can be None (the default) to ignore the claimed status of requests; True to return only claimed builds, False to return only unclaimed builds, or "mine" to return only builds claimed by this master instance. A request is considered unclaimed if its claimed_at column is either NULL or 0, and it is not complete. If bsid is specified, then only build requests for that buildset will be returned.

A build is considered completed if its complete column is 1; the complete_at column is not consulted.

claimBuildRequests(brids[, claimed_at=XX])
Parameters:
  • brids (list) -- ids of buildrequests to claim
  • claimed_at (datetime) -- time at which the builds are claimed
Returns:

Deferred

Raises :

AlreadyClaimedError

Try to "claim" the indicated build requests for this buildmaster instance. The resulting deferred will fire normally on success, or fail with AlreadyClaimedError if any of the build requests are already claimed by another master instance. In this case, none of the claims will take effect.

If claimed_at is not given, then the current time will be used.

As of 0.8.5, this method can no longer be used to re-claim build requests. All given ID's must be unclaimed. Use reclaimBuildRequests to reclaim.

Note

On database backends that do not enforce referential integrity (e.g., SQLite), this method will not prevent claims for nonexistent build requests. On database backends that do not support transactions (MySQL), this method will not properly roll back any partial claims made before an AlreadyClaimedError is generated.

reclaimBuildRequests(brids)
Parameters:brids (list) -- ids of buildrequests to reclaim
Returns:Deferred
Raises :AlreadyClaimedError

Re-claim the given build requests, updating the timestamp, but checking that the requsts are owned by this master. The resulting deferred will fire normally on success, or fail with AlreadyClaimedError if any of the build requests are already claimed by another master instance, or don't exist. In this case, none of the reclaims will take effect.

unclaimBuildRequests(brids)
Parameters:brids (list) -- ids of buildrequests to unclaim
Returns:Deferred

Release this master's claim on all of the given build requests. This will not unclaim requests that are claimed by another master, but will not fail in this case. The method does not check whether a request is completed.

completeBuildRequests(brids, results[, complete_at=XX])
Parameters:
  • brids (integer) -- build request IDs to complete
  • results (integer) -- integer result code
  • complete_at (datetime) -- time at which the buildset was completed
Returns:

Deferred

Raises :

NotClaimedError

Complete a set of build requests, all of which are owned by this master instance. This will fail with NotClaimedError if the build request is already completed or does not exist. If complete_at is not given, the current time will be used.

unclaimExpiredRequests(old)
Parameters:old (int) -- number of seconds after which a claim is considered old
Returns:Deferred

Find any incomplete claimed builds which are older than old seconds, and clear their claim information.

This is intended to catch builds that were claimed by a master which has since disappeared. As a side effect, it will log a message if any requests are unclaimed.

builds

class buildbot.db.builds.BuildsConnectorComponent

This class handles a little bit of information about builds.

Note

The interface for this class will change - the builds table duplicates some information available in pickles, without including all such information. Do not depend on this API.

An instance of this class is available at master.db.builds.

Builds are indexed by bid and their contents represented as bdicts (build dictionaries), with keys

  • bid (the build ID, globally unique)
  • number (the build number, unique only within this master and builder)
  • brid (the ID of the build request that caused this build)
  • start_time
  • finish_time (datetime objects, or None).
getBuild(bid)
Parameters:bid (integer) -- build id
Returns:Build dictionary as above or None, via Deferred

Get a single build, in the format described above. Returns None if there is no such build.

getBuildsForRequest(brid)
Parameters:brids -- list of build request ids
Returns:List of build dictionaries as above, via Deferred

Get a list of builds for the given build request. The resulting build dictionaries are in exactly the same format as for getBuild.

addBuild(brid, number)
Parameters:
  • brid -- build request id
  • number -- build number
Returns:

build ID via Deferred

Add a new build to the db, recorded as having started at the current time.

finishBuilds(bids)
Parameters:bids (list) -- build ids
Returns:Deferred

Mark the given builds as finished, with finish_time set to the current time. This is done unconditionally, even if the builds are already finished.

buildsets

class buildbot.db.buildsets.BuildsetsConnectorComponent

This class handles getting buildsets into and out of the database. Buildsets combine multiple build requests that were triggered together.

An instance of this class is available at master.db.buildsets.

Buildsets are indexed by bsid and their contents represented as bsdicts (buildset dictionaries), with keys

  • bsid
  • external_idstring (arbitrary string for mapping builds externally)
  • reason (string; reason these builds were triggered)
  • sourcestampsetid (source stamp set for this buildset)
  • submitted_at (datetime object; time this buildset was created)
  • complete (boolean; true if all of the builds for this buildset are complete)
  • complete_at (datetime object; time this buildset was completed)
  • results (aggregate result of this buildset; see Build Result Codes)
addBuildset(sourcestampsetid, reason, properties, builderNames, external_idstring=None)
Parameters:
  • sourcestampsetid (integer) -- id of the SourceStampSet for this buildset
  • reason (short unicode string) -- reason for this buildset
  • properties (dictionary, where values are tuples of (value, source)) -- properties for this buildset
  • builderNames (list of strings) -- builders specified by this buildset
  • external_idstring (unicode string) -- external key to identify this buildset; defaults to None
Returns:

buildset ID and buildrequest IDs, via a Deferred

Add a new Buildset to the database, along with BuildRequests for each named builder, returning the resulting bsid via a Deferred. Arguments should be specified by keyword.

The return value is a tuple (bsid, brids) where bsid is the inserted buildset ID and brids is a dictionary mapping buildernames to build request IDs.

completeBuildset(bsid, results[, complete_at=XX])
Parameters:
  • bsid (integer) -- buildset ID to complete
  • results (integer) -- integer result code
  • complete_at (datetime) -- time the buildset was completed
Returns:

Deferred

Raises :

KeyError if the buildset does not exist or is already complete

Complete a buildset, marking it with the given results and setting its completed_at to the current time, if the complete_at argument is omitted.

getBuildset(bsid)
Parameters:bsid -- buildset ID
Returns:bsdict, or None, via Deferred

Get a bsdict representing the given buildset, or None if no such buildset exists.

Note that buildsets are not cached, as the values in the database are not fixed.

getBuildsets(complete=None)
Parameters:complete -- if true, return only complete buildsets; if false, return only incomplete buildsets; if None or omitted, return all buildsets
Returns:list of bsdicts, via Deferred

Get a list of bsdicts matching the given criteria.

getBuildsetProperties(buildsetid)
Parameters:buildsetid -- buildset ID
Returns:dictionary mapping property name to value, source, via Deferred

Return the properties for a buildset, in the same format they were given to addBuildset.

Note that this method does not distinguish a nonexistent buildset from a buildset with no properties, and returns {} in either case.

changes

class buildbot.db.changes.ChangesConnectorComponent

This class handles changes in the buildbot database, including pulling information from the changes sub-tables.

An instance of this class is available at master.db.changes.

Changes are indexed by changeid, and are represented by a chdict, which has the following keys:

  • changeid (the ID of this change)
  • author (unicode; the author of the change)
  • files (list of unicode; source-code filenames changed)
  • comments (unicode; user comments)
  • is_dir (deprecated)
  • links (list of unicode; links for this change, e.g., to web views, review)
  • revision (unicode string; revision for this change, or None if unknown)
  • when_timestamp (datetime instance; time of the change)
  • branch (unicode string; branch on which the change took place, or None for the "default branch", whatever that might mean)
  • category (unicode string; user-defined category of this change, or None)
  • revlink (unicode string; link to a web view of this change)
  • properties (user-specified properties for this change, represented as a dictionary mapping keys to (value, source))
  • repository (unicode string; repository where this change occurred)
  • project (unicode string; user-defined project to which this change corresponds)
addChange(author=None, files=None, comments=None, is_dir=0, links=None, revision=None, when_timestamp=None, branch=None, category=None, revlink='', properties={}, repository='', project='', uid=None)
Parameters:
  • author (unicode string) -- the author of this change
  • files -- a list of filenames that were changed
  • comments -- user comments on the change
  • is_dir -- deprecated
  • links (list of unicode strings) -- a list of links related to this change, e.g., to web viewers or review pages
  • revision (unicode string) -- the revision identifier for this change
  • when_timestamp (datetime instance or None) -- when this change occurred, or the current time if None
  • branch (unicode string) -- the branch on which this change took place
  • category (unicode string) -- category for this change (arbitrary use by Buildbot users)
  • revlink (unicode string) -- link to a web view of this revision
  • properties (dictionary) -- properties to set on this change, where values are tuples of (value, source). At the moment, the source must be 'Change', although this may be relaxed in later versions.
  • repository (unicode string) -- the repository in which this change took place
  • project (unicode string) -- the project this change is a part of
  • uid (integer) -- uid generated for the change author
Returns:

new change's ID via Deferred

Add a Change with the given attributes to the database, returning the changeid via a Deferred. All arguments should be given as keyword arguments.

The project and repository arguments must be strings; None is not allowed.

getChange(changeid, no_cache=False)
Parameters:
  • changeid -- the id of the change instance to fetch
  • no_cache (boolean) -- bypass cache and always fetch from database
Returns:

chdict via Deferred

Get a change dictionary for the given changeid, or None if no such change exists.

getChangeUids(changeid)
Parameters:changeid -- the id of the change instance to fetch
Returns:list of uids via Deferred

Get the userids associated with the given changeid.

getRecentChanges(count)

Get a list of the count most recent changes, represented as dictionaies; returns fewer if that many do not exist.

Note

For this function, "recent" is determined by the order of the changeids, not by when_timestamp. This is most apparent in DVCS's, where the timestamp of a change may be significantly earlier than the time at which it is merged into a repository monitored by Buildbot.

@param count: maximum number of instances to return

@returns: list of dictionaries via Deferred, ordered by changeid

getLatestChangeid()
Returns:changeid via Deferred

Get the most-recently-assigned changeid, or None if there are no changes at all.

schedulers

class buildbot.db.schedulers.SchedulersConnectorComponent

This class manages the state of the Buildbot schedulers. This state includes classifications of as-yet un-built changes.

An instance of this class is available at master.db.changes.

Schedulers are identified by a their objectid - see StateConnectorComponent.

classifyChanges(objectid, classifications)
Parameters:
  • objectid -- scheduler classifying the changes
  • classifications (dictionary) -- mapping of changeid to boolean, where the boolean is true if the change is important, and false if it is unimportant
Returns:

Deferred

Record the given classifications. This method allows a scheduler to record which changes were important and which were not immediately, even if the build based on those changes will not occur for some time (e.g., a tree stable timer). Schedulers should be careful to flush classifications once they are no longer needed, using flushChangeClassifications.

getChangeClassifications(objectid[, branch])
Parameters:
  • objectid (integer) -- scheduler to look up changes for
  • branch (string or None (for default branch)) -- (optional) limit to changes with this branch
Returns:

dictionary via Deferred

Return the classifications made by this scheduler, in the form of a dictionary mapping changeid to a boolean, just as supplied to classifyChanges.

If branch is specified, then only changes on that branch will be given. Note that specifying branch=None requests changes for the default branch, and is not the same as omitting the branch argument altogether.

sourcestamps

class buildbot.db.sourcestamps.SourceStampsConnectorComponent

This class manages source stamps, as stored in the database. Source stamps are linked to changes. Source stamps with the same sourcestampsetid belong to the same sourcestampset. Buildsets link to one or more source stamps via a sourcestampset id.

An instance of this class is available at master.db.sourcestamps.

Source stamps are identified by a ssid, and represented internally as a ssdict, with keys

  • ssid
  • sourcestampsetid (set to which the sourcestamp belongs)
  • branch (branch, or None for default branch)
  • revision (revision, or None to indicate the latest revision, in which case this is a relative source stamp)
  • patch_body (body of the patch, or None)
  • patch_level (directory stripping level of the patch, or None)
  • patch_subdir (subdirectory in which to apply the patch, or None)
  • patch_author (author of the patch, or None)
  • patch_comment (comment for the patch, or None)
  • repository (repository containing the source; never None)
  • project (project this source is for; never None)
  • changeids (list of changes, by id, that generated this sourcestamp)

Note

Presently, no attempt is made to ensure uniqueness of source stamps, so multiple ssids may correspond to the same source stamp. This may be fixed in a future version.

addSourceStamp(branch, revision, repository, project, patch_body=None, patch_level=0, patch_author="", patch_comment="", patch_subdir=None, changeids=[])
Parameters:
  • branch (unicode string) --
  • revision (unicode string) --
  • repository (unicode string) --
  • project (string) --
  • patch_body (string) -- (optional)
  • patch_level (int) -- (optional)
  • patch_author (unicode string) -- (optional)
  • patch_comment (unicode string) -- (optional)
  • patch_subdir (unicode string) -- (optional)
  • changeids (list of ints) --
Returns:

ssid, via Deferred

Create a new SourceStamp instance with the given attributes, and return its ssid. The arguments all have the same meaning as in an ssdict. Pass them as keyword arguments to allow for future expansion.

getSourceStamp(ssid)
Parameters:
  • ssid -- sourcestamp to get
  • no_cache (boolean) -- bypass cache and always fetch from database
Returns:

ssdict, or None, via Deferred

Get an ssdict representing the given source stamp, or None if no such source stamp exists.

getSourceStamps(sourcestampsetid)
Parameters:sourcestampsetid (integer) -- identification of the set, all returned sourcestamps belong to this set
Returns:sslist of ssdict

Get a set of sourcestamps identified by a set id. The set is returned as a sslist that contains one or more sourcestamps (represented as ssdicts). The list is empty if the set does not exist or no sourcestamps belong to the set.

sourcestampset

class buildbot.db.sourcestampsets.SourceStampSetsConnectorComponent

This class is responsible for adding new sourcestampsets to the database. Build sets link to sourcestamp sets, via their (set) id's.

An instance of this class is available at master.db.sourcestampsets.

Sourcestamp sets are identified by a sourcestampsetid.

addSourceStampSet()
Returns:new sourcestampsetid as integer, via Deferred

Add a new (empty) sourcestampset to the database. The unique identification of the set is returned as integer. The new id can be used to add new sourcestamps to the database and as reference in a buildset.

state

class buildbot.db.state.StateConnectorComponent

This class handles maintaining arbitrary key/value state for Buildbot objects. Each object can store arbitrary key/value pairs, where the values are any JSON-encodable value. Each pair can be set and retrieved atomically.

Objects are identified by their (user-visible) name and their class. This allows, for example, a nightly_smoketest object of class NightlyScheduler to maintain its state even if it moves between masters, but avoids cross-contaminating state between different classes of objects with the same name.

Note that "class" is not interpreted literally, and can be any string that will uniquely identify the class for the object; if classes are renamed, they can continue to use the old names.

An instance of this class is available at master.db.state.

Objects are identified by objectid.

getObjectId(name, class_name)
Parameters:
  • name -- name of the object
  • class_name -- object class name
Returns:

the objectid, via a Deferred.

Get the object ID for this combination of a name and a class. This will add a row to the 'objects' table if none exists already.

getState(objectid, name[, default])
Parameters:
  • objectid -- objectid on which the state should be checked
  • name -- name of the value to retrieve
  • default -- (optional) value to return if C{name} is not present
Returns:

state value via a Deferred

Raises KeyError:
 

if name is not present and no default is given

Raises :

TypeError if JSON parsing fails

Get the state value for key name for the object with id objectid.

setState(objectid, name, value)
Parameters:
  • objectid -- the objectid for which the state should be changed
  • name -- the name of the value to change
  • value (JSON-able value) -- the value to set
  • returns -- Deferred
Raises :

TypeError if JSONification fails

Set the state value for name for the object with id objectid, overwriting any existing value.

users

class buildbot.db.users.UsersConnectorComponent

This class handles Buildbot's notion of users. Buildbot tracks the usual information about users -- username and password, plus a display name.

The more complicated task is to recognize each user across multiple interfaces with Buildbot. For example, a user may be identified as 'djmitche' in Subversion, 'dustin@v.igoro.us' in Git, and 'dustin' on IRC. To support this functionality, each user as a set of attributes, keyed by type. The findUserByAttr method uses these attributes to match users, adding a new user if no matching user is found.

Users are identified canonically by uid, and are represented by usdicts (user dictionaries) with keys

  • uid
  • identifier (display name for the user)
  • bb_username (buildbot login username)
  • bb_password (hashed login password)

All attributes are also included in the dictionary, keyed by type. Types colliding with the keys above are ignored.

findUserByAttr(identifier, attr_type, attr_data)
Parameters:
  • identifier -- identifier to use for a new user
  • attr_type -- attribute type to search for and/or add
  • attr_data -- attribute data to add
Returns:

userid via Deferred

Get an existing user, or add a new one, based on the given attribute.

This method is intended for use by other components of Buildbot to search for a user with the given attributes.

Note that identifier is not used in the search for an existing user. It is only used when creating a new user. The identifier should be based deterministically on the attributes supplied, in some fashion that will seem natural to users.

For future compatibility, always use keyword parameters to call this method.

getUser(uid)
Parameters:
  • uid -- user id to look up
  • no_cache (boolean) -- bypass cache and always fetch from database
Returns:

usdict via Deferred

Get a usdict for the given user, or None if no matching user is found.

getUserByUsername(username)
Parameters:username (string) -- username portion of user credentials
Returns:usdict or None via deferred

Looks up the user with the bb_username, returning the usdict or None if no matching user is found.

getUsers()
Returns:list of partial usdicts via Deferred

Get the entire list of users. User attributes are not included, so the results are not full userdicts.

updateUser(uid=None, identifier=None, bb_username=None, bb_password=None, attr_type=None, attr_data=None)
Parameters:
  • uid (int) -- the user to change
  • identifier (string) -- (optional) new identifier for this user
  • bb_username (string) -- (optional) new buildbot username
  • bb_password (string) -- (optional) new hashed buildbot password
  • attr_type (string) -- (optional) attribute type to update
  • attr_data (string) -- (optional) value for attr_type
Returns:

Deferred

Update information about the given user. Only the specified attributes are updated. If no user with the given uid exists, the method will return silently.

Note that bb_password must be given if bb_username appears; similarly, attr_type requires attr_data.

removeUser(uid)
Parameters:uid (int) -- the user to remove
Returns:Deferred

Remove the user with the given uid from the database. This will remove the user from any associated tables as well.

identifierToUid(identifier)
Parameters:identifier (string) -- identifier to search for
Returns:uid or None, via Deferred

Fetch a uid for the given identifier, if one exists.

Writing Database Connector Methods

The information above is intended for developers working on the rest of Buildbot, and treating the database layer as an abstraction. The remainder of this section describes the internals of the database implementation, and is intended for developers modifying the schema or adding new methods to the database layer.

Warning

It's difficult to change the database schema significantly after it has been released, and very disruptive to users to change the database API. Consider very carefully the future-proofing of any changes here!

The DB Connector and Components

class buildbot.db.connector.DBConnector

The root of the database connectors, master.db, is a DBConnector instance. Its main purpose is to hold reference to each of the connector components, but it also handles timed cleanup tasks.

If you are adding a new connector component, import its module and create an instance of it in this class's constructor.

class buildbot.db.base.DBConnectorComponent

This is the base class for connector components.

There should be no need to override the constructor defined by this base class.

db

A reference to the DBConnector, so that connector components can use e.g., self.db.pool or self.db.model. In the unusual case that a connector component needs access to the master, the easiest path is self.db.master.

Direct Database Access

The connectors all use SQLAlchemy Core as a wrapper around database client drivers. Unfortunately, SQLAlchemy is a synchronous library, so some extra work is required to use it in an asynchronous context like Buildbot. This is accomplished by deferring all database operations to threads, and returning a Deferred. The Pool class takes care of the details.

A connector method should look like this:

def myMethod(self, arg1, arg2):
    def thd(conn):
        q = ... # construct a query
        for row in conn.execute(q):
            ... # do something with the results
        return ... # return an interesting value
    return self.db.pool.do(thd)

Picking that apart, the body of the method defines a function named thd taking one argument, a Connection object. It then calls self.db.pool.do, passing the thd function. This function is called in a thread, and can make blocking calls to SQLAlchemy as desired. The do method will return a Deferred that will fire with the return value of thd, or with a failure representing any exceptions raised by thd.

The return value of thd must not be an SQLAlchemy object - in particular, any ResultProxy objects must be parsed into lists or other data structures before they are returned.

Warning

As the name thd indicates, the function runs in a thread. It should not interact with any other part of Buildbot, nor with any of the Twisted components that expect to be accessed from the main thread -- the reactor, Deferreds, etc.

Queries can be constructed using any of the SQLAlchemy core methods, using tables from Model, and executed with the connection object, conn.

class buildbot.db.pool.DBThreadPool
do(callable, ...)
Returns:Deferred

Call callable in a thread, with a Connection object as first argument. Returns a deferred that will fire with the results of the callable, or with a failure representing any exception raised during its execution.

Any additional positional or keyword arguments are passed to callable.

do_with_engine(callable, ...)
Returns:Deferred

Similar to do, call callable in a thread, but with an Engine object as first argument.

This method is only used for schema manipulation, and should not be used in a running master.

Database Schema

Database connector methods access the database through SQLAlchemy, which requires access to Python objects represenging the database tables. That is handled through the model.

class buildbot.db.model.Model

This class contains the canonical description of the buildbot schema, It is presented in the form of SQLAlchemy Table instances, as class variables. At runtime, the model is available at master.db.model, so for example the buildrequests table can be referred to as master.db.model.buildrequests, and columns are available in its c attribute.

The source file, master/buildbot/db/model.py, contains comments describing each table; that information is not replicated in this documentation.

Note that the model is not used for new installations or upgrades of the Buildbot database. See Modifying the Database Schema for more information.

metadata

The model object also has a metadata attribute containing a MetaData instance. Connector methods should not need to access this object. The metadata is not bound to an engine.

The Model class also defines some migration-related methods:

is_current()
Returns:boolean via Deferred

Returns true if the current database's version is current.

upgrade()
Returns:Deferred

Upgrades the database to the most recent schema version.

Caching

Connector component methods that get an object based on an ID are good candidates for caching. The cached decorator makes this automatic:

buildbot.db.base.cached(cachename)
Parameters:cache_name -- name of the cache to use

A decorator for "getter" functions that fetch an object from the database based on a single key. The wrapped method will only be called if the named cache does not contain the key.

The wrapped function must take one argument (the key); the wrapper will take a key plus an optional no_cache argument which, if true, will cause it to invoke the underlying method even if the key is in the cache.

The resulting method will have a cache attribute which can be used to access the underlying cache.

In most cases, getter methods return a well-defined dictionary. Unfortunately, Python does not handle weak references to bare dictionaries, so components must instantiate a subclass of dict. The whole assembly looks something like this:

class ThDict(dict):
    pass

class ThingConnectorComponent(base.DBConnectorComponent):

    @base.cached('thdicts')
    def getThing(self, thid):
        def thd(conn):
            ...
            thdict = ThDict(thid=thid, attr=row.attr, ...)
            return thdict
        return self.db.pool.do(thd)

Tests

It goes without saying that any new connector methods must be fully tested!

You will also want to add an in-memory implementation of the methods to the fake classes in master/budilbot/test/fake/fakedb.py. Non-DB Buildbot code is tested using these fake implementations in order to isolate that code from the database code.

Modifying the Database Schema

Changes to the schema are accomplished through migration scripts, supported by SQLAlchemy-Migrate. In fact, even new databases are created with the migration scripts -- a new database is a migrated version of an empty database.

The schema is tracked by a version number, stored in the migrate_version table. This number is incremented for each change to the schema, and used to determine whether the database must be upgraded. The master will refuse to run with an out-of-date database.

To make a change to the schema, first consider how to handle any existing data. When adding new columns, this may not be necessary, but table refactorings can be complex and require caution so as not to lose information.

Create a new script in master/buildbot/db/migrate/versions, following the numbering scheme already present. The script should have an update method, which takes an engine as a parameter, and ugprades the database, both changing the schema and performing any required data migrations. The engine passed to this parameter is "enhanced" by SQLAlchemy-Migrate, with methods to handle adding, altering, and dropping columns. See the SQLAlchemy-Migrate documentation for details.

Next, modify master/buildbot/db/model.py to represent the updated schema. Buildbot's automated tests perform a rudimentary comparison of an upgraded database with the model, but it is important to check the details - key length, nullability, and so on can sometimes be missed by the checks. If the schema and the upgrade scripts get out of sync, bizarre behavior can result.

Also, adjust the fake database table definitions in master/buildbot/test/fake/fakedb.py according to your changes.

Your upgrade script should have unit tests. The classes in master/buildbot/test/util/migration.py make this straightforward. Unit test scripts should be named e.g., test_db_migrate_versions_015_remove_bad_master_objectid.py.

The master/buildbot/test/integration/test_upgrade.py also tests upgrades, and will confirm that the resulting database matches the model. If you encounter implicit indexes on MySQL, that do not appear on SQLite or Postgres, add them to implied_indexes in master/buidlbot/db/model.py.

Database Compatibility Notes

Or: "If you thought any database worked right, think again"

Because Buildbot works over a wide range of databases, it is generally limited to database features present in all supported backends. This section highlights a few things to watch out for.

In general, Buildbot should be functional on all supported database backends. If use of a backend adds minor usage restrictions, or cannot implement some kinds of error checking, that is acceptable if the restrictions are well-documented in the manual.

The metabuildbot tests Buildbot against all supported databases, so most compatibility errors will be caught before a release.

Index Length in MySQL

MySQL only supports about 330-character indexes. The actual index length is 1000 bytes, but MySQL uses 3-byte encoding for UTF8 strings. This is a longstanding bug in MySQL - see "Specified key was too long; max key length is 1000 bytes" with utf8. While this makes sense for indexes used for record lookup, it limits the ability to use unique indexes to prevent duplicate rows.

InnoDB has even more severe restrictions on key lengths, which is why the MySQL implementation requires a MyISAM storage engine.

Transactions in MySQL

Unfortunately, use of the MyISAM storage engine precludes real transactions in MySQL. transaction.commit() and transaction.rollback() are essentially no-ops: modifications to data in the database are visible to other users immediately, and are not reverted in a rollback.

Referential Integrity in SQLite and MySQL

Neither MySQL nor SQLite enforce referential integrity based on foreign keys. Postgres does enforce, however. If possible, test your changes on Postgres before committing, to check that tables are added and removed in the proper order.

Subqueries in MySQL

MySQL's query planner is easily confused by subqueries. For example, a DELETE query specifying id's that are IN a subquery will not work. The workaround is to run the subquery directly, and then execute a DELETE query for each returned id.

If this weakness has a significant peformance impact, it would be acceptable to conditionalize use of the subquery on the database dialect.




PKMk@:>>>&buildbot-v0.8.6/_static/searchtools.js/* * searchtools.js_t * ~~~~~~~~~~~~~~~~ * * Sphinx JavaScript utilties for the full-text search. * * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ /** * helper function to return a node containing the * search summary for a given text. keywords is a list * of stemmed words, hlwords is the list of normal, unstemmed * words. the first one is used to find the occurance, the * latter for highlighting it. */ jQuery.makeSearchSummary = function(text, keywords, hlwords) { var textLower = text.toLowerCase(); var start = 0; $.each(keywords, function() { var i = textLower.indexOf(this.toLowerCase()); if (i > -1) start = i; }); start = Math.max(start - 120, 0); var excerpt = ((start > 0) ? '...' : '') + $.trim(text.substr(start, 240)) + ((start + 240 - text.length) ? '...' : ''); var rv = $('
').text(excerpt); $.each(hlwords, function() { rv = rv.highlightText(this, 'highlighted'); }); return rv; } /** * Porter Stemmer */ var Stemmer = function() { var step2list = { ational: 'ate', tional: 'tion', enci: 'ence', anci: 'ance', izer: 'ize', bli: 'ble', alli: 'al', entli: 'ent', eli: 'e', ousli: 'ous', ization: 'ize', ation: 'ate', ator: 'ate', alism: 'al', iveness: 'ive', fulness: 'ful', ousness: 'ous', aliti: 'al', iviti: 'ive', biliti: 'ble', logi: 'log' }; var step3list = { icate: 'ic', ative: '', alize: 'al', iciti: 'ic', ical: 'ic', ful: '', ness: '' }; var c = "[^aeiou]"; // consonant var v = "[aeiouy]"; // vowel var C = c + "[^aeiouy]*"; // consonant sequence var V = v + "[aeiou]*"; // vowel sequence var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0 var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1 var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1 var s_v = "^(" + C + ")?" + v; // vowel in stem this.stemWord = function (w) { var stem; var suffix; var firstch; var origword = w; if (w.length < 3) return w; var re; var re2; var re3; var re4; firstch = w.substr(0,1); if (firstch == "y") w = firstch.toUpperCase() + w.substr(1); // Step 1a re = /^(.+?)(ss|i)es$/; re2 = /^(.+?)([^s])s$/; if (re.test(w)) w = w.replace(re,"$1$2"); else if (re2.test(w)) w = w.replace(re2,"$1$2"); // Step 1b re = /^(.+?)eed$/; re2 = /^(.+?)(ed|ing)$/; if (re.test(w)) { var fp = re.exec(w); re = new RegExp(mgr0); if (re.test(fp[1])) { re = /.$/; w = w.replace(re,""); } } else if (re2.test(w)) { var fp = re2.exec(w); stem = fp[1]; re2 = new RegExp(s_v); if (re2.test(stem)) { w = stem; re2 = /(at|bl|iz)$/; re3 = new RegExp("([^aeiouylsz])\\1$"); re4 = new RegExp("^" + C + v + "[^aeiouwxy]$"); if (re2.test(w)) w = w + "e"; else if (re3.test(w)) { re = /.$/; w = w.replace(re,""); } else if (re4.test(w)) w = w + "e"; } } // Step 1c re = /^(.+?)y$/; if (re.test(w)) { var fp = re.exec(w); stem = fp[1]; re = new RegExp(s_v); if (re.test(stem)) w = stem + "i"; } // Step 2 re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/; if (re.test(w)) { var fp = re.exec(w); stem = fp[1]; suffix = fp[2]; re = new RegExp(mgr0); if (re.test(stem)) w = stem + step2list[suffix]; } // Step 3 re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/; if (re.test(w)) { var fp = re.exec(w); stem = fp[1]; suffix = fp[2]; re = new RegExp(mgr0); if (re.test(stem)) w = stem + step3list[suffix]; } // Step 4 re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/; re2 = /^(.+?)(s|t)(ion)$/; if (re.test(w)) { var fp = re.exec(w); stem = fp[1]; re = new RegExp(mgr1); if (re.test(stem)) w = stem; } else if (re2.test(w)) { var fp = re2.exec(w); stem = fp[1] + fp[2]; re2 = new RegExp(mgr1); if (re2.test(stem)) w = stem; } // Step 5 re = /^(.+?)e$/; if (re.test(w)) { var fp = re.exec(w); stem = fp[1]; re = new RegExp(mgr1); re2 = new RegExp(meq1); re3 = new RegExp("^" + C + v + "[^aeiouwxy]$"); if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) w = stem; } re = /ll$/; re2 = new RegExp(mgr1); if (re.test(w) && re2.test(w)) { re = /.$/; w = w.replace(re,""); } // and turn initial Y back to y if (firstch == "y") w = firstch.toLowerCase() + w.substr(1); return w; } } /** * Search Module */ var Search = { _index : null, _queued_query : null, _pulse_status : -1, init : function() { var params = $.getQueryParameters(); if (params.q) { var query = params.q[0]; $('input[name="q"]')[0].value = query; this.performSearch(query); } }, loadIndex : function(url) { $.ajax({type: "GET", url: url, data: null, success: null, dataType: "script", cache: true}); }, setIndex : function(index) { var q; this._index = index; if ((q = this._queued_query) !== null) { this._queued_query = null; Search.query(q); } }, hasIndex : function() { return this._index !== null; }, deferQuery : function(query) { this._queued_query = query; }, stopPulse : function() { this._pulse_status = 0; }, startPulse : function() { if (this._pulse_status >= 0) return; function pulse() { Search._pulse_status = (Search._pulse_status + 1) % 4; var dotString = ''; for (var i = 0; i < Search._pulse_status; i++) dotString += '.'; Search.dots.text(dotString); if (Search._pulse_status > -1) window.setTimeout(pulse, 500); }; pulse(); }, /** * perform a search for something */ performSearch : function(query) { // create the required interface elements this.out = $('#search-results'); this.title = $('

' + _('Searching') + '

').appendTo(this.out); this.dots = $('').appendTo(this.title); this.status = $('

').appendTo(this.out); this.output = $('