4.793.283 resultados, 29.450.556 comentarios, 1.037.175 imágenes, 80.044 vídeos, 86.434 noticias
Publicidad 600x120.gif
Botola 2 2020
2019/2020

Botola 2 2020

  • Chabab Benguerir
  • SCC Mohammédia
  • Olympique Dcheïra
  • Racing de Casablanca
  • Chabab Atlas Khenifra
  • Kawkab Marrakech
  • Maghreb Fes
  • Wydad Fès
  • JS Soualem
  • TAS Casablanca
  • Ittihad Khemisset
  • KAC Kenitra
  • Widad Temara
  • Chabab Rif Hoceima
  • AS Salé
  • Sidi Kacem

Botola 2 2020

La temporada finalizó el Viernes, 09 Octubre 2020.
 
27 Oct 19
15:00 Finalizado
JS Soualem JS Soualem 1-1 Widad Temara Widad Temara más información ...
 
27 Oct 19
15:00 Finalizado
Wydad Fès Wydad Fès 1-1 Kawkab Marrakech Kawkab Marrakech más información ...
 
27 Oct 19
15:00 Finalizado
KAC Kenitra KAC Kenitra 1-1 SCC Mohammédia SCC Mohammédia más información ...
 
27 Oct 19
15:00 Finalizado
Racing de Casablanca Racing de Casablanca 2-1 Sidi Kacem Sidi Kacem más información ...
 
27 Oct 19
15:00 Finalizado
Chabab Benguerir Chabab Benguerir 1-1 Olympique Dcheïra Olympique Dcheïra más información ...
 
28 Oct 19
15:00 Finalizado
AS Salé AS Salé 0-0 Chabab Atlas Khenifra Chabab Atlas Khenifra más información ...
 
16 Nov 19
15:00 Finalizado
Ittihad Khemisset Ittihad Khemisset 2-1 Maghreb Fes Maghreb Fes más información ...
 
17 Dic 19
15:00 Finalizado
Chabab Rif Hoceima Chabab Rif Hoceima 2-2 TAS Casablanca TAS Casablanca más información ...
Equipos Puntos J. G. E. P. F. C. Forma
1 Chabab Benguerir Chabab Benguerir 11 6 3 2 1 9 7
  • VICTORIA
  • Ittihad Khemisset 2
  • Chabab Benguerir 3
  • EMPATE
  • TAS Casablanca 1
  • Chabab Benguerir 1
  • VICTORIA
  • Chabab Benguerir 1
  • AS Salé 0
  • DERROTA
  • Chabab Atlas Kheni. 2
  • Chabab Benguerir 1
  • EMPATE
  • Chabab Benguerir 1
  • Olympique Dcheïra 1
2 SCC Mohammédia SCC Mohammédia 11 6 3 2 1 10 6
  • VICTORIA
  • Widad Temara 0
  • SCC Mohammédia 3
  • VICTORIA
  • SCC Mohammédia 2
  • Chabab Rif Hoceima 1
  • DERROTA
  • JS Soualem 2
  • SCC Mohammédia 1
  • VICTORIA
  • SCC Mohammédia 2
  • Wydad Fès 1
  • EMPATE
  • KAC Kenitra 1
  • SCC Mohammédia 1
3 Olympique Dcheïra Olympique 11 6 3 2 1 7 4
  • DERROTA
  • Wydad Fès 1
  • Olympique Dcheïra 0
  • VICTORIA
  • Olympique Dcheïra 3
  • KAC Kenitra 1
  • EMPATE
  • Racing de Casablan. 0
  • Olympique Dcheïra 0
  • VICTORIA
  • Olympique Dcheïra 2
  • Ittihad Khemisset 1
  • EMPATE
  • Chabab Benguerir 1
  • Olympique Dcheïra 1
4 Racing de Casablanca Racing 9 6 2 3 1 6 4
  • VICTORIA
  • Racing de Casablan. 2
  • AS Salé 0
  • EMPATE
  • Chabab Atlas Kheni. 1
  • Racing de Casablan. 1
  • EMPATE
  • Racing de Casablan. 0
  • Olympique Dcheïra 0
  • EMPATE
  • Maghreb Fes 0
  • Racing de Casablan. 0
  • VICTORIA
  • Racing de Casablan. 2
  • Sidi Kacem 1
