True Speed of your Memory Card

Posted on 17. Dec, 2008 by Terry Reinert in Featured, Hardware

One of the big selling points of Compact Flash cards, or any memory cards for digital cameras, is transfer speeds. Since I named my blog “Where Art & Engineering Collide” I figured I better add a little more “engineering” to the blog. Don’t worry… I will go easy on you!

For a quick baseline I looked at a few of my memory cards. My 4GB Sandisk Extreme III and it is marked with 30MB/s. The new 16GB Kingston that is on sale for a very good price right now is marked as 133x with 25MB/s read and 20MB/s write in the description.

So what does 133x actually mean when it comes to the speed rating? That specification is called the “x rating” which is also used for CD-ROM’s and other digital media. What it means is that the card operates at 133 times the base data rate. The base data rate is the data rate of the first audio CD-ROM’s which is 150kB/s. So for the Kingston card mentioned above, the data rate is calculated as 150kB/s * 133 = 19.95 MB/s. Of course 19.95 MB/s takes up more space so it is simply rounded up to 20 MB/s. Yes, your card is 0.05 MB/s slower than you thought… better get your refund quick!

It is important to note that you are not going to get this kind of speed out of your card while it is in your camera. There are bottlenecks from the file system all the cameras use to dictate how the data is written to the card. The interesting thing to note is that it gets worse with larger cards. The reason is because smaller cards (under 2GB) are usually formatted by the camera using the FAT16 file system. Any card above 2GB is formatted using the FAT32 file system which results in slower performance. Note that the card can be formatted using any file system but, from what I understand, almost every camera uses the FAT file systems.

You are also not going to get this kind of speed when downloading images off your card (regardless as to whether you’re using an external card reader or going through the camera). Even the external readers labeled as “HI-Speed” USB devices are still only going to run around 3 MB/s. Yes, the high speed USB 2.0 specifications states that the max data transfer rate is 60 MB/s. But any electrical or computer engineer that has dealt with digital storage systems will tell you that real life is very different from numbers generated in the lab under ideal conditions by scientist weenies in spiffy white lab coats. And no, I am not just saying that because I am jealous that I don’t have a spiffy white lab coat. I actually do have one. It is really quite nice. My daughter wears it whenever she is painting… meaning that it isn’t all that spiffy or white any more. Better than the alternative…

So what should you have gotten out of all this engineering speak? Basically this…

  1. The memory card you bought is slower than what it says.
  2. When you are downloading your images over USB to your computer, the memory card is MUCH slower than what it says.
  3. The larger the capacity of a memory card gets the lower its speed efficiency rating is. Meaning, a 133x 16GB card will be faster than a 20x 4GB card BUT a 133x 16GB card will be slower than a 133x 4GB card.

Related posts:

  1. Holy Grail of Image File Management Is Here!
  2. Shooting Tethered From Afar!
  3. Recovering Photomatix Settings from a JPEG / TIFF

Tags:

2 Responses to “True Speed of your Memory Card”

  1. [...] True Speed of your Memory Card. http://www.tkrphoto.com/2008/12/true-speed-of-your-memory-card/ [...]

    Reply to this comment   More from author
  2. [...] True Speed of Your Memory Card (Where Art & Engineering Collide) [...]

    Reply to this comment   More from author

Leave a Reply

Additional comments powered by BackType

