« first day (1158 days earlier)      last day (2930 days later) » 

11:00 AM
for a mission, we need an assignment; a proper, achievable task or goal to reach
since we're moving in circles it may be interesting to get input from a wider audience
We need 2 things: 1) more answers, 2) more votes
^^ that
the question is how they are related
Graduation is dead easy; meet the stats, bother the CMs
I daresay more votes -> more answers
11:00 AM
We get more answers by keeping around the new, good answerers.
getting more site activity isn't generally a measurable and trackable goal
I think it starts with more views from CR-members
Votes spawn when posts meet voters.
Sure, we can look at post view averages, and post vote averages and compare trends over time
so in short we have a voter shortage?
11:02 AM
I think we vote for the wrong stuff.
The "meet" part is possibly what the problem revolves around
but there comes the response of "Okay. so what do we want?"
sure, we want to see our rep inbox light up again, but that's not graphable.
First we should determine if we have proportionally less voting on good questions & answers though
Don't get me wrong, I like getting reputation just as much as the next guy and I'm still a longshot from getting the highest privilege, but if votes are for keeping people in half of the votes on me are wasted.
Because I wasn't going anywhere anyway.
The reason I'm not screaming down Meta right now (or really, when I ranted last time) is because there's not a measurable goal to achieve
11:03 AM
Maybe there's just less good questions and answers?
All these things are feelings, backed by generalised information that site activity is decreasing
Q: Code too long - Counting vowel, special characters ect

Isabellesentence = input("What is your sentence?") sentence=sentence.capitalize() counta = sentence.count("a") counte = sentence.count("e") counti = sentence.count("i") counto= sentence.count ("o") countu= sentence.count ("u") countA2 = sentence.count("A") countE2 = sentence.count("E") countI2 = sentence...

Q: Finding equivalent to % for the inner if clauses

