Author Archive

A surprise for Liz

// July 7th, 2013 // 1 Comment » // art, Rambling

Several years ago I illustrated a short piece written by my pal Liz Argall. It was a very simple B&W thing with very few words. I think it turned out OK. Well, today I ran across the files and decided to try out some digital brushes on my new tablet. So, here’s a blast from the past and a little surprise for Liz.

(click to enlarge)

shoulder2shoulder1

So… this happened. For better or worse.

// June 28th, 2013 // Comments Off on So… this happened. For better or worse. // art, Rambling, Uncategorized, weird

Because of this

this now exists. I’m not saying it’s right… just that it exists.

Happy Robonukkah!

// December 24th, 2011 // Comments Off on Happy Robonukkah! // Represent, Uncategorized

TWE and Maddie wish you a very happy Robonukkah.

Walking Eye, Hank! They’re all the same.

// November 27th, 2011 // Comments Off on Walking Eye, Hank! They’re all the same. // tech

I’ve been working on a robot for a while. Well, a specific robot. I’ve tinkered with some others prior to and along the way. But for this particular bot, I started fiddling with servos and controllers for an arm last winter and since then I’ve bought a bunch of micro-controllers and itsy bitsy computers to fiddle with too. The results of all that fiddling have been sort of percolating in my head and has recently, in long bursts of work, been spat out into this, the Tiny Walking Eye. I never intended to do a pre-design, per se, and I’ve let all the ideas sort of clump together so that I knew roughly what I wanted to build, just not exactly how I’d build it. I built an eye. Then an arm. Then… I built all that you see below in a couple of long, late nights. Given that I ‘made it up as I went’, I’m fairly pleased with the aesthetics of, so far, it as well. Nobody wants an ugly robot.

TWE robot as of Now. 27th 2011

OK, it’s not actually tiny, it’s about 22 inches high at the top of the video camera. And it doesn’t walk, it has 4 drive wheels in a differential (‘tank’) steering configuration. And the eye is a camera. But my friend Christopher (who I also do a podcast with) and I were making Venture Brothers jokes and I got fixated on “Giant Walking Eye” and so TWE was christened.

The chassis is a Dagu 4WD Wild Thumper bot chassis (ordered from Pololu) which I’ve extended a few inches. In hindsight, the 6WD chassis would have been better. Maybe for TWE2. The shell is foam PVC sheeting which is easy to cut for someone who lives in an apartment and doesn’t want to annoy her neighbors (more than she does already). Also, it’s very light and I need to keep everything that sits on the chassis under about 10 pounds. The chassis undercarriage has a power distro box with motor controllers, an emergency cut-off switch and two 7.2v batteries in parallel for the motors.

There’s a Mars Rover-esque platform that sits on a revolving turret on the chassis. On top of that is the brain box which also houses the front-facing arm. The arm is also made from .157 PVC and is powered by tandem servos (one reversed so that they lift in concert) for shoulder and elbow. The two large-scale shoulder servos are Hi-Tecs and the two in the elbow are some crazy Chinese servos I found on Amazon which have huge amounts of torque and metal gearing. The elbow will do most of the work by itself and the should is only needed when the arm needs to be extended. The wrist ends with a gripper which I bought from Parallax or RobotShop or somewhere. I’ll be using Phidgets or Pololu controllers for the servos (depending on which ‘network’ I end up using – more below).

The white PVC and angled cuts give it a sort of 70s sensibility and I’m OK with that. Plus, you should note that there’s nothing on the side yet and there will be. There’s only one ultrasound range finder right now, but I’ll be putting 5 more on (one on each angled corner and on in the rear) as well as some other goodies on the side. And in the rear will be a little boot to put the secondary batteries in (two 6v totaling ~ 9Ah for the processors and controllers).

