Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Aredna
Mar 17, 2007
Nap Ghost

ironypolice posted:

The best I can come up with is to compare every pair of rectangles, and if they overlap reduce them into components like so:



Then dump the components back into the pile, and repeat until there are no overlaps, then sum up the areas of the rectangles.

That's how I solved it in the past for a problem where you drew colored rectangles in a specific order and then had to say how much of each color was would be on top.

For the single color solution you could even sort the list of rectangles and significantly increase average case performance by reducing the number of comparisons for each new rectangle.

Surprisingly I find this problem easier than selecting a truly random element from a b-tree, but that's probably a result of spending too much time with programming contest type problems and little real world programming experience.

Aredna fucked around with this message at 17:16 on Sep 13, 2011

Adbot
ADBOT LOVES YOU

shrughes
Oct 11, 2008

(call/cc call/cc)

Aredna posted:

Surprisingly I find this problem easier than selecting a truly random element from a b-tree

Now do it in O(n log n) time.

ironypolice
Oct 22, 2002

shrughes posted:

Now do it in O(n log n) time.

Maybe store the vertices in a 2-d array, with a pointer from each vertex to a rectangle structure? That way overlaps can be easily detected. This may also be completely insane.

Orzo
Sep 3, 2004

IT! IT is confusing! Say your goddamn pronouns!

shrughes posted:

Now do it in O(n log n) time.
Just taking a few minutes thinking about this one, wondering if I'm on the right track...

My solution so far involves sorting a list of 'events' from top to bottom, where each event occurs when a rectangle begins (top edge) or ends (bottom edge). Then there's a linear sweep where edges are maintained in some sort of data structure such that the 'current union length' can be calculated in lg n time, multiply that length by the height distance between the current event and the next event for the union area of that slice.

Of course the hard part seems to be figuring out what data structure to use such that it isn't an O(n^2) problem, like when all N rectangles overlap. Is this the right approach?

edit: lg n, not lg in

Orzo fucked around with this message at 18:54 on Sep 13, 2011

shrughes
Oct 11, 2008

(call/cc call/cc)

Orzo posted:

Is this the right approach?

Yes.

ninjeff
Jan 19, 2004

Thanks guys, I'm giving tef a call now. Got this job in the bag!

Puddy1
Aug 28, 2004
I feel like I have to memorize all this computer science stuff when it comes to data structures and algorithms, it's all a bit daunting. I finished school in May 2011, but the last time I had to deal with stuff like binary search trees and other abstract data structures was like 2008. Most of my important computer science courses were earlier on in my college career and I guess my memory just blows. How do you guys handle all this information? Should I just dig through my old notebooks and just read them? I feel like it's just so much to remember and depending on the company, they may not even ask a thing about it

That's part of my problem with the technical interviews, I never know what to expect. Sorry if I'm rambling, I'm frustrated :(

shrughes
Oct 11, 2008

(call/cc call/cc)

Puddy1 posted:

How do you guys handle all this information?

I don't memorize anything, we don't ask any questions that expect people to have memorized anything, and never in any job interview have I been given a question that asked for memorized knowledge (other than one question that made sure I actually knew Haskell the way my resume said I did).

What kind of questions are you getting that expect you to have memorized something?

Paolomania
Apr 26, 2006

Puddy1 posted:

I feel like I have to memorize all this computer science stuff when it comes to data structures and algorithms, it's all a bit daunting. I finished school in May 2011, but the last time I had to deal with stuff like binary search trees and other abstract data structures was like 2008.

You have to brush up from time to time. My algorithms class was over 15 years ago and the day-to-day work over that period has been vastly more tedium than pondering algorithms, so I have to look stuff up (that I probably aced on the test 15 years ago) all the time.

Puddy1
Aug 28, 2004

shrughes posted:

I don't memorize anything, we don't ask any questions that expect people to have memorized anything, and never in any job interview have I been given a question that asked for memorized knowledge (other than one question that made sure I actually knew Haskell the way my resume said I did).

What kind of questions are you getting that expect you to have memorized something?
Questions involving data structures I haven't used in a while, earlier in this thread someone said:

quote:

