« first day (1482 days earlier)      last day (3364 days later) » 

4:00 PM
if a complete rewrite is necessary is of course difficult to prove for anyone
 
But you did it somehow. Because you are right without arguing.
Or you didn't do it and you are just talking. I think that's more likely.
 
then read it again, I said a rewrite isn't a minor change, what's about to argue there?
 
"a complete rewrite is necessary" is still up in the air.
 
@David What's stopping you from posting your 210 byte version here right now and we can see if we can shorten it below 200 again?
 
That a rewrite would be necessary is just experience, since I tried this challange years ago
It's linked in the question
S=(s=$*.index"-s")?$*.slice!(s,2)[1].to_i: 2
def b i=1
[' -  ','  ||'][@x&1][i*(1&"w$]m.k{%\177o"[@z.to_i]>>@x/2*3+i-1),1]end
5.times{|@x|puts(([S,1][@x&1]..S).map{$*[0].split('').map{|@z|b(2)+b*S+b(3)}*' '})}
 
4:02 PM
oh right
 
probably doesn't work with ruby 1.9 anymore, so you have to use 1.8.7
 
you can format that as code if you press up-arrow to edit the message and then hit ctrl+K
 
@DavidOngaro oh right, I don't have a lot of golfing experience pre-1.9
I didn't learn Ruby before 2.1.something
for instance, the first thing I'd do is rewrite that b as a lambda
 
My comments are starting to border on harassment so I'm going to stop.
Just vote and move on. Let others vote how they want.
2
 
4:05 PM
@David that is impressively obfuscated though :D
on a different note, do you play Go by any chance?
 
yeah, why?
 
because I thought your name can't be that common ;)
I used to play Go in Berlin
 
achso ;)
 
@MartinBüttner I'm too scared to try :(
 
but not anymore?
 
4:06 PM
well, for one thing I'm currently living in London ;)
but no, I stopped playing when I moved for some reason... I might pick it up again when I'm back in Germany
 
ic
but they have a nice tournament at the end of the year
 
yeah, I actually attended that once before I moved here :D (2009 I think)
 
yeah, I used to live in Hamburg but now I'm in Bellevue (Washington)
 
oh, right... that's a bit further away
 
Is there a "score a Go board" challenge?
 
4:08 PM
@PhiNotPi yes
currently on the front page
@TheBestOne what's there to be scared about? ;)
 
Oh... okay.
 
@David what's the @x syntax in your code?
 
@MartinBüttner No-one I know knows what Go is. I would have to start out against a computer.
 
ah, that's a shame. surely, there must be some clubs somewhere near you?
 
@x? An instance variable
 
4:12 PM
Shame on you Martin for directing him to a gogo club
 
oh, right... I rarely use classes in Ruby :D
(because I only really use it for golfing)
 
you always do, since all code is implicitely run in the context of an Object instance
 
what does that do outside of a class though? does that make it an instance variable of Kernel or something?
oh Object
so you could also make it $x to use a global or something?
 
But I used a little trick here to use the instance variable as a block paraemter (`|@x|`
), that probably doesn't work in ruby 1.9 anymore
 
ah I see
 
4:16 PM
shortest way to check if a string is same char string ?
 
the parentheses after puts look extraneous to me
@Optimizer you mean if an array has all elements the same?
 
yeah, in the context of Object it's not a big difference to $x
 
yes
 
is it guaranteed to be non-empty?
 
yes.
 
4:17 PM
)-!
 
if I remember correctly I had to simplify the expression [i*(1&"w$]m.k{%\177o"[@z.to_i]>>@x/2*3+i-1),1] to snip of 20 more bytes, but it might be that I had to change the approach in some parts
 
what's with the ,1 in there? doesn't that just specify a length that should default to 1 anyway?
 
@MartinBüttner cool, reduced 1 byte , 3 more to go
 
what challenge?
 
yeah, but the problem with ruby 1.8.7 was that it gives back a character instead of a string with a length of 1
 
4:21 PM
@Optimizer (courtesy of user23013)
 
I think that's better in Ruby 1.9
 
@DavidOngaro oh right. yeah that's different too, now.
 
@Doorknob Sandboxed dropped off of the featured meta posts list (again).
 
yeah, this codegolf teached me a lot about the interpreter details
 
@Rainbolt hm, not yet for me
 