Up top there’s a camera which pans and tilts and immediately behind that is a 7″ LCD display. The display will be hooked into the core micro-controller (probably a Parallax Propellor board) which may or may not also be hooked to an ultra-small PC (a Gumstix Fire or a Genesi Efica – both of which I’m playing with). This all depends on how I want the robot to be controlled. Without the PC, I’d be making it completely autonomous (maybe an Xbee for remote control or logging). With the PC, I’d be able to store and execute more complex code and also tie back via Wi-Fi to another computer where I could assume manual control if desired. I haven’t decided. Maybe I’ll try to make it do both. It all comes down to software and batteries.

Additionally, I need to decide how this will all be connected. Depending on which controllers and computers end up in side, it will either be primarily USB, Ethernet or a mixture of I²C and USB. I’ve mocked up both and there are benefits to each. We’ll see. USB is winning at the moment given that all the controllers already inside have USB ports and everything else could be wired to the micro-controller (which also has USB).

Then, I need to figure out how it recharges itself. That’ll involve building a charging circuit for the various battery systems and a station it can find on its own (probably using RFID triangulation).

ANYway… that’s the state of TWE. In case you were wondering. Which you totally were. Hope you enjoyed. Cuz… everybody needs a robot. For… ‘reconnaissance applications’.

UPDATE FROM THE FUTURE!
Sorry I didn’t update this more as TWE progressed. I moved to a real shop at the Artisan’s Asylum and worked on TWE in fits and bursts. I put in control systems for the drivetrain, arm and sensors. Played around with ROS and OpenQbo and whatnot. All in all, TWE was a fair success (there were things I could have done much better, admittedly) and, admit it, he’s adorable.

But then, alas, other projects got in the way and TWE ended up on a shelf. I eventually pulled out and loaned the drivetrain to Brandon from Rascal Micro for a while to do some demos on and I pulled a few things out here and there for other projects.

BUT! Don’t be sad. This week I took the drivetrain out and reprogrammed the controllers. I removed the arm from what’s left of TWE’s chassis (that arm turned out good, dude. Seriously.), the dual cameras, and am tinkering with a different idea now. It’s already got a name of course. Because I have to name everything. SHANE — I was running the drive train up and down the aisle at the Asylum using an RC controller and, joking to a fellow inmate, I called ‘Come back, Shane!’ And that’s how names are gotten. ;)

Anywho. TWE has left us, long live TWE. But something new to come. :)

What Am I Ticked Off About re: Mozilla/Firefox?

// November 17th, 2011 // 2 Comments » // Rants, tech

What Am I Pissed Off About re: Mozilla/Firefox?