Andrew TruckleHere is my multi converter: using OCLMEditor.Data.StudentInfo.Enums; using System; using System.Collections.Generic; using System.Globalization; using System.Windows.Data; namespace OCLMEditor.ValueConverters { public class StudentAssignmentTypeFilterConverter : IMultiValueConverter { ...

Q: Perl script performance

George S.i am new to perl and want some help in tuning this script if possible cause it takes time if i increased my array. also if i "use warnings" i get a lot of warnings which im unable to handle. im using perl (v5.24.0) built for darwin-thread-multi-2level. my $start_run = time(); use strict; foreach...

We need to find the answers most desperately in need of votes and vote on those.
Thanks @CaptainObvious...
@Quill actually I think it is
11:04 AM
graphable is fair enough, but as a measurable goal is different
When an organism's survival is threatened, it generally works really hard to change that (eg: the mission)
Our survival isn't threatened, our health is just getting worse
@CaptainObvious That's unwieldy.
Could it be the case that site activity changing is just part of the growth, and that we are giving too much importance to site stats instead of better code?
I'm off home guys, can someone create a (very long) bookmark of this conversation?
11:06 AM
what does better code have to do with it?
@DanPantry sure. I'll ping you with the link when I do
@Quill Our survival may not be threatened directly, but if we keep this up we'll definitely have a death by a thousand cuts.
@Mast it'll be a long time before SE axes a graduated site
Yes, but we'll turn ourselves irrelevant if the answer rate drops to, say, 70%.
Now, at the current speed that will take forever.
a few weeks ago the homepage of ExpressionEngine was completely filled with 0 or 1 voted posts that had been community bumped
But there's a large grey area between that point and somewhere below where we are now that we don't want to be in either.
11:08 AM
Someone asked "okay, are we gonna shut it down?" and SE said no. it's a graduated site and the site doesn't have 0 traffic
My point is that our health isn't going to kill us for a long time
I think as a group, it's hard to work towards a goal that isn't like "try to do X practice"
as an individual, it's really easy to leave nice comments on first posts, or write good reviews, but to encourage the behaviour as a group is a bit different
Maybe we should compare CR numbers to SO, Programmers, Server Fault and others, just to see if this is normal?
Comparing apples and oranges won't really help
I want to throw another possibility on here before lunch: Maybe there are more questions in fields where our reviewers are less experienced? I know I've been asking Rust questions and it looks like we have one well-informed reviewer and it took long to get an answer obviously, I kind of knew that though when I went down this road with a Rust question
The issue is motivation, and the solution isn't solid enough to wave a flag and lead an army towards a solution
@Quill Comparing broken apples to polished apples might just work though
11:12 AM
@Quill I'm not sure that's correct
I daresay that the issue is not primarily motivation
the issue is, that the site is growing faster than we gain dedicated regulars that review code
which makes the answer rate drop
I'm not motivated enough to write good answers because I know that no one's motivated enough to browse new answers and to vote on them, unless they intend to answer the question
Sure, we don't have enough reviewers in some tags, but that doesn't make our regulars bored
^^ that is the very same problem in a different disguise
That just makes the small portion of users who ask in those unusual tags less motivated to stay
I have to say that as long time regulars we are probably pretty biased about site activity as well
Yeah, "how it used to be" is generally always viewed as better by regulars
11:15 AM
if you want your working code reviewed you should post it on codereview.stackexchange.com. Here it is not clear at all what is your question — tobi303 23 secs ago
There probably comes a point when you've seen 10,000 PHP questions that the 10,001st looks just the same
for most groups to work, they need an enemy. they need an enemy to rally against and to work together to defeat. Our enemy was bad site health blocking graduation. We defeated that enemy, and now our group is bored without a new enemy
@Mast I apology if you get that annoying orange/brown "1 post awaiting review" thing on the top banner, and if I'm flooding the front page (A moment there I forgot that the number of incoming questions aren't that high...)
@StewieGriffin It wasn't too much. Just keep it in mind for when you think you're going to edit 50 posts in a row.
It's not necessarily bad. some reviewers might get annoyed that their reviews are being spent on menial changes
11:19 AM
@Mast I don't think it'll be a problem... I stopped at 6 :)
Any suggestions on shortening this name? It is two characters too long when within namespace and class. I'd be happy to provide context/explanation. GetContextualDirectReportDirectReportsCommandExecute()
@StewieGriffin In that case, don't mind me.
@MichaelBrandonMorris use the type-name context you get
@Phrancis I'm already getting this feeling with VBA. I'm getting very tempted to just have a stock of modular review topics to drag/drop into most VBA questions.
@MichaelBrandonMorris Replace Contextual by Context?
11:20 AM
@Zak try a different language
@Mast Good point.
DirectReport is in there twice as well, may not be useful.
@Vogel612 Sorry, would you mind elaborating?
@Mast It just doesn't read properly as Context. FromContext works, but that is even longer.
@Zak yep, I got that way with SQL a while back, so I picked Java, then recently C#
Picked up*
11:23 AM
@MichaelBrandonMorris DirectReportsCommand.Execute() only has Execute as method name
encapsulate command logic into a class implementing ICommand
IMO, if there is a mission, the mission should be this:
"Every Question should get a meaningfully useful review"
Which you cannot measure directly, but the % unanswered gets pretty close. So then the measurable goal becomes "get the unanswered rate to Y%". Possibly with "within 1 day of the question being posted".
@Quill I agree, I've reviewed >1200 edits on SO, so I know the feeling :) I figured it would be OK to edit a few posts in a row, since there had been a total of 6 reviews today, before I edited the questions =) It's 18 now, with 7 reviewers... Figured it wasn't too much :P
Q: Generic Skip List Implementation in Java

