David Anderson
8039f894d7
Remove jstracer and nanojit (bug 698201 part 1, r=dmandelin).
2011-11-22 17:41:41 -05:00
Luke Wagner
c7d3e6785c
Bug 689362 - Create js/public (with the intention that its contents will eventually be the only INSTALLED_HEADERS), move Vector and HashTable to js/public and some dependencies (r=billm,sr=dmandelin)
...
--HG--
rename : js/src/jshashtable.h => js/public/HashTable.h
rename : js/src/jsvector.h => js/public/Vector.h
rename : js/src/mfbt/InlineMap.h => js/src/ds/InlineMap.h
extra : rebase_source : 818639b74653667b7a572bc1234398c0e4559a60
2011-10-04 15:33:00 -07:00
Luke Wagner
e4b911a00d
Bug 690825 - Fix nativeCall assert; HandleNonGenericMethodClassMismatch should not assume args.callee() is the native (r=waldo)
...
--HG--
extra : rebase_source : db9b9d249feca5a29cb8fc8581db86dda8b75453
2011-10-04 10:48:36 -07:00
Luke Wagner
291999169a
Bug 683361, part 4 - Handle transparent proxies correctly in non-generic methods (r=waldo)
...
--HG--
extra : rebase_source : 0f36c83685f2822453ce203a87cca4076222c48c
2011-09-08 21:18:23 -07:00
Luke Wagner
2c8c55d13f
Bug 683361, part 2 - use CallArgs more (r=waldo)
...
--HG--
extra : rebase_source : 0825a9729a7e24706e9fa1f3fdfb1586c475d8cf
2011-09-08 21:02:26 -07:00
Jeff Walden
3ad1ea15a9
Bug 656810 - Implement js::NumberObject. r=njn
...
--HG--
extra : rebase_source : 0ca4eba24d64c8baac02a6c95b9079a7940fa345
2011-05-13 14:12:15 -07:00
Jeff Walden
0cb6bc3235
Bug 686002 - Refactor Number class initialization. r=bhackett
...
--HG--
extra : rebase_source : dfcfd4ce1e78c921ce9348f44fb50ed4be646fda
2011-05-02 17:03:47 -04:00
Luke Wagner
61f76ef0bd
Bug 684526 - Remove Jsvalify/Valueify (r=waldo)
...
--HG--
extra : rebase_source : a3047338ed088c26a93486addd0be8092fe52934
2011-09-20 11:40:24 -07:00
Luke Wagner
cc2ce861d1
Bug 684526 - Unify jsval and js::Value (r=jorendorff)
...
--HG--
extra : rebase_source : 5655602775d575bb5adba0a8fc4c20621f393a67
2011-09-19 09:34:49 -07:00
Bill McCloskey
f3698e14b3
Bug 675806 - Make static strings be GC things (r=luke)
2011-09-20 14:47:14 -07:00
Luke Wagner
357b5b8cf8
Bug 684110 - Clean JSObject::clasp usage (r=pbiggar)
2011-09-02 17:23:26 -07:00
Ed Morley
2d385ce59f
Backout bug 684110 (08b6eaf6aad0, cf8b35fa1010, 25ee45edabe1, 659f5c7d2cc9, 870f6dd82586 & e1ad65d6a7fd) and bug 684344 (cd1957f6628d) on a CLOSED TREE; a=bustage-fairies
2011-09-03 03:21:25 +01:00
Luke Wagner
39242fcb8c
Bug 684110 - Clean JSObject::clasp usage (r=pbiggar)
2011-09-02 17:23:26 -07:00
Brian Hackett
045638a1ea
Merge MC -> JM
2011-08-26 11:23:35 -07:00
Brian Hackett
9b769204de
Merge MC -> JM
2011-08-09 13:29:11 -07:00
Brian Hackett
5c6df0c03d
Merge MC -> JM
2011-08-02 09:08:05 -07:00
Brian Hackett
6c3284f1e8
Merge MC -> JM.
...
--HG--
rename : dom/src/threads/Makefile.in => dom/workers/Makefile.in
rename : dom/src/threads/test/Makefile.in => dom/workers/test/Makefile.in
rename : dom/src/threads/test/WorkerTest.jsm => dom/workers/test/WorkerTest.jsm
rename : dom/src/threads/test/atob_worker.js => dom/workers/test/atob_worker.js
rename : dom/src/threads/test/chromeWorker_subworker.js => dom/workers/test/chromeWorker_subworker.js
rename : dom/src/threads/test/chromeWorker_worker.js => dom/workers/test/chromeWorker_worker.js
rename : dom/src/threads/test/closeOnGC_worker.js => dom/workers/test/closeOnGC_worker.js
rename : dom/src/threads/test/importScripts_worker.js => dom/workers/test/importScripts_worker.js
rename : dom/src/threads/test/importScripts_worker_imported1.js => dom/workers/test/importScripts_worker_imported1.js
rename : dom/src/threads/test/importScripts_worker_imported2.js => dom/workers/test/importScripts_worker_imported2.js
rename : dom/src/threads/test/json_worker.js => dom/workers/test/json_worker.js
rename : dom/src/threads/test/recursion_worker.js => dom/workers/test/recursion_worker.js
rename : dom/src/threads/test/relativeLoad_sub_worker.js => dom/workers/test/relativeLoad_sub_worker.js
rename : dom/src/threads/test/relativeLoad_worker.js => dom/workers/test/relativeLoad_worker.js
rename : dom/src/threads/test/simpleThread_worker.js => dom/workers/test/simpleThread_worker.js
rename : dom/src/threads/test/terminate_worker.js => dom/workers/test/terminate_worker.js
rename : dom/src/threads/test/test_404.html => dom/workers/test/test_404.html
rename : dom/src/threads/test/test_chromeWorker.html => dom/workers/test/test_chromeWorker.html
rename : dom/src/threads/test/test_chromeWorker.xul => dom/workers/test/test_chromeWorker.xul
rename : dom/src/threads/test/test_chromeWorkerJSM.xul => dom/workers/test/test_chromeWorkerJSM.xul
rename : dom/src/threads/test/test_close.html => dom/workers/test/test_close.html
rename : dom/src/threads/test/test_closeOnGC.html => dom/workers/test/test_closeOnGC.html
rename : dom/src/threads/test/test_errorPropagation.html => dom/workers/test/test_errorPropagation.html
rename : dom/src/threads/test/test_fibonacci.html => dom/workers/test/test_fibonacci.html
rename : dom/src/threads/test/test_importScripts.html => dom/workers/test/test_importScripts.html
rename : dom/src/threads/test/test_json.html => dom/workers/test/test_json.html
rename : dom/src/threads/test/test_longThread.html => dom/workers/test/test_longThread.html
rename : dom/src/threads/test/test_navigator.html => dom/workers/test/test_navigator.html
rename : dom/src/threads/test/test_recursion.html => dom/workers/test/test_recursion.html
rename : dom/src/threads/test/test_relativeLoad.html => dom/workers/test/test_relativeLoad.html
rename : dom/src/threads/test/test_simpleThread.html => dom/workers/test/test_simpleThread.html
rename : dom/src/threads/test/test_suspend.html => dom/workers/test/test_suspend.html
rename : dom/src/threads/test/test_terminate.html => dom/workers/test/test_terminate.html
rename : dom/src/threads/test/test_threadErrors.html => dom/workers/test/test_threadErrors.html
rename : dom/src/threads/test/test_threadTimeouts.html => dom/workers/test/test_threadTimeouts.html
rename : dom/src/threads/test/test_throwingOnerror.html => dom/workers/test/test_throwingOnerror.html
rename : dom/src/threads/test/test_xhr.html => dom/workers/test/test_xhr.html
rename : dom/src/threads/test/test_xhrAbort.html => dom/workers/test/test_xhrAbort.html
rename : dom/src/threads/test/threadTimeouts_worker.js => dom/workers/test/threadTimeouts_worker.js
rename : dom/src/threads/test/xhr_worker.js => dom/workers/test/xhr_worker.js
2011-07-28 18:10:31 -07:00
Tom Schuster
5d42be833c
Bug 652771 - Update Unicode character support for space categorization, also somewhat for uppercase and lowercase (although these will only be fully fixed in followup bugs). r=jwalden. Further (lumped together to address interdependencies): Bug 672760 - Don't pass the EOF non-character to any of the Unicode character-categorization functions. r=jwalden
...
--HG--
extra : rebase_source : f415de9c0c9e58e3a28d6cd7e474ab1370d2d244
2011-07-26 14:10:33 -07:00
Jeff Walden
518fa9f4fa
Bug 674775 - Implement js::IndexToString to get a JSString corresponding to a uint32_t. r=luke
...
--HG--
extra : rebase_source : 4933683a4d051521d2ba3bad0f16b5f5dc01e03d
2011-07-27 17:09:12 -07:00
Brian Hackett
89a7a7eac5
Merge MC -> JM
2011-07-15 14:40:15 -07:00
Jeff Walden
7090baef12
Bug 676700 - Slightly speed up js::IndexToId by converting directly to atom, not to string and then to atom. r=luke
...
--HG--
extra : rebase_source : d352929e4002f285670448e4515bea404f2cf88f
2011-08-04 19:21:25 -07:00
Brian Hackett
1b078f3536
Merge TM -> JM
2011-07-05 18:22:24 -07:00
Brian Hackett
dee99963bb
Merge TM -> JM
2011-07-01 16:24:32 -07:00
Jeff Walden
d967e5e20f
Bug 671143 - Rename ValueToNumber to ToNumber, to be more like the spec nomenclature. r=cdleary
...
--HG--
extra : rebase_source : e85fbadd77adc048f5e443cd9ed96b0035954674
2011-06-13 21:49:59 -07:00
Brian Hackett
fa41f89faf
[INFER] Read barriers for call results, bug 663381.
2011-06-10 19:03:57 -07:00
Jan de Mooij
1bff4c0c56
[INFER] Fix parseInt to return integers instead of doubles where possible, rewrite some setNumber calls, bug 662766. r=bhackett
2011-06-08 20:11:42 +02:00
Makoto Kato
cd7ae32ee3
Bug 635617 - 64-bit crash [@ MakeDay] r=jwalden
2011-06-08 10:41:37 +09:00
Brian Hackett
82abccdd14
[INFER] Move inference methods out of JSContext, bug 657412.
2011-06-02 10:40:27 -07:00
Brian Hackett
4cb0c5c5ef
[INFER] Cleanup for review, bug 657412.
2011-05-16 22:59:40 -07:00
Brian Hackett
98763bc2cb
[INFER] Move addTypeProperty barriers under obj->setProperty, obj->defineProperty, bug 619693.
2011-05-16 16:15:37 -07:00
Brian Hackett
c930c3e982
Merge TM -> JM
...
--HG--
rename : js/src/GlobalObject.cpp => js/src/vm/GlobalObject.cpp
2011-05-09 09:49:48 -07:00
Brian Hackett
417f1e64b9
[INFER] Remove on stack recompilation, allow removed on stack JIT frames to rejoin into the interpreter, bug 650163.
2011-05-09 07:12:47 -07:00
Paul Biggar
b7a5a9115b
Bug 653153: Fix the parseInt fast path doubles above 1e21 (r=jwalden)
...
The spec says parseInt needs to convert to a string before being converted to
an integer. For 1e+21 (and greater), ToString uses exponential notation:
"1e+21", which get's parsed as 1. The existing parseInt fast path for doubles
converted it directly into an integer, giving the result 1e21. The fix adds a
bounds check to see if the exponential notation is triggered, and still uses
the fast path if not.
2011-05-07 05:31:59 -07:00
Jeff Walden
7a0e72f576
Actually populate the dtoa cache correctly in js::IndexToString. r=luke over irl
...
--HG--
extra : rebase_source : eef9c49c3a8cc41d6c0926734e35743e25f4ff23
2011-08-03 12:39:55 -07:00
Brian Hackett
838352f9db
Merge TM -> JM
2011-04-28 13:02:47 -07:00
Brian Hackett
e90a588261
[INFER] Define static functions after defining the class for Number, String, bug 647537.
2011-04-03 13:14:38 -07:00
Jeff Walden
af6649155f
Bug 647385 - Implement a ToInteger helper that corresponds to the spec method (rather than inlining its contents everywhere it can be trivially used). Also fixes a couple bugs in one place that should have used ToInteger but didn't. r=cdleary
2011-04-02 11:33:20 -07:00
Brian Hackett
8b7888dd66
Merge TM -> JM
2011-04-01 19:57:28 -07:00
Paul Biggar
43b850291d
Bug 643548: Remove mozalloc_undef_macro_wrappers hack from JS engine. (r=luke,rs=brendan)
...
mozalloc_undef_macro_wrappers are brittle and have side-effects that are hard
to debug and fix. The alternative is the just stick an underscore on the end of
malloc, free, etc, which is a comparatively small burden.
2011-03-31 01:14:12 -07:00
Paul Biggar
72c7701093
Bug 634155: Account for NewCompartment's memory, and change allocation APIs (r=nnethercote)
...
This changes the allocation API, in the following way:
js_malloc -> {cx->,rt->,OffTheBooks::}malloc
js_calloc -> {cx->,rt->,OffTheBooks::}calloc
js_realloc -> {cx->,rt->,OffTheBooks::}realloc
js_free -> {cx->,rt->,Foreground::,UnwantedForeground::}free
js_new -> {cx->,rt->,OffTheBooks::}new_
js_new_array -> {cx->,rt->,OffTheBooks::}new_array
js_delete -> {cx->,rt->,Foreground::,UnwantedForeground::}delete_
This is to move as many allocations as possible through a JSContext (so that they may be aken into account by gcMallocBytes) and to move as many deallocations to the background as possible (except on error paths).
2011-03-31 01:13:49 -07:00
Luke Wagner
de6d0e2330
Bug 665189 - hoist JSString and family into vm/String{.h, -inl.h, .cpp} (r=njn)
2011-06-20 11:44:20 -07:00
Igor Bukanov
973ee9f2df
bug 664677 - initializing number and script state when creating the runtime. r=anygregor
...
--HG--
extra : rebase_source : 7e16c8649723bb67205343c0c7cf230e7e04a8c0
2011-06-16 11:42:35 +02:00
Jeff Walden
ce0eef97b4
Bug 663245 - Reduce exposure of jsbool.h, jsiter.h, and jsstr.h outside the JS engine to ding compile time less when they're touched. r=jimb
...
--HG--
extra : rebase_source : 426b168d126099956836c73cd082860bfc77f578
2011-06-10 11:44:16 -07:00
Jeff Walden
9d216339ba
Bug 646129 - [[DefaultValue]] on Date objects is wrong when called with no hint. r=luke
2011-04-01 15:24:21 -07:00
Brian Hackett
d737bb3ddb
Merge TM -> JM
2011-03-22 18:07:31 -07:00
Luke Wagner
7c96945e3c
Bug 613457 - clean up string interfaces (r=njn)
...
--HG--
extra : rebase_source : 3e77b67fa9fe2cc31312ad99951cf92258a98e64
2011-03-14 13:59:53 -07:00
Brian Hackett
d639ada378
Merge TM -> JM
2011-03-09 09:58:49 -08:00
Luke Wagner
c31e87d3ab
Bug 589735 - Allow static JS strings to be turned off; turn off on ia64 (r=igor)
...
--HG--
extra : rebase_source : 14b5ac9b1d09416cb05269c192603a427e97f301
2011-08-24 14:28:28 -07:00
Brian Hackett
666b5642e8
[INFER] Turn inference on by default, fold JS_DefinePropertyWithType into JS_DefineProperty, bug 619693.
2011-03-06 22:57:13 -08:00
Brian Hackett
41091b1bb6
[INFER] Fix OOM handling in type inference, convert inference to runtime option, bug 637674.
2011-03-03 14:07:48 -08:00
Brian Hackett
0a2cdd3c56
Merge TM -> JM
2011-02-25 18:21:43 +13:00
Jim Blandy
de75b9fa19
Bug 537873: Add a 'strict' argument to C++ property setter functions. r=brendan
...
This changes the type of setters to JSStrictPropertyOp, which is just like
JSPropertyOp except that it takes a 'JSBool strict' argument. Most of the
patch is introducing distinct types and using the appropriate stubs.
The following are left for subsequent patches:
x Similar fixes to the browser outside SpiderMonkey.
x Actually *using* the newly available strictness information. This patch
should have no user-visible effect. I didn't want the interesting stuff
to get lost in this noise.
2011-02-09 11:31:40 -08:00
Jeff Walden
1f98843746
Bug 557371 - Make JSON.stringify behavior on Boolean, String, and Number objects to-spec. r=jorendorff
2010-12-31 11:41:23 -06:00
Brian Hackett
89bb1d08e8
Merge TM -> JM
2010-12-20 09:06:43 -08:00
Brian Hackett
baf09eaede
[INFER] Objects with same shape have same type, objects with same type have same prototype, bug 619271.
2010-12-18 20:44:51 -08:00
Luke Wagner
d8719356c0
Bug 609440, part 4 - make JSString::chars() fallible (r=waldo,dvander,igor,dwitte,njn)
2010-12-06 10:26:58 -08:00
Brian Hackett
ee3f068ff9
Merge TM -> JM
2010-11-18 21:09:24 -08:00
Brian Hackett
e225da4233
Merge TM -> JM.
2010-11-12 09:02:43 -08:00
David Anderson
7487c14d37
Backed out changeset 8e119f847f97 (build busted)
2010-11-11 11:19:42 -08:00
Igor Bukanov
e32ba97023
bug 610198 - Replacing JS_GetStringBytes usage with JS_EncodeString. r=gal
2010-11-02 15:36:25 +01:00
Luke Wagner
fe37ac898b
Bug 610848 - merge js::Int32ToString and js_IntToString (r=waldo)
2010-11-10 11:43:22 -08:00
Brian Hackett
696cff5132
[INFER] Javascript type inference, bug 557407.
2010-10-29 08:05:55 -07:00
Jeff Walden
ca6294d553
Bug 607148 - Remove unnamed namespaces from SpiderMonkey code. rs=luke
2010-10-25 16:47:11 -07:00
Tom Schuster
b7057e3464
Bug 594233 - speed up js::DefaultValue on Number builtin with void hint (r=lw)
...
--HG--
extra : rebase_source : e06f43fe67eef83dd7c6d56417be8395184d40dd
2010-10-19 10:39:55 -07:00
Jeff Walden
fcbd8eb10b
Bug 514570 - 1 - Convert primitive-this-of-type function flags into a single primitive-this flag, to pave way for strict mode unadulterated-this passing. r=jorendorff
2010-10-12 11:50:02 -07:00
Igor Bukanov
a18b8a8142
bug 617215 - eliminating JS_NewString usage in FF while fixing a leak there. r=bz
2010-12-09 11:22:15 +01:00
Luke Wagner
91e9e4d5be
Bug 608120 - optimize js_ValueToString on int32s (r=waldo)
2010-11-08 14:35:27 -08:00
Igor Bukanov
52ea348c4c
bug 610198 - Replacing JS_GetStringBytes usage with JS_EncodeString. r=gal
2010-11-11 21:40:29 +01:00
Jason Orendorff
630900ee20
Finally get rid of /* Added by JSIFY */ comments. r=Waldo.
2010-10-01 18:46:54 -05:00
Jason Orendorff
00704fa52d
Bug 595297 - Portable serialize/deserialize implementation of the HTML5 structured cloning algorithm (jsclone.cpp). r=gal.
2010-09-30 19:47:10 -05:00
Nicholas Nethercote
687594069c
Bug 558799 - Import FastDtoa code from V8. r=gal.
2010-09-15 11:49:12 -07:00
David Mandelin
dca5850bce
No bug, fix windows build bustage due to int32 type mismatch, r=burning, rs=njn
2010-09-13 14:52:33 -07:00
Nicholas Nethercote
837cae8aad
Bug 590834 - Clean up number-to-string code. r=jwalden.
2010-09-13 13:08:25 -07:00
Luke Wagner
5e9978f911
Bug 581263 - remove slow natives (r=waldo,mrbkap)
2010-08-16 12:35:04 -07:00
David Mandelin
3c5fb61303
Backed out changeset c29356cef6d4 -- it was a temporary diagnostic
2010-11-22 15:21:54 -08:00
David Mandelin
6a57c1e58d
Bug 605033 diagnostic: check whether we are crashing on holes, r=lw, a=betaN+
2010-11-18 12:56:27 -08:00
David Mandelin
48342132f5
Merge from Tracemonkey.
2010-08-04 11:30:05 -07:00
Alan Pierce
91aa99b486
[JAEGER] Reland bug 576934: special-case parseInt(double) in num_parseInt, r=dvander
2010-08-03 15:47:58 -07:00
Jim Blandy
0201054fcc
Bug 583925: parseInt should not depend on its caller's strictness. r=waldo
2010-08-02 18:04:29 -07:00
Jeff Walden
9bb90b0bc3
Bug 583126 - parseInt(string) traceable native ignores OOM. rs=jorendorff
...
--HG--
extra : rebase_source : b9244f62e7f4bc0e0db96a7b5fa21b43ffc1b7de
2010-07-30 17:25:20 -07:00
Jeff Walden
5891afb00c
Followup to bug 577536: move parse-as-octal inference to a slightly different location so as not to cause |parseInt('0A', 16)| to be parsed as octal. r=jorendorff
2010-07-30 14:39:51 -07:00
Jeff Walden
a38463c8a4
Bug 577536 - parseInt() uses radix 8 if the string starts with '0' but not 0x or 0X, and the digit string should be stringified before the radix is integerized. r=jorendorff
2010-07-23 02:29:44 -05:00
Igor Bukanov
2019c722fb
bug 571789 - merging JSObjectOps and JSExtendedClass into JSClass. r=jorendorff
2010-06-12 18:29:04 +02:00
Igor Bukanov
181c2cdf3a
Backed out changeset 7b2b90efe57d -- the patch was landed against a tree with a lot of orange. This will hinder the orange resolution.
2010-07-28 14:36:06 +02:00
Igor Bukanov
a69fd0a49f
bug 571789 - merging JSObjectOps and JSExtendedClass into JSClass. r=jorendorff
2010-06-12 18:29:04 +02:00
Nicholas Nethercote
9dfbe8877d
Bug 552812 - nanojit: factor out AccSet differences into TM and TR (take 3, TM-specific part). r=gal.
2010-07-27 22:33:42 -07:00
Nicholas Nethercote
be11c2f1c9
Backout TM-specific patches for bug 552812 due to assertion failures on Win2003.
2010-07-26 00:03:02 -07:00
Nicholas Nethercote
03a540e016
Bug 552812 - nanojit: factor out AccSet differences into TM and TR (TM-specific part). r=gal.
2010-07-25 21:23:02 -07:00
Alan Pierce
879d3e777d
Bug 578205 - Keep string characters inline for small strings (r=gal)
2010-07-24 20:26:34 -07:00
Luke Wagner
5f73207275
Remove js::Value default ctor (jsval doesn't have one) (no bug)
2010-07-23 17:16:00 -07:00
Luke Wagner
015cd3448d
Bug 579647 - use canonical nan in js_dmod (r=dvander)
2010-07-19 11:28:13 -07:00
Luke Wagner
99411cc93d
Bug 549143 - fatvals
2010-07-14 23:19:36 -07:00
Chris Jones
7204a29e23
Compile with -D__STDC_LIMIT_MACROS to avoid having to fight with system headers over which includes stdint.h first. irc-r=jimb,Waldo
2010-07-12 18:06:23 -05:00
Igor Bukanov
fe84ed0d56
bug 572494 - removal of JSObjectOps::defaultValue, r=jorendorff
2010-07-07 09:53:47 +02:00
Bill McCloskey
8e7e07dfaa
Bug 623297 - Make JS_TRACE_MONITOR more robust by distinguishing callers (r=gal)
2011-02-01 10:18:06 -08:00
Bill McCloskey
3c8509742b
Bug 623297 - Reduce usage of JS_TRACE_MONITOR in jstracer (r=gal)
2011-02-01 10:16:44 -08:00
Luke Wagner
d7acf11bcb
Bug 627959, part 3 - move dtoaCache into the compartment (r=billm)
...
--HG--
extra : rebase_source : 19f2f0bebdfa7f8b349086be18847ffeb834ef4e
2011-01-24 16:30:16 -08:00
Chris Leary
29a4e97a8f
Bug 617935: Check string lengths using StringBuffer. (r=lw)
2011-01-12 15:28:58 -08:00
Jeff Walden
430108f273
Back out 567f16dd81f3, an existing test is bad, and by appearances poisoning of Boolean.prototype, Number.prototype, and String.prototype will make it hard to quickly fix. r=the O in ROYGBIV
2011-01-11 16:29:09 -06:00
Jeff Walden
0b3ec174d4
Bug 557371 - Make JSON.stringify behavior on Boolean, String, and Number objects to-spec. r=jorendorff
...
--HG--
extra : rebase_source : f329e9274b79abd264cf254d6d95a1b97f466ab9
2010-12-31 11:41:23 -06:00