« first day (755 days earlier)      last day (3259 days later) » 

12:00 AM
There are 1405 unanswered questions
 
Ahhhhhhhhh
Charge!!!!
Laughing so hard right now.....
'Thank you for looking at my profile' .... wat?
 
 
20.... million?
 
Wait what? 20 million!!??
 
something tells me that that is not true
3 mins ago, by Duga
RELOAD!
 
12:04 AM
I did add a gif to this, by the way, for whoever was complaining that the answer was missing the finished product:
5
Q: How can I rearrange views when autorotating with autolayout?

nhgrifI frequently run into this problem where I want my views arranged in one manner for portrait and a somewhat drastically different manner for landscape. For a simplified example, consider the following: Portrait: Landscape: Notice how in portrait the images are stacked vertically, but in l...

 
Area51 says 42k
 
> rolfl vs. 200_success: 12 diff
What happens when I have a "down" day, and 200 does not.
 
@rolfl please report that bug :)
Oh and opinions on that sql oracle question?
 
@Vogel612 I would close it as "not-working" on CR
@Vogel612 - here's a hint of a not-yet-finalized theory of mine....
The more you say, the more people will find to disagree with.
2
 
@rolfl o hai
 
12:08 AM
So, your comment on that post, has too many things in it... ;-)
And, @Vogel612 - I am learning that lesson from my interaction with @nhgrif ;-)
Yes... but, you are somewhat ping happy......
 
Is this the question we're arguing about?
-1
Q: How to make the following SQL code faster

Markos KashiourisI am trying to write an Oracle SQL Developer code, which will summarize selected clinical events of each patient, which occurred at the day of admission, by the date of their admission (beg_effective_dt_tm) for certain services and nursing units. It requires many, many hours to run... Wanted to...

 
@QPaysTaxes - just FYI, as a mod, I have decided to let the pings "notify" me.... and, as such, I don't appreciate the "funny" use of them
 
Just to clarify, my comments here are not intended to address the close-votes concerning stackoverflow (This question is IMO grey area) but the mentioning / recommendation of CodeReview as an alternative for this specific question, which isn't a good recommendation to make — Vogel612 50 secs ago
 
Boy who cries wolf, and all....
 
@rolfl /me is confused by this message...
 
12:15 AM
I don't see a problem with Ken's initial close comment, unless he edited it...
> I'm voting to close this question as off-topic because it is about optimizing working code (SQL) and not a programming problem. It is possibly more suitable for Code Review instead.
 
@Vogel612 The more I say when I "argue" with nhgrif, the more things I say that are debatable/wrong.
 
He's not voting to close because it belongs on Code Review. He's voting to close because it's about optimizing and it is not a specific programming problem.
 
He calls me on these things, because I should be called on them, and I need to be more ... precise
 
I've used that close reason myself (something close to it).
Then after stating it's off-topic and why, he recommds that:
> It is possibly more suitable for Code Review instead.
emphasis mine.
 
So, the point is to say just one thing, and say it clearly.
3
 
12:17 AM
@nhgrif optimization is not a programming problem???
 
This is kind of exactly the sort of message we want to see... he's closing it for an actual problem with the question.
@Vogel612 Not by Stack Overflow's standards... not this sort of question.
 
@rolfl so it's about the 'everything you say can and will be held against you'?
 
Not really ^^^
 
Whether it works as intended or not is irrelevant for Stack Overflow (because he's not asking about that part). If it's not working as intended, that only matters if it's posted here, or if someone had made a hard recommendation here.
The point is, he's asking for a general review "How can I make this not take hours to run?"
Which isn't a good fit for Stack Overflow and should be closed.
 
it's about making one point only, because, if you say two points, and the low-priority point is the one with a mistake in it, you lose the impact of the high-priority one
 
12:19 AM
Which is IMO a very specific problem....
 
It's not a good fit for Stack Overflow.
 
Says you....
 
And says Ken White.
 
and now??
 
Ken White has 81k rep on SO. I have 18k rep. You have 3k?
 
12:20 AM
2.2k
But rep is not a good measuremennt for this and you know ot
It*
 
Sure, but we regularly use our rep and experience at Code Review as an argument against SO users who think they know better than us what's on topic at CR.
2
 
Sure we do... because it's the lowest common denominator
 
I also have almost all of the review/moderation/edit/etc badges on SO, @Vogel612. I think I'm just missing two.
 
That's probably a better criterion
@QPaysTaxes it isn't....
 
@rolfl It's funny how much you say about that it is better to say less.
2
 
12:23 AM
I'm at 391/500 helpful flags and will be at 320/1000 review queue tasks in a few moments.
 
I got the flags down....
 
There are multiple review badges you can earn though. I got 2 golden review badges on SO.
 
Eh well this isn't about bragging who knows SO scope better.
 
One golden badge for the close queue, one for suggested edits. Haven't touched those queues since :)
 
TTGTB, night
 
12:24 AM
Also, it's important to keep in mind that while there is overlap between the network sites, as more and more sites grow and develop, Stack Overflow's scope is shrinking.
With the success of Code Review, lots of Code Review type questions are shrinking out of Stack Overflow's scope (but that doesn't mean that "I'm voting to close because Code Review" is an acceptable close reason).
 