EDIT: I’m very grateful to Mozilla for listening and eventually creating the ESR track for both Firefox and Thunderbird. This ( http://www.mozilla.org/en-US/firefox/organizations/ ) effectively fixes all the below for us.

EDIT 12/2/11: heh… Looks like I’m not alone in my thoughts. Comments at Slashdot on Firefox losing market share [image].

Mozilla is fighting an invisible battle against Google Chrome. They’ve implemented a ‘me too’ rapid release cycle for Firefox (and therefore also Thunderbird since they have [again artificially] tied their cycles together) in answer to Google’s rapid release cycle.

And the poop started hitting the fan. Not only was the public confused (“OMG! My browser’s really old! I only have 3.6 and they’re already up to 6! Was I asleep for a year?”) but enterprise IT folks were not amused. We can’t afford to have a browser we just deployed be declared un-supported mere weeks later. Similar remarks here: http://mike.kaply.com/2011/06/23/understanding-the-corporate-impact/

Yes, there is a working group that was put together after Mozilla finally admitted that enterprise IT had a valid point ( http://www.readwriteweb.com/hack/2011/08/mozilla-chair-acknowledges-ent.php )… in August 2011 after the release of version 6… two more major releases have come out since then. But right now there’s just an ESR proposal and… that’s where we stand. In the meantime, time continues to go forward at the same pace and we’re still dealing with actually using the browser. We esentially had ESR, then Mozilla took it away to go tilt at a windmill called Chrome. Now we wait while people talk about ESR… or we don’t wait and we move on.

We want to love you, Firefox! Why won’t you let us love you!??

The browser we’d fought for, the browser that finally took away share from IE, the browser that worked across platform and became popular enough for sites to start to say “OK, we support Firefox too.” That browser’s maker has seemingly turned into a parody of Microsoft trying to keep up with [Apple/Google/etc. and yes, even Mozilla] when they’d clumsily announces after the fact “Oh, yeah, we’re gonna do that too!” Now I have users who used to complain maybe about a website complaining about the browser.

So now, no more stable release followed by a cycle of improvements and bug fixes (all the while being supported because the ordinal number up front hasn’t changed and won’t change until the next release goes stable and comes out of beta). Now it’s release, release, release and pray to bob the bug fixed in 5 doesn’t show up again in the ‘all new super hot off the press’ 8.

And, most importantly, this all loses sight of how the browser wars ended. They ended with Firefox the moral and spiritual victor on one solid principal: Build a better browser and people will use it. Goliath IE was slain (or at leads severely maimed and forced to also get better) by one simple principal: Build a better browser and people will use it. Did I mention “Build a better browser and people will use it”? Not “OMGZ googlez has bilt a browzer and they’s gonna take all our search eyeballs moneys! Run around in circles!!!”

Now Firefox is so effing scared that they’ll lose that sweet Google search eyeballs cash that they’re all but making it a self-fulfilling prophecy in their panic. ( http://www.conceivablytech.com/9419/business/browser-market-share-forecast-update-firefox-losses-accelerate ) Why? Because Google planted that idea in their head when they released Chrome and now Mozilla’s management can’t see past it. It’s like a bug in their brain that’s making them crazy. (“This is Ceit Alpha V!”) They are so fixated on the forest they don’t see the trees catching fire. But the truth is that Google will keep paying out that cash as long as Firefox brings in eyeballs. That is, unless Mozilla gets so panic’d they start acting like headless chickens and _manage to drive all its customers away_!

Which is exactly what I think might be happening. Hell, I’M using Chrome now because I just can’t take it any more (and Safari is in the crapper too as far as I’m concerned – so I don’t have much choice… in a world that used to be all about choice).

Now, my team is forced to sit down and talk about “What browser do we support officially if/when Firefox doesn’t get back on track. Also, we’re screwed email client-wise if Thunderbird ends up under the bus for no good reason.” My server guy… my poor staunch advocate for open source and non-big brothery software is forced to admit that we might have to consider Chrome! He wants to love you, Firefox! Hell, he does love you. But his love is wavering. So what exactly is wrong? Sheesh, where to begin. And, honestly, I’ll forget something. It’s all become a blurry laundry list of complaints from minor annoyances to show-stopping bugs (Stack space errors?? Really?? In 2011?). But, quickly and anecdotally, go google this:
http://www.google.com/search?q=firefox+switch+to+chrome

Those people? They’re not switching to Chrome because Chrome is sexy or amazing… largely you’ll see them saying that they are leaving Firefox because of Firefox’s problems or short-comings, not Chrome’s features. OK, on to my gripes as an enterprise (education, actually, but we work the same and expect the same) IT shop.

* Instability. We’ve gone from a stable Firefox (sure, it had its quirks, but stable enough for us to say “we support Firefox” and be able to stand by it) to having to say “well, if you’re having problems in Firefox, you may have to use Safari/IE for that”. And then bracing for the next release 6 weeks later. (In all honesty, we’re just leaving most people on 3.6.x)

* Page rendering and slowness. This has forced us to downgrade some users who just can’t deal with it to 3.6.x And we’re clearly not alone: http://www.zdnet.com/blog/hardware/firefox-36-is-mozillas-windows-xp/16098?tag=rbxccnbzd1
And, tellingly, you’ll still find a link to 3.6.24 on Mozilla’s download site. Even they, tacitly admit there’s still a reason for it to be there:
http://www.mozilla.org/en-US/firefox/all.html

* Let’s talk about slowness. How can it be that Chrome got faster and Firefox got slower? ZDnet sure thinks so. Compare these two Kraken scores:

http://www.zdnet.com/blog/hardware/ie9-vs-chrome-10-vs-firefox-4-vs-opera-1101-vs-safari-5-the-big-browser-benchmark/12023?pg=5

http://www.zdnet.com/blog/hardware/the-big-browser-benchmark-chrome-15-vs-opera-11-vs-ie9-vs-firefox-8-vs-safari-5/16041?pg=5

You’re killing yourself, Mozilla. No excuses, no waffling. You. Are. Killing. Yourself.

* New weirdness depending on if you’re on 6 or 7 or 8. Profiles being trashed, bookmarks reverting or disappearing… What works in 7 might not work in 8. What was fixed in 7 from 6 seems to once again affect 8. And boy is it RAM hungry. But it was i/o hungry before, so that’s probably a step forward for users with networked hime directories… Submit crash report, submit crash report, submit crash report.

* The artificial rapid release cycle creating browser instability is also unnecessarily affecting Thunderbird. For us, Thunderbird 8 is unusable. It _simply does not work for some users_. Add an IMAP account with lots of folders and mail and it crashes at startup. Get someone with less mail and it’s fine (but Lightning may or may not work). Submit crash report, submit crash report, submit crash report.

* The rapid release cycle also tends to break plugin/add-ons, often for no other reason than the fact that this version, which isn’t much different, starts with a different number. We even saw Thunderbird run into this day of release when we rushed to test it. In my case, instead of bringing Lightning with it, it disabled the already-installed lightning add-on and then refused to upgrade (Lightning will be upgraded on next restart -> restart -> Lightning will be upgraded on next restart -> removed lightning manually -> install lightning -> Lightning is not compatible with this version (WTF?) -> clear everything out -> install, go to add-ons, aha! Lightning link in featured add-ons -> install Lightning -> Lightning will be installed on next restart -> restart Lightning will be upgraded on next restart… give up.) That’s… crazy. This is Mozilla we’re talking about…

Dammit… we were pinning our hopes on integrating Lightning into our environment to stem the tide of requests for Outlook for those who just wanted calendaring of some sort. Now we have a 1.0 release of Lightning for a version of Thunderbird we can’t even deploy. ARGH! Because of Firefox chasing the Chrome around like a big dumb puppy chasing a car. (“It must want to eat my food! GRR! Chase!”)

I think Mozilla has lost their minds. Please. Please. Go find your minds and put them back in before you lose all that you’ve worked and fought so hard for (and we’ve supported so strongly) because you got a little scared by some actual competition. This coming from someone who wants you to succeed. Who’s begging you to succeed. I’m your fan. Your cheerleader. And now I’m about to break up with you because… you won’t let me love you!


Additional reading from way back at version 5 (oh, wait, that wasn’t that long ago…)
http://www.conceivablytech.com/8102/business/should-mozilla-ditch-the-rapid-release-cycle-again

Getting to your iCloud calendar from iCal 4 (OSX10.6) or a CalDAV client

// October 13th, 2011 // 67 Comments » // Rambling, tech

UPDATED 10/15/11 with new instructions!

I work in an environment where all the machines are tied to a single sign-on system and all the users, be they Mac, PC or Linux, have their home directories mounted from a server at login. Right now, OSX Lion won’t work in that environment, so all our Macs are running 10.6 or 10.5.8.

But what if I want to use my iCloud calendar from work via iCal (or another CalDAV capable client**)? It’s pretty damned easy, actually, I’m happy to say.

Maybe this is published somewhere, maybe not. But I figure a couple of my peeps might benefit from me posting this up. So here goes.

  1. Get your calendar set up and up to date in iCloud first. Don’t monkey with doing that after the fact.
  2. It just got easier. Skip to step 10 and ignore the steps below that says [SKIP]
  3. [SKIP] Open icloud.com in a web browser and go to your calendars. Click on the circular ‘wireless’ icon to the right of the name of the calendar you want to use. The calendar you want to use must be shared.
  4. [SKIP] Note the name of the server right after webcal:// (example: p02-www.icloud.com)
  5. Open iCal 3. (I’ll be referring to iCal from here on, I can’t say for sure how other CalDAV clients will respond).
  6. In iCal, go to Preferences -> Accounts and click the add account button (+)
  7. Select CalDAV as the account type.
  8. Enter your iCloud username (for instance, steve@mac.com) and password
  9. [SKIP] For server address you need to slightly modify that server name you jotted down in step 3
    If the server was p02-www.icloud.com, you would replace www with caldav and enter p02-caldav.icloud.com
  10. For the server address simply enter “caldav.icloud.com” (I don’t know when this started working, but it does.)
  11. Click create. If presented with a choice of two possible servers, choose the one that says caldav.icloud.com, not cal.me.com — IF YOU GET AN ACCESS NOT PERMITTED ERROR then you’ll need to use the greyed out instructions instead.
  12. Live large. Your now have your iCloud calendar and reminders in iCal. You might want to change how it refreshes, if you’re like me and want control over that. Push may not work as well in iCal 3. Otherwise, it’s a full CalDAV implementation; add, delete, modify, etc.

** Update: I haven’t been able to get it working in Lightning/Sunbird yet. But it’s most likely a matter of forming the URI correctly. It should be somehting along the lines of:
https://pXX-caldav.icloud.com:443/[unique ID]/principal/
or some variation thereof. I’ll try to work on this more tomorrow.

Update 2: It appears they’re also using CardDAV for contacts (hooray for standards!). The path for that would start https://pXX-contacts.icloud.com/[unique ID]/carddavhome (Thanks MacRumors forums!)
As of 10/15 6:30pm EDT I have NOT been able to get this working in Address Book 5. If you want to take a stab at it, I do know that Address Book 6 uses a URI like:

https://[username]%40mac.com@pXX-contacts.icloud.com:443/[unique ID#]/carddavhome/card/[long srting].vcf
(The %40being necessary as you can’t have two @ in there but need to include an email address as a username.)

Update 3: So they’re not using a SRV record to do it as far as I can tell (but they are using Akamai so there’s at least one layer of abstraction). Next…

Yours in nerdery,

Maggie

The [unusual] Conversation

// June 17th, 2010 // Comments Off on The [unusual] Conversation // Skepticism

I was on The Conversation with Dan Benjamin and Jason Seifer this week. We talked about… UFOs. No, really. We did! I’m no expert on the subject, but I think it went well. I knew more than I thought I did. Having been a believer in aliens and ghosts when I was young and reading a lot of the literature seems to have helped.

Or… Am I just part of the shadowy conspiracy!

I guess you’ll just have to watch* or listen and decide for yourself: http://5by5.tv/conversation/19

On a related (sort of) note, I’ll be speaking at this year’s The Amazing Meeting 8 on a workshop/panel with a few fellow grassroots organizers/worker bees. NOT about UFOs, but about using technology to promote and organize skeptics groups at the grassroots. Wish me luck.

* – Sorry anyone who had imagined I was some lovely young thing. The webcam will bear out… I’m just a fat not-as-young-anymore butch chick with a lot of dye in my hair and metal in her skin.

The RAID post that was

// March 1st, 2010 // Comments Off on The RAID post that was // Rambling, tech

My RAID post had a glaring and awful error in it (thank you to the commenters who pointed it out) as well as an implication in the graph I didn’t intend and so I’ve removed it. I don’t feel that leaving inaccurate information up is helpful to anyone. Thanks again to the commenters who pointed out my mistakes. I hope to re-visit the post at some point and I’ll be sure to give credit where it’s due. – Maggie

Winter Weathercam

// December 21st, 2008 // Comments Off on Winter Weathercam // Rambling

Have some snow. Webcam from our house and my office.

PS – A quick update for those who watch this space for disk info. I’ve had 1 complete failure of a WD10EACS and one with severe SMART errors. Not good. Also, after keeping an eye on them, I find that the Samsung HD103UJ run 3-5 degrees cooler than the WD10EACS. Another strike against the Western Digital disks.

Disk Test Results Round 2

// July 16th, 2008 // Comments Off on Disk Test Results Round 2 // Rants, Represent, tech

I’ve finished the tests I’d planned and the results are posted in the PDF linked here.
(I’ve updated this since yesterday into one document with added notes, so grab the latest copy.)

In the end, Seagate trounces the competition on performance. However, the second place Samsung disk is still a strong contender, especially where price is an issue. Quite frankly, these are the only two 1TB disks I’ll be recommending to anyone for any sort of capture or editing. Well… actually, I’ll be recommending 4 disks: the two winning models here and their cheaper non-enterprise versions. You’ll have to decide for yourself which best fits your needs and pocketbook.

For us, the 4 Seagates will go into a rack unit and be put into daily use offloading backups.
The 4 Samsungs will go in a new Mac Pro for edit/capture.

Disk Test Results (final)

I’m glad I could share this info and I hope someone finds it useful.
Maggie

PHVsPjxsaT48c3Ryb25nPndvb19hYm91dDwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2Fib3V0bGluazwvc3Ryb25nPiAtIGh0dHA6Ly9tYWdnaWVtY2ZlZS5jb20vYWJvdXQ8L2xpPjxsaT48c3Ryb25nPndvb19hZHNfcm90YXRlPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzE8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy0xMjV4MTI1LTEuZ2lmPC9saT48bGk+PHN0cm9uZz53b29fYWRfaW1hZ2VfMjwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbS9hZHMvd29vdGhlbWVzLTEyNXgxMjUtMi5naWY8L2xpPjxsaT48c3Ryb25nPndvb19hZF9pbWFnZV8zPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy93b290aGVtZXMtMTI1eDEyNS0zLmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzQ8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy0xMjV4MTI1LTQuZ2lmPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzE8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hZF91cmxfMjwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF8zPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzQ8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hbHRfc3R5bGVzaGVldDwvc3Ryb25nPiAtIGRlZmF1bHQuY3NzPC9saT48bGk+PHN0cm9uZz53b29fY3VzdG9tX2Nzczwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2N1c3RvbV9mYXZpY29uPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fZmVlZGJ1cm5lcl91cmw8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19nb29nbGVfYW5hbHl0aWNzPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29faG9tZTwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29faG9tZV9hcmNoaXZlczwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWVfZmxpY2tyX2NvdW50PC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29faG9tZV9mbGlja3JfdXJsPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29faG9tZV9mbGlja3JfdXNlcjwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWVfbGlmZXN0cmVhbTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWVfcG9zdHM8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19sb2dvPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fbWFpbnJpZ2h0PC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19tYW51YWw8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vc3VwcG9ydC90aGVtZS1kb2N1bWVudGF0aW9uL2lycmVzaXN0aWJsZS88L2xpPjxsaT48c3Ryb25nPndvb19uYXY8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX3Nob3J0bmFtZTwvc3Ryb25nPiAtIHdvbzwvbGk+PGxpPjxzdHJvbmc+d29vX3RhYnM8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fdGhlbWVuYW1lPC9zdHJvbmc+IC0gSXJyZXNpc3RpYmxlPC9saT48bGk+PHN0cm9uZz53b29fdmlkZW88L3N0cm9uZz4gLSB0cnVlPC9saT48L3VsPg==