5 Chabab Atlas Khenifra Chabab Atlas Kh. 9 6 2 3 1 5 5
  • EMPATE
  • KAC Kenitra 0
  • Chabab Atlas Kheni. 0
  • EMPATE
  • Chabab Atlas Kheni. 1
  • Racing de Casablan. 1
  • VICTORIA
  • Ittihad Khemisset 0
  • Chabab Atlas Kheni. 1
  • VICTORIA
  • Chabab Atlas Kheni. 2
  • Chabab Benguerir 1
  • EMPATE
  • AS Salé 0
  • Chabab Atlas Kheni. 0
6 Kawkab Marrakech Kawkab Marrakech 8 6 1 5 0 5 4
  • EMPATE
  • Kawkab Marrakech 0
  • TAS Casablanca 0
  • EMPATE
  • Kawkab Marrakech 1
  • Widad Temara 1
  • EMPATE
  • Chabab Rif Hoceima 1
  • Kawkab Marrakech 1
  • VICTORIA
  • Kawkab Marrakech 1
  • JS Soualem 0
  • EMPATE
  • Wydad Fès 1
  • Kawkab Marrakech 1
7 Maghreb Fes Maghreb Fes 8 6 2 2 2 6 4
  • DERROTA
  • JS Soualem 1
  • Maghreb Fes 0
  • VICTORIA
  • Maghreb Fes 1
  • Wydad Fès 0
  • EMPATE
  • KAC Kenitra 1
  • Maghreb Fes 1
  • EMPATE
  • Maghreb Fes 0
  • Racing de Casablan. 0
  • DERROTA
  • Ittihad Khemisset 2
  • Maghreb Fes 1
8 Wydad Fès Wydad Fès 8 6 2 2 2 7 6
  • VICTORIA
  • Wydad Fès 1
  • Olympique Dcheïra 0
  • DERROTA
  • Maghreb Fes 1
  • Wydad Fès 0
  • EMPATE
  • Wydad Fès 1
  • Sidi Kacem 1
  • DERROTA
  • SCC Mohammédia 2
  • Wydad Fès 1
  • EMPATE
  • Wydad Fès 1
  • Kawkab Marrakech 1
9 JS Soualem JS Soualem 8 6 2 2 2 4 4
  • VICTORIA
  • JS Soualem 1
  • Maghreb Fes 0
  • EMPATE
  • Sidi Kacem 0
  • JS Soualem 0
  • VICTORIA
  • JS Soualem 2
  • SCC Mohammédia 1
  • DERROTA
  • Kawkab Marrakech 1
  • JS Soualem 0
  • EMPATE
  • JS Soualem 1
  • Widad Temara 1
10 TAS Casablanca TAS Casablanca 7 6 1 4 1 8 8
  • EMPATE
  • Kawkab Marrakech 0
  • TAS Casablanca 0
  • EMPATE
  • TAS Casablanca 1
  • Chabab Benguerir 1
  • VICTORIA
  • Widad Temara 1
  • TAS Casablanca 2
  • EMPATE
  • TAS Casablanca 1
  • AS Salé 1
  • EMPATE
  • Chabab Rif Hoceima 2
  • TAS Casablanca 2
11 Ittihad Khemisset Ittihad 7 6 2 1 3 8 9
  • DERROTA
  • Ittihad Khemisset 2
  • Chabab Benguerir 3
  • EMPATE
  • AS Salé 0
  • Ittihad Khemisset 0
  • DERROTA
  • Ittihad Khemisset 0
  • Chabab Atlas Kheni. 1
  • DERROTA
  • Olympique Dcheïra 2
  • Ittihad Khemisset 1
  • VICTORIA
  • Ittihad Khemisset 2
  • Maghreb Fes 1
12 KAC Kenitra KAC Kenitra 7 6 1 4 1 5 6
  • EMPATE
  • KAC Kenitra 0
  • Chabab Atlas Kheni. 0
  • DERROTA
  • Olympique Dcheïra 3
  • KAC Kenitra 1
  • EMPATE
  • KAC Kenitra 1
  • Maghreb Fes 1
  • VICTORIA
  • Sidi Kacem 1
  • KAC Kenitra 2
  • EMPATE
  • KAC Kenitra 1
  • SCC Mohammédia 1