PHVsPjxsaT48c3Ryb25nPndvb19hYm91dF9idXR0b248L3N0cm9uZz4gLSBSZWFkIE1vcmUuLi48L2xpPjxsaT48c3Ryb25nPndvb19hYm91dF9oZWFkZXI8L3N0cm9uZz4gLSBBYm91dCBUZXJyeSBSZWluZXJ0PC9saT48bGk+PHN0cm9uZz53b29fYWJvdXRfcGhvdG88L3N0cm9uZz4gLSBodHRwOi8vZmFybTUuc3RhdGljLmZsaWNrci5jb20vNDA0Ni80MjUyMjAyODY1XzdkZGEyNzNhMTJfcy5qcGc8L2xpPjxsaT48c3Ryb25nPndvb19hYm91dF90ZXh0PC9zdHJvbmc+IC0gVGVycnkgUmVpbmVydCBpcyBhIHBob3RvZ3JhcGhlciBiYXNlZCBvdXQgb2YgTWVsYm91cm5lLCBGbG9yaWRhLiBIZSBzaG9vdHMgYSB3aWRlIHZhcmlldHkgb2YgcGhvdG9ncmFwaGljIHN0eWxlcyBhbmQgaXMgYXZhaWxhYmxlIG9uIGEgbGltaXRlZCBiYXNpcyBmb3IgbW9kZWwgcG9ydGZvbGlvIGRldmVsb3BtZW50LCBjb21tZXJjaWFsIHByb2plY3RzLCBhbmQgZW5nYWdlbWVudCAmIHdlZGRpbmcgZXZlbnRzLjwvbGk+PGxpPjxzdHJvbmc+d29vX2Fkc19yb3RhdGU8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fYWRfMjUwX2Fkc2Vuc2U8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19hZF8yNTBfaW1hZ2U8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy0yNTB4MjUwLmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkXzI1MF91cmw8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hZF8zMDBfYWRzZW5zZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2FkXzMwMF9pbWFnZTwvc3Ryb25nPiAtIGh0dHA6Ly93d3cucGhvdG9zaG9wdXNlci5jb20vbWVtYmVycy9kb3dubG9hZHMvbmFwcC1yZWZlcnJhbC1iYW5uZXJzL25hcHAtMTYweDYwMC0wNDA4LmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2FkXzMwMF91cmw8L3N0cm9uZz4gLSBodHRwOi8vd3d3LnBob3Rvc2hvcHVzZXIuY29tLz9haWQ9cm14dHp0PC9saT48bGk+PHN0cm9uZz53b29fYWRfY29udGVudDwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fYWRfY29udGVudF9hZHNlbnNlPC9zdHJvbmc+IC0gPGEgaHJlZj1cImh0dHA6Ly93d3cucGhvdG9zaG9wdXNlci5jb20vP2FpZD1ybXh0enRcIiB0aXRsZT1cIk15IGxpbmsgdG8gdGhlIE5hdGlvbmFsIEFzc29jaWF0aW9uIG9mIFBob3Rvc2hvcCBQcm9mZXNzaW9uYWxzXCI+PGltZyBzcmM9XCJodHRwOi8vd3d3LnBob3Rvc2hvcHVzZXIuY29tL21lbWJlcnMvZG93bmxvYWRzL25hcHAtcmVmZXJyYWwtYmFubmVycy83Mjh4OTAtcm9ja2V0bWFuLmpwZ1wiIGFsdD1cIldoZXJlIGV2ZXJ5b25lIGxlYXJucyBQaG90b3Nob3AgLSBOYXRpb25hbCBBc3NvY2lhdGlvbiBvZiBQaG90b3Nob3AgUHJvZmVzc2lvbmFsc1wiIC8+PC9hPjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2NvbnRlbnRfZGlzYWJsZTwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19hZF9jb250ZW50X2ltYWdlPC9zdHJvbmc+IC0gaHR0cDovL3d3dy5waG90b3Nob3B1c2VyLmNvbS9tZW1iZXJzL2Rvd25sb2Fkcy9uYXBwLXJlZmVycmFsLWJhbm5lcnMvNzI4eDkwLXJvY2tldG1hbi5qcGc8L2xpPjxsaT48c3Ryb25nPndvb19hZF9jb250ZW50X3VybDwvc3Ryb25nPiAtIGh0dHA6Ly93d3cucGhvdG9zaG9wdXNlci5jb20vP2FpZD1ybXh0enQ8L2xpPjxsaT48c3Ryb25nPndvb19hZF9oZWFkZXI8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2hlYWRlcl9jb2RlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fYWRfaGVhZGVyX2ltYWdlPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy80Njh4NjBhLmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2hlYWRlcl91cmw8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hZF9pbWFnZV8xPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy93b290aGVtZXMtMTI1eDEyNS0xLmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzI8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy0xMjV4MTI1LTIuZ2lmPC9saT48bGk+PHN0cm9uZz53b29fYWRfaW1hZ2VfMzwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbS9hZHMvd29vdGhlbWVzLTEyNXgxMjUtMy5naWY8L2xpPjxsaT48c3Ryb25nPndvb19hZF9pbWFnZV80PC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy93b290aGVtZXMtMTI1eDEyNS00LmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzU8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy0xMjV4MTI1LTQuZ2lmPC9saT48bGk+PHN0cm9uZz53b29fYWRfaW1hZ2VfNjwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbS9hZHMvd29vdGhlbWVzLTEyNXgxMjUtNC5naWY8L2xpPjxsaT48c3Ryb25nPndvb19hZF90b3A8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3RvcF9hZHNlbnNlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fYWRfdG9wX2Rpc2FibGU8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fYWRfdG9wX2ltYWdlPC9zdHJvbmc+IC0gaHR0cDovL3d3dy5waG90b3Nob3B1c2VyLmNvbS9tZW1iZXJzL2Rvd25sb2Fkcy9uYXBwLXJlZmVycmFsLWJhbm5lcnMvNzI4eDkwLXJvY2tldG1hbi5qcGc8L2xpPjxsaT48c3Ryb25nPndvb19hZF90b3BfdXJsPC9zdHJvbmc+IC0gaHR0cDovL3d3dy5waG90b3Nob3B1c2VyLmNvbS8/YWlkPXJteHR6dDwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF8xPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzI8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hZF91cmxfMzwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF80PC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzU8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hZF91cmxfNjwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FsdF9zdHlsZXNoZWV0PC9zdHJvbmc+IC0gZ3JleS5jc3M8L2xpPjxsaT48c3Ryb25nPndvb19hdXRvX2ltZzwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19ibG9nX2NhdDwvc3Ryb25nPiAtIDM3NzwvbGk+PGxpPjxzdHJvbmc+d29vX2Jsb2dfbmF2aWdhdGlvbjwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19ibG9nX3Blcm1hbGluazwvc3Ryb25nPiAtIC9jYXRlZ29yeS9ibG9nLzwvbGk+PGxpPjxzdHJvbmc+d29vX2Jsb2dfc3VibmF2aWdhdGlvbjwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19idXR0b25fbGluazwvc3Ryb25nPiAtIGh0dHA6Ly93d3cudGtycGhvdG8uY29tL2Fib3V0PC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8xPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMTIzPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMTIzX2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8xMjY8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8xMjZfaW1hZ2U8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzE5PC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMTk2PC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMTk2X2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8xOV9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMV9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMjE2PC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMjE2X2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8yNTg8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8yNThfaW1hZ2U8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzI2Mjwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzI2Ml9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMzwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzM0MDwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzM0MF9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMzcwPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMzcwX2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8zNzc8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8zNzdfaW1hZ2U8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzM4MTwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzM4MV9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMzgzPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfMzgzX2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF8zX2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF80PC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfNDE0PC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzQxNF9pbWFnZTwvc3Ryb25nPiAtIGh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNi1TdGFjaWEtMTkuanBnPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF80MTU8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfNDE1X2ltYWdlPC9zdHJvbmc+IC0gaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy84LUJvc3Rvbi0zNTAtMzUyLUZpbmFsLmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfNDE2PC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzQxNl9pbWFnZTwvc3Ryb25nPiAtIGh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNy1EYW5pZWwtUG9ydHJhaXRzLVdlYi04LmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfNDE3PC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jYXRfYm94XzQxN19pbWFnZTwvc3Ryb25nPiAtIGh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvOS1NR18xNjIyX0xvUmVzLmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfNDQxPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfNDQxX2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF80X2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY2F0X2JveF84PC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9ib3hfOF9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9leDwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NvbW1lbnRfcG9zdHM8L3N0cm9uZz4gLSBTZWxlY3QgYSBudW1iZXI6PC9saT48bGk+PHN0cm9uZz53b29fY29udGVudDwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19jb250ZW50X2FyY2hpdmVzPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jb250ZW50X2ZlYXQ8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2N1c3RvbV9jc3M8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19jdXN0b21fZmF2aWNvbjwvc3Ryb25nPiAtIGh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNC1VU0ZsYWcuaWNvPC9saT48bGk+PHN0cm9uZz53b29fZmVhdHVyZWRfcG9zdHM8L3N0cm9uZz4gLSBTZWxlY3QgYSBudW1iZXI6PC9saT48bGk+PHN0cm9uZz53b29fZmVlZGJ1cm5lcl9pZDwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2ZlZWRidXJuZXJfdXJsPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fZ29vZ2xlX2FuYWx5dGljczwvc3Ryb25nPiAtIDxzY3JpcHQgdHlwZT1cInRleHQvamF2YXNjcmlwdFwiPg0KdmFyIGdhSnNIb3N0ID0gKChcImh0dHBzOlwiID09IGRvY3VtZW50LmxvY2F0aW9uLnByb3RvY29sKSA/IFwiaHR0cHM6Ly9zc2wuXCIgOiBcImh0dHA6Ly93d3cuXCIpOw0KZG9jdW1lbnQud3JpdGUodW5lc2NhcGUoXCIlM0NzY3JpcHQgc3JjPVwnXCIgKyBnYUpzSG9zdCArIFwiZ29vZ2xlLWFuYWx5dGljcy5jb20vZ2EuanNcJyB0eXBlPVwndGV4dC9qYXZhc2NyaXB0XCclM0UlM0Mvc2NyaXB0JTNFXCIpKTsNCjwvc2NyaXB0Pg0KPHNjcmlwdCB0eXBlPVwidGV4dC9qYXZhc2NyaXB0XCI+DQp0cnkgew0KdmFyIHBhZ2VUcmFja2VyID0gX2dhdC5fZ2V0VHJhY2tlcihcIlVBLTkyNjkyMDMtMVwiKTsNCnBhZ2VUcmFja2VyLl90cmFja1BhZ2V2aWV3KCk7DQp9IGNhdGNoKGVycikge308L3NjcmlwdD48L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2FyYzwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2xpbms8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29faG9tZV9saW5rX2Rlc2M8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2xpbmtfdGV4dDwvc3Ryb25nPiAtIEhvbWU8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX3RodW1iX2hlaWdodDwvc3Ryb25nPiAtIDkyPC9saT48bGk+PHN0cm9uZz53b29faG9tZV90aHVtYl93aWR0aDwvc3Ryb25nPiAtIDI0NzwvbGk+PGxpPjxzdHJvbmc+d29vX2ltYWdlX2hlaWdodDwvc3Ryb25nPiAtIDIxMDwvbGk+PGxpPjxzdHJvbmc+d29vX2ltYWdlX3NpbmdsZTwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29faW1hZ2Vfd2lkdGg8L3N0cm9uZz4gLSA1NDA8L2xpPjxsaT48c3Ryb25nPndvb19sb2dvPC9zdHJvbmc+IC0gaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8xMS1TaXRlLUxvZ28tMi5wbmc8L2xpPjxsaT48c3Ryb25nPndvb19tYW51YWw8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vc3VwcG9ydC90aGVtZS1kb2N1bWVudGF0aW9uL2J1c3ktYmVlLzwvbGk+PGxpPjxzdHJvbmc+d29vX25hdl9leGNsdWRlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fcG9wdWxhcl9wb3N0czwvc3Ryb25nPiAtIFNlbGVjdCBhIG51bWJlcjo8L2xpPjxsaT48c3Ryb25nPndvb19yZXNpemU8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fc2Nyb2xsZXJfcG9zdHM8L3N0cm9uZz4gLSAxMDwvbGk+PGxpPjxzdHJvbmc+d29vX3Nob3J0bmFtZTwvc3Ryb25nPiAtIHdvbzwvbGk+PGxpPjxzdHJvbmc+d29vX3NpbmdsZV9oZWlnaHQ8L3N0cm9uZz4gLSAxMjA8L2xpPjxsaT48c3Ryb25nPndvb19zaW5nbGVfd2lkdGg8L3N0cm9uZz4gLSAxODA8L2xpPjxsaT48c3Ryb25nPndvb190YWJzPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX3RoZW1lbmFtZTwvc3Ryb25nPiAtIEJ1c3kgQmVlPC9saT48bGk+PHN0cm9uZz53b29fdGh1bWJfaGVpZ2h0PC9zdHJvbmc+IC0gODg8L2xpPjxsaT48c3Ryb25nPndvb190aHVtYl93aWR0aDwvc3Ryb25nPiAtIDg4PC9saT48bGk+PHN0cm9uZz53b29fdHdpdHRlcjwvc3Ryb25nPiAtIHRrcnBob3RvPC9saT48bGk+PHN0cm9uZz53b29fdXBsb2Fkczwvc3Ryb25nPiAtIGE6OTp7aTowO3M6NjU6Imh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvMTEtU2l0ZS1Mb2dvLTIucG5nIjtpOjE7czo2MzoiaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8xMC1TaXRlLUxvZ28ucG5nIjtpOjI7czo2NjoiaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy85LU1HXzE2MjJfTG9SZXMuanBnIjtpOjM7czo3MzoiaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy84LUJvc3Rvbi0zNTAtMzUyLUZpbmFsLmpwZyI7aTo0O3M6NzU6Imh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNy1EYW5pZWwtUG9ydHJhaXRzLVdlYi04LmpwZyI7aTo1O3M6NjI6Imh0dHA6Ly93d3cudGtycGhvdG8uY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNi1TdGFjaWEtMTkuanBnIjtpOjY7czo2NjoiaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy81LU1HXzE3MTRfTG9SZXMuanBnIjtpOjc7czo1OToiaHR0cDovL3d3dy50a3JwaG90by5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy80LVVTRmxhZy5pY28iO2k6ODtzOjY1OiJodHRwOi8vd3d3LnRrcnBob3RvLmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzMtTG9nb19XaGl0ZV8yLnBuZyI7fTwvbGk+PGxpPjxzdHJvbmc+d29vX3ZpZGVvX2NhdGVnb3J5PC9zdHJvbmc+IC0gU2VsZWN0IGEgY2F0ZWdvcnk6PC9saT48L3VsPg==