MBS Releases the MBS Real Studio Web Starter Kit in version 1.0

Nickenich, Germany (February 25th, 2013) -- Monkeybread Software releases version 1.0 of the MBS Real Studio Web Starter Kit

The MBS Real Studio Web Starter Kit is a starting point for building your Web Applications with Real Studio.
Version 1.0 is the first public version with this features:
  • Database Support including REALSQLDatabase, MySQLCommunityServer, CubeSQLServer and SQLDatabaseMBS. Other databases can be added easily.
  • Simple User Management for Admins and normal users.
  • Login Panel.
  • Auto login, so people don't need to login each time..
  • Collects Exceptions and JavaScript Errors in database and displays them to Admin.
  • Allows logging to text file and database and displaying them..
  • SQL Console with download of database and query result as CSV file.
  • Session management for admin to see what users do.
  • Chat Window.
  • Creates Backup of database.
  • Object browser and memory statistics.
  • Messages for Admins to/from users.
  • File Browser.
  • Shows how to cache images/files to save memory.
  • and much more....
You can use the Kit as a foundation of your new web application or simply copy the parts you need to your own web application. This Kit is the result of putting together all the goodies we developed in the last two years for various web applications. Things we believe everyone could need in their own solution. And of course in the next years, we will add more functions depending on user requests.

Our Web Starter Kit requires Real Studio 2012 or newer and a license of the MBS Real Studio Plugins.
The Util Plugin part is required and the MacOSX part is useful here.

The Web Starter Kit is available for $149 USD or 99 Euro (+VAT if needed).

You can learn more and try the demo on our website.

MBS Real Studio Plugins, version 13.1pr5

New in this prerelease of the 13.1 plugins:
  • Moved AudioChannelLayout*MBS classes to own plugin part AudioChannelLayout.
  • Split SQL plugin internally into SQL and SQLDatabase plugin. So you can use the SQL side without a database server license. (unless Real Software changes rules)
  • Added new convenience RegexMBS methods and default parameters.
  • Added new CIFilterMBS subclasses: CIFilterDepthOfFieldMBS, CIFilterDrosteMBS, CIFilterHighlightShadowAdjustMBS, CIFilterHistogramDisplayFilterMBS, CIFilterPageCurlWithShadowTransitionMBS, CIFilterStraightenFilterMBS, CIFilterStretchCropMBS, CIFilterTemperatureAndTintMBS, CIFilterToneCurveMBS and CIFilterVibranceMBS.
  • Added NikonCamera plugin.
  • Updated DynaPDF to version 3.0.22.61
  • Fixed crashes with JPEG plugin when using on multiple threads at the same time. (eliminated some global variables)
  • Added new events to CustomNSToolbarMBS for events in CustomNSToolbarItemMBS so they can be forwarded there.
Download: macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.

RegEx Speed Test

Kem Tekinay, one of our plugin users made a speed test with RegEx class in Real Studio and the RegExMBS class in MBS Plugins.
Well, it looks like the plugin is magnitudes faster.

This are some results you can see with the sample project:

String Created: 1.048.500 bytes
RegExMBS: 8.120 microsecs, 500 found
RegEx: 317.797 microsecs, 500 found

String Created: 10.485.000 bytes
RegExMBS: 77.930 microsecs, 5.000 found
RegEx: 33.953.951 microsecs, 5.000 found

Tested in RS 2012r2.1 with 13.1 MBS Plugins.
Even with sampling on Mac OS X we can't see what the RegEx class does with all the CPU time. Maybe they simply rebuild the regular expression every time they do a search. We'll see. If you are interested, subscribe the Feedback case 24836. For now you can simply use our plugin if you need speed :-)

See test project: regex_speed_test.rbp.zip

Personal Training Sessions