13 Widad Temara Widad Temara 6 6 1 3 2 5 8
  • DERROTA
  • Widad Temara 0
  • SCC Mohammédia 3
  • EMPATE
  • Kawkab Marrakech 1
  • Widad Temara 1
  • DERROTA
  • Widad Temara 1
  • TAS Casablanca 2
  • VICTORIA
  • Widad Temara 1
  • Chabab Rif Hoceima 0
  • EMPATE
  • JS Soualem 1
  • Widad Temara 1
14 Chabab Rif Hoceima Chabab Hoceima 5 6 1 2 3 5 9
  • VICTORIA
  • Chabab Rif Hoceima 1
  • Sidi Kacem 0
  • DERROTA
  • SCC Mohammédia 2
  • Chabab Rif Hoceima 1
  • EMPATE
  • Chabab Rif Hoceima 1
  • Kawkab Marrakech 1
  • DERROTA
  • Widad Temara 1
  • Chabab Rif Hoceima 0
  • EMPATE
  • Chabab Rif Hoceima 2
  • TAS Casablanca 2
15 AS Salé AS Salé 4 6 0 4 2 1 4
  • DERROTA
  • Racing de Casablan. 2
  • AS Salé 0
  • EMPATE
  • AS Salé 0
  • Ittihad Khemisset 0
  • DERROTA
  • Chabab Benguerir 1
  • AS Salé 0
  • EMPATE
  • TAS Casablanca 1
  • AS Salé 1
  • EMPATE
  • AS Salé 0
  • Chabab Atlas Kheni. 0
16 Sidi Kacem Sidi Kacem 3 6 0 3 3 4 7
  • DERROTA
  • Chabab Rif Hoceima 1
  • Sidi Kacem 0
  • EMPATE
  • Sidi Kacem 0
  • JS Soualem 0
  • EMPATE
  • Wydad Fès 1
  • Sidi Kacem 1
  • DERROTA
  • Sidi Kacem 1
  • KAC Kenitra 2
  • DERROTA
  • Racing de Casablan. 2
  • Sidi Kacem 1
Ascenso : Chabab Benguerir, SCC Mohammédia
Descenso : AS Salé, Sidi Kacem


  USO DE MEMORIA  
5,154,912 bytes
  BENCHMARKS  
Loading Time Base Classes  0.0021
Controller Execution Time ( Home / Category )  0.4665
Total Execution Time  0.4687
  CADENA URL  
/elite_2_marruecos2020/grupo1/jornada6
  GET DATOS  
$_GET['/elite_2_marruecos2020/grupo1/jornada6']  
  POST DATOS  
No hay datos POST existentes
  CONSULTAS (34)  