coraxI am interested in implementing advanced data structures. One of them that tickled my fancy is the SkipList. My implementation is shown below: The SkipList node /** * SKNode.java */ import java.io.Serializable; class SKNode<T extends Comparable<? super T>> implements Serializable{ priva...

Or, to go even more Meta, the goal is:
"Everyone who comes to CR gains something useful out of the experience"
@StewieGriffin alternatively you can just grab another 1.5 k rep :D
11:26 AM
@Vogel612 No problem! Do you mind throwing some bounties at me? :P
lemme guess ?
@Zak yeah, I did some envelope calculations on that and it turns out we'd need to boost site traffic quite a bit to get to a nice number
@Zak today's zombies seem to often be either very difficult questions, or questions using very arcane tech
@Zak So you would suggest making a new ICommand implementation for each command I have? I'm currently using RelayCommand in the MVVM Light Toolkit, which takes a void method (in this case the long-named method).
11:26 AM
@Quill or we make "better" use of the traffic we have
@Vogel612 Yep...
@Phrancis Well, "Every" is probably ambitious ^^ Maybe, like, 97%.
@Vogel612 meh, it's less about directing traffic and more about getting it in general
@DanPantry Mobile transcript doesn't show the message you replied to, which message Is it?
@Zak 97% is very very generous
11:27 AM
@Vogel612 It's a long way to go to get privileges in that tag :P
Why do we care about traffic in and of itself?
@Zak s/every/many/
Is traffic the end goal? Or is traffic simply a by-product of the site providing value for the people who come here?
it should be the latter
11:29 AM
Point is though, very few Java, C#, Python questions stay unanswered for long, unless they are very difficult
Ugh I need to somehow get that message removed. I agreed that it was a bad idea but weeks later I'm still getting answers saying no
And dan is not the first
@Phrancis Ok, great. So perhaps the problem is not general to the entire site, but particularly concentrated in certain areas.
Where's the %-unanswered-by-tag graph?
ultimately, I think we need to 1) find an acceptable goal or reason for motivating people and then 2) find an appropriate "rate" for the "solution"
@arda Would flagging it work?
@Quill IMO, maximising "% questions with at least 1 meaningfully useful answer" would be the goal.
11:33 AM
@JoeWallis no
@Phrancis Like all crap? hides
Or, inversely, minimising "# of people who come to CR and gain nothing useful from the experience"
@Zak that's not a obvious figure though
@Quill Ok, I'll avoid doing that then
@MichaelBrandonMorris Does it need to read properly? It's a function, not a sentence.
@Zak I already got that for C++.
11:36 AM
@Zak there's not an inherit motivation in that though
They don't make for the best answers, but they allow me to easily put a list of bad-practices in an answer like here. I'm still growing the list.
@Quill Having a database of quality question/answer combinations is no motivation for you?
@Quill Aiming for only those goals we can directly measure is kinda missing the point, no?
@Quill I'm not looking for how we achieve the goal yet. Just trying to agree on what we want the outcome to be.
but how do you measure the outcome
@Mast it's only motivation for the people who unconditionally love the site
@Quill That's a separate problem. How do you directly measure "useful code"? You can't. That doesn't mean it's not the ultimate goal you should be aiming for.
Most problems worth solving are not obviously solvable, or even directly measurable. That doesn't mean we should stop trying.
11:45 AM
Wow, JavaScript is really through the roof
Admittedly, it's a difficult language to review, since there are so many JavaScript libraries, and often the way to improve your code is often to just use another library/framework
I think I've had milk last longer than some JavaScript frameworks.
But yeah, ranting at JavaScript clearly won't solve the problem
I think I ranted somewhere about JavaScript frameworks before....
There we go. Finally.
Oh wow
@Mast Good point again. I suppose I can ignore the grammar. :P
11:51 AM
Maybe JavaScript actually is a significant part lf the problem after all...
I leave for 50 minutes
Well, the numbers don't lie ;P
js zombies are (and have always been) a problem on the site
nothing new here
No one wants to review it
saying they are a significant part of the problem is not helping though.
11:53 AM
i'd argue it's correlation, not causation
What about using Cmd as an acronym for Command? I know acronyms are frowned upon in C#, but that one should be universal.
Maybe @DanPantry needs to start teaching us all this newfangled JS stuff :)
there has been an explosion of new JS stuff in the past 2 years
Obviously because when X_Frameworks is higher, X factorial is going to be higher
you can see in aug 2013 when node/angular came about
and then 2015 when react came onto the scene
javascript is being used in more places. the language isn't bad, it's just used everywhere now, even for apps. of course there are more js questions ^^
11:54 AM
jQuery, Angular, Ember, Meteor, React, Node
Q: Node.js put records to Kinesis with infinite retry strategy.

toyMy application is really easy. It's going to add 500 records at a time to AWS Kinesis and if there's an error occur I'll just add that back to the queue and it's going to be retry. It's going well but I feel like there's a bug somewhere that I don't see. 'use strict'; const _ = require('lodash...