monking
 
monking
Monkevening where I'm at.
 
I've noticed a lot of JavaScript questions coming in lately
 
I love getting questions in the close vote queue "I know this question is the same as this other question but that one seems out of date" easy duplicate close vote...
 
@rolfl Lol, you are ahead of @200_success by 12 points.
Supper.
 
12:56 AM
If you got that code to work, I would suggest you bring it to Code Review, as there are a number of ways to significantly improve scalability, readability and perhaps even performance. Cheers! — Mat's Mug 22 secs ago
 
for anyone who wants to play spot-the-bug
    // Matches [0-9]+
    public static int ReadNonNegativeInt(this TextReader reader)
    {
        int c = reader.Read();
        if (c == -1)
            throw new EndOfStreamException();

        if (c < '0' || c > '9')
            throw new FormatException();

        int result = c - '0';
        while ((c = reader.Peek()) >= '0' && c <= '9')
        {
            result = checked(result * 10 + reader.Read() - '0');
        }

        return result;
    }
 
@mjolka No one.
Or... is this a game?
 
i found and fixed the bug, i thought some people might find it fun
 
Well, it's all pretty iritating.
Is c and int or char?
 
Yeah, c == -1 as an int, but then c < '0' as a char
 
1:03 AM
TextReader.Read() returns an int. it returns -1 if it's at the end of the input, otherwise the int can be used as a char
 
Not 100% but maybe
Couldn't it be replaced with a regex instead?
 
@mjolka Then it should define a constant (equal to -1) that is used for the "bad read"
 
@Quill yes, it could
 
Missing brackets on one-line if statements.
The while line seems suspect.
 
@nhgrif you're closing in on it
 
1:05 AM
I don't know Java or C# or whatever this is, but... I can't imagine that that conditional is right.
 
for those not familiar with the C# checked keyword msdn.microsoft.com/en-us/library/74b4xzyw.aspx
 
I'd probably do while ((reader.Peek() >= '0') && (reader.Peek() <= '9'))
Or just something entirely different.
Like.... use a for loop...
int result = c - '0';
for (c = reader.Peek(); c >= '0' && c <= '9'; c = reader.Peek())
{
    // stuff
}
 
result = checked(result * 10 + reader.Read() - '0');
 
@nhgrif an assignment operation does have a return value. Makes a good recipe for confusing code imo
 
That line looks suspicious to me.
 
1:08 AM
@Hosch250 :)
 
What is this code supposed to be doing?
 
@mjolka do you know by chance what the default compiler behavior is?
I'm just curious.
 
@Mat'sMug That's not the part that's confusing me, nor do I think anyone should consider that particular part confusing.
 
@RubberDuck i'm not sure i follow you. unchecked arithmetic is the default, i believe
 
The confusing part is that we're assigning to c, and comparing that to a value, then &&-ing that to also comparing c to a value. I wouldn't know what to expect the compiler to do necessarily.
 
1:10 AM
Not sure if this is the bug, but here goes:
 
I think if ((c = reader.Peek()) >= '0') is perfectly clear.
 
int result = c - '0';
while ((c = reader.Peek()) >= '0' && c <= '9')
{
    result = checked(result * 10 + reader.Read() - '0');
}
 
@Hosch250 it's supposed to read one or more chars in the range 0-9 from the textreader, and return the int represented by those chars
 
OK.
Oh, * 10
 