0.0108  SELECT type FROM routes WHERE alias = 'elite_2_marruecos2020'
0.0224  SELECT c.*, l.*, '' as namec FROM leagues_webci l INNER JOIN categories_webci c ON l.categoryId = c.id WHERE c.alias = 'elite_2_marruecos' AND (l.group_code = 1 OR l.group_code = 1 OR l.group_code = 0) AND l.year = 2020 ORDER BY l.year=c.active_year DESC,l.year DESC, l.group_code=1 DESC LIMIT 1
0.0109  SELECT dt.nameShow,dt.basealias,t.id,t.teamId FROM teams t INNER JOIN datateams dt ON t.teamId = dt.id WHERE t.league_id = 50044 ORDER BY dt.relations DESC, dt.nameShow ASC LIMIT 50
0.0108  SELECT c.id, c.name, c.alias, c.stepParent, l.year FROM categories AS c INNER JOIN leagues AS l ON c.id=l.categoryId AND l.year='2020' WHERE c.parentId=409 GROUP BY c.id ORDER BY c.order_id ASC
0.0106  SELECT url,page_views,page_title FROM rf_statcounter_popular_pages_hourly WHERE type=1 AND last_update > '2024-04-16 04:06:23' GROUP BY url ORDER BY page_views DESC LIMIT 5
0.0109  SELECT url,page_views,page_title FROM rf_statcounter_popular_pages_hourly WHERE type=2 AND last_update > '2024-04-16 04:06:23' GROUP BY url ORDER BY page_views DESC LIMIT 5
0.0106  SELECT url,page_views,page_title FROM rf_statcounter_popular_pages_hourly WHERE type=4 AND last_update > '2024-04-16 04:06:23' GROUP BY url ORDER BY page_views DESC LIMIT 5
0.0106  SELECT url,page_views,page_title FROM rf_statcounter_popular_pages_hourly WHERE type=3 AND last_update > '2024-04-16 04:06:23' GROUP BY url ORDER BY page_views DESC LIMIT 5
0.0114  SELECT c.*, l.*, '' as namec FROM leagues_webci l INNER JOIN categories_webci c ON l.categoryId = c.id WHERE c.alias = 'elite_2_marruecos' AND (l.group_code = 0 OR l.group_code = 1 OR l.group_code = 0) AND l.year = 2020 ORDER BY l.year=c.active_year DESC,l.year DESC, l.group_code=0 DESC LIMIT 1
0.0109  SELECT e.action, count(e.action) as total, e.player_id FROM events2020 e WHERE e.league_id IN (50044) AND (e.action IN (1,2,11,12,13) ) GROUP BY e.player_id ORDER BY total DESC, e.player_id ASC LIMIT 20
0.0116  SELECT dp.name, dp.last_name, dp.nick,dp.CountryCode,dp.alias,rp.team_id,dt.nameShow,dt.short_name,dt.basealias,rp.player_id,rp.teamId,dp.role FROM dataplayers AS dp INNER JOIN rel_players AS rp ON rp.player_id=dp.id AND rp.league_id IN (50044) INNER JOIN datateams AS dt ON rp.teamId=dt.id WHERE dp.id IN () ORDER BY rp.in_squad = 1 DESC
0.0106  SELECT e.action, count(e.action) as total, e.player_id FROM events2020 e WHERE e.league_id IN (50044) AND (e.action IN (4,5) ) GROUP BY e.player_id ORDER BY total DESC, e.player_id ASC LIMIT 20
0.0107  SELECT dp.name, dp.last_name, dp.nick,dp.CountryCode,dp.alias,rp.team_id,dt.nameShow,dt.short_name,dt.basealias,rp.player_id,rp.teamId,dp.role FROM dataplayers AS dp INNER JOIN rel_players AS rp ON rp.player_id=dp.id AND rp.league_id IN (50044) INNER JOIN datateams AS dt ON rp.teamId=dt.id WHERE dp.id IN () ORDER BY rp.in_squad = 1 DESC
0.0108  SELECT e.action, count(e.action) as total, e.player_id FROM events2020 e WHERE e.league_id IN (50044) AND (e.action IN (3,4) ) GROUP BY e.player_id ORDER BY total DESC, e.player_id ASC LIMIT 20
0.0107  SELECT dp.name, dp.last_name, dp.nick,dp.CountryCode,dp.alias,rp.team_id,dt.nameShow,dt.short_name,dt.basealias,rp.player_id,rp.teamId,dp.role FROM dataplayers AS dp INNER JOIN rel_players AS rp ON rp.player_id=dp.id AND rp.league_id IN (50044) INNER JOIN datateams AS dt ON rp.teamId=dt.id WHERE dp.id IN () ORDER BY rp.in_squad = 1 DESC
0.0107  SELECT e.action, count(e.action) as total, e.player_id FROM events2020 e WHERE e.league_id IN (50044) AND (e.action IN (22) ) GROUP BY e.player_id ORDER BY total DESC, e.player_id ASC LIMIT 20
0.0106  SELECT dp.name, dp.last_name, dp.nick,dp.CountryCode,dp.alias,rp.team_id,dt.nameShow,dt.short_name,dt.basealias,rp.player_id,rp.teamId,dp.role FROM dataplayers AS dp INNER JOIN rel_players AS rp ON rp.player_id=dp.id AND rp.league_id IN (50044) INNER JOIN datateams AS dt ON rp.teamId=dt.id WHERE dp.id IN () ORDER BY rp.in_squad = 1 DESC
0.0106  SELECT rp.lineup as total,p.name, p.last_name, p.nick,p.CountryCode,p.alias,rp.team_id,dt.nameShow,dt.short_name,dt.basealias,rp.player_id,rp.teamId,p.role FROM `rel_players` rp INNER JOIN dataplayers p ON p.id = rp.player_id INNER JOIN datateams dt ON dt.id = rp.teamId WHERE rp.league_id = 50044 AND rp.lineup > 0 ORDER BY rp.lineup DESC,p.pod DESC LIMIT 20
0.0105  SELECT rp.events as total,p.name, p.last_name, p.nick,p.CountryCode,p.alias,rp.team_id,dt.nameShow,dt.short_name,dt.basealias,rp.player_id,rp.teamId,p.role FROM `rel_players` rp INNER JOIN dataplayers p ON p.id = rp.player_id INNER JOIN datateams dt ON dt.id = rp.teamId WHERE rp.league_id = 50044 AND rp.events > 0 ORDER BY rp.events DESC,p.pod DESC LIMIT 20
0.0109  SELECT rel.media_id, rel.team1, rel.team2, m.name, m.type, m.lang, m.location, rel.id AS rel_id, m.url FROM rel_media_match AS rel INNER JOIN media AS m ON m.id=rel.media_id WHERE (m.lang='es' OR m.language='spanish') AND rel.active=1 AND rel.league_id=50044 AND rel.round=6
0.0107  SELECT u.id,u.user_name, esl.points,up.name,up.surname,up.nick,u.changeA FROM editor_stats_leagues esl INNER JOIN fa_user u ON u.id = esl.user_id INNER JOIN fa_user_profile up ON up.id = esl.user_id WHERE esl.league_id = 50044 AND esl.points > 0 ORDER BY esl.points DESC LIMIT 3
0.0107  SELECT count(esl.user_id) as cuenta FROM editor_stats_leagues esl INNER JOIN fa_user u ON u.id = esl.user_id INNER JOIN fa_user_profile up ON up.id = esl.user_id WHERE esl.league_id = 50044 AND esl.points > 0
0.0106  SELECT fau.user_name, c.*, NOW() as difference_time,creation_date FROM (leagues as l) INNER JOIN comments as c ON c.league_id = l.id LEFT JOIN fa_user fau ON fau.id = c.author_id WHERE c.creation_date > "2024-03-17" AND c.`active`= 1 and c.comment_id is null and c.lang = 1 AND l.`id` = 50044 ORDER BY creation_date DESC LIMIT 0, 10
0.0108  SELECT count(c.id) as cuenta FROM (leagues as l) INNER JOIN comments as c ON c.league_id = l.id WHERE c.creation_date > "2024-03-17" AND c.`active`= 1 and comment_id is null and c.lang = 1 AND l.`id` = 50044
0.0120  SELECT c.isVideo, c.id,c.team1, c.team2,c.extra,c.datateam1,c.datateam2,c.type, c.shedule, c.r1, c.r2, c.round, c.comments as total_comentarios, dt1.nameShow as team1_name, dt2.nameShow as team2_name, dt1.basealias as basealias1, dt2.basealias as basealias2,c.betId,c.betId_wh,c.betId_bwin,c.betId_marca,c.betId_888, c.betId_sportium, c.betId_marathon, c.finished, c.penaltis1, c.penaltis2, c.prorroga, c.status, c.minute, dt1.stadium as stadium_name FROM `calendars2020` as c INNER JOIN teams t1 ON t1.id = c.team1 AND t1.league_id = c.league_id INNER JOIN teams t2 ON t2.id = c.team2 AND t2.league_id = c.league_id INNER JOIN datateams as dt1 ON dt1.id = t1.teamId INNER JOIN datateams as dt2 ON dt2.id = t2.teamId WHERE c.`league_id` = 50044 AND c.`round` = 6 ORDER BY shedule ASC LIMIT 200
0.0109  SELECT ev.match_id,dp.alias,ev.minute,ev.action,ev.player_id,e.name,e.classf,dp.nick,rel.squadNumber,rel.player_id as playerId,rel.team_id,rel.teamId FROM events2020 ev INNER JOIN events e ON e.id = ev.action INNER JOIN calendars2020 c ON c.id = ev.match_id INNER JOIN rel_players rel ON rel.player_id = ev.player_id AND rel.league_id = 50044 AND (ev.team1id=rel.team_id OR ev.team2id=rel.team_id) INNER JOIN dataplayers dp ON dp.id = rel.player_id WHERE ev.match_id IN (182543,182544,182545,182546,182548,182549,182547,182542) AND ev.action in (1,2,3,4,6,11,12,13,15) ORDER BY ev.minute ASC
0.0108  SELECT (dt1.qod+dt2.qod+dt1.relations+dt2.relations) as total,c.r1,c.r2,e.action,ev.showName as eventName,ev.largeName,ev.main_action,ev.keyname,ev.classf,e.real_date,e.minute, dp.nick,dp.CountryCode,dp.alias,c.datateam1,c.datateam2,dt1.nameShow as nameShow1,dt2.nameShow as nameShow2,dt1.basealias as basealias1,dt2.basealias as basealias2,e.player_id,e.match_id FROM `events2020` e INNER JOIN calendars2020 c ON c.id = e.match_id INNER JOIN events ev ON ev.id = e.action INNER JOIN dataplayers dp ON dp.id = e.player_id INNER JOIN datateams dt1 ON dt1.id = c.datateam1 INNER JOIN datateams dt2 ON dt2.id = c.datateam2 WHERE ev.main_action = 1 AND c.round = 6 AND e.real_date IS NOT NULL AND e.league_id = 50044 ORDER BY total DESC LIMIT 40
0.0105  SELECT c.r1,c.r2,e.action,ev.showName as eventName,ev.largeName,ev.main_action,ev.keyname,ev.classf,e.real_date,e.minute, dp.nick,dp.CountryCode,dp.alias,c.datateam1,c.datateam2,dt1.nameShow as nameShow1,dt2.nameShow as nameShow2,dt1.basealias as basealias1,dt2.basealias as basealias2,e.player_id,e.match_id FROM `events2020` e INNER JOIN calendars2020 c ON c.id = e.match_id INNER JOIN events ev ON ev.id = e.action INNER JOIN dataplayers dp ON dp.id = e.player_id INNER JOIN datateams dt1 ON dt1.id = c.datateam1 INNER JOIN datateams dt2 ON dt2.id = c.datateam2 WHERE ev.show_on = 1 AND e.real_date IS NOT NULL AND e.league_id = 50044 AND e.real_date > NOW() - INTERVAL 1 MONTH ORDER BY e.real_date DESC LIMIT 30
0.0110  SELECT t.*,dt.nameShow,dt.basealias,dt.id as teamId,(cast(t.gf as signed) - cast(t.ga as signed) + 100) as diff,team.teamId FROM `tables2020` as t INNER JOIN teams as team ON team.id = t.team INNER JOIN datateams as dt ON team.teamId = dt.id WHERE t.league_id = 50044 AND t.round = 5 ORDER BY team.conference ASC,t.position ASC,t.points DESC,t.priority DESC, diff DESC, t.gf DESC, dt.nameShow ASC
0.0110  SELECT *,(cast(t.gf as signed) - cast(t.ga as signed) + 100) as diff,team.teamId FROM `tables2020` as t INNER JOIN teams as team ON team.id = t.team INNER JOIN datateams as dt ON team.teamId = dt.id WHERE t.league_id = 50044 AND t.round = 6 ORDER BY team.conference ASC,t.position ASC,t.points DESC,t.priority DESC, diff DESC, t.gf DESC, dt.nameShow ASC
0.0110  SELECT distinct(shedule), round FROM `calendars2020` as c WHERE c.`league_id` = 50044 AND shedule >= '2019/10/01' AND shedule < '2019/11/01' ORDER BY shedule ASC
0.0110  SELECT c.id, 2024 AS year, IF(l.tables = 1 AND t1.points>0,((t1.points / (l.current_round * 3)) + (t2.points / (l.current_round * 3)))/2 * ct.coefficient,0.7 * ct.coefficient) as fcoef FROM `calendars2024` AS c INNER JOIN `leagues` AS l ON c.`league_id` = l.`id` INNER JOIN `categories` AS ct ON ct.`id` = l.`categoryId` LEFT JOIN tables2024 AS t1 ON t1.team = c.team1 AND t1.round = l.current_round LEFT JOIN tables2024 AS t2 ON t2.team = c.team2 AND t2.round = l.current_round WHERE c.`shedule` > '2024-04-16 00:00:00' AND c.`shedule` < '2024-04-20 23:59:59' AND l.id = 50044 ORDER BY c.shedule ASC, fcoef DESC LIMIT 5
0.0110  SELECT data1, data2 FROM services_tags WHERE categoryId=409
0.0110  SELECT group_code, extraName from `leagues` WHERE categoryId=409 AND year=2020