4:23 PM
@Doorknob Nevermind. I'm on the wrong site. Lol.
What, Board and Card Games doesn't have a sandbox? Psh.
These days, I can't ask a proper MTG question without totally giving away that I stumbled across the answer while writing the question.
 
@Rainbolt Is that considered a bad thing on BCG?
 
I despise questions that answer themselves. I vote to close them all as unclear.
 
I'm not sure if you're kidding or not.
 
I'm not kidding
BCG gets questions like "This card says to exile three cards. How many cards do I exile?"
 
whether a question is bad/trivial is completely independent of whether the author knows the answer already
 
4:29 PM
But here's the catch. If I say "Three.", have I answered his question?
 
sure, but that's a bad question
it doesn't matter who answers it
 
How can "Three." possibly be an answer to that kind of question?
He was already told to exile three cards. What good does it do to tell him a second time?
 
2 more bytes to go
 
@Rainbolt I don't know. which is why it's a bad question.
I don't see the relevance of who answers it though.
 
In my opinion, answering your own question rules that explanation out. You obviously do not understand that explanation. So you need something else. What do you need? I don't know, so I vote to close as unclear.
 
4:32 PM
I feel like we're not talking about the same thing.
 
What basic data types are useful for code golfing?
 
What if someone asks a "normal" question and answers it themselves?
@TheBestOne arrays?
I guess sets can be handy every now and then.
 
@MartinBüttner: Your last tournament seems quite a while ago ;) europeangodatabase.eu/EGD/Player_Card.php?&key=15362204
 
yeah, I moved right after that EGC ;)
 
@MartinBüttner It would depend on how obvious the answer is. Sometimes the answer uses one terminology, and the question uses different terminology. Maybe the confusion lies there. I'm talking about questions that literally say "Foo is Bar. What is Foo?"
 
4:34 PM
@Rainbolt right, well that's just a stupid question then.
I understood you like you close every question as unclear where the author answers their own question (in an answer)
 
Oh no. I mean they answer it in the question itself lol
 
oh right
 
We had a closed question that said "Grindclock has three counters on it. How many counters will it have after I activate its first ability?"
And I really got into it with another user on BCG because of that question
 
1 more byte to go
 
@MartinBüttner Would fractions, integers, doubles, sets, lists, maps, and code blocks be good?
 
4:37 PM
sure
complex numbers maybe
 
Oh, I forgot strings and characters.
 
Oh man the MTGSalvation description of this card almost made me tear up. mtgsalvation.gamepedia.com/Splendid_Genesis
 
I like CJam's approach of strings just being arrays of characters
 
Would images be a good idea?
 
@Rainbolt That sounds like a bad question in that the answer depends on the level of pedantry in interpreting the question. (With my ex-rules-advisor hat on, I would say "Three. However, once the activated ability resolves...")
 
4:44 PM
@PeterTaylor True. You could write an if/else answer to cover that, but then you are still left wondering "How do you even play Magic if this is a source of confusion for you?"
 
@TheBestOne there are probably more pressing data types than images ;)
 
0
A: Sandbox for Proposed Challenges

britishtea Noel Constant did it without genius and without spies. His system was so idiotically simple that some people can't understand it, no matter how often is is explained. The people who can't understand it are people who have to believe, for their own peace of mind, that tremendous wealth...

 
Is Noel Constant real or made up?
 
The quote is from a novel, so I assume made up: –Kurt Vonnegut, Sirens of Titan
 
3 Pyte difference :P
(I am sure isaac will come up with a shorter technique though)
 
4:57 PM
That post reminds me of A Random Walk Down Wall Street
 
Hey ho
I just made a new J solution to my own challenge from 2½ years ago:
15
Q: Score a game of Go

FUZxxlScoring a Go game is a task that is not all too easy. In the past there have been several debates about how to design rules to cover all the strange corner cases that may occur. Luckily, in this task you don't have to do complicated stuff like life and death or seki detection. In this task, you h...

It beats the Golfscript solution :-)
Lets see if I can come up with further improvements.
 
Congrats!
can't upvote though, I don't have J installed
 
It probably doesn't work there as input comes from stdin
Ah, it works.
 
5:12 PM
hm, copy and paste doesn't work. do I have to retype it!?
 
I think I've found the last bug in the Genetic Rat Race java controller. I'm doing a test right now.
 