Then...
No.
 
1:11 AM
No.
I'm dumb :(
 
Ahhh here it is. You're right. unchecked is the default.
> By default, these non-constant expressions are not checked for overflow at run time either, and they do not raise overflow exceptions.
Well, WTF C#
That's a definite Gotchya.
 
I'd also write my code more cleanly.
result *= 10;
result += reader.Read() - '0';
Or at least:
result = ((result * 10) + (reader.Read() - '0'))
 
^^ that looks more like something I'd write
 
Order of operations is fine and all. Parenthesis document intent and verify that the programmer and the maintainer are both on the exact same page about what is intended.
 
@nhgrif and that would fix the bug
 
1:14 AM
@QPaysTaxes Duh...
 
@QPaysTaxes Every programming language defines an order of operations.
It may or may not be the same order of operations you learned in math.
But guess what? Use parenthesis and it never matters.
Order of operations is: PPPPPP
 
@QPaysTaxes usually that tone is more for things like "but.. it's PHP"
 
@mjolka I'm going to full-on Code Review this sucker...
 
lol
 
1. Called ReadNonNegativeInt. Returns a signed integer.
2. You must've missed your orthodontist appointment:
4
3. while ((c = reader.Peek()) >= '0' && c <= '9') is extraordinarily confusing, and I think I'd prefer seeing it as a for loop as I showed above.
 
1:20 AM
@nhgrif I'd counter by saying the CLR is optimized for Int32, so you need a really really good reason to not use an int.
 
@Mat'sMug And I'd counter by saying don't be lazy and adapt the method to read negative numbers too.
bool isNegative = (reader.Read() == '-');
return result * (isNegative ? -1 : 1);
 
yeah, ok. win.
 
That needs slightly more work so we don't throw away the first character when it's not negative.
But then again... if CLR is so optimized for Int32 that it's better to return Int32 than expect any amount of type safety, then I guess this level of laziness is to be expected...
4. We only check for and potentially throw exceptions based on potentially the first character. Is 362ae5290 valid input? Do you know what value it will return?
 
41
A: Should I use uint in C# for values that can't be negative?

Eric LippertI'll add to the other answers also that using uint as type of a public field, property, method, parameter, and so on, is a violation of the Common Language Specification rules and to be avoided when possible.

 
@Mat'sMug Wow.
So, just never use unsigned integers... and when you have values that can't be negative (which is actually fairly common), you just waste half of your possible bit combinations....
Would it be better to use Int64 or UInt32?
 
1:27 AM
49
A: Why does .NET use int instead of uint in certain classes?

dtbUInt32 is not CLS compliant so it might not be available in all languages that target the Common Language Specification. Int32 is CLS compliant and therefore is guaranteed to exist in all languages.

 
Are you trying to trigger a wow-fest?
 