Today I had a training session with a developer using both Filemaker and Real Studio. Topic was on how to connect to a Filemaker Server from Real Studio Web Edition and do all the database stuff: List tables & records, edit a record, delete a record and update a record.
I can tell you it's just working fine.
Of course it's your decision if you go with (Instant) Web Publishing or Filemaker Go to fill your database on the go. But with Real Studio you can build native desktop clients, web clients and soon iOS clients. Much more customized to your needs than anything from Filemaker.

Need a training?
If you need more than watching Bob Keeney's excellent training videos, you can order your personal training from us. From an hour remote to a multi day meeting in your/our office, there are a lot of possibilities. Just ask and provide a list of topics.

Schedule posted for Real World

Real World 2013 is just two months away. Sign up soon to benefit from Real World advanced pricing (Ends 17th March)
Register on conference website.

The schedule has been posted: Real World Schedule.
As you see first day is in big Ballroom so everyone can watch the Web and iOS sessions after the keynote. Also the MBS Session is Thursday 11am and Thursday night we a going bowling at Splittsville.

See you there in Orlando!

MBS Real Studio Plugins, version 13.1pr4

New in this prerelease of the 13.1 plugins:
  • Added TwainImageLayoutMBS class.
  • Changed some compiler options to have Real Studio exception handling work better with our plugins.
  • Changed back some compile options to have plugins work on Linux again.
  • Fixed a couple of memory leaks related to exception handling.
  • Fixed bug in SQLErrorExceptionMBS class introduced in pr2.
  • Added 16bit mode for TiffPictureMBS.WriteGray.
Download: macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.

Tip of the day: Zoom web content in Webkit browsers

This works in Safari and Chrome for me, but may also work in other browsers, maybe with little modifications.

ExecuteJavaScript "document.body.style.zoom='200%';"

If you run this in your webpage, the content is zoomed to 200%. I think this is useful to offer people buttons like smaller, middle and bigger where they can zoom the content.
Or with some math to make the webcontent fit the screen on a large window.

Picture from HTMLViewer

Recently a client asked on how to get an image from a htmlviewer.

Well, on Windows this is easy as we have only one function there: HTMLViewer.IEImageMBS as picture. This gives you an image. We recommend you resize htmlviewer to IEScrollHeightMBS/IEScrollWidthMBS to have the whole page visible.

On Mac we have more options:and if you query the WebviewMBS from HTMLViewer or you have no HTMLViewer, but only a WebviewMBS, you can use this methods:
  • WebViewMBS.RenderDocumentToEPS as Memoryblock
  • WebViewMBS.RenderDocumentToPDF as Memoryblock
  • WebViewMBS.RenderWebsiteImage as NSImageMBS
  • WebViewMBS.RenderImage(subviews as boolean=false) as variant
  • WebViewMBS.PrintToPDFFile(PDFFile as folderitem, LeftMargin as double = 50.0, TopMargin as double = 50.0, RightMargin as double = 50.0, BottomMargin as double = 50.0) as boolean
  • method dataWithEPSInsideRect(left as double, top as double, width as double, height as double) as Memoryblock
  • method dataWithPDFInsideRect(left as double, top as double, width as double, height as double) as Memoryblock
So you can get with various ways images or PDF. And from PDF you can of course make image, too.

JPEG String to Picture

Dan Berghult did recently some speed testing with reading images from a database:

I just run some tests:

Case 1: IdxField(1) is a PICT: 14 ticks to process this record 1000 times

vPicture= BuildPictureWithPicHandleDataMBS(vRS.IdxField(1).NativeValue)

Case 2 IdxField(1) is JPG Using build in conversion from JPG 515(!)

vPicture= vRS.IdxField(1).JPEGValue

Case 3: IdxField(1) is JPG Using JPEGImporterMBS 15(!)
vJpg.data=vRS.IdxField(1).StringValue //15
vJpg.Import
vPicture=vJpg.Picture

So in my case using your class JPEGImporterMBS is 340% faster then the RB-build function and as fast as when I render the PICT.