Oooh cool. I just got a link to Jimmy John's group order and was told to order whatever I want. So today is free sandwiches, and tomorrow is bacon.
 
I'm not sure.
Try to copy'n'paste line by line.
The first line should query for input.
Otherwise, you could install J.
 
5:32 PM
@FUZxxl: ok I got the first line to work and could enter input, but it says "value error: f" on the second line
 
Can you type f and tell me what the result is?
Can you also type $ f and tell me what the result is?
This is weird.
 
   f
|value error: f
   $f
$ f
sorry it seems i missed f= on copy and paste...
 
...
and for the second line, drop the exit
because it doesn't work on tryj
 
I see
it uses chinese counting?
 
kinda
it uses tromp-taylor counting which is like Chinese counting without life and death rules.
 
5:50 PM
I see
yeah, I tried a few testcases and it looks fine for me
 
great.
It makes me all warm and fuzzy to beat golf-script.
 
yeah, J isn't designed for golfing, right?
 
Not intentionally.
It's an APL dialect. The designers believe in terse code.
 
so in APL it could be even shorter, since you could use non-ascii characters?
 
probably
 
5:56 PM
@DavidOngaro APL doesn't really have that many more characters, it just uses a weird character set, because it predates ASCII
 
but byte wise it probably wouldn't be shorter due to encoding
 
although I think it does make use of most of it's 1-byte codepage (as opposed to ASCII)
 
But J eliminated some weird syntax from APL and introduced some nifty new things.
 
I like our newest member's picture: codegolf.stackexchange.com/users/38014/anu
 
A few things are harder to express in APL than in J
 
5:57 PM
ic, so you would even need a special codepage
 
but that codepage exists, so APL is usually counted as 1 byte per character
 
It's funny too see all these peoble being pissed off because APL doesn't get penalized for having special characters.
Nowadays APL has been introduced into Unicode,
but you can still use the old codepage.
But you have to be careful as some newer things (like rank and key) are not part of the APL codepage.
 
What does APL even stand for?
 
a programming language
 
6:02 PM
Why do you ask then?
 
Or array programming language, according to some sources.
 
No, APL is named after the book »A programming language« by Kenneth Iverson where he introduces notation that later evolved into APL.
APL started out as an interpreter for Iverson's mathematical notation and only accidentally became a programming language.
And J is APL revised.
 
That is the most hilarious name. (APL)
 
It's called J because J is easy to type.
 
6:04 PM
so what counts as "exists"? can I define a codepage for my next 1 character submission which decodes to a working program? ;)
 
»exists« as in »is standardized«.
Of course, you can make your own programming language with your own codepage.
Nobody will stop you.
You can even participate in future contests!
 
Don't do another H9Q+
 
@DavidOngaro normally, "exists" means that it must have existed before the challenge was asked and that a working interpreter "exists" for those assumptions (in this case, the codepage)
 
@MartinBüttner The last line removes Programming Languages like English.
 
6:07 PM
and APL exists for some 50 years now, so it's pretty much a real thing.
 
@TheBestOne I think PPCG should count as "an interpreter" for English. You type in what you want to do, and it spits out runnable code in a variety of languages :P
9
 
It's buggy as hell, though, and doesn't always follow the spec. Oh well, you get what you pay for.
3
 
And I get imaginary internet points.
 
Just think of comments under the question as warnings/errors.
 
6:12 PM
You can even import libraries (Wikipedia)
 
> Ambiguous statement on line 4: Did you mean "pseudorandom"?
 
hrhr
sadly, the interpreter doesn't like things that are too hard or too easy or too vague or too strict or too i-don't-like-this or too my-language-isn't-suitable-for-that
see you guys
 
...working interpreter...
 
@FUZxxl I'm at 119 chars...
 
@Geobits also, each program can be interpreted at most once (where the definition of equality between different programs is decided rather arbitrarily by the interpreter)
2
 
6:17 PM
And it has very oddly distributed interpretation times. Sometimes it gives the answer in minutes, sometimes in years.
 
I don't think that counts as a working interpreter.
 
I didn't say it works well...
But it does the job most of the time. 98% answered rate last I looked ;)
 
Despite warnings :)
 
Debugging is a pain, though. Good thing there's a sandboxed area dedicated to that.
 
