Professor

Majid Sarrafzadeh

AD
3.1
Overall Ratings
Based on 85 Users
Easiness 2.4 / 5 How easy the class is, 1 being extremely difficult and 5 being easy peasy.
Workload 2.4 / 5 How light the workload is, 1 being extremely heavy and 5 being extremely light.
Clarity 3.1 / 5 How clear the professor is, 1 being extremely unclear and 5 being very clear.
Helpfulness 3.1 / 5 How helpful the professor is, 1 being not helpful at all and 5 being extremely helpful.

Reviews (85)

4 of 7
4 of 7
Add your review...
Jan. 6, 2020
Quarter: Fall 2019
Grade: A

This class is good prep for interviews. Take it ideally before you do interviews, or at the same time as when you're doing them. Majid is p good. I found his lectures to generally be very helpful. Much better than trying to figure it out on my own through youtube or the textbook. It probably would've been possible to take this course w/o going to class and teaching myself through the textbook, but it would've been a worse time. Useful class, glad I took it w/ Majid.

Helpful?

0 0 Please log in to provide feedback.
COM SCI M152A
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
June 19, 2020
Quarter: Spring 2020
Grade: A

Note: Class taken remotely during COVID-19.
tl;dr: this class is A LOT OF WORK for just 2 units. esp remotely. last few projects were difficult and we had to submit long reports AND record videos for each project. grading wasn't particularly harsh though.
This is the first time in a while where Sarrafzadeh is in charge of this course. However, you will not see the prof at all aside from OH. The TAs are in charge of your course. Honestly the TA does not matter too much as projects are all graded by the same TA for all students regardless of TA section.
I only attended my section for the first two weeks and did not go to any of the rest of the TA sections. I didn't find the sections very helpful and find learning on my own, i.e. googling, for the projects was faster.
There were in total 5 projects all in Verilog. All done individually(which kinda sucks). You have to download the Xilinx ISE in some form and I strongly recommend just dualbooting linux instead of using a virtual box which takes a lot of memory and is quite slow. First three projects weren't too difficult, but last two projects were VERY TIME CONSUMING. They're not incredibly hard, it just takes time to understand the vague specs, generate 100000(im exaggerating but you get the point) testcases, screen shot all the waveforms, write the long report, record the video...
Each project took me approximately a day(writing report+video generally took me around 3+ hours). It is quite a lot of effort for a 2 unit class.
The TAs aren't particularly harsh on the grading, but just make sure you follow the instructions carefully. Missing an explanation could cause you 5+ points out of 100.

Did I learn a lot about Verilog from this class? YES.
Was it worth the time? I am not sure.

Helpful?

0 0 Please log in to provide feedback.
COM SCI M152A
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
June 20, 2020
Quarter: Spring 2020
Grade: P