Plattform: The test was done on Mac but Appl runs on Mac and Win
Real Studio Version: 2012r2
MBS Plugin Version: 12.5
Database: PrimeBase Data Server (SQL)
Database connection: PrimeBase RS Plugin

The application it self is of image archive type.


So if you like speed, please implement several ways and use the fastest :-)

Updater Kit 1.5 and BugReporter Kit 1.1

Today we release two updates to our Kits:
MBS Real Studio Updater Kit 1.5 and MBS Bug Reporter Kit 1.1.

With our new MBS Real Studio Plugins 13.0 plugins and Real Studio 2012, we think it's time for an update.

New in Updater Kit:
  • We now detect older version and tell user that he has the current version. This avoids showing an error for users who have a newer version (e.g. a beta version).
  • Updated to Real Studio 2012
  • Fixed kYouhavethecurrentversion to show name of app.
New in Bug Reporter Kit:
  • Signals on Mac & Linux now show stack trace.
  • Reason is now part of the report. Else you may miss it.
  • Moved project to Real Studio 2012.
  • Removed reference to GetObjectClassNameMBS
  • Now uses BackTraceMBS function on Mac to query stack backtrace.
  • Added LinuxSysInfoMBS for more details on Linux.
  • Fixed some minor bugs.
  • Added Italian translation and improved German & English
If you have a license already, we'll soon send you a new download link.

MBS Real Studio Plugins, version 13.1pr3

New in this prerelease of the 13.1 plugins:
  • Fixed a problem with JPEGImporterMBS reading data from string and string was freed too early.
  • Added CIContextMBS.Constructor taking picture as destination. Also added CGContext and Picture properties and Destructor and Flush methods.
  • Added HIViewMBS.available which returns true only on Cocoa target, but not on Cocoa.
  • Added CGBitmapContextMBS.CreateImage, CGBitmapContextMBS.CreateWithPicture and CGBitmapContextMBS.Create.
  • Added private constructor to CGContextMBS and CGBitmapContextMBS classes.
  • Added constructor to DirectorySizeMBS class to set RecursionLimit to -1.
Download: macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.

WebDav via CURL

I can inform you that we just provided one of our plugin users with an example on how to upload to webdav with our CURL plugin. There is nothing special so far. Just make a PUT request to the right URL and CURL will handle the details.
As you can also do GET and DELETE requests, you can also download and delete files.

Works both with Real Studio and Filemaker with MBS Plugins.

Real Studio Developer Magazine's President's Day sale!

Real Studio Developer Magazine is having a special one-day President's Day sale on Monday, February 18, 2013. Use coupon code PREZDAY and all orders over $25 are 15% off!

We're keeping this simple, with no gimmicks or absurd limitations. The 15% discount is valid for all our products: subscriptions, back issues, printed books, even subscription renewals! But this coupon is only good on February 18, 2013 (there's a little leeway for people in different time zones), so hurry to take advantage of our President's Day sale!

To get the discount, just use the coupon code PREZDAY when placing your order on RS Developer Magazine store.

MBS Real Studio Plugins, version 13.1pr1

New in this prerelease of the 13.1 plugins:
  • Fixed problem with LoadInternalDLL functions. Still Microsoft does not like it if we load DLLs from memory as the loaded can't apply custom patches then.
  • Added OptionNoSignal for CURLSMBS/CURLMBS classes.
  • Added NSApplicationMBS.startDictation and NSApplicationMBS.stopDictation.
  • Added StartDictationMBS method (for Carbon).
  • Fixed windows control thread functions like SetVisibleThreadSafeMBS.
  • Plugins are now compiled with Xcode 4.6 on Mac.
  • Fixed NSSpellCheckerMBS to work again.
  • Fixed ResourceForkMBS class.
  • Added a new InsertRecord method to SQLDatabaseMBS. It uses prepared statements to make escaping more save.
  • Added more tag parameters to various events in GameKit and CustomNSSharingServiceMBS.
  • Added MT functions for NSImageMBS compression: JPEGRepresentationWithCompressionFactorMT, BMPRepresentationMT, PNGRepresentationMT, GIFRepresentationMT and JPEGRepresentationMT.
  • Updated DynaPDF to version 3.0.22.60
  • Added new MT functions to CIImageMBS and NSImageMBS to load thread friendly.
  • Added scale factor parameter to HTMLViewer.RenderWebsiteImageMBS.
  • Added new parameter to DrawRotatedTextMBS in order to workaround text position problems on Mac for printing.
  • Updated SQLPreparedStatementMBS to run in console/web projects.
