Open Source Integrated Library System

Evergreen on IRC

#openils-evergreen Logs for Tuesday, March 24th, 2009

< Monday, March 23rd, 2009Raw Log FileWednesday, March 25th, 2009 >
#TimeNickMessage
#01:13:44dbs has quit IRC
#01:32:01jamesrf has quit IRC
#07:21:12skmurphy has joined #openils-evergreen
#07:39:39kgs has joined #openils-evergreen
#08:35:57eby has joined #OpenILS-Evergreen
#09:08:04BenO has joined #openils-evergreen
#09:10:34BenO is now known as BenO|lunch
#09:30:17BenO|lunch is now known as BenO
#09:42:26dbs has joined #openils-evergreen
#09:54:49greg-g has quit IRC
#09:55:01greg-g has joined #openils-evergreen
#10:19:00phase_bb has quit IRC
#10:27:04dbsAdded "Bloggers" to the evergreen-ils.org header, links to the planet. Added the evergreen-ils.org header to the planet.
#10:27:49dbsI think we should collapse "Blog", "Mailing lists", "Chat", "Evergreen Libraries", and "Bloggers" into a single "Community" heading.
#10:36:59phasefxthat sounds good to me
#10:45:29atheos has quit IRC
#10:45:29asmodai has quit IRC
#10:47:39asmodai has joined #OpenILS-Evergreen
#10:52:49atheos has joined #OpenILS-Evergreen
#10:58:55jeffoh heck. restarting opensrf perl services doesn't help when i'm changing things in OpenILS::WWW
#11:03:27dbsheh
#11:20:19jeffyay. added a new AddedContent module and it works. now I just wish you could stack them.
#11:20:56jeffbut i don't think i'm ready to tackle that yet. i'll probably just end up bolting it in under the primary module for now.
#11:23:50lisppaste6 has quit IRC
#11:35:51dbscool - what are you adding content from?
#11:36:00lisppaste6 has joined #openils-evergreen
#11:41:01jeffdbs: reviews from sopac's insurge
#11:41:12dbsjeff++
#11:42:47miker_jeff: patch time! :)
#11:42:54jeff laughs
#11:43:07jeffi didn't say it was pulling the RIGHT reviews yet... ;)
#11:43:13miker_ha
#11:44:36jeffinsurge stores based on bib id, evergreen throws isbn at /ac/ handlers, i'm trying to determine how i want to approach it. i think i'm going to have the added content handler make an open-ils.search.biblio.isbn search or a call to oISBN to get the record ids for that isbn.
#11:45:33jeffthird and fourth options would be to make insurge handle it based on the isbn->bib mappings in locum (sopac-talk), or to tweak the opac to give a record ID to that added content handler.
#11:45:48jeffbut so far i've managed to get away with no changes to the opac itself, so...
#11:46:18jeffand i think giving all reviews for related bibs would be useful, with a "this review is about a slightly different version of this item" on some.
#11:47:06miker_jeff: I like the oisbn plan, personally
#11:47:09phase_bb has joined #openils-evergreen
#11:47:47jeffme too, bigger rewards, changes things in fewer places.
#11:48:29lisppaste6 has quit IRC
#11:48:48jeffand yeah, this isn't a "jeff's got a patch" milestone, it's more of a "jeff just learned something new" :)
#11:49:10dbsjeff: hmm, so you're running a local insurge?
#11:49:57jeffdbs: hoping to. just a dev instance right now, and many many missing parts.
#11:53:47eby has joined #OpenILS-Evergreen
#11:53:54meliss has joined #OpenILS-Evergreen
#11:58:41brendan_ga has quit IRC
#11:58:48brendan_ga has joined #OpenILS-Evergreen
#12:02:05miker_dbs: crazy busy for a detailed response, but other than my suggestion from before (giving a nullable location to issuances for unbarcoded instances) I think the serials stuff looks good. and you've been swimming in it, so I defer to you on the details
#12:02:30miker_dbs: that's re your email to -dev, btw
#12:02:32dbsmiker_: thanks man
#12:03:13dbsthe subscription/record_entry/binding_unit/call_number relationship is getting pretty damned hairy :)
#12:04:26miker_regarding frances' binding unit concern, I was thinking that instead of directly exposing an issuance to the asset area, perhaps always go through a binding unit ... and have binding units of one issuance for single-issue "things"
#12:04:41miker_which would suggest moving the location an CN pointers from issuance to binding unit
#12:04:58miker_and, while more indirection, would be more consistent overall .. perhaps
#12:05:26dbsI think I could buy into that
#12:05:37miker_that was more-or-less my original thought, but may have been lost in the echos of time and schema changes
#12:06:51dbsholy moley, something is killing our test server performance... /me goes to check "who" and "last"
#12:07:57miker_(then, with the pass through binding units, just always display binding units, and "no binding unit" could easily represent "not here or not checked in yet" ... at least from the display point of view
#12:07:58dbs wonders if it's hordes of cataloguers playing with "Validate"
#12:08:00berickdbs: your localized org unit (types) display fixes with the autogen fixes, etc... does that span multiple commits or is it just 1 changeset?
#12:08:08miker_anyway, back to the salt mines ;)
#12:08:58djfiander has joined #OpenILS-Evergreen
#12:09:14dbsberick: two commits I think - when phasefx or miker_ pointed out the affect on the staff client
#12:09:21dbs checks timeline
#12:09:22djfiander"effect"
#12:09:31djfiander<- grammar nazi
#12:11:40dbsso http://svn.open-ils.org/trac/ILS/changeset/12603
#12:12:44dbsand http://svn.open-ils.org/trac/ILS/changeset/12504
#12:12:52dbs(for rel_1_4_0)
#12:13:20berickdbs++ many thanks
#12:13:32dbsdjfiander++ # much obliged
#12:14:18djfianderfor correcting your grammar? ;-)
#12:14:35miker_there's been a lot of churn on 1.4.0 in the last couple days (scaring me off of cutting the new release) ... are we back to stable?
#12:15:04dbsdjfiander: indeed
#12:15:09djfianderdbs: Frances just posted to the list some comments about your serials patch.
#12:15:20dbsdjfiander: yep, read that
#12:15:28djfianderI think she's confused about holdings vs items, but then I probably am too.
#12:16:19djfianderIII definitely differentiates between check-in records & holdings statements on one side, and items on the other.
#12:18:46dbsIn a world where you circulate issues (hello KCLS), you should probably have the option of adding a barcode when you checkin an issue (or 50 copies of that issue, as the case may be)
#12:20:11djfianderyes, but wouldn't that create an item? that's just a workflow thing. I don't think we're going to be sticking barcodes into 863 fields
#12:21:34dbsNo, we're not going to be sticking barcodes into 863 fields.
#12:22:28dbsWe're the ones who need to enable the workflow and desired display characteristics, though.
#12:24:17dbs(although, very short term, I just want to enable our non-circulating serial holdings to display in a meaningful way)
#12:24:38djfianderI haven't looked at your original message too closely, but it does seem to be focused primarly on checkin and holdings management, rather than items. For everything in a library except serials, there's no difference between a holding and an item, but that's the part we're looking at here.
#12:25:43djfianderand in the long run, we also need to provide a "binding" routine that takes a set of 863s describing issues and compresses them into a single summary 863 for the bound volume (potentially)
#12:25:45miker_djfiander: yes, there will be an item linked to the issuance, if it's barcoded
#12:26:01dbsSo... my message was about changes to the existing structure, not about existing stuff
#12:26:20dbsright, like miker_ said - although that might move to the binding_unit
#12:26:29miker_right, the link
#12:26:59miker_but asset.copy will remain the keeper of the barcodes, I think
#12:27:04djfianderick. I'm afraid to think about trying to compress consecutive summary 863s for display.
#12:27:15djfiandereverytime I think about this, it gets harder
#12:29:27jeffoh hey, of course that patron can view other patron settings. it's a local admin. :P
#12:29:35jeff smacks forehead
#12:29:44djfianderheh
#12:30:11djfianderyou have no idea how often I want to be able to log in to "my library account" and just have a public display by default.
#12:31:46jeffi was playing around with open-ils.actor.patron.settings.retrieve and forgot my current auth token wasn't a normal patron.
#12:34:59dbsdjfiander: our current ILS compresses 863s by adding a comma between each issue, it's real sophistercated.
#12:36:12djfianderdbs: are you sure? The public display for The Economist seems to be pretty well compressed, compared to the 863s you sent me.
#12:40:04dbsdjfiander: ah, you're right, it is smarter than that
#12:40:30djfianderoh. You actually have 8[56]4 fields in your holdings.
#12:40:45djfiander(see "Suppl text holdings" in Economist record)
#12:40:46djfiandercarp
#12:40:55djfiander makes note to add more test cases.
#12:41:06dbsdamned straight!
#12:41:13dbswe likes our indexes and supplementals
#12:42:26dbsso, compression seems to be ($holdings[0] . " - " $holdings[-1]) if the 863s are complete in between that range - does that still scare you?
#12:43:59djfianderassume that when we bind something, we take the individual issue 863s and compress them all together to create a single 863 that looks like
#12:44:37djfiander$a37$b1-12$i2007$j01-12
#12:45:48djfiandernow for display, I want to say that we own v.35:no.1 (2005:Jan) - v.39:no.3 (2009:Mar)
#12:46:23djfianderso I need to test a series of volume-level 863s to make sure they're complete and the glue everything together.
#12:46:29djfianderor something.
#12:47:03djfianderthis is where the disconnect between the holdings statements and the item records becomes REALLY obvious
#12:48:23dbsuh, I don't think we would do that with the 863; we would delete the 863 and modify the 866.
#12:48:35dbs863 plural
#12:49:21djfiandersee 863 ind2 values 2 and 3.
#12:49:41dbsI'm just telling you what we would do, in practice.
#12:50:12dbsWhich, you know, might help provide some data points about how far down the MFHD rabbit hole you really need to go.
#12:50:31djfianderthe fact that nobody uses big chunks of this stuff regularly makes me nervous.
#12:50:49djfianderwe've already seen that migration will be challenging for the prediction data
#12:51:25berickwhen a provider is created in the ACQ system, should we automatically create a config.bib_source entry?
#12:52:59dbsberick: I think at least the option is a great idea, useful for places that are going with shelf-ready cataloging
#12:53:20berickdbs: right, kinda what i was thinking
#12:53:40berickoption is good, since many folks will never use the provider records in the real catalog
#12:53:56berickthx
#12:54:58djfianderdbs: it's a very deep hole, and I'm sure that somebody somewhere is using every single part of it somehow.
#12:55:20berickmiker_: if no objections, I'm going to add a 'provider' param to www::vandelay so i can lean on that for the initial marc upload. regular vandelay can just ignore it
#12:55:47djfianderbut, given that we don't actually really delete records from the database, compression doesn't save space, but just parsing time. It can wait until phase II.
#12:56:39djfiander"Laurentian is leading the development of a new catalogue for Ontario universities and colleges."
#12:56:53djfianderreally?!? I'm sure my UL would be surprised to hear this ;-)
#12:57:41dbsdjfiander: hmm, where is that?
#12:57:57djfianderyour library's home page
#12:57:59djfianderhttp://laurentian.ca/Laurentian/Home/Departments/Library?Laurentian_Lang=en-CA
#12:58:20dbsah. *sigh*
#12:59:22djfianderlook on the bright side: who's gonna read the stuff on the Demarais library homepage anyway ;-)
#12:59:45dbswell, to be fair there is one college and three universities that will be using Conifer. adding "some" to that sentence would be a signficant improvement
#12:59:51dbsdjfiander: true, true
#13:07:46mrpeters-isl_ has joined #openils-evergreen
#13:16:07eby_ has joined #OpenILS-Evergreen
#13:22:36eby has quit IRC
#13:24:12mrpeters-isl_ has left #openils-evergreen
#13:25:34jamesrf has joined #openils-evergreen
#13:34:59BenO has quit IRC
#13:58:03dbshrm: purging offline transactions in 1.4.0.2, exception thrown: "Component returned failure code 0x80004005 (NS_ERROR_FAILURE) [nsIFile.moveTo]" location: "JS Frame :: chrome://open_ils_staff_client/content/main/main.js :: anonymous :: line 180" data: no
#14:04:36dbsweird, that line references the "Open XULSTANDALONE" call; nothing to do with moving files around
#14:05:26dbsdbs-- # look at rel_1_4_0, dummy, not trunk
#14:07:28dbsfile._file.moveTo(null,filename); # okay, interesting
#14:18:39natschil has joined #openils-evergreen
#14:19:32mrpeters-isl__ has joined #openils-evergreen
#14:20:03mrpeters-isl__anyone know what a "2" in "age_protected" in asset.copy defines?
#14:29:59jamesrfmrpeters-isl_: the id in config.rule_age_hold_protect ?
#14:33:07mrpeters-isl__ah ha
#14:33:22mrpeters-isl__ has quit IRC
#14:35:43natschil has quit IRC
#14:46:18brendan_gahello all --
#14:46:49brendan_gaquick question -- when I'm using parse_holdings.pl what format do I need for imput file?
#14:47:20brendan_gaI was using the same file that I used for marc2bre.pl / direct ingest / pg_loader dance..
#14:47:30brendan_gait's .mrc
#14:47:36dbsI think parse_holdings.pl was written for marc21xml, but it will have to be tailored to whatever your legacy ILS produces
#14:48:24brendan_gausing marcedit I converted to marc21xml without namespaces... but didn't like that
#14:48:36brendan_gacoming from a horizon site
#14:48:58brendan_gagot records in -- just trying to do the holdings dance...
#14:55:03dbsYou would be better off dumping holdings info directly from horizon database and using the staging table approach
#15:05:09miker_berick: re 12:55, I OBJECT. no, not really
#15:05:51berickmiker_: good, cuz there's gonna be a couple of other fields as well ;)
#15:06:43miker_bah!
#15:10:46dbs finishes a test offline transaction session - yay
#15:12:31dbsalthough I still can't purge the transactions from the rel_1_4_0_2 client. boo.
#15:18:07djfiander has quit IRC
#15:21:18dbsOkay, now that djfiander is gone, I'm going to merge that serials patch. I expect SVN to explode.
#15:24:35lisppaste6 has joined #openils-evergreen
#15:58:31sarabee_ has joined #openils-evergreen
#16:00:41meliss has quit IRC
#16:12:12sarabee has quit IRC
#17:09:42dbs has quit IRC
#17:59:56eby_ has quit IRC
#18:48:13jamesrf has quit IRC
#18:50:54jamesrf has joined #openils-evergreen
#18:52:35jamesrf has quit IRC
#19:28:10jamesrf has joined #openils-evergreen
#20:05:58eby has joined #OpenILS-Evergreen
#20:40:42dbs has joined #openils-evergreen
#20:45:17jeff'evening
#20:46:25sarabee_ has quit IRC
#20:48:42dbs'allo 'allo
#20:50:46jeffso hey, the craziest thing... the ora perl books are BLUE now!
#20:51:02jeff grins
#20:51:32sarabee_ has joined #openils-evergreen
#20:56:26dbsNo way, that's like a religious conversion.
#20:57:50sarabee__ has joined #openils-evergreen
#20:59:43Dyrcona has joined #openils-evergreen
#21:12:31dbs has quit IRC
#21:13:14sarabee_ has quit IRC
#21:13:14dbs has joined #openils-evergreen
#21:13:36sarabee_ has joined #openils-evergreen
#21:15:43dbsmy_laptop--
#21:24:31skmurphywhat happend?
#21:24:53jeffit's been crashing, regularly.
#21:25:06jeffdbs: my sympathies, that sucks.
#21:25:26dbs@karma my_laptop
#21:25:26pinesoldbs: Karma for "my_laptop" has been increased 0 times and decreased 13 times for a total karma of -13.
#21:27:38sarabee__ has quit IRC
#21:31:27sarabee has joined #openils-evergreen
#21:34:00jamesrf has quit IRC
#21:40:50sarabee_ has quit IRC
#21:49:53Dyrcona has quit IRC
#21:56:27mib_yadwe5 has joined #openils-evergreen
#21:57:11mib_yadwe5-= THIS MESSAGE NOT LOGGED =-
#22:00:49jeff-= THIS MESSAGE NOT LOGGED =-
#22:01:18phasefx-= THIS MESSAGE NOT LOGGED =-
#22:01:19jeff-= THIS MESSAGE NOT LOGGED =-
#22:02:00mib_yadwe5unintentional. thank you. i don't suppose it runs on UNIX at all?
#22:02:33jeffmib_yadwe5: it does, and is most frequently run on linux, in my experience.
#22:02:45dbseven the staff client can run on linux
#22:02:50jeffstaff client is xulrunner based, and can run on windows/linux/osx
#22:03:33jeffmib_yadwe5: the faq has lots of good info (i'm not trying to send you away!), you can find it here: http://evergreen-ils.org/dokuwiki/doku.php?id=faqs:evergreen_faq_1
#22:04:31jeffmib_yadwe5: http://evergreen-ils.org/dokuwiki/doku.php?id=faqs:evergreen_faq_2 gets more into the "what's evergreen built on / written in", etc.
#22:05:17mib_yadwe5thanks so much, very helpful :)
#22:09:10jeffmib_yadwe5: and of course, ask questions here if you have any others.
#22:09:36jeff(or to confirm something... there's always a chance that something in the faq is outdated)
#22:10:38phasefxlike aquisitions in winter 2008 :)
#22:12:10phasefxfixed
#22:13:25dbsphasefx: you travelled back in time?
#22:13:46phasefxdbs: I did, but unfortunately, it created a new timeline that we're not in
#22:14:40dbshrm, we're not writing general.useragent.locale to prefs.js, apparently
#22:14:53mib_yadwe5i read that it's supported on windows, linux and mac ... not on unix, unless i'm missing something :(
#22:15:01jeff ssh port forwards through 1955 and back into the alternate timeline and checks out other-2009's trunk
#22:15:22jeffmib_yadwe5: what unix are you looking to run it on?
#22:15:30dbsmib_yadwe5: oh, you mean something like solaris or aix or tru64 unix?
#22:15:40phasefxdbs: I'm not sure where that is getting stored
#22:15:54dbsphasefx: i'm a-gonna track it down, hoss
#22:15:54sarabee_ has joined #openils-evergreen
#22:16:22phasefxdbs: cool deal
#22:17:40mib_yadwe5yes, like solaris
#22:18:33jeffyou need perl, postgresql, and apache... i don't know if anyone's tried getting it all running on solaris (or opensolaris?) yet.
#22:18:54dbssomeone (atheos?) was pounding on solaris ages ago
#22:19:05jeff(that's not all you'll need, but those are the big chunks)
#22:19:29phasefxatz may also have gotten an early version running on solaris
#22:20:42jeffre-reading my last, of course those three have been run on solaris, but i meant "all the little things that tie it all together, and opensrf, and..."
#22:21:04phasefxthe biggest problem is tracking down all of the dependencies and making sure they work. The existing community doesn't have much EG experience outside of Debian, Ubuntu, and Gentoo
#22:21:33phasefxbut each of the dependencies should work on POSIX-y systems
#22:23:36kgs has quit IRC
#22:26:56dbsphasefx: nevermind, it's getting set, it just gets set outside of prefs.js. I'm too old-school.
#22:27:13phasefxsomething in the user profile directory?
#22:28:21phasefxincidentally, --profile-manager is a good quick fix for getting a blank slate on user profile data
#22:28:23dbsphasefx: tried grepping under ~/.openils but no dice; not a big deal, the locale is getting set
#22:29:17sarabee has quit IRC
#22:29:22dbs(this is trunk btw)
#22:31:18phasefx-profilemanager rather
#22:32:08mib_yadwe5thank you everyone for replying, I'm off now. :)
#22:34:01EVRGRN_N00b has joined #openils-evergreen
#22:34:11phasefxdbs: looks like it is dependent on user profile, at least (you got me curious)
#22:36:26EVRGRN_N00bHey all! How is everyone... I have some questions
#22:36:39jeffEVRGRN_N00b: greetings. ask away!
#22:36:44dbsprobably in a fancy compressed bdb or sqlite db
#22:37:11EVRGRN_N00bCan anyone tell me how i can customise my library consortium, branch etc names?
#22:37:23jeffEVRGRN_N00b: are you running 1.4?
#22:37:38EVRGRN_N00bno, 1.2.3.1
#22:37:42EVRGRN_N00bjeff ^
#22:38:22jeffEVRGRN_N00b: i think you need to use the config.cgi scripts, as shown here: http://evergreen-ils.org/dokuwiki/doku.php?id=evergreen-admin:policies
#22:39:11jeffEVRGRN_N00b: or, you can do it at the database level, but that can be a (more powerful / less user friendly) tradeoff.
#22:39:46EVRGRN_N00bthis link looks good, thanks for your help jeff !!
#22:40:56jeffEVRGRN_N00b: good luck, and let us know if you have problems!
#22:41:05mib_yadwe5 has quit IRC
#22:43:48lisppaste6dbs pasted "Exception invoking Z39.50 import involving circ.checkout" at http://paste.lisp.org/display/77556
#22:44:02dbsthere's a good one for phasefx :)
#22:44:32phasefxooh
#22:47:04dbsI've tried going through about ten other interfaces and haven't triggered the same error
#22:47:31phasefxhow do I trigger it?
#22:47:33dbspops up an empty dialog box, freezes the client until I click the X to close the dialog
#22:47:40dbsImport Z39.50
#22:48:05dbsthat's what's happening to me in trunk, anyway
#22:48:17phasefxCataloging -> Z39.50, search, select record, MARC Editor for Import, etc?
#22:48:28dbsJust Cataloging -> Z39.50
#22:48:51phasefxhrmm, let me svn up
#22:49:01dbsat that point, the freezie dialog pops up (for me, running xulrunner 1.9 as packaged with ubuntu 8.10)
#22:50:17dbs(oh, and did my blathering last night on http://svn.open-ils.org/trac/ILS/ticket/45 make any sense?)
#22:52:49phasefxdbs: I don't know the rationale behind what's happening, but think it has to do with streaming results versus non-streaming results and how the gateway consolidates a stream into an array
#22:54:03dbsbut that ternary operator returns just the value from a single-element array, so I don't understand what the gateway could possibly have to do with it
#22:56:41phasefxin the client, I'm expecting an array.. things broke when the method I'm calling got changed to a streaming method in Holds.pm
#22:57:17dbsbut that line in RemoteRequest.js is always going to turn a single element array into just a naked value
#22:57:23phasefxor at least, it looks that way, but may be a coincidence. May never have actually encountered a 1 value result previously
#22:58:05dbsthat's the direction I was headed
#22:58:29phasefxyeah, the streaming may be a red herring that just boomeranged back into my brain, because it's what I thought at first
#22:58:43jeffi liked bott's response to that bug elsewhere: ``I've never contemplated a world with only a single item on a hold shelf...''
#22:59:29phasefxhowever, I'd expect other things to break, like a bucket with just one item
#22:59:31jeffi only encountered it because i was playing with hold shelf stuff on an empty db. :)
#22:59:41phasefxand that's not happening, right?
#22:59:57phasefxso maybe things are getting sent around like [ [1,2,3] ] for non-streaming methods
#23:01:06phasefxif my time clears up some (jeff: and I still have work to do for you! :D), I can rig another test and try reverting Holds.pm and see if that makes a difference
#23:01:15dbsor like [[1]] for single-element arrays, and [1,2,3] for multi-element arrays
#23:02:00phasefxeventually I want to move away from RemoteRequest.js and use the new stuff that the dojo interfaces are using
#23:02:26phasefxin a mozilla environment, we can start streaming to the client for real
#23:05:29dbs sees "var pattern = node.value.match(/Today \+ (\d+) days/);" in checkout.js and cringes :)
#23:06:21phasefxyeah, you'll be happy to know that I'll never do that again ;)
#23:06:50dbsAujourd'hui avec (\d+) jours
#23:07:17dbsI can't wait for George to stumble across that. Gah.
#23:08:12phasefxdbs: I can't reproduce the z39.50 error
#23:08:27dbsphasefx: okay, that's cool with me
#23:08:53dbsI'm going to assume it's
#23:09:16dbsa linux vs. windows thing, and stumble forward
#23:09:39phasefxI'm using a linux 1.9 xulrunner for what it's worth
#23:10:22dbsdownloaded from mozilla?
#23:10:24phasefxhrmm, I should try the en-CA locale, but I'm always running out of svn and haven't tried doing the i18n stuff yet
#23:10:50phasefxdbs: I have one download from mozilla and one with ubuntu.. I was using the latter
#23:11:08dbsargh. so identical environments then. Sigh.
#23:11:38dbsI'll just stick alerts into my_init in z3950.xul
#23:12:06phasefxdbs: maybe try reseting the sticky defaults for that interface?
#23:13:09phasefxalso may make things easier to debug if you <script> tag in those JSAN libraries
#23:14:49EVRGRN_N00b has quit IRC
< Monday, March 23rd, 2009Raw Log FileWednesday, March 25th, 2009 >