Smh... Microsoft... Wtf?
 
    public static int ReadInt(this TextReader reader)
    {
	    if (reader.Peek() == -1)
	    {
 	        throw new EndOfStreamException();
        }

 	    bool isNegative = (reader.Peek() == '-');
        if (isNegative) { reader.Read(); }

        int result = 0;
        while (reader.Peek() > -1)
	    {
	        int c = (reader.Read() - '0');
  	        if (c >= 0 || c <= 9)
	        {
		    result = ((result * 10) + c);
	        }
	        else
	        {
 	 	    throw new FormatException();
 
damn I'm 100% certain I read word-for-word "optimized for int32" somewhere in MSTSC 70-536, but can't find anything about it online
was 5 years ago though
 
omg
stupd C# style braces..
Look at how many extra, basically empty lines that creates.
 
1:37 AM
Look at how beautifully aired and readable it makes the code
 
Anyway, formatting aside (I was writing that in a text editor that wasn't inserting 4 spaces when I pushed tab...), that's how I'd write that method. @mjolka
 
hmm could have been something like this: stackoverflow.com/a/13083651/1188513
 
So why is there even an unsigned int type at all?
 
> This API is not CLS-compliant. The CLS-compliant alternative is Int64.
good question. never used it.
 
0
Q: `std::vector` 'substring concatenator'

Thomas RossThe point of this is to concatenate a vector of std::strings into one string starting at an index of the vector. std::string vectorSubstr(std::vector<std::string> vec, int startPos, char seperator) { std::stringstream ss; for (int i = startPos; i < vec.size(); i++) { if (i =...

 
1:42 AM
So, how do you deal with numbers which should never be negative?
Like, for example, any collection's count or size or length property (whichever C# uses)
Why is that signed?
Or is it?
 
to be CLS compliant. the BCL doesn't expose any uint
 
How about the index arguments? Are these signed?
 
yes
 
Why?
So you can guarantee to throw an exception for roughly half of the possible valid arguments?
 
nonsense
you're the client code of the framework, you're not the one setting a collection's Count
 
1:45 AM
No, but you're accessing an index.
And I actually just noticed something very strange...
 
> Reports the zero-based index of the first occurrence of a specified Unicode character or string within this instance. The method returns -1 if the character or string is not found in this instance.
How would IndexOf return -1 otherwise?
 
....
That's not even remotely what I'm asking.
myListOfThings[-4]
 
IndexOutOfRangeException
 
Right. So any negative is guaranteed an index out of range exception.
Why accept arguments which are guaranteed to always be out of range?
 
so that you can use them in C#, VB.NET, F#, COBOL.NET and whatnot
your question isn't about C#, it's about the CLR. the real question is why isn't uint32 CLS-compliant?
 
1:48 AM
I just noticed what is either inaccurate/out of date documentation or a Swift problem.
NSInteger in Objective-C maps to Int in Swift.
But for some reason, NSUInteger is appearing to also map to Int rather than mapping to UInt.
 
that's rather interesting
 
Well, documentation is accurate.
Submitting bug report...
 
Which reminds me... I never submitted a bug report for this... I'll do that in the morning... I'm going to bed.
 
@nhgrif 'night!
 
2:08 AM
uint isnt used in the BCL because there is no implicit conversion between uint and int
it would litter your code with casts
or conversions, depending on howèyoou seeèit
how do i turn off te damn typing noise odf a tablet
 
@JeroenVannevel there's that, but the non CLS-compliance of uint seems like a more solid reason
 
meh, if that was the defining reason then why add it to the language at all?
though I suppose that conts fot
2
r mt arg too
2
counts for my arg too*
 
@JeroenVannevel because it can be useful in private API's?
 
mokay,ài agree
 
*nexausw iy vsm bbbbeeeee uawgul in ptivare AOI
 
2:16 AM
cls compliance is probably most important
 
lol
 
it's annoying that the keyboard hides half the screen
 
32
Q: Why does .NET use int instead of uint in certain classes?

Joan VengeI always come across code that uses int for things like .Count, etc, even in the framework classes, instead of uint. What's the reason for this?

 
52 mins ago, by Mat's Mug
49
A: Why does .NET use int instead of uint in certain classes?

dtbUInt32 is not CLS compliant so it might not be available in all languages that target the Common Language Specification. Int32 is CLS compliant and therefore is guaranteed to exist in all languages.

 
2:19 AM
si
okay i'm off. arrividerci
 
ciao
 
sayonara
 
ti mama
 
@JeroenVannevel conts fot, mt
 
one typo, pzople
3
let it go
 
2:21 AM
lol
 
TTGTBASFASH
 
9:30 bed time lol
 
'night!
 
@Quill Yes, I am very tired. Too many late nights with school, anyways, once again, TTGTB!
 
night
 
2:28 AM
byte!
uh, bye!
 
New Avatar, @mjolka ? Not much different, right?
 
3:11 AM
@rolfl new avatar, same background colour
 
3:22 AM
0
Q: Parse strings and respond - c++

Abhinav GauniyalI'm doing some exercises from another good website aimed at simillar problem - exercism.io , and my 1st c++ problem was to pass certain test suit. Here is the readme for relevant information : Bob is a lackadaisical teenager. In conversation, his responses are very limited. Bob answers ...

 
3:56 AM
0
Q: In WinRT how can i align the Text as Center in TextBlock?

sathyabama mI have set the VerticalContentAlignment, HorizontalContentAlignment and TextAlignment as Center as per the below code but the text is not aligned center in the TextBox. <TextBox Text="Data" Width="200" Height="50" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" TextAlignmen...

 
This well-known effect has of course been replicated in countless experiments.
2
 
@Mat'sMug still around?
 
4:11 AM
yup
not for long though, I'm implementing the language setting dropdown in the RD options dialog and then bedtime :)
 
got another "what would you expect to happen" question
 
hey @200_success
 
ah cool :) RD's coming along in leaps and bounds
well here's the code
async Task Foo()
{
    var cts = new CancellationTokenSource();
    var t = Task.Delay(TimeSpan.FromSeconds(10), cts.Token);

    cts.CancelAfter(TimeSpan.FromSeconds(1));
    cts.CancelAfter(TimeSpan.FromSeconds(5));

    var sw = new Stopwatch();
    try
    {
        sw.Start();
        await t;
    }
    catch (TaskCanceledException)
    {
        sw.Stop();
        Console.WriteLine(sw.Elapsed);
    }
}
 
hmm
 
question is: should t be cancelled after 1 second, or after 5?
 
4:14 AM
-1
Q: I am tring to put the function printOrder inside of a function is it possible? am i doing it right?

romyvoid printOrder (string yogurtSize, string flavor1, string flavor2, string flavor3, int){ int orderNumber= 0; orderNumber++; cout<< endl; cout << "************************" << endl; cout << "Order: " << orderNumber << flavor1.substr(0,4) << "-" << flavor2.substr(0,4) << "-"<< flavor3.substr(0,4) <<

 
none of the above?
 
why's that?
 
I'd say 11, because I'd presume it won't handle a cancellation until after the 10 seconds start delay expired
right?
 
nope -- let's try it without the second call to CancelAfter
async Task Foo()
{
    var cts = new CancellationTokenSource();
    var t = Task.Delay(TimeSpan.FromSeconds(10), cts.Token);

    cts.CancelAfter(TimeSpan.FromSeconds(1));

    var sw = new Stopwatch();
    try
    {
        sw.Start();
        await t;
    }
    catch (TaskCanceledException)
    {
        sw.Stop();
        Console.WriteLine(sw.Elapsed);
    }
}
the output is roughly 1s
 
interesting
so you can cancel a task that hasn't started yet
thinking again, it makes total sense
 
4:16 AM
the task has started
 
right
the Task has started, just not its delegate. right?
 
not sure i follow you
 
wait, where's the task getting anything to do?
like, () => DoSomething();
 
the task we're talking about is the task returned by Task.Delay. it's not really doing anything, it just completes after the given timespan
so we have the task, t, that's going to complete in ten seconds. but we've given it a cancellation token so that we can stop it earlier. what i'm surprised by is the interaction of the two calls to cts.CancelAfter
 
the latter one overwrites the former
 
4:22 AM
^^^
yeah that's not what i expected at all
 
oddly it didn't surprise me
 
0
Q: Design Pattern Identification and Improvement

Douglas DenhartogQUESTIONS: What is the name/style of the design pattern I am using by my use of the value property/attribute/method on each class? Is there another/more appropriate design pattern that I should using? I'm dealing with stock market investments; I have an Account() which can have multiple Holdi...

 
but my understanding of Delay was "start the action after the specified delay has elapsed"
 
ah ok
i imagined after 1s the task would be cancelled, then 4s after that it's cancelled again, to no effect
 
wouldn't the first TaskCanceledException kick execution out of the task?
 
4:26 AM
well not really cancelled again, but you know what i mean
i guess what i meant was -- after 1s the task would be cancelled, and the second call to CancelAfter does nothing
 
try with a not no-op task, like a loop that does whatever - you check the cancellation state each iteration right? after 1s the first cancellation kicks in, you handle it, gone.
 
ok let's try that
 
@Mat'sMug What's up?
 
sucks, what happened earlier. well handled.
I think the "grievance" might have to do with the flurry of sudden downvotes that hit the post coincidentally cough shortly after regulars in The 2nd Monitor saw OP's comment
 
4:35 AM
Don't worry about it. I knew full well that it was a bear trap when I closed the question, given the user's history.
 
well, that one exploded ;-)
 
Whatever grievance he may have had was pretty weak. I didn't even bother engaging or defending.
 
I think that's the best thing you could have done.
 
@Mat'sMug this is what i was playing with when i came across that behaviour btw share.linqpad.net/d8gxs7.linq
 
MIDI!!
 
4:56 AM
Welcome to Stack Overflow, Qiang Zheng. This question may be better suited for codereview.stackexchange.com, but we'll see if we can't help you out. — Addison 44 secs ago
@Addison Broken code is off-topic on Code Review. There is some leeway for unexpected corner cases, but the author of the code would have the burden of demonstrating why he / she thinks the solution is correct. — 200_success 48 secs ago
 
monking @all
 
monking @chillworld
 
how is it here?
 
5:11 AM
here in chat? pretty quiet
 
looks like it yes :)
brb IE is crashing again
and back
 
0
Q: "Split the Phone Numbers" challenge

user1520130From here. What's a shorter way to write this regex? str.match(/^(?<CountryCode>[0-9]{1,3})[-\s]{1}(?<LocalAreaCode>[0-9]{1,3})[-\s]{1}(?<Number>[0-9]{4,10})$/)

 
night Mug :)
 
night @Mat'sMug
 
@SimonAndréForsberg, still on for a Swedish version?
 
6:08 AM
0
Q: Restricting mutliple async tasks from being executed in C#

NOOBI have to restrict multiple async calls from being executed. I want to show a message when second task is trying to execute before the completion of a previous task. Please find my approach here. Suggest a better approach if available. public Task curTask = Task.FromResult(0); public async Tas...

0
Q: Having problems doing the graphic for the hangman

AlexisI made a Hangman game and its working, but I am having trouble incorporating the graphics for the game. I am trying to add a graphic every time you get a letter wrong, could someone give me ways on how to do this? I think the reason is not working it because the method were the graphics is, its ...

 
6:25 AM
0
Q: Sum of Primes between two number from Optimized Sieve of Eratosthenes

Ankur AnandHere is the code that i wrote that is working for me to give me sum of prime numbers between n and m. class TestClass { final static int MAX=1000000; final static boolean[] isPrime=isPrime(); public static void main(String args[] ) throws Exception { BufferedReader keyboard= ...

 
Monking
 
monking @Mast
 
6:45 AM
Probably a better fit for codereview.stackexchange.comreto 43 secs ago
 
 
1 hour later…
7:47 AM
Monking
 
0
Q: What is the best way to structure/optimize my code in Python using OOP

AlexanderI have finished a really short and small import / export script using Python 2.7, and now I would like to structure it using classes and methods where possible. Could anybody give me some advices on what would be the best approach for this? I haven't used any OOP because I would also like someb...

0
Q: Suffix array construction in O(n (logn) ^2) . SPOJ TLE

Srini VasWrote java code for suffix array creation based in O(n (log n)^2) on the tutorial in codechef http://discuss.codechef.com/questions/21385/a-tutorial-on-suffix-arrays My code gets TLE on spoj. Not sure why it is performing not even in O(n^2 log n). import java.util.*; import java.lang.*; ...

 
8:03 AM
I'm voting to close this question as off-topic because it belongs on codereview.stackexchange.com. — Alexander Vogt 30 secs ago
 
8:20 AM
0
Q: Flow of Angular Promises

br3w5I recently put in a submission for a small coding challenge using Angular. The challenge was to get a token and array of values using a GET request then make another GET request passing the token and sum of values within the url. I'm still getting to grips with promises and want to know if the fl...

 
This is more a question for codereview.stackexchange.comcosmo0 54 secs ago
 
0
Q: Gerrit disable verified label in subprojects

Sreekumar RI am setting up a gerrit server. I want some projects to have the verified label, where a jenkins build, if successful will set the verified flag. This works fine for me. I also have some projects which doesn't need a jenkins build to verify. So for this I want to disable the Verified flag and t...

 
8:38 AM
WTF Python, you're causing me headaches
If you use a mutable default argument, then it does not get re-initialized when you call the method again without default argument
 
0
Q: Suggestion for multiple parent() method in jQuery

meh -_-To append data i am using parent() method five times! in the code and i think its a super ugly way to do this. here is the code: $(this).parent().parent().parent().parent().parent().find('div.commentItem span.repliesholder').append(jqData); it works just fine but what should be the best practi...

 
Monking
 
@ChristopherPainter I am using VS 2013 Premium and code review is also not available. I have spent the last 20 minutes searching for a solution. — bokibeg just now
 
Monking :)
 
8:49 AM
@Duga Someone talking about false positives yesterday?
 
> .parent().parent().parent().parent().parent()
 

« first day (755 days earlier)      last day (3259 days later) »