Ask him to write a function that takes a binary tree and return true if and only if it is a binary search tree.
This question requires me to recall what the hell the difference between a binary tree and a binary search tree is. I'm sure I could ask the interviewer but then I have to figure out the problem with it in front of them, there's just so much pressure and the nerves just kill me :(. I'm not saying it's just specific to binary search trees, it just feels like there's an endless amount of things.

I know I sound like a moron, but at least I can write FizzBuzz no problem :s.

Orzo
Sep 3, 2004

IT! IT is confusing! Say your goddamn pronouns!
Technically you could call the learning of any piece of information 'memorizing.' But there are certain things that you're expected to remember, such as what a binary search tree is, or what a linked list is.

Puddy1
Aug 28, 2004

Orzo posted:

Technically you could call the learning of any piece of information 'memorizing.' But there are certain things that you're expected to remember, such as what a binary search tree is, or what a linked list is.

Yeah, I guess it's what Paolomania said and I really should brush up on that stuff. It just feels so tedious going through my past notes, I think I might try to find an online lecture series to watch to relearn some fundamentals.

Cicero
Dec 17, 2003

Jumpjet, melta, jumpjet. Repeat for ten minutes or until victory is assured.
The number of data structures and algorithms you're expected to have memorized isn't really huge; let's see for data strucutres, I'd guess there's arrays, linked lists, hash tables, array-based lists, maps, binary search trees, heaps. More difficult and important is knowing the how and why behind those data structures and algorithms.

Malcolm XML
Aug 8, 2009

I always knew it would end like this.

Aredna posted:

That's how I solved it in the past for a problem where you drew colored rectangles in a specific order and then had to say how much of each color was would be on top.

For the single color solution you could even sort the list of rectangles and significantly increase average case performance by reducing the number of comparisons for each new rectangle.

Surprisingly I find this problem easier than selecting a truly random element from a b-tree, but that's probably a result of spending too much time with programming contest type problems and little real world programming experience.

There exists a less lovely version of this somewhere in a good comp geom textbook.

Sab669
Sep 24, 2009

So, earlier this week I posted about having a phone interview for an internship. Just got that call. It went alright.

-Asked me how databases work (ie. A database is made of tables, is made of columns, which has rows of data in it, thought that was a strange question)
-Difference from an object and a class
-How much I knew about HTTP. I thought this was a pretty vague question and didn't know how to answer it with anything other than what it stands for.

They want me full time for three months- unpaid though. A friend of mine (lives in a different state) said it's not legal for companies to have you full time and unpaid as a student, unless it's for credit hours with the college. Either way, I'm gunna talk to my student advisor to see if I could work that out, and then my parents to see if they might be able to help me out for three months.

Scheduled a follow-up interview this coming Wednesday, they said it's a "small office, don't need to dress up" but I've heard people saying that that can be a trap. I figure I'll just wear some nice work pants / button up shirt. No tie or coat or anything too fancy. Meet 'em half way?

I'm really not sure how I feel about all this :(

tef
May 30, 2004

-> some l-system crap ->
On the whole, you have an opportunity you can turn down at any moment. If you are an unpaid intern you shouldn't really have to give much notice. If they demand a long notice period it is probably not worth it.

I.e. it's worth going along with as long as you can walk away pretty quickly if it turns out bad.

Sab669 posted:

-How much I knew about HTTP. I thought this was a pretty vague question and didn't know how to answer it with anything other than what it stands for.

If you get this imagine you are giving the wikipedia answer - imagine what you would find on wikipedia if you looked it up.

I.e

HTTP is a protocol used by web browsers to deliver html and other content over the internet. there a variety of tools blah blah blah apache blah blah firefox blah blah chrome blah blah tim berners lee blah blah chunked encoding blah blah tcp blah PUT blah hyperlinks blah URI vs URL

A MIRACLE
Sep 17, 2007

All right. It's Saturday night; I have no date, a two-liter bottle of Shasta and my all-Rush mix-tape... Let's rock.

Sab669 posted:

So, earlier this week I posted about having a phone interview for an internship. Just got that call. It went alright.

-Asked me how databases work (ie. A database is made of tables, is made of columns, which has rows of data in it, thought that was a strange question)
-Difference from an object and a class
-How much I knew about HTTP. I thought this was a pretty vague question and didn't know how to answer it with anything other than what it stands for.

They want me full time for three months- unpaid though. A friend of mine (lives in a different state) said it's not legal for companies to have you full time and unpaid as a student, unless it's for credit hours with the college. Either way, I'm gunna talk to my student advisor to see if I could work that out, and then my parents to see if they might be able to help me out for three months.

Scheduled a follow-up interview this coming Wednesday, they said it's a "small office, don't need to dress up" but I've heard people saying that that can be a trap. I figure I'll just wear some nice work pants / button up shirt. No tie or coat or anything too fancy. Meet 'em half way?

I'm really not sure how I feel about all this :(

I dunno man, if you're even half-competent you should be able to swing $15-$20/hr. I'd keep looking.

gariig
Dec 31, 2004
Beaten into submission by my fiance
Pillbug

Sab669 posted:

They want me full time for three months- unpaid though. A friend of mine (lives in a different state) said it's not legal for companies to have you full time and unpaid as a student, unless it's for credit hours with the college. Either way, I'm gunna talk to my student advisor to see if I could work that out, and then my parents to see if they might be able to help me out for three months.

Scheduled a follow-up interview this coming Wednesday, they said it's a "small office, don't need to dress up" but I've heard people saying that that can be a trap. I figure I'll just wear some nice work pants / button up shirt. No tie or coat or anything too fancy. Meet 'em half way?

I'm really not sure how I feel about all this :(

I'd go to the interview and see what they have to say. Remember the interview is as much about them interviewing you as you are interviewing them. I also agree on your dress attire (button up/polo tucked in, khakis, nice shoes, and a belt). The legality of the employment is hog wash. There are no government rules about being a college student and how much they can schedule you. If the job was through the school there might be rules imposed by the school.

If "full time" is 40+ hours a week unpaid I'd skip it unless jobs are really scarce in your area or what they are doing is SO cool. Like A MIRACLE said you should be making at least $10+/hour. They need to compensate you with something so maybe the job will be really fulfilling.

Edison was a dick
Apr 3, 2010

direct current :roboluv: only

Sab669 posted:

Scheduled a follow-up interview this coming Wednesday, they said it's a "small office, don't need to dress up" but I've heard people saying that that can be a trap. I figure I'll just wear some nice work pants / button up shirt. No tie or coat or anything too fancy. Meet 'em half way?

I'm really not sure how I feel about all this :(
It is worth attending the interview for the practise, but I'd only consider accepting an offer if it's a paid position or you've got nothing better to do. Keep looking, being employed may look better at an interview somewhere else.

Sab669
Sep 24, 2009

I think the big reason why it's unnpaid is because it's a small startup company that hasn't actually rolled out its first product commercially. They're in the final stages of development, they say, and are looking to hire on a few more hands for when it goes live basically.

Whether that's a valid reason for it to be unpaid or not isn't for me to say, I guess. I too was hoping for at least $15/hr :(

And in general, internships / entry-level positions seem rather scarce in here Rhode Island.

shrughes
Oct 11, 2008

(call/cc call/cc)

Sab669 posted:

I think the big reason why it's unnpaid is because it's a small startup company that hasn't actually rolled out its first product commercially. They're in the final stages of development, they say, and are looking to hire on a few more hands for when it goes live basically.

This is bullshit, any reasonable startup can pay intern salaries. There is no reason you should work for free as an engineering intern. This is complete insanity. Just run away. Run!

Sab669 posted:

And in general, internships / entry-level positions seem rather scarce in here Rhode Island.

Then why are you looking in Rhode Island? Get an internship in Boston, get a room in Cambridge on Craigslist for the duration, problem solved.

TasteMyHouse
Dec 21, 2006
Or just commute on the loving MBTA commuter rail

Contra Duck
Nov 4, 2004

#1 DAD
I too will say 'holy poo poo do not take that unpaid job'.

Pweller
Jan 25, 2006

Whatever whateva.
Does the US not have some sort of subsidy for hiring students/new grads in tech roles? I would think there'd be all kinds of grants with all the 'omg we need STEM students' I've been reading about...

I'm pretty sure the following is accurate, or at least close,
in Canada (perhaps this is a provincial-level thing), employers can apply get $9-10/hr towards internship/co-op students which they're supposed to bump up to at least something like $16-17/hr, and I think they can also get $25k towards new grad salaries, possibly dependent on if it's a startup or not.


e: US dept of labour says unpaid internship is legal only if a for-profit employer isn't getting work of any immediate benefit to them (ie. a waste of both your time)
http://www.dol.gov/whd/regs/compliance/whdfs71.pdf
Criteria for legal unpaid intern:
1. The internship, even though it includes actual operation of the facilities of the employer, is similar to training which would be given in an educational environment;
2. The internship experience is for the benefit of the intern;
3. The intern does not displace regular employees, but works under close supervision of existing staff;
4. The employer that provides the training derives no immediate advantage from the activities of the intern; and on occasion its operations may actually be impeded;
5. The intern is not necessarily entitled to a job at the conclusion of the internship; and
6. The employer and the intern understand that the intern is not entitled to wages for the time spent in the internship.

Pweller fucked around with this message at 03:46 on Sep 17, 2011

take boat
Jul 8, 2006
boat: TAKEN

Sab669 posted:

I think the big reason why it's unnpaid is because it's a small startup company that hasn't actually rolled out its first product commercially. They're in the final stages of development, they say, and are looking to hire on a few more hands for when it goes live basically.

Either the employees themselves are being paid, in which case the reason is bullshit, or they're not, and the company can't make payroll. Either case is worrying.

Cicero
Dec 17, 2003

Jumpjet, melta, jumpjet. Repeat for ten minutes or until victory is assured.

Sab669 posted:

I think the big reason why it's unnpaid is because it's a small startup company that hasn't actually rolled out its first product commercially. They're in the final stages of development, they say, and are looking to hire on a few more hands for when it goes live basically.

Whether that's a valid reason for it to be unpaid or not isn't for me to say, I guess. I too was hoping for at least $15/hr :(

And in general, internships / entry-level positions seem rather scarce in here Rhode Island.
If you're gonna work unpaid, might as well work for yourself making iOS or Android apps or something.

Pweller posted:

Does the US not have some sort of subsidy for hiring students/new grads in tech roles? I would think there'd be all kinds of grants with all the 'omg we need STEM students' I've been reading about...

I'm pretty sure the following is accurate, or at least close,
in Canada (perhaps this is a provincial-level thing), employers can apply get $9-10/hr towards internship/co-op students which they're supposed to bump up to at least something like $16-17/hr, and I think they can also get $25k towards new grad salaries, possibly dependent on if it's a startup or not.
The norm is definitely for CS internships to be paid, usually quite well (the top tier places seem to pay around $30/hour or so).

quote:

e: US dept of labour says unpaid internship is legal only if a for-profit employer isn't getting work of any immediate benefit to them (ie. a waste of both your time)
http://www.dol.gov/whd/regs/compliance/whdfs71.pdf
Criteria for legal unpaid intern:
1. The internship, even though it includes actual operation of the facilities of the employer, is similar to training which would be given in an educational environment;
2. The internship experience is for the benefit of the intern;
3. The intern does not displace regular employees, but works under close supervision of existing staff;
4. The employer that provides the training derives no immediate advantage from the activities of the intern; and on occasion its operations may actually be impeded;
5. The intern is not necessarily entitled to a job at the conclusion of the internship; and
6. The employer and the intern understand that the intern is not entitled to wages for the time spent in the internship.
Yeah everyone ignores this for some reason.

pokeyman
Nov 26, 2006

That elephant ate my entire platoon.

Cicero posted:

Yeah everyone ignores this for some reason.

It's good cover for asking to be paid or for declining the offer, even if employers typically ignore it, so it's worth pointing out.

Standish
May 21, 2001

Sab669 posted:

I think the big reason why it's unnpaid is because it's a small startup company that hasn't actually rolled out its first product commercially.
If it's a startup where they can't afford salaries then you get equity (not options, actual real shares).

You do not work for nothing. Even apart from the obvious reasons, it's a giant red flag about how you are likely to be treated, how your work is likely to be valued, and the other people you'll be working with.

crazyfish
Sep 19, 2002

My first CS internship was with a small startup company that didn't have a commercial product at the time, and I still got $15/hr.

Milotic
Mar 4, 2009

9CL apologist
Slippery Tilde
Nothing destroys morale and your motivation better than knowing no matter how much you improve as a developer, you won't get paid any extra. The same is doubly true for not getting paid at all.

pokeyman
Nov 26, 2006

That elephant ate my entire platoon.

Milotic posted:

Nothing destroys morale and your motivation better than knowing no matter how much you improve as a developer, you won't get paid any extra.

Maybe for you.

Milotic
Mar 4, 2009

9CL apologist
Slippery Tilde

pokeyman posted:

Maybe for you.

I've been in that situation. The previous company I worked for (about 1700 employees) announced a 2 year pay freeze for all employees. The difference it made to the company culture was staggering - it quickly transformed from a slightly bureaucratic, but pleasant and vaguely 'can-do' culture to a place that was really not great to work for. People outside IT could game the system since promotions still resulted in a pay-rise, but promotions in IT didn't - so a good chunk of developers who had been there 5 years or more quit, and still are quitting.

Never underestimate the motivation of prospective future reward. That, and any developer or IT employee worth his or her salt should continually be improving. That means your labour is worth more. Only a pinko commie would not want to be rewarded for the value of their labour. (e: Especially with inflation being around 5% for the past 2 years and VAT going from 17.5% to 20% - hello reduction in standard of living!)

Milotic fucked around with this message at 10:47 on Sep 17, 2011

Super Dude
Jan 23, 2005
Do the Jew
I'm going to be graduating in December with a CS degree. I went to the career fair today, spoke with the rep from a company, and he called me a few hours ago to set up an interview for tomorrow morning. This is my first interview for a true technical position, so I'm sort of freaking out. He said the technical questions will focus mainly on object oriented design and some basic database stuff. The interview is supposed to last about 30 minutes (so the technical stuff is probably 20-25 minutes. Any idea what kind of questions I can expect?

Thanks! Maybe I shouldn't worry too much. I can explain/do all of that without a problem. I hope he doesn't ask really complex algorithm problems because that's probably my weakest area.
VVVVV

Super Dude fucked around with this message at 07:02 on Sep 22, 2011

kitten smoothie
Dec 29, 2001

Super Dude posted:

I'm going to be graduating in December with a CS degree. I went to the career fair today, spoke with the rep from a company, and he called me a few hours ago to set up an interview for tomorrow morning. This is my first interview for a true technical position, so I'm sort of freaking out. He said the technical questions will focus mainly on object oriented design and some basic database stuff. The interview is supposed to last about 30 minutes (so the technical stuff is probably 20-25 minutes. Any idea what kind of questions I can expect?

Stuff I might ask if I were in their shoes, and stuff I have asked in interviews in the past:

OO stuff:
- What's a class? What's an object? What's the difference between the two? (Seriously this sounds like baby CS101 stuff that you can explain in one sentence, but you'd have no idea how many times candidates totally blow it)
- What's the difference between static and instance variables/methods? When would you want to use static fields or methods?
- Explain inheritance and polymorphism to me. What does it mean to override something? What's the difference between overriding and overloading?

DB stuff:
- What does a join clause do? What's the difference between an inner join and an outer join? What about left outer join vs right outer join?
- Design a database to model this problem. I run a department store. My customers buy things in orders. Sometimes they buy more than one item in an order. Help me track my customers, my products for sale, the orders (what customers bought when), and what method of payment they used on the order.
(At a high level what I'd expect someone to have here is a table for customers, and a table for products. You'd also have a table for orders that has a foreign key to customers and a field for method of payment, and then also a bridge table between orders and products)
- Show me what the primary keys are in each of these tables in your database.
- Write me a SQL query against your database to find all the customers who bought Product X.
- Write me a query to find all customers who have paid with a credit card more than 3 times. use GROUP BY

kitten smoothie fucked around with this message at 06:41 on Sep 22, 2011

Super Dude
Jan 23, 2005
Do the Jew
Well I thought the interview went relatively well. It consisted of 1 math problem (statistics), 1 database problem, and 1 java problem. I breezed through the first two, and got stuck on the programming one for a few minutes, but finished it in the end. I got all of the theory questions right as well. Thanks for the help kitten smoothie!

Safe and Secure!
Jun 14, 2008

OFFICIAL SA THREAD RUINER
SPRING 2013
A person from a local development company came into one of my classes two weeks ago to let everyone know his company was looking to hire a senior developer, but that they were really flexible on what "senior" meant and were basically interested in hiring someone competent and paying him/her according to their skill. He also said that they were also open to internships.

However, the position(s) is/are for immediate hire, and I'm taking 24 credit-hours this semester, so I don't think I could do it right now. Should I save the handout and send him my resume in a few months when I would be free, or should I put together a resume and a cover letter explaining that I'd be quite glad to work for them a few months from now if they are still looking to hire?

Or should I just forget since two weeks is a long time to wait and he's probably forgotten all about it?

I also feel that my application could be much stronger later on, as I'm currently working on a number of projects for several classes that should be kind of cool when they're finished, but right now would look kind of bad since they're incomplete, and I currently don't have anything other than homework assignments, so nothing to show that I have actually done productive, non-homework development. That's one reason I'm leaning toward applying later if that's not going to be a horrible idea.

He did say that the work was virtual, so entirely from home, and that we would be able to work at our leisure. He said like 20 hours a week would be fine, as they weren't stuck on having one person, but would be fine with hiring multiple people, as long as we can be available to meet (virtually) when everyone meets, as they are an agile team. So should I not even mention my course load and apply for work immediately? I'm guessing that having a job while in school would look better later on than getting a couple of Bs this semester.

Safe and Secure! fucked around with this message at 22:36 on Sep 26, 2011

baquerd
Jul 2, 2007

by FactsAreUseless

Safe and Secure! posted:

However, the position(s) is/are for immediate hire, and I'm taking 24 credit-hours this semester, so I don't think I could do it right now. Should I save the handout and send him my resume in a few months when I would be free, or should I put together a resume and a cover letter explaining that I'd be quite glad to work for them a few months from now if they are still looking to hire?

When a (conceivably 20hr/wk) job gets dropped in your lap in your situation, apply for it. The worst that can happen is you get interview practice. If they want to hire you, explain your situation. If you can't swing a 20hr/wk job for a couple of months with school I don't know what to tell you, but this is an excellent opportunity.

Milotic
Mar 4, 2009

9CL apologist
Slippery Tilde
The only person who can judge if you can handle the course load and a 20+ hour a week job is you. It's worth finding out when these virtual meetings would be before accepting any offer. If you want the job, don't wait for the perfect portfolio - just apply. If not, it's worth keeping the handout on file. One thing that is a bit curious is pitching to a bunch of students that they're looking for a senior developer.

MrTheDevious
May 7, 2006

Ahh nostalgia, you cruel bitch
Not planning to comment on whether you can handle the load (24 hours was a HUGE amount at my Uni) but as far as applying now -- DO IT.

If you go back a bit, I was posting in this thread for advice not *too* long ago. Since then, I've ended up a corporate recruiter amongst other things and now have direct advice to offer:

APPLY NOW. If a company is interested in you, they WILL keep in touch and follow up with you. That is the #1 thing I wish I'd known as a college student. Apply early and often! Even if they don't call you back from your first resume, don't give up. Any company worth its salt is receiving hundreds/thousands of resumes and they all bleed together. What makes a mark is interest, enthusiasm, and persistence (combined with talent and ability, obviously...), not your GPA.

I'm currently holding 3 positions open until next May for people we really liked. You lose NOTHING by applying ASAP and repeatedly. Companies aren't going to say "hell that guy is so annoying, toss it in the trash". Speaking from the other side of the fence, one of the things we look for most (again, beyond actual skills, which TONS of people have) is how personable and excited said applicant is. You can literally do yourself NO harm by trying now and again later. Trust me. I just spent 2 weeks doing nothing but recruiting people like you. A resume accompanied by an excited, personable person was worth more than a half point of GPA.

Adbot
ADBOT LOVES YOU

Safe and Secure!
Jun 14, 2008

OFFICIAL SA THREAD RUINER
SPRING 2013
Understood. I'll update my resume and send it off after I have a few people look at it. Thank you, everyone!

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply