[GSoC][2022] Let the summer begin!
This commit is contained in:
parent
038d196fcd
commit
2a10c0600f
220
soc/2022/academics.html
Normal file
220
soc/2022/academics.html
Normal file
@ -0,0 +1,220 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Assessment | GNU social Summer of Code 2022</title>
|
||||||
|
<link rel="icon" href="../../favicon.png">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<link rel="stylesheet" href="https://hackersatporto.com/assets/css/main.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<header id="header">
|
||||||
|
<nav id="side-menu">
|
||||||
|
<label for="show-menu" id="menu-button">Menu</label>
|
||||||
|
<input id="show-menu" role="button" type="checkbox">
|
||||||
|
<ul id="menu">
|
||||||
|
<li><a href="./"><strong>← GS SoC 2022</strong></a></li>
|
||||||
|
<li><a href="#Grading_System_employed_0">Grading</a></li>
|
||||||
|
<li><a href="#Web_Technologies_69">Proposal</a></li>
|
||||||
|
<li><a href="#Internship__Training_91">Summer</a></li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
<h1>GNU social Summer of Code 2022</h1>
|
||||||
|
</header>
|
||||||
|
<article id="about">
|
||||||
|
<h1 class="code-line" data-line-start=0 data-line-end=1 ><a id="Grading_System_employed_0"></a>Grading System employed</h1>
|
||||||
|
<h2 class="code-line" data-line-start=2 data-line-end=3 ><a id="Effective_Grading_2"></a>Effective Grading</h2>
|
||||||
|
<p class="has-line-data" data-line-start="3" data-line-end="4">Either <em>pass</em> or <em>fail</em>.</p>
|
||||||
|
<h2 class="code-line" data-line-start=5 data-line-end=6 ><a id="Qualitative_Grading_5"></a>Qualitative Grading</h2>
|
||||||
|
<table class="table table-striped table-bordered">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Grade</th>
|
||||||
|
<th>Definition</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>31337</td>
|
||||||
|
<td>Outstanding</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>1337</td>
|
||||||
|
<td>Very Good</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>42</td>
|
||||||
|
<td>Competent</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>0</td>
|
||||||
|
<td>Failed</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<h2 class="code-line" data-line-start=13 data-line-end=14 ><a id="Method_13"></a>Method</h2>
|
||||||
|
<p class="has-line-data" data-line-start="14" data-line-end="15">Graded every month, the ceiled average is the final.</p>
|
||||||
|
<p class="has-line-data" data-line-start="16" data-line-end="17">No Quantitative Grading system will be used.</p>
|
||||||
|
<p class="has-line-data" data-line-start="18" data-line-end="19">The contributions will be evaluated according to the following directives:</p>
|
||||||
|
<blockquote>
|
||||||
|
<p class="has-line-data" data-line-start="20" data-line-end="21">Autonomy with which the work was done</p>
|
||||||
|
</blockquote>
|
||||||
|
<ul>
|
||||||
|
<li class="has-line-data" data-line-start="21" data-line-end="22">Low (was unable to progress autonomously);</li>
|
||||||
|
<li class="has-line-data" data-line-start="22" data-line-end="24">Competent (some autonomy but with blocking situations that required the<br>
|
||||||
|
intervention of the mentor);</li>
|
||||||
|
<li class="has-line-data" data-line-start="24" data-line-end="26">Very Good (very good ability to solve problems independently in useful time<br>
|
||||||
|
with the mentor mostly focused on defining the next steps of the work);</li>
|
||||||
|
<li class="has-line-data" data-line-start="26" data-line-end="28">Outstanding (is sometimes able to suggest surprising and valid alternatives to what was originally planned by the mentor).</li>
|
||||||
|
</ul>
|
||||||
|
<blockquote>
|
||||||
|
<p class="has-line-data" data-line-start="28" data-line-end="29">Objectives satisfaction</p>
|
||||||
|
</blockquote>
|
||||||
|
<ul>
|
||||||
|
<li class="has-line-data" data-line-start="29" data-line-end="30">Low (haven't reached to the minimum objectives admissible for the proposed work);</li>
|
||||||
|
<li class="has-line-data" data-line-start="30" data-line-end="31">Competent (the objectives were reached though not entirely);</li>
|
||||||
|
<li class="has-line-data" data-line-start="31" data-line-end="32">Very Good (reached up fully);</li>
|
||||||
|
<li class="has-line-data" data-line-start="32" data-line-end="34">Outstanding (exceeded up the objectives set).</li>
|
||||||
|
</ul>
|
||||||
|
<blockquote>
|
||||||
|
<p class="has-line-data" data-line-start="34" data-line-end="35">Intrinsic difficulty level of their work</p>
|
||||||
|
</blockquote>
|
||||||
|
<ul>
|
||||||
|
<li class="has-line-data" data-line-start="35" data-line-end="37">Low (relatively easy work, both from a scientific or technical point of view,<br>
|
||||||
|
based on widespread knowledge);</li>
|
||||||
|
<li class="has-line-data" data-line-start="37" data-line-end="39">Competent (work with some high complexity of details requiring more advanced<br>
|
||||||
|
knowledge/expertise, either technical or scientific);</li>
|
||||||
|
<li class="has-line-data" data-line-start="39" data-line-end="41">Very Good (relatively complex work, requiring a substantial knowledge and<br>
|
||||||
|
technical skills, or resulting in some innovative contribution);</li>
|
||||||
|
<li class="has-line-data" data-line-start="41" data-line-end="43">Outstanding (InSaNe).</li>
|
||||||
|
</ul>
|
||||||
|
<h3 class="code-line" data-line-start=46 data-line-end=47 ><a id="Grade_formula_per_month_46"></a>Grade formula per month</h3>
|
||||||
|
<pre>
|
||||||
|
Autonomy level
|
||||||
|
Satisfaction of objectives | Low Competent Very Good Outstanding
|
||||||
|
-----------+-------------------------------------------------------
|
||||||
|
Low | 0 0 0 0
|
||||||
|
Competent | 42 42 42 1337
|
||||||
|
Very Good | 42 1337 1337 31337
|
||||||
|
Outstanding| 42 1337 1337 31337
|
||||||
|
|
||||||
|
Grade from matrix above
|
||||||
|
Difficulty level | 0 42 1337 31337
|
||||||
|
-----------+-----------------------------------------
|
||||||
|
Low | 0 0 42 1337
|
||||||
|
Competent | 0 42 1337 1337
|
||||||
|
Very Good | 0 1337 1337 1337
|
||||||
|
Outstanding| 0 1337 1337 31337
|
||||||
|
</pre>
|
||||||
|
<hr>
|
||||||
|
<h1 class="code-line" data-line-start=67 data-line-end=68 ><a id="Modules_67"></a>Modules</h1>
|
||||||
|
<p>N.B.: The following are the minimum averages in GNU social's Summer of Code, we will come up with a custom
|
||||||
|
"transcript" for any interested student.</p>
|
||||||
|
<h2 class="code-line" data-line-start=69 data-line-end=70 ><a id="Web_Technologies_69"></a>Web Technologies</h2>
|
||||||
|
<h3 class="code-line" data-line-start=71 data-line-end=72 ><a id="Amount_of_time_allocated_to_each_module_unit_71"></a>Amount of time allocated to each module unit</h3>
|
||||||
|
<table class="table table-striped table-bordered">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Designation</th>
|
||||||
|
<th>Time (hours)</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>Autonomous study</td>
|
||||||
|
<td>80</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Mentorship</td>
|
||||||
|
<td>20</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Project work</td>
|
||||||
|
<td>46</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Total</td>
|
||||||
|
<td>146</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<h3 class="code-line" data-line-start=79 data-line-end=80 ><a id="Assessment_Components_79"></a>Assessment Components</h3>
|
||||||
|
<table class="table table-striped table-bordered">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Designation</th>
|
||||||
|
<th>Weight (%)</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>Proposal</td>
|
||||||
|
<td>80</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Proof of Competence</td>
|
||||||
|
<td>20</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<h3 class="code-line" data-line-start=85 data-line-end=86 ><a id="Proposed_Credits_85"></a>Proposed Credits</h3>
|
||||||
|
<p class="has-line-data" data-line-start="86" data-line-end="88">1 Carnegie Unit<br>
|
||||||
|
5 ECTS</p>
|
||||||
|
<p><strong><a href="proposal_rating_guidelines.txt">Proposal Rating Guidelines</a></strong><p>
|
||||||
|
<hr>
|
||||||
|
<h2 class="code-line" data-line-start=91 data-line-end=92 ><a id="Internship__Training_91"></a>Internship | Training</h2>
|
||||||
|
<h3 class="code-line" data-line-start=93 data-line-end=94 ><a id="Amount_of_time_allocated_to_each_module_unit_93"></a>Amount of time allocated to each module unit</h3>
|
||||||
|
<table class="table table-striped table-bordered">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Designation</th>
|
||||||
|
<th>Time (hours)</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>Internship</td>
|
||||||
|
<td>276.5</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Autonomous Study</td>
|
||||||
|
<td>93.5</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Final Report</td>
|
||||||
|
<td>24</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Mentorship</td>
|
||||||
|
<td>44</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Total</td>
|
||||||
|
<td>438</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<h3 class="code-line" data-line-start=102 data-line-end=103 ><a id="Assessment_Components_102"></a>Assessment Components</h3>
|
||||||
|
<table class="table table-striped table-bordered">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Designation</th>
|
||||||
|
<th>Weight (%)</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>Practical or project work</td>
|
||||||
|
<td>100</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<h3 class="code-line" data-line-start=107 data-line-end=108 ><a id="Proposed_Credits_107"></a>Proposed Credits</h3>
|
||||||
|
<p class="has-line-data" data-line-start="108" data-line-end="112">4 Carnegie Unit<br>
|
||||||
|
18 Austria, Italy, and Spain ECTS<br>
|
||||||
|
16 Finland, The Netherlands, Portugal, and Russia ECTS<br>
|
||||||
|
15 Germany, Belgium, Romania, and Hungary ECTS</p>
|
||||||
|
</article>
|
||||||
|
</body>
|
||||||
|
</html>
|
76
soc/2022/index.html
Normal file
76
soc/2022/index.html
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=0.86, maximum-scale=5.0, minimum-scale=0.86">
|
||||||
|
<title>GNU social — Summer of Code 2022 Ideas</title>
|
||||||
|
<link rel="shortcut icon" href="../../favicon.ico">
|
||||||
|
<link rel="stylesheet" href="../../assets/css/reset.css">
|
||||||
|
<link rel="stylesheet" href="../../assets/css/blog.css">
|
||||||
|
<link rel="stylesheet" href="../../assets/fonts/opensans/opensans.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<header>
|
||||||
|
<div class="home-menu menu menu-horizontal menu-fixed">
|
||||||
|
<a class="menu-heading" href="https://gnusocial.rocks/">
|
||||||
|
<img src="https://www.gnusocial.rocks/assets/img/gnu-social-logo-invert.svg" alt="GNU social">
|
||||||
|
<b>gnu
|
||||||
|
</b>social
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="sidebar">
|
||||||
|
<ul class="menu-list">
|
||||||
|
<li class="menu-item"><a href="/soc" class="menu-link">Programme</a></li>
|
||||||
|
<li class="menu-item menu-selected"><a href="/soc/2022" class="menu-link">2022</a></li>
|
||||||
|
<li class="menu-item"><a href="/soc/#about-soc" class="menu-link">About</a></li>
|
||||||
|
<li class="menu-item"><a href="#ideas" class="menu-link">Ideas</a></li>
|
||||||
|
<li class="menu-item"><a href="/soc/#apply" class="menu-link">Apply</a></li>
|
||||||
|
<li class="menu-item"><a href="../study_resources.html" class="menu-link">Study Resources</a></li>
|
||||||
|
<li class="menu-item"><a href="academics.html" class="menu-link">Academics</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
<div class="content-wrapper">
|
||||||
|
<div class="content soc">
|
||||||
|
|
||||||
|
<h2 class="content-head is-center">Summer of Code 2022</h2>
|
||||||
|
|
||||||
|
<article id="about">
|
||||||
|
<h2>About the programme</h2>
|
||||||
|
<p>Check the <a href="/soc/">programme page</a> to learn more about the programme and on how to apply.</p>
|
||||||
|
<p>GNU social is a social communication software used in <a href="https://blog.diogo.site/posts/what-is-the-fediverse">federated social networks</a>. It is widely supported and has a large userbase.</p>
|
||||||
|
<p>If you would like to know how is it like to be a GSoC student at GNU social, <a href="https://blog.diogo.site/posts/gsoc-2018">read this blog post</a>!</p>
|
||||||
|
</article>
|
||||||
|
<article id="stipend">
|
||||||
|
<h2>Summer Stipend</h2>
|
||||||
|
<p>We have applied as an organisation to Google Summer of Code 2022, we are still waiting for the result. In 2020 we've had a successful student supported by <a href="https://thefreaks.club/">The Freaks Club</a>, you can reach thndrbvr and try your luck, or look for another sponsor.</p>
|
||||||
|
</article>
|
||||||
|
<article id="ideas">
|
||||||
|
<h2>Ideas</h2>
|
||||||
|
<p>Below is a list of ideas you can work on this Summer at GNU social. You should pick one (or mix a couple) of them and <a href="https://agile.gnusocial.rocks/doku.php?id=affairs:development_discussion">talk on IRC about it</a>. The community will help you understanding what has to be done so you can put a good proposal together.</p>
|
||||||
|
<ul>
|
||||||
|
<li>Split Form (logic and template)</li>
|
||||||
|
<li>XMPP Plugin</li>
|
||||||
|
<li>Integrate GS cache with symfony</li>
|
||||||
|
<li>Add (verb) tags to Notes</li>
|
||||||
|
<li>Avatar cropper without JS</li>
|
||||||
|
<li>More unit tests</li>
|
||||||
|
<li>Conversations reconstructor</li>
|
||||||
|
<li>Mascot plugin</li>
|
||||||
|
<li>LinkRedirectFollowPlugin</li>
|
||||||
|
<li>JS Extras Plugin</li>
|
||||||
|
<li>URL Shortening Plugin</li>
|
||||||
|
<li>SMS Plugin</li>
|
||||||
|
<li>Rotate Background colours PS3 plugin</li>
|
||||||
|
</ul>
|
||||||
|
</article>
|
||||||
|
</div>
|
||||||
|
<footer class="l-box is-center">
|
||||||
|
This site's source is <a href="https://code.undefinedhackers.net/GNUsocial/gnusocial.rocks">hosted here</a>.
|
||||||
|
</footer>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
81
soc/2022/proposal_rating_guidelines.txt
Normal file
81
soc/2022/proposal_rating_guidelines.txt
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
# Proposal Rating Guidelines
|
||||||
|
## Scores
|
||||||
|
- 31337: Outstanding. Ex.: Went above and beyond (user stories split into small tasks, small tasks estimated,
|
||||||
|
defined MVP, planned any additional work, defined time off or limited time, well defined in case of emergency
|
||||||
|
(NOT "I will complete tasks earlier so I will have more time"))
|
||||||
|
- 1337: Very Good. Ex.: Included more than requirements (added mocks, diagrams, etc).
|
||||||
|
- 42: Competent. Ex.: Completed the minimum requirements (proposal's required questions).
|
||||||
|
- 0: Failed. Ex.: Either Below Average or Poor. Ex: Missed a few requirements (missed 1 or 2 required questions) or Didn't complete
|
||||||
|
requirements (incomplete, didn't follow template, etc).
|
||||||
|
|
||||||
|
## Key Aspects
|
||||||
|
- Idea - Does the idea solve real problems? Was the audience defined? Is it realistic, does it bring potential security
|
||||||
|
issues? As a potential user, would you use the proposed? Can problems be easier solved by existing technologies?
|
||||||
|
- Understood Project? - Did the student research other projects doing similar things? Did the student show the full
|
||||||
|
scope of the project (backend, frontend, defined APIs, database, structure models, ML models, mockups, user journey,
|
||||||
|
user stories, etc.)?
|
||||||
|
- Project Planning - Did the student understand the whole complexity of the project, show smaller tasks and estimated?
|
||||||
|
Does the student have a version when things go wrong, as planned, and better than expected? Did the student balance
|
||||||
|
whole parts of the project (frontend and backend developing simultaneously) to have a better chance to achieve working
|
||||||
|
functionality?
|
||||||
|
- Engagement - Engaged on IRC, engaged on NotABug, listened to proposal feedback and updated their proposal,
|
||||||
|
helped others, closed issues, etc.
|
||||||
|
|
||||||
|
## Criteria
|
||||||
|
Once proposals have been finalised, student proposals will be graded based on the following criteria:
|
||||||
|
|
||||||
|
### Project
|
||||||
|
- Does it solve the problem we need solving? Does applicant clearly identify the problem?
|
||||||
|
- Does it offer a sensible solution?
|
||||||
|
- Does it offer supporting evidence for technologies chosen, e.g. bootstrap. Sometimes a compare/contrast of different
|
||||||
|
technologies considered can be helpful.
|
||||||
|
- Nice bonus features in addition to the main project = good, ONLY unrelated 'bonus' features = bad.
|
||||||
|
|
||||||
|
### Plan
|
||||||
|
- Does the proposal have a realistic timeline?
|
||||||
|
- Are deliverables correct and timely?
|
||||||
|
- Does the student have enough time in the week to carry their plan?
|
||||||
|
- Bonus for "what if things go wrong planning", e.g. bonus features towards the end of the plan that can be removed
|
||||||
|
if/when the bugs strike.
|
||||||
|
|
||||||
|
### Team working skills
|
||||||
|
- Can the student carry out tasks on their own over a three month period?
|
||||||
|
- Clear evidence of communication skills
|
||||||
|
- Lower points for gross over-communication ("what should I name this variable?"), better if they quietly and
|
||||||
|
competently get the job done but interact at appropriate times, e.g. GNU social bugs, sensible progress reports.
|
||||||
|
- Is the student capable of following existing guidelines and instructions where appropriate?
|
||||||
|
|
||||||
|
## Extras
|
||||||
|
|
||||||
|
### Experience
|
||||||
|
The experience criterion isn't specifically part of the grading rubric, but it's important for us to see some of the
|
||||||
|
following in the application:
|
||||||
|
|
||||||
|
- Does the student have reasonable evidence they've competently done something relevant to this before? e.g.: one or more of
|
||||||
|
- a {NotABug, CodeBerg, GitGud, GitLab, GitHub,...} profile,
|
||||||
|
- merge requests on GNU social's repo,
|
||||||
|
- published software,
|
||||||
|
- code from a higher education institution assignment?
|
||||||
|
- Note: we don't require MRs to GNU social's repository. It's handy as a source of evidence, but any of the others
|
||||||
|
should do just fine.
|
||||||
|
- Absolutely no work available - not even a published app, some work experience, or code from a class assignment, is a
|
||||||
|
red flag.
|
||||||
|
|
||||||
|
### How the ranking process works
|
||||||
|
All students with a finalised proposal will have their proposals reviewed by one or more mentors in the organisation,
|
||||||
|
and ranked out of 4 based on the criteria above. This score will also be averaged to provide a mean result. These
|
||||||
|
scores are not the final acceptance criteria - so a 1337 won't automatically win over an 42 - but they do help provide
|
||||||
|
general guidelines for the mentors who are choosing from a large body of qualified students.
|
||||||
|
|
||||||
|
### Accepted students
|
||||||
|
Students will be notified of their acceptance by Google when all accepted students are announced, and will _not_ be
|
||||||
|
notified of their internal grades. Please note that we usually have more highly qualified applicants than slots
|
||||||
|
available for the organisation, so sometimes proposals that are genuinely very good have to be rejected. We genuinely
|
||||||
|
wish we could take you all!
|
||||||
|
|
||||||
|
Students who successfully finish the summer of code and are interested in a "GNU social Summer of Code transcript" may
|
||||||
|
request one and that will come with a score and include an adapted proposal assessing.
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
These guidelines were adapted from [InterMine](http://intermine.org/internships/guidance/grading-criteria-2019/) and AnitaB.
|
@ -1 +1 @@
|
|||||||
<?php header('Location: https://www.gnusocial.rocks/soc/2021', true, 302);exit;
|
<?php header('Location: https://www.gnusocial.rocks/soc/'.date('Y'), true, 302);exit;
|
||||||
|
@ -19,6 +19,7 @@
|
|||||||
</a>
|
</a>
|
||||||
<ul class="menu-list">
|
<ul class="menu-list">
|
||||||
<li class="menu-item menu-selected">Editions:</li>
|
<li class="menu-item menu-selected">Editions:</li>
|
||||||
|
<li class="menu-item"><a href="2022/" class="menu-link">2022</a></li>
|
||||||
<li class="menu-item"><a href="2021/" class="menu-link">2021</a></li>
|
<li class="menu-item"><a href="2021/" class="menu-link">2021</a></li>
|
||||||
<li class="menu-item"><a href="2020/" class="menu-link">2020</a></li>
|
<li class="menu-item"><a href="2020/" class="menu-link">2020</a></li>
|
||||||
<li class="menu-item"><a href="2019/" class="menu-link">2019</a></li>
|
<li class="menu-item"><a href="2019/" class="menu-link">2019</a></li>
|
||||||
|
Loading…
Reference in New Issue
Block a user