Download: macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.

Wishes for little plug-in additions?

There are a lot of little additions we could do. Like for example tag properties and parameters which you can use to store references to your own objects if needed. For example for GameKit we have added tag parameters to several methods which later call an event. This way you can pass any reference value with the method to have it in the event. For example if you run several times the same query, you can later in the event see which query the result belongs to. Do you need another tag property or parameter somewhere?

There are several cases where you pass raw data between functions. Now sometimes you use a string like if you read bytes from a binarystream. In other cases you use a memoryblock, like for webfile class. Now we have a lot of functions which take data or return data. A lot of are already overloaded so you can pass both memoryblock and string and the plugin takes both. This avoids extra conversion. Do you need somewhere a function to return string/memoryblock or take it?

There are convenience functions we can add. For example we just added in 13.0 plugins a method CIImageMBS.AsNSImageMBS to quickly convert from CIImage to NSImage. This avoids a few extra steps. With 13.1 plugins we also add CIImageMBS.imageFromPicture to convert a picture to CIImageMBS quickly. Those convenience functions can save time and make coding easier. Can you think about methods you could need to make your live easier?

For our SQL classes we added in 13.0 plugins methods to get RecordSet from SQLCommandMBS or SQLConnectionMBS objects. This helps for using our SQL classes with some methods taking RecordSets like the reporting classes.

So if you have ideas for little helper functions, methods or properties, please do not hesitate to suggest something.

Multithreaded plugin functions can increase speed of Real Studio application

This is a new example app for upcoming 13.1pr1 plugins:


Do you notice that with 4 Real Studio threads, the plugin can actually get 4 CPU cores busy and get work done faster?

Over the last months we added quite a few MT methods. That are plugin methods which perform work on an extra preemptive thread which the Real Studio thread calling them yields CPU time away. And if you use several threads in Real Studio already, this will help you keep more CPU cores busy.
For 13.1pr1 we add this new MT aware functions for loading/saving NSImage/CIImage:
  • NSImageMBS.TIFFRepresentationMT and NSImageMBS.TIFFRepresentationUsingCompressionMT
  • NSImageMBS.PNGRepresentationMT
  • NSImageMBS.JPEGRepresentationMT and NSImageMBS.JPEGRepresentationWithCompressionFactorMT
  • NSImageMBS.BMPRepresentationMT
  • NSImageMBS.GIFRepresentationMT
  • NSImageMBS.imageWithContentsOfURLMT
  • NSImageMBS.imageWithContentsOfFileMT
  • NSImageMBS.imageWithContentsOfPathMT
  • NSImageMBS.imageWithDataMT
  • CIImageMBS.imageWithDataMT
  • CIImageMBS.imageWithContentsOfFileMT
Also we have a couple of existing functions:
  • SQLDatabaseMBS.SQLSelectMT and SQLDatabaseMBS.SQLExecuteMT
  • SQLConnectionMBS SQLSelectMT and SQLConnectionMBS SQLExecuteMT
  • SQLConnectionMBS SQLSelectAsRecordSetMT
  • SQLCommandMBS ExecuteMT and SQLCommandMBS ExecuteCommandMT
  • PictureMBS.ScaleMT
  • DynaPDFRasterizerMBS.RenderPageMT
  • DNSUtilMBS.LookupMT
  • DNSLookupMBS.LookupHostbyNameMT and DNSLookupMBS.LookupHostbyAddressMT
  • CURLSMBS.PerformMT
  • CURLMBS.PerformMT
  • ABAddressBookMBS.sharedAddressbookMT