lol ^ timing ftw
I should probably leave the JS rants to my blog instead of in the middle of chat conversations though
JavaScript's never been the same without @konijn
If all of us picked a JS library/framework to learn we might be able to make a dent in it
11:56 AM
yea konjin nuked answered crazy amounts of questions... you can see where he started getting serious
I feel sure that JS coders make a lot of the same mistakes, just like any other language
'course they do...
Dec '14 @konijn stops answering regularly, and immediately the JS zombie rate takes off like a rocket.
> use 'use strict', check your equality comparisons, use a proper minifier and don't use single-letter variables
it's interesting how the python zombies dropped by about 20 - 30 in two weeks though.
don't forget "don't learn JavaScript on W3Schools"
11:59 AM
JS questions aren't the problem as much as they are a problem
together with java and c++
They probably a subset of the problem, just a really big one
There's a noticeable uptick in a lot of zombie rates from the start of this year
When I stopped reviewing, hahah
^ same
I've posted one answer in the last like three months
12:02 PM
is there a graph somewhere for overall % unanswered?
so... why did we (because it's not only you guys that stopped answering) stop?
We're all spending a lot more time moderating since the privileges changed and so many users lost most moderating tools access
(Not complaining or anything, but it's true)
@Vogel612 less voting, don't feel as much like my contributions are getting through or are appreciated
@syb0rg HAI
12:04 PM
as if I want to dedicate hours of my day so some person can ignore the entirety of my answer because I said something they didn't like
@Quill IKR
It wasn't so bad when there were other reviewers to vote on posts and appreciate your contributions
AFAICR there's always been a down voting problem on CR
I don't care about down votes; they mean you messed up
no votes are much worse than downvotes
Linking my issue to this other Github issue greatly increased the number of views on my project: github.com/erikd/libsndfile/issues/136
12:09 PM
@Quill Amen. In the absence of OPs telling you how awesome your help was (rare, but so encouraging), upvotes is the only feedback you get that your review is actually useful and actually helped someone.
@Quill I operate by a policy on this site: vote no matter what
That doesn't mean only up or down IMO, that includes flagging and voting to close
@Zak the feeling of a flooding inbox is one of the reasons CR was more attractive than SO
Does it sound to anyone else like part of the problem is that there is not an easy way for potential voters to be exposed to potentially vote-worthy posts?
Exposing people to relevant content is an issue everywhere. Voters, reviewers, askers, editors, janitors
@Phrancis But look at HNQ, those don't always attract lots of votes either
People just swing by, say "oh interesting", and then leave
12:12 PM
I don't think exposing voters to "vote-worthy" content is a problem we can fix without a bad solution
@Quill chat is my inbox nowadays ;D
(Ps sorry for disjointed replies, the new SE chat mobile thing just won't work on my phone)
A: Place answers into demilitarized zone instead of 5 minute grace period

Shog9Growing up, a good portion of my summer (and spring, and fall...) was spent helping out in my family's rather large garden. Most of this involved rather tedious, repetitive labor. So to stave off boredom, we made up games to go along with it. "Fastest to finish hoeing a row of corn", "Most peas ...

I agree that just trying to fix it with a bot or another chat room or whatever is probably a bad idea
My opinion is that gamifying our motivation for being a part of Code Review with goals or missions are temporary fixes to easy, measurable problems.
Less site activity isn't an easy problem to fix unless it's part of an overarching problem like graduation
If the objective of question is to get optimization/ improvements and your existing code works fine, you should put question on CodeReviewsRajesh 40 secs ago
12:22 PM
We've probably managed to gamify a task that most programmers probably dread as much as it cod ever be
So maybe we just need to play the "game" more instead of changing it
(also I just lost The Game)
Q: A c++ program to solve a Rubik's Cube

Pavan PadubidriI wanted to write a c++ program to solve a 3x3 rubik's cube, but failed at it. So I picked up a 2x2 rubik's cube and wrote a program using Blindfold cubing algorithm. Can anyone help me write a more efficient program ? This is the program I wrote #include<iostream> #include<string> using namespa...

Q: c++ Singleplayer Class, good way to do this?

YannickI make a little Singleplayer game and do now my new Player class. Is this way good for that Singleplayer class? I know for multiplayer that isnt good, for multiplayer need to call functions to have all players in one instance player.h namespace SDLGamecore { namespace player { class...

Q: stochastic differential equation

whadablogLet S be an equity that follows the following stochastic differential equation: dS = sigma( S ) dW S(0) = s0 Need to calculate: E[ phi(S (T)) ] Using monte carlo for any sigma, phi, s0 and T. A small report explaining the problem, the code in python and graphs for different phi (say differe...

@CaptainObvious lol... user is deleted, question isn't
How do you get a large version of peoples rep graphs? IIRC you can get them...
@JoeWallis Network profile
@syb0rg Thank you
12:34 PM
@Phrancis And now, so did everybody else ^^
Q: Circular Buffer Implementation

Benjamin GruenbaumI'm implementing a "live analytics" feature and I need to always keep track of the last N items that were added to a collection so I figured I'd make a circular buffer since I couldn't find one. I tried to figure out to use Interlocked but couldn't find out how to use Increment or CompareExchan...

Wow, I wouldn't even know how to go about solving the Rubik's cube question
@Zak I know, nobody can ever win The Game :/
> stop obsessing over your score in the game, and try to remember why it is being played at all.
@JHache that's simplistic-ish combinatorics
12:38 PM
@Vogel612 I mean I probably could if I spend a bit of time on it, but god it's so repulsive there's no way I'd get around to that at work.
Am I the only one who sees it like this?
@StewieGriffin There's been 3 metas about it
@StewieGriffin I've been seeing that lately as well
@JoeWallis Ok, I'll make a fourth...
Q: Certain characters formatted with ### seem messed up under 100% zoom

JamalI recently came across this post and noticed some issues with the heading text. For instance, the first one (with ###): main(arg) That third letter is supposed to be an 'i', but it looks like an 'l'. I first made sure it was correct in that post, and it was. However, it seems okay with #...

12:48 PM
And, this, friar tuck, is why comments can be BS:
 cmdTimeout     = 1000 * time.Second // 20 minutes timeout
heya @rolfl :)
@syb0rg Only one thing to do then... Default zoom: 110% :P
@rolfl that's what, 16 2/3 minutes?
Yup, not 20 minutes, and, why is this so much harder:
cmdTimeout     = 20 * time.Minute
Lets just be grateful Michael Bay doesn’t direct Git merge conflicts.
12:51 PM
Hey @Vogel612 - Happy Summer ;-)
@rolfl Moar characters
But self documenting too... so I just defeated my own argument
1:06 PM
Perhaps you should ask this question over at code reviewSlayther just now
Q: ReactJs Mapping with TypeScript. Is this a good practice?

dagI'm new in Angular2 and ReactJS. I use TypeScript and in my last project I used the JavaScript AutoMapper to map the json response to my model. Here is the code I use now: this.backendService.getNavigation(target).subscribe(navigation => { navigation.transitions.forEach(transition =>...

@CaptainObvious what the actual f?
Greetings, Programs.
hey @rolfl, that's been a while, did you have a Go at a lot of things recently?
@Donald.McLean Greetings, Tron :)
1:16 PM
Hey @skiwi - yeah, been ing a fair amount, but now I am on to real languages.
Woot Woot
@rolfl :D
welcome to the dark side
But seriously, we have a problem to solve, and Javascript is the best language to solve it in, and I am a strong believer in "the right tool for the job".
Did they experiment with our beloved monkey? :(
@rolfl If Javascript is the best tool for the job, then I'm really curious what the job is
At least I can assume ES6, and can work with a limited subset of functionality.
Aah server-side is not the worst
1:18 PM
Node 6 supports 99% of ES6
Except modules
@skiwi - it's a ReST server that brokers incoming queries, dynamically remaps them to other ReST servers.
The remapping makes sense to do in JavaScript because ReST and JSON.
(and dynamic)
"remap" = mapping the JSON, right?
cus I would have personally used nginx/lua with that
@rolfl So where have you been recently? You're a rare sight now a days
The entire ReST query, it some things will be coming from the JSON, other things from headers, query params, path, etc. There is also a 1-to-many mapping, so one incoming Rest call could call multiple other API's
Ahh. Okay.
1:20 PM
Well, I looked at Kong - which is nginx/Lua, and it's interesting.
hi all. The other day someone here pointed me to a Barcap article on Understanding OIS discounting. I'm looking for a little more depth. Anyone know what I'm on about.
@rolfl Right, then it makes sense to pick JS, I myself am not 100% anymore either, been learning Rust and C# recently
The mapping needs to be implemented by many people, and teaching everyone Lua seems a problem, but, I am interested in why the Lua is better... perhaps I missed something....?
@rolfl It's not better or worse, I would have just used nginx for something like just going from X -> Y
1:23 PM
Mugking @Mat'sMug!
but if you're modifying the JSON as well it's probably easier in Node
Node.JS isn't bad, it's just a pain to get used to if you have no experience with async-by-default behaviour.
I've written exactly one webserver with it for IoT purposes and it worked amazing.
Except for the bugs which were totally my fault.
Posted this a few days ago and got no responses, anyone willing to review my code?:
> p.s. The code has been slightly edited for sharing purposes.
What parts?
Just the URL?
Credentials and the like?
Yes the url, username, password, and some strings. for instance "_something"
nothing changed in the logic
1:32 PM
I suppose it reeks a bit like example code, and some of us are allergic to anything that reeks like it.
nah, looks fine
But it looks like you left the logic intact.
@Mat'sMug I was just getting to that, impatient Mug.
For some reason it doesn't have a lot of views.
That's odd.
Why does it reek like example code?
1:33 PM
it doesn't. @Mast was just making a hypothetical example
hmm maybe because of the time I posted it, i'm in the netherlands
@Mast yes
@Mast It was asked right before the weekend
@OutOfTheBox So am I, and a couple of other regulars.
@OutOfTheBox could be the timing, and then newer posts just burried it. happens
1:34 PM
At least you got it a bit of exposure here.
All will be fine.
The code works fine btw, I have already used it to scrape what I need. However it throws an error which I understand
But I don't know how to fix it
Does it work as intended or not?
100% intended
The output is as intented
(JK, haven't been reading the transcript.)
1:35 PM
but the order in which it is executed is not how good code should execute
Oh, those are the best bugs.
It's not working as it should be, but it works anyway.
Haha yes, so it's just for my learning experience to get some feedback on it
To learn and write good code. Instead of just working code.
you've come to the right place then
Well, I'm afraid I can't review it, but I hope one of the other Pythonistas will take a shot at it.
but fixing that bug is beyond our scope. if you can reproduce it with minimal code, you could ask about it on SO
it's got a fav-star already
1:38 PM
@Zak Is that unanswered-per-tag?
@OutOfTheBox you could edit the post to improve the formatting a bit; that will bump the question back onto the front page
It's not really a bug I think, it's just that I did not code it in the right way :P
Haha alright, thx for the tip
I will also add some explanation about what goes wrong
possible answer invalidation by Hiddenllyy on question by Hiddenllyy: codereview.stackexchange.com/posts/133820/revisions
@Duga Handled
@OutOfTheBox If it throws errors that shouldn't be thrown, you got a bug.
1:42 PM
@OutOfTheBox keep that attitude. It's valuable and rare.
@Mast It is.
@Gareth What about it?
The error only happens when something that should not happen happens whilst scraping: There are some pages that log the user out. When I get logged out the error pops up. But i have deleted these pages from the pages to scrape because I do not need them.
@Zak Yuck. Perhaps it's time I start writing JavaScript answers.
in other words, it's handled
1:44 PM
@OutOfTheBox So it no longer throws the error? Bug fixed.
Sounds like a workaround to me, not a fix
@syb0rg Shhhhht
I work around bugs all the time. geez the whole VBIDE API is a frakkin' work-around
Yes it is handled. But that's what i already said, the scraper worked and i have my needed output
But I want to learn some decent coding in python
So feedback on the code is helpful
1:46 PM
@Mast Yeah. Sometimes I forget the magnitude of impact @konijn had, and then I look at that graph.
@OutOfTheBox You got a comment by Joe already. He's good with Python, so if you're in luck he'll write you an answer :-)
I just stuck a +50 bounty on it, that should help a bit :)
@OutOfTheBox I'll look into scrapy, as I don't know it. All I have to say at the moment is a lint review...
But I'm going out to the pub today, ):
@Mat'sMug lol
1:49 PM
Thanks a lot so far guys!
@JoeWallis pub... sadface... I don't get it
I have completely rewritten my VBA implementation of that "cheapest hotel finder" code, and all I have on that post is my own selfie answer. I think I'll update the code now. @Zak what do you think?
heck, I'll update the code while there's no answer
The saga of @konijn
@JHache I'm not sad about the pub, just the lack of potential internet points!
1:53 PM
@N3buchadnezzar Monking
Hello @MathiasEttinger
@N3buchadnezzar nibjlof

« first day (1158 days earlier)      last day (2930 days later) »