You're missing the rather important matter that the interpreter is self aware, and meticulously documents it's on going internal conflicts on what it considers a suitable program for it to interpret in this thing called "meta"
 
6:20 PM
Not just self aware, but schizophrenic. Nice :D
 
I officially feel inferior to PPCG
 
@StackExchange Thank you for welcoming us into chat :)
 
WTH... Wiki (or Chrome) is acting strange on me. At this page the link right above the reference section (International Ranking of Household Income) doesn't want to be clicked. It jumps to another column the first time I click it. Then it jumps back if I click the empty space where it was.
Maybe it isn't just PPCG that's self-aware.
 
haha, same here, that's amazing :D
 
Oh cool. The double/triple-click highlighting still works even when clicking the blank space. What a weird issue.
 
6:30 PM
Works as normal in Firefox.
 
(and Old Opera and some version of IE)
 
Google AI project confirmed
I'm trying to find another unevenly multi-column "see also" list to test it on another page, but they're surprisingly rare.
 
just in case anyone here is affected.
the password of the pem is also released . so its more scary now.
 
have to go to work, cu
 
Am I right that it only affects Lenovo users using a preinstalled copy of Windows? If so, no worries here, but thanks anyway for the heads up.
 
6:43 PM
you can always check on
 
@Optimizer Looks like it effects me.
 
services, programs and windows ca store
 
thanks. I've got a Lenovo, but I don't seem to have that software... I may have razed the system completely right after I've got the laptop, I don't remember.
 
Alright, grid-routing battle is now on.
 
6:58 PM
nice
 
7:09 PM
Seems like we'll hit 3000 questions in a couple of days.
 
yep
depends a bit on whether we're counting the locked questions or not
 
@PeterTaylor I'm looking forwards to your answer.
@PeterTaylor Does your solution exit?
 
7:32 PM
You would think that a website designed to improve communication would have subject verb agreement on the front page. communicatebetter.io
And all that bold...
and italics...
AND highlighting...
 
PRODUCED BY SOME THE MOST PROLIFIC EXPERTS IN COMPANY COMMUNICATION: some businesses I've never heard of.
 
"and create product people love"
 
It also bothers me that they title case words inconsistently. "To" is capitalized in some places, but not in others.
@Zgarb "reasoned that there would be more Object Sexuality individuals if childhood trauma were a factor" that makes me sad for some reason
 
7:49 PM
@PeterTaylor I'd love to see your solution.
 
I don't suppose the grid-routing interpreter has a sweet real-time, color-coded grid I can watch, huh? :P
(purely for testing purposes, of course)
 
@Geobits Nope. :D There's an ASCII display option that prints the final grid after each round, though.
 
Oh, well that sounds good enough.
I thought there was nothing :D
 
8:05 PM
@PeterTaylor Brought it down to 119 characters on my own.
 
8:19 PM
@Geobits I was able to compile and run your submission (had to use the classpath option), but the controller hangs when it tries to read he bot's message.
I have to go now, but just to let you know.
 
I'll take a look once I get to a sane computer. Thanks.
 
Holy cow. The Jewish law and tradition site regulates when joke questions can be asked.
We should follow suit and allow code trolling challenges only between 1 PM and 3 PM on the 1st, 2nd, 3rd, 5th, 8th, 13th, and 21st of every month.
 
good idea.
Let's do this.
1 PM Siberian time.
of course.
 
This is so strange. "@NBZ In accordance with a famous ruling of R' Moshe Feinstein, you may follow your differing minhag around here, but only silently. So, you may post your Purim Torah in Adar I and delete it before anyone else reads it, then undelete in Adar II."
So basically, they encourage people to post parody material, and then immediately delete it, and then undelete it during Adar II
 
8:37 PM
@FUZxxl Managed to get below 119 once I started golfing it.
 
So on February 18 that means they would have a huge influx of parody material. Then, on March 7, every single parody question gets closed as Too Localized.
 
@PeterTaylor And I managed to get mine to 117. Let's see if I can get it to be even shorter…
@PeterTaylor “input may not be part of the source code”
you seem to violate that rule.
 
No, the input isn't part of the source code. But for the online demo, there's no separate field for stdin, so what we always do is to pop the empty string and supply the contents of stdin as a string.
 
I see.
I don't speak golf script.
So that makes sense.
I think I have an idea for my C solution, too.
 