Be very careful with the projects in this class. Do not make dumb mistakes. Follow the formatting directions exactly. A lot of people including myself messed up with these directions and did very poorly on some of the projects for that reason alone. Beyond that, this class isn't necessarily difficult, but it is a ton of work. The projects take at least a decent amount of time to code, but what takes the longest is writing test cases and writing reports. Those take numerous hours often times to write. For me at least my reports usually exceeded 20 pages. The specifications for the projects are very ambiguous so you need to make assumptions about how your project should behave. I didn't really think this class was that useful, but I wouldn't call it too hard either. It is just insanely time consuming. This quarter we got very lucky as Majid decided not to curve down. I don't know if I would have passed this class if he had curved down (I ended up with an 86% took it P/NP because we didn't know about the no curving down until later and I was scared I would make other mistakes dropping my grade even lower). Most people I knew got in the 90s despite the strict rules about formatting. So make sure to be on top of your work otherwise you can lose a lot of points and end up on the wrong side of the curve assuming majid will curve down in the future. From what he told us, not curving down is an exception rather than the norm.

Helpful?

0 0 Please log in to provide feedback.
COM SCI M152A
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
June 20, 2020
Quarter: Spring 2020
Grade: A+

From what I can tell compared to previous iterations of this class prior to this quarter, the class was made better. We did not have to deal with any FPGAs or anything so we did not have to go into any labs at any specific time because of the virus. We simply had to install a VM to run the software, or install it on a windows computer. Rather than having a group of 3 with 3 labs and 1 big final project, we had 5 individual labs. I prefer this because the labs were made more manageable and we did not have to make our own final project and I did not have to rely on other group members. It doesn’t matter who your TA is because each TA is responsible for grading each lab for all students. One TA would grade lab 1, another would grade lab 2, etc.

Grading:
10% Attendance/quizzes
15% Project 1
15% Project 2
20% Project 3
20% Project 4
20% Project 5

In the first few weeks, we did not have to show up to lecture and instead had to take easy quizzes to check that you watched the video recording or attended lecture. These were done on your own time and were easy. Midway through the quarter, in lieu of quizzes, they made attendance mandatory for project introductions. I got full credit on all this. Lab 1, I got 99% because I got marked off for some minor unspecified video error. For lab 2, I got 100%. Lab 3, I got 95% because I forgot to explain the synthesis report and summary. Lab 4 and 5 were a bit longer to finish and involved Finite state machines, but I also got 100% on both these. Lab 1 was 1 week, lab 2 was 2 weeks, lab 3 was 1 week, and the last two labs were each 2 weeks. The classes where they don’t introduce projects are essentially like office hours to ask questions about the project. You sign up for a slot beforehand with your TA.

Labs took me about 10-16 hours each. Reports were often long and time consuming. Some of my reports were 15-100 pages long, but most of it was just copy and pasting the synthesis and map reports which were long. But the contents of the reports are not trivial. It often took me about 6 hours for each lab report after finishing each project. Grading seemed fair as long as the projects worked and you put everything they asked for. Labs usually had median grades of high 80s or low 90s I think. With the exception of lab 2 which had a median of around high 70s since it was auto graded.

Some of the lab specs are a bit vague and people would ask for clarifications, so they often update the specs a lot.

At the end of the quarter, the professor emailed the whole class before the P/NP deadline to let us know he wasn’t going to down curve the class as opposed to in quarters because of the circumstances that happened in the world this quarter. Overall, we don’t interact with the professor other than if you email him or ask him for an office hours appointment.

Helpful?

0 0 Please log in to provide feedback.
COM SCI M152B
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
July 4, 2020
Quarter: Spring 2020
Grade: A+

Online made this class a shitload of relatively easy work. We were required to submit a video demo, report, and code with every project (there were 5 through the year), and the video and report always took a while. However, I definitely overdid them, because (at least for online) the TA's graded them very leniently. The only project you should be scared about is the one they run thru an automated tester. This is a TA led class, so try your best to get one that's helpful.

Helpful?

0 0 Please log in to provide feedback.
Sept. 5, 2020
Quarter: Fall 2019
Grade: A

Sarrafzadeh is a great and kind lecturer. He values class engagement a lot so he will answer all your questions and try to get everyone to work through problems as a group instead of just lecturing to you. I didn't end up going to lecture much because I'm a bad student, but I think they were valuable and there were definitely things I missed on the test that he went over in lecture.

Homework is pretty time consuming and hard, think like 8 psuedocodes and proofs for algorithm problems. Grading for the homeworks wasn't a big deal though so maybe I stressed too hard about them.

Midterm was pretty straight forward if you did the homework and paid attention. Final was much harder but doable. It had a handful of Leetcode hard problems for reference.

To succeed in this class (and in technical interviews) I would recommend doing the homework thoroughly, and then if still don't feel comfortable, look up the topics on Leetcode and try to work through some problems. This won't get you practice proving your algorithms, but it will help you come up with the right ones.

Helpful?

0 0 Please log in to provide feedback.
COM SCI M152A
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
June 21, 2021
Quarter: Spring 2021
Grade: A+

Ok so this class was with a TA, and I had Weitong Zhang, who was very friendly and helpful. The class is honestly pretty easy: there is 1-2 lectures about the next project, then the rest of the sections are OH until the project is due. It was relaxed.

There are 4 labs. The labs got a little hard at the end, but mostly if you pay attention to the pre-lab and use good practice for clocking, then you're A-OK.
The "code" is all done in Verilog, which is actually a description language (like HTML is to webpages): it describes digital systems, but doesn't "code" more than define behavior on certain signals. I say this bc it's a little hard to grasp at first, but easy once you get the hang of it. I did all the projects in <15 hours. If you design your module correctly, write good test cases, and make a lab report with all the right components, you get an A.

Helpful?

0 0 Please log in to provide feedback.
COM SCI M152A
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Dec. 24, 2020
Quarter: Fall 2020
Grade: A

The assignments in this class take almost as long as a 4-unit course. We had 4 assignments, each requiring a 10-ish page report and a 10-minute video with your narration of your implementation. Good thing was that the grading was rather lenient and my TA was very clear and helpful in discussions. There is no Piazza/forum (CCLE forum was barely ever monitored) so you have to get started early and questions need to be asked in person. Overall not a bad class if you understood the gist of M51A. Projects are essentially the Verilog version of things we learned in M51A, not many new concepts.

Helpful?

0 0 Please log in to provide feedback.
COM SCI 180
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Dec. 31, 2020
Quarter: Fall 2020
Grade: B-

Overall this class was very interesting and also very challenging. Even with the online format due to COVID, Majid’s lectures are engaging and paced very well. You come away with a good understanding of the material since he explains things pretty intuitively, without too much technical stuff. Majid’s lecturing style is pretty sarcastic, but he does take the time to fully explain things and make sure all questions are clarified. Be prepared to spend 10-15 hours on each weekly assignment. If you procrastinate, your life will be hell. The homework does a very good job on giving you practice on the concepts and preparing you for the exams. I stress that you should not sleep on this class and make sure you know your algorithms inside and out, since the time limit on the midterm and final will sneak up on you and totally screw you up if you’re not prepared. (I got screwed on both midterm and final since I lost track of time, rip.) Note that he is very strict about homework and exams: if you submit your homework or exam even a second past the time limit, you will get no credit. He also says he is strict on grading, but the graders actually grade pretty leniently even if you're mostly wrong, as long as you try.

Also, shoutout to my TA Lionel Levine for being awesome! He really put in a lot of time to make discussion interesting and helpful, and he really understands that many of the circumstances we've faced this quarter are not ideal. I also appreciate how he tried to recreate the social setting of an in-person classroom by trying to break down the awkward barriers of Zoom through breakout rooms / icebreakers / memes / etc.

TLDR: If there’s anything I learned in this class, it’s that we all need to mute ourselves.

Helpful?

0 0 Please log in to provide feedback.
COM SCI 180
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Jan. 1, 2021
Quarter: Fall 2020
Grade: B-

Majid may be a better professor if this class was taught in-person. But I really don't think he's anyway god-like and I actually think this class was overrated.

I was quite disappointed cuz I really put lots of time+efforts in this class but ended up ruining my perfect 4.0 gpa by a lot. I received A+ for CS 32 and A for CS 97 but I did not do well in this class. Why? I don't necessarily think I did not master the content of this class. I did quite decent on the midterm and homework. But I did really bad in the final because of the instructions...He only wrote that we need to provide proofs on the first page of the exam which was really easy to overlook. On the midterm, there was also such a statement on the first page but we did not lose points for questions without "providing proofs."

Not just me, 3+ of my friends also missed that. Yes it was our fault, but I just think a lot of students like us would have done better if every question was phrased better and if he let us ask questions for clarification in the exam

In the end, he also refused to curve the class cuz the average was high and everyone receives scores on the absolute scale. I really doubt that if there are 30% of students receive As in the class as in the past years cuz ppl may ace one exam but bomb another and we did not have participation points which was a grade booster as in the past years. If not, isn't that quite unfair for ppl who take this class this quarter? Most ppl around me received Bs. I just felt quite ironic when he said "I'm ok if everyone did great and gets an A" in the class. This class was the class that I devoted the most efforts+time in ever and I just felt that my efforts&time was kinda in vain

Yes, undeniably, his lectures were quite clear and the TA's discussions were nice. But his notes were kinda messy and there was no online communication platform like piazza which would have made the interactions better. The homework took lots of time to finish but was a good practice.

Helpful?

0 1 Please log in to provide feedback.
COM SCI 180
Quarter: Fall 2019
Grade: A
Jan. 6, 2020

This class is good prep for interviews. Take it ideally before you do interviews, or at the same time as when you're doing them. Majid is p good. I found his lectures to generally be very helpful. Much better than trying to figure it out on my own through youtube or the textbook. It probably would've been possible to take this course w/o going to class and teaching myself through the textbook, but it would've been a worse time. Useful class, glad I took it w/ Majid.

Helpful?

0 0 Please log in to provide feedback.
COM SCI M152A
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Spring 2020
Grade: A
June 19, 2020

Note: Class taken remotely during COVID-19.
tl;dr: this class is A LOT OF WORK for just 2 units. esp remotely. last few projects were difficult and we had to submit long reports AND record videos for each project. grading wasn't particularly harsh though.
This is the first time in a while where Sarrafzadeh is in charge of this course. However, you will not see the prof at all aside from OH. The TAs are in charge of your course. Honestly the TA does not matter too much as projects are all graded by the same TA for all students regardless of TA section.
I only attended my section for the first two weeks and did not go to any of the rest of the TA sections. I didn't find the sections very helpful and find learning on my own, i.e. googling, for the projects was faster.
There were in total 5 projects all in Verilog. All done individually(which kinda sucks). You have to download the Xilinx ISE in some form and I strongly recommend just dualbooting linux instead of using a virtual box which takes a lot of memory and is quite slow. First three projects weren't too difficult, but last two projects were VERY TIME CONSUMING. They're not incredibly hard, it just takes time to understand the vague specs, generate 100000(im exaggerating but you get the point) testcases, screen shot all the waveforms, write the long report, record the video...
Each project took me approximately a day(writing report+video generally took me around 3+ hours). It is quite a lot of effort for a 2 unit class.
The TAs aren't particularly harsh on the grading, but just make sure you follow the instructions carefully. Missing an explanation could cause you 5+ points out of 100.

Did I learn a lot about Verilog from this class? YES.
Was it worth the time? I am not sure.

Helpful?

0 0 Please log in to provide feedback.
COM SCI M152A
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Spring 2020
Grade: P
June 20, 2020

Be very careful with the projects in this class. Do not make dumb mistakes. Follow the formatting directions exactly. A lot of people including myself messed up with these directions and did very poorly on some of the projects for that reason alone. Beyond that, this class isn't necessarily difficult, but it is a ton of work. The projects take at least a decent amount of time to code, but what takes the longest is writing test cases and writing reports. Those take numerous hours often times to write. For me at least my reports usually exceeded 20 pages. The specifications for the projects are very ambiguous so you need to make assumptions about how your project should behave. I didn't really think this class was that useful, but I wouldn't call it too hard either. It is just insanely time consuming. This quarter we got very lucky as Majid decided not to curve down. I don't know if I would have passed this class if he had curved down (I ended up with an 86% took it P/NP because we didn't know about the no curving down until later and I was scared I would make other mistakes dropping my grade even lower). Most people I knew got in the 90s despite the strict rules about formatting. So make sure to be on top of your work otherwise you can lose a lot of points and end up on the wrong side of the curve assuming majid will curve down in the future. From what he told us, not curving down is an exception rather than the norm.

Helpful?

0 0 Please log in to provide feedback.
COM SCI M152A
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Spring 2020
Grade: A+
June 20, 2020

From what I can tell compared to previous iterations of this class prior to this quarter, the class was made better. We did not have to deal with any FPGAs or anything so we did not have to go into any labs at any specific time because of the virus. We simply had to install a VM to run the software, or install it on a windows computer. Rather than having a group of 3 with 3 labs and 1 big final project, we had 5 individual labs. I prefer this because the labs were made more manageable and we did not have to make our own final project and I did not have to rely on other group members. It doesn’t matter who your TA is because each TA is responsible for grading each lab for all students. One TA would grade lab 1, another would grade lab 2, etc.

Grading:
10% Attendance/quizzes
15% Project 1
15% Project 2
20% Project 3
20% Project 4
20% Project 5

In the first few weeks, we did not have to show up to lecture and instead had to take easy quizzes to check that you watched the video recording or attended lecture. These were done on your own time and were easy. Midway through the quarter, in lieu of quizzes, they made attendance mandatory for project introductions. I got full credit on all this. Lab 1, I got 99% because I got marked off for some minor unspecified video error. For lab 2, I got 100%. Lab 3, I got 95% because I forgot to explain the synthesis report and summary. Lab 4 and 5 were a bit longer to finish and involved Finite state machines, but I also got 100% on both these. Lab 1 was 1 week, lab 2 was 2 weeks, lab 3 was 1 week, and the last two labs were each 2 weeks. The classes where they don’t introduce projects are essentially like office hours to ask questions about the project. You sign up for a slot beforehand with your TA.

Labs took me about 10-16 hours each. Reports were often long and time consuming. Some of my reports were 15-100 pages long, but most of it was just copy and pasting the synthesis and map reports which were long. But the contents of the reports are not trivial. It often took me about 6 hours for each lab report after finishing each project. Grading seemed fair as long as the projects worked and you put everything they asked for. Labs usually had median grades of high 80s or low 90s I think. With the exception of lab 2 which had a median of around high 70s since it was auto graded.

Some of the lab specs are a bit vague and people would ask for clarifications, so they often update the specs a lot.

At the end of the quarter, the professor emailed the whole class before the P/NP deadline to let us know he wasn’t going to down curve the class as opposed to in quarters because of the circumstances that happened in the world this quarter. Overall, we don’t interact with the professor other than if you email him or ask him for an office hours appointment.

Helpful?

0 0 Please log in to provide feedback.
COM SCI M152B
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Spring 2020
Grade: A+
July 4, 2020

Online made this class a shitload of relatively easy work. We were required to submit a video demo, report, and code with every project (there were 5 through the year), and the video and report always took a while. However, I definitely overdid them, because (at least for online) the TA's graded them very leniently. The only project you should be scared about is the one they run thru an automated tester. This is a TA led class, so try your best to get one that's helpful.

Helpful?

0 0 Please log in to provide feedback.
COM SCI 180
Quarter: Fall 2019
Grade: A
Sept. 5, 2020

Sarrafzadeh is a great and kind lecturer. He values class engagement a lot so he will answer all your questions and try to get everyone to work through problems as a group instead of just lecturing to you. I didn't end up going to lecture much because I'm a bad student, but I think they were valuable and there were definitely things I missed on the test that he went over in lecture.

Homework is pretty time consuming and hard, think like 8 psuedocodes and proofs for algorithm problems. Grading for the homeworks wasn't a big deal though so maybe I stressed too hard about them.

Midterm was pretty straight forward if you did the homework and paid attention. Final was much harder but doable. It had a handful of Leetcode hard problems for reference.

To succeed in this class (and in technical interviews) I would recommend doing the homework thoroughly, and then if still don't feel comfortable, look up the topics on Leetcode and try to work through some problems. This won't get you practice proving your algorithms, but it will help you come up with the right ones.

Helpful?

0 0 Please log in to provide feedback.
COM SCI M152A
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Spring 2021
Grade: A+
June 21, 2021

Ok so this class was with a TA, and I had Weitong Zhang, who was very friendly and helpful. The class is honestly pretty easy: there is 1-2 lectures about the next project, then the rest of the sections are OH until the project is due. It was relaxed.

There are 4 labs. The labs got a little hard at the end, but mostly if you pay attention to the pre-lab and use good practice for clocking, then you're A-OK.
The "code" is all done in Verilog, which is actually a description language (like HTML is to webpages): it describes digital systems, but doesn't "code" more than define behavior on certain signals. I say this bc it's a little hard to grasp at first, but easy once you get the hang of it. I did all the projects in <15 hours. If you design your module correctly, write good test cases, and make a lab report with all the right components, you get an A.

Helpful?

0 0 Please log in to provide feedback.
COM SCI M152A
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Fall 2020
Grade: A
Dec. 24, 2020

The assignments in this class take almost as long as a 4-unit course. We had 4 assignments, each requiring a 10-ish page report and a 10-minute video with your narration of your implementation. Good thing was that the grading was rather lenient and my TA was very clear and helpful in discussions. There is no Piazza/forum (CCLE forum was barely ever monitored) so you have to get started early and questions need to be asked in person. Overall not a bad class if you understood the gist of M51A. Projects are essentially the Verilog version of things we learned in M51A, not many new concepts.

Helpful?

0 0 Please log in to provide feedback.
COM SCI 180
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Fall 2020
Grade: B-
Dec. 31, 2020

Overall this class was very interesting and also very challenging. Even with the online format due to COVID, Majid’s lectures are engaging and paced very well. You come away with a good understanding of the material since he explains things pretty intuitively, without too much technical stuff. Majid’s lecturing style is pretty sarcastic, but he does take the time to fully explain things and make sure all questions are clarified. Be prepared to spend 10-15 hours on each weekly assignment. If you procrastinate, your life will be hell. The homework does a very good job on giving you practice on the concepts and preparing you for the exams. I stress that you should not sleep on this class and make sure you know your algorithms inside and out, since the time limit on the midterm and final will sneak up on you and totally screw you up if you’re not prepared. (I got screwed on both midterm and final since I lost track of time, rip.) Note that he is very strict about homework and exams: if you submit your homework or exam even a second past the time limit, you will get no credit. He also says he is strict on grading, but the graders actually grade pretty leniently even if you're mostly wrong, as long as you try.

Also, shoutout to my TA Lionel Levine for being awesome! He really put in a lot of time to make discussion interesting and helpful, and he really understands that many of the circumstances we've faced this quarter are not ideal. I also appreciate how he tried to recreate the social setting of an in-person classroom by trying to break down the awkward barriers of Zoom through breakout rooms / icebreakers / memes / etc.

TLDR: If there’s anything I learned in this class, it’s that we all need to mute ourselves.

Helpful?

0 0 Please log in to provide feedback.
COM SCI 180
COVID-19 This review was submitted during the COVID-19 pandemic. Your experience may vary.
Quarter: Fall 2020
Grade: B-
Jan. 1, 2021

Majid may be a better professor if this class was taught in-person. But I really don't think he's anyway god-like and I actually think this class was overrated.

I was quite disappointed cuz I really put lots of time+efforts in this class but ended up ruining my perfect 4.0 gpa by a lot. I received A+ for CS 32 and A for CS 97 but I did not do well in this class. Why? I don't necessarily think I did not master the content of this class. I did quite decent on the midterm and homework. But I did really bad in the final because of the instructions...He only wrote that we need to provide proofs on the first page of the exam which was really easy to overlook. On the midterm, there was also such a statement on the first page but we did not lose points for questions without "providing proofs."

Not just me, 3+ of my friends also missed that. Yes it was our fault, but I just think a lot of students like us would have done better if every question was phrased better and if he let us ask questions for clarification in the exam

In the end, he also refused to curve the class cuz the average was high and everyone receives scores on the absolute scale. I really doubt that if there are 30% of students receive As in the class as in the past years cuz ppl may ace one exam but bomb another and we did not have participation points which was a grade booster as in the past years. If not, isn't that quite unfair for ppl who take this class this quarter? Most ppl around me received Bs. I just felt quite ironic when he said "I'm ok if everyone did great and gets an A" in the class. This class was the class that I devoted the most efforts+time in ever and I just felt that my efforts&time was kinda in vain

Yes, undeniably, his lectures were quite clear and the TA's discussions were nice. But his notes were kinda messy and there was no online communication platform like piazza which would have made the interactions better. The homework took lots of time to finish but was a good practice.

Helpful?

0 1 Please log in to provide feedback.
4 of 7
ADS

Adblock Detected

Bruinwalk is an entirely Daily Bruin-run service brought to you for free. We hate annoying ads just as much as you do, but they help keep our lights on. We promise to keep our ads as relevant for you as possible, so please consider disabling your ad-blocking software while using this site.

Thank you for supporting us!