If you have ideas for other methods which could benefit from loading work off to another CPU core, please don't hesitate to contact us.

MonkeyBread Software Releases the MBS Real Studio plug-ins in version 13.0

NICKENICH, Germany (February 12th, 2013) -- Monkeybread Software releases version 13.0 of the MBS plug-in for Real Studio.

The MBS plug-in comprises a collection of several plug-in parts which extend the Real Studio development environment with 1,700 classes featuring over 45,000 documented functions. Our plugins support all three platforms Mac OS X, Windows and Linux with all project types desktop, web and console.

Some of the highlights on the 13.0 update:

New functions for localization help you format numbers with the localization of the user in a Web Edition application. So if server runs with US localization and a french user uses your Web app, you can use FormatMBS and CDblMBS to handle numbers in french localization. The LocaleMBS class provides information about localized number formatting.

For Mac OS X 10.8.2 we updated our GameKit classes. With more than 100 new methods and events, you can now update your games to use this new methods and take full advance of the new functions in GameCenter.

Improved UUID creation and validation, so you can now generate random UUID and also validate UUIDs entered by the user. The Validate function can also fix UUIDs which are not 100% correct.

The SQL plugin has been updated do SQLAPI 4.0.3b1 and includes new informix unicode client. We also added a InformixMBS class. For normal SQL queries we added SQLSelectAsRecordSet and SQLSelectAsRecordSetMT functions, so you can query on SQLConnectionMBS and still get a RecordSet instead of a SQLCommandMBS object. Useful to pass the RecordSet to report functions. Also we have SQLCommandMBS.AsRecordSet to give you a record set for a command object. The function BuildRecordSetMBS can be used to build a new recordset based on a string array.

For our Twain plugin, we can now do scans without showing user interface and also set parameters like resolution and orientation before the scan. For Windows the transfers have been optimized and are faster now.

For safe access to the user interface from a thread, we added functions to set the text of labels and the value of progress bars from a thread. The plugin will make sure the main thread does those updates while your background thread continues. With ShowModalThreadSafeMBS on the MessageDialog class you can show message dialogs from a thread.

There are several little changes like a new SHA3MBS class, support for CoreFoundation on Windows using QuickTime, new Recursion properties on DirectorySizeMBS, more methods on CIImageMBS, new Mouse events on OverlayMBS and volume property for audio play through classes.

CURL library is updated to version 7.28.1, the libXL library updated to 3.4.0 and DynaPDF library to 3.0.22.58.

See release notes for a complete list of changes.

LGPL doesn't work for Real Studio classes/modules/controls

Just a quick note for everyone thinking about releasing some modules or classes for Real Studio as LGPL. It won't work.

LGPL was created to have a GPL library being used in a non GPL application. So the library is compiled on its own and can be replaced with another version. As Real Studio can't compile libraries (DLL/dylib/so files), you can't include LGPL classes/modules/controls in a non GPL Real Studio project.

The only real way to to use LGPL software with Real Studio is to compile the LGPL library to a dll/dylib/so and use declare commands or a plugin to call the functions.

Better use a commercial license or a free license (MIT, BSD, Apache just to name a few).

MBS Real Studio Plugins, version 13.0fc2

New in this prerelease of the 13.0 plugins:
  • Added SHA3MBS class
  • Fixed a bug with DynaPDFParseInterfaceMBS class events.
Download: macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.

Plugin cleaned up

In order to prepare plugins for the future, we cleanup and fixed a couple of things for the plugin version 13.0. The new Real Studio 2013 releases will require some plugin SDK changes as we should stop using deprecated functions. Also for 64 bit functions a lot of deprecated functions will no longer be supported, so it's really time for every plugin vendor to no longer depend on them.

We now use RBBoolean, RBUInt64, RBColor and RBInteger data types everywhere instead of int/long data types. For all string access we now use REALGetStringData for RS 2012 instead of the older accessors PString, CString, REALGetStringContents and REALGetCString.

This was so far a lot of work and has no direct visible effect except that maybe a 100 functions changed their parameters a little bit. Like passing now UInt32 instead of integer.

The following plugins already compile fine for Mac 64 bit so far:
Linux, DirectShow, CanonEOSDigital, Lion, CocoaBase, SnowLeopard, MountainLion, CUPS, WIA, LCMS, LCMS2, WinDragDrop, WinICM, DynaPDF, Overlay, LargePicture, QuickTime, VLC, Audio, JPEG, Java, Compression, RegEx, GIF, XMP, Tidy, Tiff, PNG, ImageMagick, Leopard, QTKit, MacOSXCG, PHP, Main, Controls, DataTypes, Win and CocoaExtras. Other plugins still need more work.

MBS Real Studio Plugins, version 13.0fc1

New in this prerelease of the 13.0 plugins:
  • Added CIImageMBS.AsNSImageMBS for easier converting.
  • Added more methods for CIImageMBS class.
  • Added Listbox.HorizontalNSScrollerMBS and Listbox.VerticalNSScrollerMBS.
  • Fixed bug in GZipFileMBS reading from string on Windows.
  • Added InformixMBS class.
  • Removed CFObjectMBS.Release property. Objects are always retained and destructor will always release CoreFoundation object.
  • Fixed a Cocoa problem with our plugin initialization code for Cocoa target in Real Studio 2013r1.
Download: macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.

Going to Real World - a few tips

Well, you are going to Orlando for Real World?
Great, best you get the room in the Holiday Inn Hotel, so you can spend all day with Real Studio developers and get the most out of the conference. With three days full of sessions, one day of optional training and the evening events. In the whole week, you'll easily find people in the hotel lobby or at the bar in the evening.

From the hotel, you can walk just 500 meter to Downtown Disney and enjoy a few shops and restaurants. A huge Disney shop, a Lego shop, restaurants in several styles and even a cinema is there. Walking in the other direction down the Hotel Plaza Blvd. you leave the Disney property and there you find a dozen fast food restaurants and a 24/7 supermarket. All in walking distance.

If you like you can see nature. In Florida for example the lakes: Lake Apopka with the Lake View Park in Winter Garden or the East Lake Tohopekaliga in St. Cloud. For some more nature, you can drive to the Hillsborough River State Park. This is a nice park, where you can walk a mile along the river and see some turtles, squirrels or alligators.

Of course you can drive to the east coast. The Kennedy Space Center is a great place and you can easily spend a whole day there if you want to do the bus ride and all the shows. On the way there you can also visit the Astronaut Memorial, Astronaut Hall of Fame and next to it the American Police Hall of Fame. And if you drive to south you can also visit Cocoa Beach.

Like to see history? Seven miles down from Hotel to Kissimmee, you find the Osceola Country History center. Just after Walmart, turn right in the Bass Road, and after some hundred meters, you find it on the right side. There you find a park with a couple of houses from the late 18th and early 19th century.
Next on history is the Fort Christmas Historical Park located half way to the Kennedy Space Center. Another nice way to learn something about history of Florida.

See you soon at Real World!

MBS Real Studio Plugins, version 13.0pr10

New in this prerelease of the 13.0 plugins:
  • Renamed AddRenderingIntent function to AddOutputIntent in DynaPDFMBS class.
  • Added properties to TwainMBS for resolution and orientation.
  • Updated DynaPDF to version 3.0.22.58.
  • Added folderitem.MacResolveNodeIDMBS function.
  • Fixed QTGrabberMBS.Recording and QTGrabberMBS.Previewing properties.
  • Updated WindowsIniMBS class for Unicode.
  • Removed SplitMBS class, StringArrayJoinWithDelimiterMBS and StringArrayJoinMBS functions. Please use built in framework functions from Real Studio instead.
  • Removed QTFileTransferMBS class. Please use HTTPSocket instead.
  • Overloaded all DynaPDF functions taking buffer to also accept memoryblock directly avoiding conversion from string to memoryblock.
  • Added NSControlMBS destructor to better cleanup if you add control to a toolbar and you forget to keep it alive by storing reference in a window property. No longer crashes on action event in this case.
  • Removed PrepareLookup, ProcessLookup and FinishLookup from DNSUtilMBS module. Please use LookupMT for that.
Download: macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.
The biggest plugin in space...

Archives

Mar 2024
Feb 2024
Jan 2024
Dec 2023
Nov 2023
Oct 2023
Sep 2023
Aug 2023
Jul 2023
Jun 2023
May 2023
Apr 2023
Mar 2023
Feb 2023
Jan 2023
Dec 2022
Nov 2022
Oct 2022
Sep 2022
Aug 2022
Jul 2022
Jun 2022
May 2022
Apr 2022
Mar 2022
Feb 2022
Jan 2022
Dec 2021
Nov 2021
Oct 2021
Sep 2021
Aug 2021
Jul 2021
Jun 2021
May 2021
Apr 2021
Mar 2021
Feb 2021
Jan 2021
Dec 2020
Nov 2020
Oct 2020
Sep 2020
Aug 2020
Jul 2020
Jun 2020
May 2020
Apr 2020
Mar 2020
Feb 2020
Jan 2020
Dec 2019
Nov 2019
Oct 2019
Sep 2019
Aug 2019
Jul 2019
Jun 2019
May 2019
Apr 2019
Mar 2019
Feb 2019
Jan 2019
Dec 2018
Nov 2018
Oct 2018
Sep 2018
Aug 2018
Jul 2018
Jun 2018
May 2018
Apr 2018
Mar 2018
Feb 2018
Jan 2018
Dec 2017
Nov 2017
Oct 2017
Sep 2017
Aug 2017
Jul 2017
Jun 2017
May 2017
Apr 2017
Mar 2017
Feb 2017
Jan 2017
Dec 2016
Nov 2016
Oct 2016
Sep 2016
Aug 2016
Jul 2016
Jun 2016
May 2016
Apr 2016
Mar 2016
Feb 2016
Jan 2016
Dec 2015
Nov 2015
Oct 2015
Sep 2015
Aug 2015
Jul 2015
Jun 2015
May 2015
Apr 2015
Mar 2015
Feb 2015
Jan 2015
Dec 2014
Nov 2014
Oct 2014
Sep 2014
Aug 2014
Jul 2014
Jun 2014
May 2014
Apr 2014
Mar 2014
Feb 2014
Jan 2014
Dec 2013
Nov 2013
Oct 2013
Sep 2013
Aug 2013
Jul 2013
Jun 2013
May 2013
Apr 2013
Mar 2013
Feb 2013
Jan 2013
Dec 2012
Nov 2012
Oct 2012
Sep 2012
Aug 2012
Jul 2012
Jun 2012
May 2012
Apr 2012
Mar 2012
Feb 2012
Jan 2012
Dec 2011
Nov 2011
Oct 2011
Sep 2011
Aug 2011
Jul 2011
Jun 2011
May 2011
Apr 2011
Mar 2011
Feb 2011
Jan 2011
Dec 2010
Nov 2010
Oct 2010
Sep 2010
Aug 2010
Jul 2010
Jun 2010
May 2010
Apr 2010
Mar 2010
Feb 2010
Jan 2010
Dec 2009
Nov 2009
Oct 2009
Sep 2009
Aug 2009
Jul 2009
Apr 2009
Mar 2009
Feb 2009
Dec 2008
Nov 2008
Oct 2008
Aug 2008
May 2008
Apr 2008
Mar 2008
Feb 2008