One of my coworkers just entered a TFS work item titled "nothing to do", and it popped up in everyone's news feed. I smell bad things coming.
 
8:44 PM
Even my 8 year old knows better than that :P
 
When I have nothing to do, I start refactoring code and breaking everything.
I create job security.
 
9:34 PM
why is everything removed?
 
So, I had my department head come into class today to discuss how to handle class fees, and my teacher thought that he didn't handle it well. Anyways, my teacher has been blowing up about the issue, bccing all of the students, finally saying that "your pride is getting in the way"
 
Class fees are like "This class has a lab, and I need each of you to pay $25 in order to cover it. There's also a book, and that costs $150."?
Or are you talking about something else?
Also, you never blind copy someone unless you are sending out a mass email and you want to protect addresses from "reply all"
That's like initiating a three way phone call with your boss with the customer on the line except that he doesn't know the customer is on the line.
 
hm, looks like I'll need to do quite a bit of downvoting if I want that 33,333 screenshot...
 
9:50 PM
well, there was a Fee, but it never got used
so, they are trying to figure out how to refund it
he told the head that he was BCCing
 
:-(
everything is removed
 
@NathanMerrill Where does pride come into that?
 
the teacher thinks it should be straight up refunded, while the head wants to have it go towards something class-related
 
Why does the teacher think he has any say whatsoever in the matter?
It's the head of the department's job to care about stuff like that.
Dean: worry about academics
Head (a.k.a. Chair): worry about business
Teacher: Teach
Student: Learn
That's your org chart. Pass it on to your teacher.
 
I agree
Its not just his response that baffles me, but that he bccs the entire class
 
9:57 PM
Yes! Hit the rep cap for the first time today.
 
Congrats. I've never hit the rep cap, and I have two challenges with over a hundred votes. Seems like slow and steady beats out the one shot rep fountains.
 
My high school principal is about to unleash divine judgment upon our senior class.
 
Well, I have this answer for which I got 200 rep in one day (I think).
81
A: Go isn't linking my assembly: undefined external function

FUZxxlYou are using the wrong dot. instead of TEXT .mul(SB),4,$0-48 write TEXT ·mul(SB),4,$0-48 and everything works just fine.

 
@PhiNotPi Advantages of being home schooled.
 
I actually liked school.
Might be because the German school system isn't all fucked up.
 
10:04 PM
School was great fun (England)
we didn't learn anything, but I think that's beside the point
 
It's not something I personally have to worry about, it's the 57% of seniors who are failing at least one class this year.
 
I dropped Anatomy and Physiology the second I was doomed to make a B. But I'm assuming that these guys are failing classes that they absolutely need to have in order to graduate?
 
@MartinBüttner Okay, sure
yesterday, by Martin Büttner
@Calvin'sHobbies You're the hero we don't deserve, but need right now.
@Calvin'sHobbies ^ ;)
 
I did as much as needed to get a decent grade. Nothing more nothing less.
Math teachers liked me, never gave me less than 12 points (B+) despite me never doing any homework.
 
there was a brief time when I thought I might get into Oxford during which I considered doing some work, but then they rejected me so that didn't happen
 
10:10 PM
I found out that there is no barrier to study math and CS nearly everywhere in Germany, so I didn't bother getting high grades.
 
It really shouldn't be that difficult, at all, to graduate.
It's just that a lot of people stopped caring.
 
yeah. People who stop caring are the worst.
I never stopped caring, I realized what is needed to reach my goal.
 
I'm home schooled because the standard curriculum was too slow for me.
 
I started to diverge my priorities into other things, like being headboy in my school.
@TheBestOne In Germany, we have a three-track school system so faster people can go into a faster track.
I never became headboy.
I was too unpopular.
But I managed to influence the school's administration and got some things for the students.
It was nice.
 
@FUZxxl That still might have been too slow for my math skills.
Unfortunately, homeschooling is illegal in Germany.
 
10:16 PM
@TheBestOne Well, I went to a school with an enriched math curriculum. It was great.
We did so much, I got to skip half a year of university.
We have the best chess club in Berlin.
 
I'm hopefully going to skip 2 years of math in college.
 
I'm taking a bunch of AP classes, which can count towards college credit.
 
Homeschooling should be illegal. I can see that it works in rural areas, but it's a bad idea in a country where there are no real rural areas.
@PhiNotPi We didn't have that system…
German education is a bit different than anglo-american / british education.
You learn much more in highschool; many things people learn in college in the US are teached in highschools in Germany.
 
Hey guys, quick question. How long do you usually wait before taking a question out of the sandbox and try it out in the real world?
 
@FUZxxl Its the parent's responsibility to make sure that a kid has an education. America's system was originally started for those whose parents could not give them an education.
 
10:19 PM
(Assuming we are talking about the same definition of college = undergrad, because that's been a problem before.) It's mainly about when "specialization" starts to happen, I think.
 
@TheBestOne School does much more than education. It's about socialization and introduction into culture.
Germany tries hard to avoid parallel cultures. By sending all children to schools, they get out of the environment created by their parents which is very important.
 
@Doorknob what is community doing ?
its not even visible in history
 
@Optimizer She randomly pokes old questions that have no accepted answers.
 
Sometimes Community can have a questionable taste in challenges.
 
If any of the answers have upvotes, I think she'll leave it alone.
But those two have zero. So Community assumes that no good answers were given.
 
10:25 PM
ah, its a poke
 
I'm thinking about writing an answer in BF for Grid-Routing Battle.
@britishtea A few days is probably good enough from start to finish.
Or, if the idea is pretty simple, one day is enough.
 
10:43 PM
I'm redefining multi-dimensional array multiplication for my golf language.
 
@FUZxxl I believe everyone is different. The best education for one person may not be the best education for another.
 
(this operation *should be* commutative)
[1 2 3] 4* = [4 8 12]
[1 2 3] [4]* = [4 2 3]
[1 2 3] [4 3 1]* = [4 6 3]
[[1 2] 3] 4* = [[4 8] 12]
[[1 2] 3] [4]* = [[4 8] 3]
[[1 2] 3] [4 2]* = [[4 8] 6]
[[1 2] 3] [[4 3] 1]* = [[4 6] 3]
[[1 2] 3] [4 3 1]* = [[4 8] 9 1]
 
@FUZxxl You could substitute just about any country for "Germany" in that sentence and it would remain true.
 
@TheBestOne Indeed. That's why there are different kinds of schools in Germany.
And different tracks.
 
@TheBestOne The US system may have started for that reason, but I'm convinced that now it's more or less a babysitting service for working parents.
Not sure the situation in other places.
 
10:49 PM
@FUZxxl If there are no schools that fit the particular student, the parents should be able to provide a more personalized system.
 
@TheBestOne No kid is that much of a special snowflake.
 
(Just to reiterate what everyone is saying but with a pretty chart)
 
Parents can almost certainly never replace teachers in their teaching abilities.
 
It's not about being a special snowflake. At least here, public schools aren't that good except for the average kids. Slow and fast alike get tossed to the side. Private schools are out of reach for many.
 
@FUZxxl My current curriculum is self taught. I have already surpassed my parents.
 
10:51 PM
@TheBestOne And you can't self-teach while in school?
German schools give you a lot of freedom.
It's quite different than US schools.
 
You can self-teach to a point in school. If you have X hours in a day to learn and Y of it is dedicated to things you've already mastered due to fixed curriculum, you only have X-Y to self-teach.
 
nah, if you know the stuff already, then you get to teach it
great fun, can't possibly go wrong
 
I think there's quite a bit of variation when it comes to "US schools." My school, for example, places an incredible amount of responsibility/freedom upon the student.
 
@Geobits Indeed. Good thing you can choose what classes you want to attend (to some extent) in Germany.
(in the higher levels)
 
Yea, it varies a lot even in individual states.
 
10:55 PM
@Geobits You actually have less than X-Y, because you cannot learn as well in the evening after having been at school for 9 hours. (No, I won't link to a real study.)
 
@FUZxxl A better system would be one that gives you unlimited freedom as to education. However, if you abuse that freedom to not learn, one's freedom for education should be slowly restricted.
 
@Rainbolt I wasn't meaning to use X as 24, just as the total amount of time you are studying/learning. Certainly not "all awake time".
 
For example, I have 9 hours/week of complete free time in school.
 
@TheBestOne Have a look into the Montessori system. It does what you want.
I actually went to a Montessori school; many students had huge problems with the high amount of freedom.
 

« first day (1482 days earlier)      last day (3364 days later) »