master a852a80bcdde cached
37 files
494.7 KB
151.1k tokens
28 symbols
1 requests
Download .txt
Showing preview only (514K chars total). Download the full file or copy to clipboard to get everything.
Repository: cedricblondeau/world-cup-2018-cli-dashboard
Branch: master
Commit: a852a80bcdde
Files: 37
Total size: 494.7 KB

Directory structure:
gitextract_xldk5i0j/

├── .babelrc
├── .editorconfig
├── .eslintrc
├── .gitignore
├── .npmignore
├── .travis.yml
├── Dockerfile
├── LICENSE
├── README.md
├── bin/
│   └── wc2018
├── fixtures/
│   ├── group_results.json
│   ├── match.json
│   └── matches.json
├── package.json
└── src/
    ├── api/
    │   ├── fixtures.js
    │   └── prod.js
    ├── components/
    │   ├── Dashboard/
    │   │   └── Dashboard.jsx
    │   ├── GroupList/
    │   │   ├── GroupDetails/
    │   │   │   └── GroupDetails.jsx
    │   │   ├── GroupList.jsx
    │   │   ├── GroupList.spec.jsx
    │   │   └── __snapshots__/
    │   │       └── GroupList.spec.jsx.snap
    │   ├── MatchDetails/
    │   │   ├── MatchDetails.jsx
    │   │   ├── MatchEvents/
    │   │   │   └── MatchEvents.jsx
    │   │   └── MatchTeamScoreboard/
    │   │       └── MatchTeamScoreboard.jsx
    │   └── MatchNav/
    │       ├── MatchNav.jsx
    │       ├── MatchNav.spec.jsx
    │       └── MatchNavItem/
    │           └── MatchNavItem.jsx
    ├── config.js
    ├── format/
    │   ├── country-name-colors.js
    │   ├── flag-colors.js
    │   ├── format.js
    │   └── format.spec.js
    ├── index.jsx
    ├── moment.js
    └── notifications/
        ├── EventTracker.js
        ├── __tests__/
        │   └── EventTracker.js
        └── notifier.js

================================================
FILE CONTENTS
================================================

================================================
FILE: .babelrc
================================================
{
  "presets": [
    ["env", {
      "targets": {
        "node": "6"
      }
    }],
    "react"
  ]
}


================================================
FILE: .editorconfig
================================================
root = true

[*]
indent_style = space
indent_size = 2
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
end_of_line = lf
max_line_length = null


================================================
FILE: .eslintrc
================================================

{
  extends: ['airbnb', 'prettier'],
  plugins: ['prettier'],
  rules: {
    'prettier/prettier': [
      'error',
      {
        singleQuote: true,
        trailingComma: 'all',
      },
    ],
    eqeqeq: ['error', 'always'],
    object-curly-spacing: ['error', 'always'],
    'react/forbid-prop-types': 0
  },
  env: {
    "node": true,
    "jest": true
  }
}


================================================
FILE: .gitignore
================================================
node_modules
.idea
.DS_Store
npm-debug.log
yarn-error.log
.vscode
dist


================================================
FILE: .npmignore
================================================
node_modules
.idea
.DS_Store
npm-debug.log
yarn-error.log
.vscode
screenshot.jpg
src


================================================
FILE: .travis.yml
================================================
language: node_js

node_js:
  - 8

dist: trusty

before_install:
  - sudo apt-get -qq update

sudo: false

script:
  - yarn lint && yarn test

notifications:
  email: false


================================================
FILE: Dockerfile
================================================
FROM node:8-slim

RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y locales \
    && sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen \
    && dpkg-reconfigure --frontend=noninteractive locales \
    && update-locale LANG=en_US.UTF-8 \
    && yarn global add world-cup-cli-dashboard \
    && yarn cache clean \
    && apt-get autoremove -y \
    && apt-get autoclean -y \
    && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

ENV LANG="en_US.UTF-8" \
    LANGUAGE="en_US:en" \
    LC_CTYPE="en_US.UTF-8" \
    LC_ALL="en_US.UTF-8"

ENTRYPOINT wc2018


================================================
FILE: LICENSE
================================================
MIT License

Copyright (c) 2017 Cédric Blondeau

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.


================================================
FILE: README.md
================================================
<p align="center">
  <strong>Check out the 2022 dashboard: <a href="https://github.com/cedricblondeau/world-cup-2022-cli-dashboard">cedricblondeau/world-cup-2022-cli-dashboard</a>.</strong>
</p>

<p align="center">
⚽🏆
</p>

<hr />

# World Cup 2018 CLI Dashboard [![Build Status](https://travis-ci.org/cedricblondeau/world-cup-2018-cli-dashboard.svg?branch=master)](https://travis-ci.org/cedricblondeau/world-cup-2018-cli-dashboard)

![screenshot](https://raw.githubusercontent.com/cedricblondeau/world-cup-2018-cli-dashboard/master/screenshot.gif)

[![forthebadge](https://raw.githubusercontent.com/BraveUX/for-the-badge/master/src/images/badges/built-with-love.svg)](https://forthebadge.com) [![forthebadge](https://raw.githubusercontent.com/BraveUX/for-the-badge/master/src/images/badges/kinda-sfw.svg)](https://forthebadge.com) [![forthebadge](https://raw.githubusercontent.com/BraveUX/for-the-badge/master/src/images/badges/uses-js.svg)](https://forthebadge.com)

## Run it in `docker` 🐳

**Pull it from Docker Hub:**

```bash
docker pull cedricbl/world-cup-2018-cli-dashboard && \
docker run -ti -e TZ=America/Toronto cedricbl/world-cup-2018-cli-dashboard
```

Replace `America/Toronto` with your actual timezone. This image is for `amd64` arch only.

**Or build it:**

Want to build this image from a `Dockerfile` instead? Or do you want to run this dashboard on a non-`amd64` arch, let's say `arm`? On a Raspberry Pi?

```
docker build -t world-cup-2018-cli-dashboard github.com/cedricblondeau/world-cup-2018-cli-dashboard && \
docker run -ti -e TZ=America/Toronto world-cup-2018-cli-dashboard
```

## Install using `npm` or `yarn`

**NPM:**
```bash
npm install -g world-cup-cli-dashboard
```

**Yarn:**
```bash
yarn global add world-cup-cli-dashboard
```

Requires NodeJS 6+.

## Usage

```bash
POST_NOTIFICATIONS=0 wc2018
```

- Use ⬅️  and ➡️  keys to navigate through different different matches.
- Set `POST_NOTIFICATIONS` to 1 to enable native notifications when receiving new match events such as goals, cards or substitutions (won't work in Docker).

## How does it work?

Data is sourced from the awesome [worldcup.sfg.io](http://worldcup.sfg.io/). Matches get updated each 30 seconds. Groups get updated each 2 minutes.

Terminal interface built with [react-blessed](https://github.com/Yomguithereal/react-blessed).

## FAQ

#### Q: Data is not showing up?

If an API call fails, we log a debug message. Press `F12` to see the debug console, some helpful messages may show up (a 503 or a 429 HTTP code for instance).

## Development

```bash
git clone https://github.com/cedricblondeau/world-cup-2018-cli-dashboard
cd world-cup-2018-cli-dashboard
yarn install
USE_FIXTURES=1 yarn start
```

Set `USE_FIXTURES` to `0` to use the actual API in dev.

Contributions are very welcome.

## LICENSE

MIT


================================================
FILE: bin/wc2018
================================================
#!/usr/bin/env node
require('../dist/index.js');


================================================
FILE: fixtures/group_results.json
================================================
[
  {
    "id": 1,
    "letter": "A",
    "ordered_teams": [
      {
        "id": 4,
        "country": "Uruguay",
        "alternate_name": null,
        "fifa_code": "URU",
        "group_id": 1,
        "group_letter": "A",
        "wins": 3,
        "draws": 0,
        "losses": 0,
        "games_played": 3,
        "points": 9,
        "goals_for": 5,
        "goals_against": 0,
        "goal_differential": 5
      },
      {
        "id": 1,
        "country": "Russia",
        "alternate_name": null,
        "fifa_code": "RUS",
        "group_id": 1,
        "group_letter": "A",
        "wins": 2,
        "draws": 0,
        "losses": 1,
        "games_played": 3,
        "points": 6,
        "goals_for": 8,
        "goals_against": 4,
        "goal_differential": 4
      },
      {
        "id": 2,
        "country": "Saudi Arabia",
        "alternate_name": null,
        "fifa_code": "KSA",
        "group_id": 1,
        "group_letter": "A",
        "wins": 1,
        "draws": 0,
        "losses": 2,
        "games_played": 3,
        "points": 3,
        "goals_for": 2,
        "goals_against": 7,
        "goal_differential": -5
      },
      {
        "id": 3,
        "country": "Egypt",
        "alternate_name": null,
        "fifa_code": "EGY",
        "group_id": 1,
        "group_letter": "A",
        "wins": 0,
        "draws": 0,
        "losses": 3,
        "games_played": 3,
        "points": 0,
        "goals_for": 2,
        "goals_against": 6,
        "goal_differential": -4
      }
    ]
  },
  {
    "id": 2,
    "letter": "B",
    "ordered_teams": [
      {
        "id": 6,
        "country": "Spain",
        "alternate_name": null,
        "fifa_code": "ESP",
        "group_id": 2,
        "group_letter": "B",
        "wins": 1,
        "draws": 2,
        "losses": 0,
        "games_played": 3,
        "points": 5,
        "goals_for": 6,
        "goals_against": 5,
        "goal_differential": 1
      },
      {
        "id": 5,
        "country": "Portugal",
        "alternate_name": null,
        "fifa_code": "POR",
        "group_id": 2,
        "group_letter": "B",
        "wins": 1,
        "draws": 2,
        "losses": 0,
        "games_played": 3,
        "points": 5,
        "goals_for": 5,
        "goals_against": 4,
        "goal_differential": 1
      },
      {
        "id": 8,
        "country": "Iran",
        "alternate_name": null,
        "fifa_code": "IRN",
        "group_id": 2,
        "group_letter": "B",
        "wins": 1,
        "draws": 1,
        "losses": 1,
        "games_played": 3,
        "points": 4,
        "goals_for": 2,
        "goals_against": 2,
        "goal_differential": 0
      },
      {
        "id": 7,
        "country": "Morocco",
        "alternate_name": null,
        "fifa_code": "MAR",
        "group_id": 2,
        "group_letter": "B",
        "wins": 0,
        "draws": 1,
        "losses": 2,
        "games_played": 3,
        "points": 1,
        "goals_for": 2,
        "goals_against": 4,
        "goal_differential": -2
      }
    ]
  },
  {
    "id": 3,
    "letter": "C",
    "ordered_teams": [
      {
        "id": 9,
        "country": "France",
        "alternate_name": null,
        "fifa_code": "FRA",
        "group_id": 3,
        "group_letter": "C",
        "wins": 2,
        "draws": 1,
        "losses": 0,
        "games_played": 3,
        "points": 7,
        "goals_for": 3,
        "goals_against": 1,
        "goal_differential": 2
      },
      {
        "id": 12,
        "country": "Denmark",
        "alternate_name": null,
        "fifa_code": "DEN",
        "group_id": 3,
        "group_letter": "C",
        "wins": 1,
        "draws": 2,
        "losses": 0,
        "games_played": 3,
        "points": 5,
        "goals_for": 2,
        "goals_against": 1,
        "goal_differential": 1
      },
      {
        "id": 11,
        "country": "Peru",
        "alternate_name": null,
        "fifa_code": "PER",
        "group_id": 3,
        "group_letter": "C",
        "wins": 1,
        "draws": 0,
        "losses": 2,
        "games_played": 3,
        "points": 3,
        "goals_for": 2,
        "goals_against": 2,
        "goal_differential": 0
      },
      {
        "id": 10,
        "country": "Australia",
        "alternate_name": null,
        "fifa_code": "AUS",
        "group_id": 3,
        "group_letter": "C",
        "wins": 0,
        "draws": 1,
        "losses": 2,
        "games_played": 3,
        "points": 1,
        "goals_for": 2,
        "goals_against": 5,
        "goal_differential": -3
      }
    ]
  },
  {
    "id": 4,
    "letter": "D",
    "ordered_teams": [
      {
        "id": 15,
        "country": "Croatia",
        "alternate_name": null,
        "fifa_code": "CRO",
        "group_id": 4,
        "group_letter": "D",
        "wins": 3,
        "draws": 0,
        "losses": 0,
        "games_played": 3,
        "points": 9,
        "goals_for": 7,
        "goals_against": 1,
        "goal_differential": 6
      },
      {
        "id": 13,
        "country": "Argentina",
        "alternate_name": null,
        "fifa_code": "ARG",
        "group_id": 4,
        "group_letter": "D",
        "wins": 1,
        "draws": 1,
        "losses": 1,
        "games_played": 3,
        "points": 4,
        "goals_for": 3,
        "goals_against": 5,
        "goal_differential": -2
      },
      {
        "id": 16,
        "country": "Nigeria",
        "alternate_name": null,
        "fifa_code": "NGA",
        "group_id": 4,
        "group_letter": "D",
        "wins": 1,
        "draws": 0,
        "losses": 2,
        "games_played": 3,
        "points": 3,
        "goals_for": 3,
        "goals_against": 4,
        "goal_differential": -1
      },
      {
        "id": 14,
        "country": "Iceland",
        "alternate_name": null,
        "fifa_code": "ISL",
        "group_id": 4,
        "group_letter": "D",
        "wins": 0,
        "draws": 1,
        "losses": 2,
        "games_played": 3,
        "points": 1,
        "goals_for": 2,
        "goals_against": 5,
        "goal_differential": -3
      }
    ]
  },
  {
    "id": 5,
    "letter": "E",
    "ordered_teams": [
      {
        "id": 17,
        "country": "Brazil",
        "alternate_name": null,
        "fifa_code": "BRA",
        "group_id": 5,
        "group_letter": "E",
        "wins": 2,
        "draws": 1,
        "losses": 0,
        "games_played": 3,
        "points": 7,
        "goals_for": 5,
        "goals_against": 1,
        "goal_differential": 4
      },
      {
        "id": 18,
        "country": "Switzerland",
        "alternate_name": null,
        "fifa_code": "SUI",
        "group_id": 5,
        "group_letter": "E",
        "wins": 1,
        "draws": 2,
        "losses": 0,
        "games_played": 3,
        "points": 5,
        "goals_for": 5,
        "goals_against": 4,
        "goal_differential": 1
      },
      {
        "id": 20,
        "country": "Serbia",
        "alternate_name": null,
        "fifa_code": "SRB",
        "group_id": 5,
        "group_letter": "E",
        "wins": 1,
        "draws": 0,
        "losses": 2,
        "games_played": 3,
        "points": 3,
        "goals_for": 2,
        "goals_against": 4,
        "goal_differential": -2
      },
      {
        "id": 19,
        "country": "Costa Rica",
        "alternate_name": null,
        "fifa_code": "CRC",
        "group_id": 5,
        "group_letter": "E",
        "wins": 0,
        "draws": 1,
        "losses": 2,
        "games_played": 3,
        "points": 1,
        "goals_for": 2,
        "goals_against": 5,
        "goal_differential": -3
      }
    ]
  },
  {
    "id": 6,
    "letter": "F",
    "ordered_teams": [
      {
        "id": 23,
        "country": "Sweden",
        "alternate_name": null,
        "fifa_code": "SWE",
        "group_id": 6,
        "group_letter": "F",
        "wins": 2,
        "draws": 0,
        "losses": 1,
        "games_played": 3,
        "points": 6,
        "goals_for": 5,
        "goals_against": 2,
        "goal_differential": 3
      },
      {
        "id": 22,
        "country": "Mexico",
        "alternate_name": null,
        "fifa_code": "MEX",
        "group_id": 6,
        "group_letter": "F",
        "wins": 2,
        "draws": 0,
        "losses": 1,
        "games_played": 3,
        "points": 6,
        "goals_for": 3,
        "goals_against": 4,
        "goal_differential": -1
      },
      {
        "id": 24,
        "country": "Korea Republic",
        "alternate_name": null,
        "fifa_code": "KOR",
        "group_id": 6,
        "group_letter": "F",
        "wins": 1,
        "draws": 0,
        "losses": 2,
        "games_played": 3,
        "points": 3,
        "goals_for": 3,
        "goals_against": 3,
        "goal_differential": 0
      },
      {
        "id": 21,
        "country": "Germany",
        "alternate_name": null,
        "fifa_code": "GER",
        "group_id": 6,
        "group_letter": "F",
        "wins": 1,
        "draws": 0,
        "losses": 2,
        "games_played": 3,
        "points": 3,
        "goals_for": 2,
        "goals_against": 4,
        "goal_differential": -2
      }
    ]
  },
  {
    "id": 7,
    "letter": "G",
    "ordered_teams": [
      {
        "id": 25,
        "country": "Belgium",
        "alternate_name": null,
        "fifa_code": "BEL",
        "group_id": 7,
        "group_letter": "G",
        "wins": 3,
        "draws": 0,
        "losses": 0,
        "games_played": 3,
        "points": 9,
        "goals_for": 9,
        "goals_against": 2,
        "goal_differential": 7
      },
      {
        "id": 28,
        "country": "England",
        "alternate_name": null,
        "fifa_code": "ENG",
        "group_id": 7,
        "group_letter": "G",
        "wins": 2,
        "draws": 0,
        "losses": 1,
        "games_played": 3,
        "points": 6,
        "goals_for": 8,
        "goals_against": 3,
        "goal_differential": 5
      },
      {
        "id": 27,
        "country": "Tunisia",
        "alternate_name": null,
        "fifa_code": "TUN",
        "group_id": 7,
        "group_letter": "G",
        "wins": 1,
        "draws": 0,
        "losses": 2,
        "games_played": 3,
        "points": 3,
        "goals_for": 5,
        "goals_against": 8,
        "goal_differential": -3
      },
      {
        "id": 26,
        "country": "Panama",
        "alternate_name": null,
        "fifa_code": "PAN",
        "group_id": 7,
        "group_letter": "G",
        "wins": 0,
        "draws": 0,
        "losses": 3,
        "games_played": 3,
        "points": 0,
        "goals_for": 2,
        "goals_against": 11,
        "goal_differential": -9
      }
    ]
  },
  {
    "id": 8,
    "letter": "H",
    "ordered_teams": [
      {
        "id": 31,
        "country": "Colombia",
        "alternate_name": null,
        "fifa_code": "COL",
        "group_id": 8,
        "group_letter": "H",
        "wins": 2,
        "draws": 0,
        "losses": 1,
        "games_played": 3,
        "points": 6,
        "goals_for": 5,
        "goals_against": 2,
        "goal_differential": 3
      },
      {
        "id": 32,
        "country": "Japan",
        "alternate_name": null,
        "fifa_code": "JPN",
        "group_id": 8,
        "group_letter": "H",
        "wins": 1,
        "draws": 1,
        "losses": 1,
        "games_played": 3,
        "points": 4,
        "goals_for": 4,
        "goals_against": 4,
        "goal_differential": 0
      },
      {
        "id": 30,
        "country": "Senegal",
        "alternate_name": null,
        "fifa_code": "SEN",
        "group_id": 8,
        "group_letter": "H",
        "wins": 1,
        "draws": 1,
        "losses": 1,
        "games_played": 3,
        "points": 4,
        "goals_for": 4,
        "goals_against": 4,
        "goal_differential": 0
      },
      {
        "id": 29,
        "country": "Poland",
        "alternate_name": null,
        "fifa_code": "POL",
        "group_id": 8,
        "group_letter": "H",
        "wins": 1,
        "draws": 0,
        "losses": 2,
        "games_played": 3,
        "points": 3,
        "goals_for": 2,
        "goals_against": 5,
        "goal_differential": -3
      }
    ]
  }
]


================================================
FILE: fixtures/match.json
================================================
{
  "venue": "Kazan",
  "location": "Kazan Arena",
  "status": "completed",
  "time": "full-time",
  "fifa_id": "300331537",
  "weather": {
    "humidity": "33",
    "temp_celsius": "28",
    "temp_farenheit": "60",
    "wind_speed": "12",
    "description": "Sunny"
  },
  "attendance": "42873",
  "officials": [
    "Alireza FAGHANI",
    "Reza SOKHANDAN",
    "Mohammadreza MANSOURI",
    "Julio BASCUNAN",
    "Massimiliano IRRATI",
    "Carlos ASTROZA",
    "Pawel GIL",
    "Paolo VALERI",
    "Christian SCHIEMANN"
  ],
  "stage_name": "Round of 16",
  "home_team_country": "France",
  "away_team_country": "Argentina",
  "datetime": "2018-06-30T14:00:00Z",
  "winner": "France",
  "winner_code": "FRA",
  "home_team": {
    "country": "France",
    "code": "FRA",
    "goals": 4,
    "penalties": 0
  },
  "away_team": {
    "country": "Argentina",
    "code": "ARG",
    "goals": 3,
    "penalties": 0
  },
  "home_team_events": [
    {
      "id": 877,
      "type_of_event": "goal-penalty",
      "player": "Antoine GRIEZMANN",
      "time": "13'"
    },
    {
      "id": 885,
      "type_of_event": "goal",
      "player": "Benjamin PAVARD",
      "time": "57'"
    },
    {
      "id": 886,
      "type_of_event": "goal",
      "player": "Kylian MBAPPE",
      "time": "64'"
    },
    {
      "id": 889,
      "type_of_event": "goal",
      "player": "Kylian MBAPPE",
      "time": "68'"
    },
    {
      "id": 891,
      "type_of_event": "yellow-card",
      "player": "Blaise MATUIDI",
      "time": "72'"
    },
    {
      "id": 890,
      "type_of_event": "yellow-card",
      "player": "Benjamin PAVARD",
      "time": "73'"
    },
    {
      "id": 892,
      "type_of_event": "substitution-out",
      "player": "Blaise MATUIDI",
      "time": "75'"
    },
    {
      "id": 893,
      "type_of_event": "substitution-in",
      "player": "Corentin TOLISSO",
      "time": "75'"
    },
    {
      "id": 896,
      "type_of_event": "substitution-out",
      "player": "Antoine GRIEZMANN",
      "time": "83'"
    },
    {
      "id": 897,
      "type_of_event": "substitution-in",
      "player": "Nabil FEKIR",
      "time": "83'"
    },
    {
      "id": 898,
      "type_of_event": "substitution-out",
      "player": "Kylian MBAPPE",
      "time": "89'"
    },
    {
      "id": 899,
      "type_of_event": "substitution-in",
      "player": "Florian THAUVIN",
      "time": "89'"
    },
    {
      "id": 902,
      "type_of_event": "yellow-card",
      "player": "Olivier GIROUD",
      "time": "90'+3'"
    }
  ],
  "away_team_events": [
    {
      "id": 876,
      "type_of_event": "yellow-card",
      "player": "Marcos ROJO",
      "time": "11'"
    },
    {
      "id": 878,
      "type_of_event": "yellow-card",
      "player": "Nicolas TAGLIAFICO",
      "time": "19'"
    },
    {
      "id": 879,
      "type_of_event": "goal",
      "player": "Angel DI MARIA",
      "time": "41'"
    },
    {
      "id": 880,
      "type_of_event": "yellow-card",
      "player": "Javier MASCHERANO",
      "time": "43'"
    },
    {
      "id": 881,
      "type_of_event": "substitution-out",
      "player": "Marcos ROJO",
      "time": "46'"
    },
    {
      "id": 882,
      "type_of_event": "substitution-in",
      "player": "Federico FAZIO",
      "time": "46'"
    },
    {
      "id": 883,
      "type_of_event": "goal",
      "player": "Gabriel MERCADO",
      "time": "48'"
    },
    {
      "id": 884,
      "type_of_event": "yellow-card",
      "player": "Ever BANEGA",
      "time": "50'"
    },
    {
      "id": 887,
      "type_of_event": "substitution-out",
      "player": "Enzo PEREZ",
      "time": "66'"
    },
    {
      "id": 888,
      "type_of_event": "substitution-in",
      "player": "Sergio AGUERO",
      "time": "66'"
    },
    {
      "id": 894,
      "type_of_event": "substitution-out",
      "player": "Cristian PAVON",
      "time": "75'"
    },
    {
      "id": 895,
      "type_of_event": "substitution-in",
      "player": "Maximiliano MEZA",
      "time": "75'"
    },
    {
      "id": 900,
      "type_of_event": "goal",
      "player": "Sergio AGUERO",
      "time": "90'+3'"
    },
    {
      "id": 901,
      "type_of_event": "yellow-card",
      "player": "Nicolas OTAMENDI",
      "time": "90'+3'"
    }
  ],
  "home_team_statistics": {
    "country": "France",
    "attempts_on_goal": 9,
    "on_target": 4,
    "off_target": 4,
    "blocked": 1,
    "woodwork": 1,
    "corners": 0,
    "offsides": 0,
    "ball_possession": 41,
    "pass_accuracy": 84,
    "num_passes": 352,
    "passes_completed": 295,
    "distance_covered": 97,
    "balls_recovered": 35,
    "tackles": 12,
    "clearances": 20,
    "yellow_cards": 3,
    "red_cards": 0,
    "fouls_committed": 21,
    "tactics": "4-2-3-1",
    "starting_eleven": [
      {
        "name": "Hugo LLORIS",
        "captain": true,
        "shirt_number": 1,
        "position": "Goalie"
      },
      {
        "name": "Benjamin PAVARD",
        "captain": false,
        "shirt_number": 2,
        "position": "Defender"
      },
      {
        "name": "Raphael VARANE",
        "captain": false,
        "shirt_number": 4,
        "position": "Defender"
      },
      {
        "name": "Samuel UMTITI",
        "captain": false,
        "shirt_number": 5,
        "position": "Defender"
      },
      {
        "name": "Paul POGBA",
        "captain": false,
        "shirt_number": 6,
        "position": "Midfield"
      },
      {
        "name": "Antoine GRIEZMANN",
        "captain": false,
        "shirt_number": 7,
        "position": "Forward"
      },
      {
        "name": "Olivier GIROUD",
        "captain": false,
        "shirt_number": 9,
        "position": "Forward"
      },
      {
        "name": "Kylian MBAPPE",
        "captain": false,
        "shirt_number": 10,
        "position": "Forward"
      },
      {
        "name": "Ngolo KANTE",
        "captain": false,
        "shirt_number": 13,
        "position": "Midfield"
      },
      {
        "name": "Blaise MATUIDI",
        "captain": false,
        "shirt_number": 14,
        "position": "Midfield"
      },
      {
        "name": "Lucas HERNANDEZ",
        "captain": false,
        "shirt_number": 21,
        "position": "Defender"
      }
    ],
    "substitutes": [
      {
        "name": "Presnel KIMPEMBE",
        "captain": false,
        "shirt_number": 3,
        "position": "Defender"
      },
      {
        "name": "Thomas LEMAR",
        "captain": false,
        "shirt_number": 8,
        "position": "Forward"
      },
      {
        "name": "Ousmane DEMBELE",
        "captain": false,
        "shirt_number": 11,
        "position": "Forward"
      },
      {
        "name": "Corentin TOLISSO",
        "captain": false,
        "shirt_number": 12,
        "position": "Midfield"
      },
      {
        "name": "Steven NZONZI",
        "captain": false,
        "shirt_number": 15,
        "position": "Midfield"
      },
      {
        "name": "Steve MANDANDA",
        "captain": false,
        "shirt_number": 16,
        "position": "Goalie"
      },
      {
        "name": "Adil RAMI",
        "captain": false,
        "shirt_number": 17,
        "position": "Defender"
      },
      {
        "name": "Nabil FEKIR",
        "captain": false,
        "shirt_number": 18,
        "position": "Forward"
      },
      {
        "name": "Djibril SIDIBE",
        "captain": false,
        "shirt_number": 19,
        "position": "Defender"
      },
      {
        "name": "Florian THAUVIN",
        "captain": false,
        "shirt_number": 20,
        "position": "Forward"
      },
      {
        "name": "Benjamin MENDY",
        "captain": false,
        "shirt_number": 22,
        "position": "Defender"
      },
      {
        "name": "Alphonse AREOLA",
        "captain": false,
        "shirt_number": 23,
        "position": "Goalie"
      }
    ]
  },
  "away_team_statistics": {
    "country": "Argentina",
    "attempts_on_goal": 9,
    "on_target": 4,
    "off_target": 1,
    "blocked": 4,
    "woodwork": 0,
    "corners": 4,
    "offsides": 1,
    "ball_possession": 59,
    "pass_accuracy": 86,
    "num_passes": 548,
    "passes_completed": 473,
    "distance_covered": 96,
    "balls_recovered": 28,
    "tackles": 22,
    "clearances": 10,
    "yellow_cards": 5,
    "red_cards": 0,
    "fouls_committed": 15,
    "tactics": "4-3-3",
    "starting_eleven": [
      {
        "name": "Franco ARMANI",
        "captain": false,
        "shirt_number": 12,
        "position": "Goalie"
      },
      {
        "name": "Gabriel MERCADO",
        "captain": false,
        "shirt_number": 2,
        "position": "Defender"
      },
      {
        "name": "Nicolas TAGLIAFICO",
        "captain": false,
        "shirt_number": 3,
        "position": "Defender"
      },
      {
        "name": "Ever BANEGA",
        "captain": false,
        "shirt_number": 7,
        "position": "Midfield"
      },
      {
        "name": "Lionel MESSI",
        "captain": true,
        "shirt_number": 10,
        "position": "Forward"
      },
      {
        "name": "Angel DI MARIA",
        "captain": false,
        "shirt_number": 11,
        "position": "Midfield"
      },
      {
        "name": "Javier MASCHERANO",
        "captain": false,
        "shirt_number": 14,
        "position": "Defender"
      },
      {
        "name": "Enzo PEREZ",
        "captain": false,
        "shirt_number": 15,
        "position": "Midfield"
      },
      {
        "name": "Marcos ROJO",
        "captain": false,
        "shirt_number": 16,
        "position": "Defender"
      },
      {
        "name": "Nicolas OTAMENDI",
        "captain": false,
        "shirt_number": 17,
        "position": "Defender"
      },
      {
        "name": "Cristian PAVON",
        "captain": false,
        "shirt_number": 22,
        "position": "Midfield"
      }
    ],
    "substitutes": [
      {
        "name": "Nahuel GUZMAN",
        "captain": false,
        "shirt_number": 1,
        "position": "Goalie"
      },
      {
        "name": "Cristian ANSALDI",
        "captain": false,
        "shirt_number": 4,
        "position": "Defender"
      },
      {
        "name": "Lucas BIGLIA",
        "captain": false,
        "shirt_number": 5,
        "position": "Midfield"
      },
      {
        "name": "Federico FAZIO",
        "captain": false,
        "shirt_number": 6,
        "position": "Defender"
      },
      {
        "name": "Marcos ACUNA",
        "captain": false,
        "shirt_number": 8,
        "position": "Defender"
      },
      {
        "name": "Gonzalo HIGUAIN",
        "captain": false,
        "shirt_number": 9,
        "position": "Forward"
      },
      {
        "name": "Maximiliano MEZA",
        "captain": false,
        "shirt_number": 13,
        "position": "Midfield"
      },
      {
        "name": "Eduardo SALVIO",
        "captain": false,
        "shirt_number": 18,
        "position": "Defender"
      },
      {
        "name": "Sergio AGUERO",
        "captain": false,
        "shirt_number": 19,
        "position": "Forward"
      },
      {
        "name": "Giovani LO CELSO",
        "captain": false,
        "shirt_number": 20,
        "position": "Midfield"
      },
      {
        "name": "Paulo DYBALA",
        "captain": false,
        "shirt_number": 21,
        "position": "Forward"
      },
      {
        "name": "Wilfredo CABALLERO",
        "captain": false,
        "shirt_number": 23,
        "position": "Goalie"
      }
    ]
  },
  "last_event_update_at": "2018-06-30T17:16:20Z",
  "last_score_update_at": "2018-06-30T17:16:20Z"
}


================================================
FILE: fixtures/matches.json
================================================
[{"venue":"Moscow","location":"Luzhniki Stadium","status":"completed","time":"full-time","fifa_id":"300331503","weather":{"humidity":"43","temp_celsius":"17","temp_farenheit":"49","wind_speed":"6","description":"Partly Cloudy"},"attendance":"78011","officials":["Nestor PITANA","Hernan MAIDANA","Juan Pablo BELATTI","Sandro RICCI","Massimiliano IRRATI","Carlos ASTROZA","Mauro VIGLIANO","Daniele ORSATO","Emerson DE CARVALHO"],"stage_name":"First stage","home_team_country":"Russia","away_team_country":"Saudi Arabia","datetime":"2018-06-14T15:00:00Z","winner":"Russia","winner_code":"RUS","home_team":{"country":"Russia","code":"RUS","goals":5,"penalties":0},"away_team":{"country":"Saudi Arabia","code":"KSA","goals":0,"penalties":0},"home_team_events":[{"id":5,"type_of_event":"goal","player":"Iury GAZINSKY","time":"12'"},{"id":1,"type_of_event":"substitution-in","player":"Denis CHERYSHEV","time":"24'"},{"id":320,"type_of_event":"substitution-out","player":"Alan DZAGOEV","time":"24'"},{"id":2,"type_of_event":"goal","player":"Denis CHERYSHEV","time":"43'"},{"id":4,"type_of_event":"substitution-in","player":"Daler KUZIAEV","time":"64'"},{"id":322,"type_of_event":"substitution-out","player":"Alexander SAMEDOV","time":"64'"},{"id":8,"type_of_event":"substitution-in","player":"Artem DZYUBA","time":"70'"},{"id":321,"type_of_event":"substitution-out","player":"Fedor SMOLOV","time":"70'"},{"id":9,"type_of_event":"goal","player":"Artem DZYUBA","time":"71'"},{"id":6,"type_of_event":"yellow-card","player":"Aleksandr GOLOVIN","time":"88'"},{"id":3,"type_of_event":"goal","player":"Denis CHERYSHEV","time":"90'+1'"},{"id":7,"type_of_event":"goal","player":"Aleksandr GOLOVIN","time":"90'+4'"}],"away_team_events":[{"id":12,"type_of_event":"substitution-in","player":"FAHAD ALMUWALLAD","time":"64'"},{"id":325,"type_of_event":"substitution-out","player":"ABDULLAH OTAYF","time":"64'"},{"id":10,"type_of_event":"substitution-in","player":"HATAN BAHBIR","time":"72'"},{"id":323,"type_of_event":"substitution-out","player":"YAHIA ALSHEHRI","time":"72'"},{"id":326,"type_of_event":"substitution-in","player":"HATAN BAHBRI","time":"72'"},{"id":13,"type_of_event":"substitution-in","player":"MUHANNAD ASIRI","time":"85'"},{"id":324,"type_of_event":"substitution-out","player":"MOHAMMED ALSAHLAWI","time":"85'"},{"id":11,"type_of_event":"yellow-card","player":"TAISEER ALJASSAM","time":"90'+3'"}],"home_team_statistics":{"country":"Russia","attempts_on_goal":13,"on_target":7,"off_target":3,"blocked":3,"woodwork":0,"corners":6,"offsides":3,"ball_possession":40,"pass_accuracy":78,"num_passes":306,"passes_completed":240,"distance_covered":118,"balls_recovered":53,"tackles":9,"clearances":19,"yellow_cards":1,"red_cards":0,"fouls_committed":22,"tactics":"4-2-3-1","starting_eleven":[{"name":"Igor AKINFEEV","captain":true,"shirt_number":1,"position":"Goalie"},{"name":"MARIO FERNANDES","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Ilya KUTEPOV","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Sergey IGNASHEVICH","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Iury GAZINSKY","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Alan DZAGOEV","captain":false,"shirt_number":9,"position":"Midfield"},{"name":"Fedor SMOLOV","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Roman ZOBNIN","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Aleksandr GOLOVIN","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Yury ZHIRKOV","captain":false,"shirt_number":18,"position":"Midfield"},{"name":"Alexander SAMEDOV","captain":false,"shirt_number":19,"position":"Midfield"}],"substitutes":[{"name":"Andrey SEMENOV","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Denis CHERYSHEV","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Daler KUZIAEV","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Andrei LUNEV","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Fedor KUDRIASHOV","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Vladimir GRANAT","captain":false,"shirt_number":14,"position":"Defender"},{"name":"Alexey MIRANCHUK","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Anton MIRANCHUK","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Vladimir GABULOV","captain":false,"shirt_number":20,"position":"Goalie"},{"name":"Aleksandr EROKHIN","captain":false,"shirt_number":21,"position":"Midfield"},{"name":"Artem DZYUBA","captain":false,"shirt_number":22,"position":"Forward"},{"name":"Igor SMOLNIKOV","captain":false,"shirt_number":23,"position":"Defender"}]},"away_team_statistics":{"country":"Saudi Arabia","attempts_on_goal":6,"on_target":0,"off_target":3,"blocked":3,"woodwork":0,"corners":2,"offsides":1,"ball_possession":60,"pass_accuracy":86,"num_passes":511,"passes_completed":442,"distance_covered":105,"balls_recovered":48,"tackles":16,"clearances":31,"yellow_cards":1,"red_cards":0,"fouls_committed":10,"tactics":"4-5-1","starting_eleven":[{"name":"ABDULLAH ALMUAIOUF","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"OSAMA HAWSAWI","captain":true,"shirt_number":3,"position":"Defender"},{"name":"OMAR HAWSAWI","captain":false,"shirt_number":5,"position":"Defender"},{"name":"MOHAMMED ALBURAYK","captain":false,"shirt_number":6,"position":"Defender"},{"name":"SALMAN ALFARAJ","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"YAHIA ALSHEHRI","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"MOHAMMED ALSAHLAWI","captain":false,"shirt_number":10,"position":"Forward"},{"name":"YASSER ALSHAHRANI","captain":false,"shirt_number":13,"position":"Defender"},{"name":"ABDULLAH OTAYF","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"TAISEER ALJASSAM","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"SALEM ALDAWSARI","captain":false,"shirt_number":18,"position":"Midfield"}],"substitutes":[{"name":"MANSOUR ALHARBI","captain":false,"shirt_number":2,"position":"Defender"},{"name":"ALI ALBULAYHI","captain":false,"shirt_number":4,"position":"Defender"},{"name":"HATAN BAHBRI","captain":false,"shirt_number":9,"position":"Midfield"},{"name":"ABDULMALEK ALKHAIBRI","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"MOHAMED KANNO","captain":false,"shirt_number":12,"position":"Midfield"},{"name":"ABDULLAH ALKHAIBARI","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"HUSSAIN ALMOQAHWI","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"FAHAD ALMUWALLAD","captain":false,"shirt_number":19,"position":"Forward"},{"name":"MUHANNAD ASIRI","captain":false,"shirt_number":20,"position":"Forward"},{"name":"YASSER ALMOSAILEM","captain":false,"shirt_number":21,"position":"Goalie"},{"name":"MOHAMMED ALOWAIS","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"MOTAZ HAWSAWI","captain":false,"shirt_number":23,"position":"Defender"}]},"last_event_update_at":"2018-06-21T02:36:44Z","last_score_update_at":null},{"venue":"Ekaterinburg","location":"Ekaterinburg Arena","status":"completed","time":"full-time","fifa_id":"300353632","weather":{"humidity":"42","temp_celsius":"14","temp_farenheit":"46","wind_speed":"29","description":"Partly Cloudy"},"attendance":"27015","officials":["Bjorn KUIPERS","Sander VAN ROEKEL","Erwin ZEINSTRA","Milorad MAZIC","Danny MAKKELIE","Cyril GRINGORE","Pawel GIL","Clement TURPIN","Milovan RISTIC"],"stage_name":"First stage","home_team_country":"Egypt","away_team_country":"Uruguay","datetime":"2018-06-15T12:00:00Z","winner":"Uruguay","winner_code":"URU","home_team":{"country":"Egypt","code":"EGY","goals":0,"penalties":0},"away_team":{"country":"Uruguay","code":"URU","goals":1,"penalties":0},"home_team_events":[{"id":14,"type_of_event":"substitution-in","player":"SAM MORSY","time":"50'"},{"id":333,"type_of_event":"substitution-out","player":"TAREK HAMED","time":"50'"},{"id":17,"type_of_event":"substitution-in","player":"KAHRABA","time":"63'"},{"id":334,"type_of_event":"substitution-out","player":"MARWAN MOHSEN","time":"63'"},{"id":18,"type_of_event":"substitution-in","player":"RAMADAN SOBHY","time":"82'"},{"id":335,"type_of_event":"substitution-out","player":"AMR WARDA","time":"82'"},{"id":21,"type_of_event":"yellow-card","player":"AHMED HEGAZY","time":"90'+6'"},{"id":336,"type_of_event":"yellow-card","player":"SAM MORSY","time":"90'+4'"}],"away_team_events":[{"id":15,"type_of_event":"substitution-in","player":"Carlos SANCHEZ","time":"58'"},{"id":337,"type_of_event":"substitution-out","player":"Nahitan NANDEZ","time":"58'"},{"id":16,"type_of_event":"substitution-in","player":"Cristian RODRIGUEZ","time":"59'"},{"id":338,"type_of_event":"substitution-out","player":"Giorgian DE ARRASCAETA","time":"59'"},{"id":19,"type_of_event":"substitution-in","player":"Lucas TORREIRA","time":"87'"},{"id":339,"type_of_event":"substitution-out","player":"Matias VECINO","time":"87'"},{"id":20,"type_of_event":"goal","player":"Jose GIMENEZ","time":"89'"}],"home_team_statistics":{"country":"Egypt","attempts_on_goal":8,"on_target":3,"off_target":3,"blocked":2,"woodwork":0,"corners":0,"offsides":1,"ball_possession":43,"pass_accuracy":78,"num_passes":395,"passes_completed":308,"distance_covered":112,"balls_recovered":57,"tackles":12,"clearances":32,"yellow_cards":2,"red_cards":0,"fouls_committed":12,"tactics":"4-2-3-1","starting_eleven":[{"name":"MOHAMED ELSHENAWY","captain":false,"shirt_number":23,"position":"Goalie"},{"name":"ALI GABR","captain":false,"shirt_number":2,"position":"Defender"},{"name":"AHMED HEGAZY","captain":false,"shirt_number":6,"position":"Defender"},{"name":"AHMED FATHI","captain":true,"shirt_number":7,"position":"Defender"},{"name":"TAREK HAMED","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"MARWAN MOHSEN","captain":false,"shirt_number":9,"position":"Forward"},{"name":"MOHAMED ABDELSHAFY","captain":false,"shirt_number":13,"position":"Defender"},{"name":"MOHAMED ELNENY","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"ABDALLA SAID","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"TREZIGUET","captain":false,"shirt_number":21,"position":"Midfield"},{"name":"AMR WARDA","captain":false,"shirt_number":22,"position":"Forward"}],"substitutes":[{"name":"ESSAM ELHADARY","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"AHMED ELMOHAMADY","captain":false,"shirt_number":3,"position":"Defender"},{"name":"OMAR GABER","captain":false,"shirt_number":4,"position":"Midfield"},{"name":"SAM MORSY","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"MOHAMED SALAH","captain":false,"shirt_number":10,"position":"Forward"},{"name":"KAHRABA","captain":false,"shirt_number":11,"position":"Forward"},{"name":"AYMAN ASHRAF","captain":false,"shirt_number":12,"position":"Defender"},{"name":"RAMADAN SOBHY","captain":false,"shirt_number":14,"position":"Forward"},{"name":"MAHMOUD HAMDY","captain":false,"shirt_number":15,"position":"Defender"},{"name":"SHERIF EKRAMY","captain":false,"shirt_number":16,"position":"Goalie"},{"name":"SHIKABALA","captain":false,"shirt_number":18,"position":"Forward"},{"name":"SAMIR SAAD","captain":false,"shirt_number":20,"position":"Defender"}]},"away_team_statistics":{"country":"Uruguay","attempts_on_goal":14,"on_target":4,"off_target":6,"blocked":4,"woodwork":1,"corners":5,"offsides":1,"ball_possession":57,"pass_accuracy":86,"num_passes":589,"passes_completed":508,"distance_covered":111,"balls_recovered":54,"tackles":8,"clearances":22,"yellow_cards":0,"red_cards":0,"fouls_committed":6,"tactics":"4-4-2","starting_eleven":[{"name":"Fernando MUSLERA","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Jose GIMENEZ","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Diego GODIN","captain":true,"shirt_number":3,"position":"Defender"},{"name":"Guillermo VARELA","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Rodrigo BENTANCUR","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Nahitan NANDEZ","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Luis SUAREZ","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Giorgian DE ARRASCAETA","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Matias VECINO","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Edinson CAVANI","captain":false,"shirt_number":21,"position":"Forward"},{"name":"Martin CACERES","captain":false,"shirt_number":22,"position":"Defender"}],"substitutes":[{"name":"Carlos SANCHEZ","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"Cristian RODRIGUEZ","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Cristhian STUANI","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Martin CAMPANA","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Gaston SILVA","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Lucas TORREIRA","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Maximiliano PEREIRA","captain":false,"shirt_number":16,"position":"Defender"},{"name":"Diego LAXALT","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Maximiliano GOMEZ","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Sebastian COATES","captain":false,"shirt_number":19,"position":"Defender"},{"name":"Jonathan URRETAVISCAYA","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Martin SILVA","captain":false,"shirt_number":23,"position":"Goalie"}]},"last_event_update_at":"2018-06-21T02:37:25Z","last_score_update_at":null},{"venue":"St. Petersburg","location":"Saint Petersburg Stadium","status":"completed","time":"full-time","fifa_id":"300331526","weather":{"humidity":"37","temp_celsius":"25","temp_farenheit":"57","wind_speed":"13","description":"Partly Cloudy"},"attendance":"62548","officials":["Cuneyt CAKIR","Bahattin DURAN","Tarik ONGUN","Sergei KARASEV","Felix ZWAYER","Mark BORSCH","Bastian DANKERT","Jair MARRUFO","Anton AVERIANOV"],"stage_name":"First stage","home_team_country":"Morocco","away_team_country":"Iran","datetime":"2018-06-15T15:00:00Z","winner":"Iran","winner_code":"IRN","home_team":{"country":"Morocco","code":"MAR","goals":0,"penalties":0},"away_team":{"country":"Iran","code":"IRN","goals":1,"penalties":0},"home_team_events":[{"id":23,"type_of_event":"yellow-card","player":"Karim EL AHMADI","time":"34'"},{"id":26,"type_of_event":"substitution-in","player":"Sofyan AMRABAT","time":"76'"},{"id":27,"type_of_event":"substitution-in","player":"Aziz BOUHADDOUZ","time":"76'"},{"id":315,"type_of_event":"substitution-out","player":"Noureddine AMRABAT","time":"76'"},{"id":31,"type_of_event":"substitution-in","player":"Aziz BOUHADDOUZ","time":"77'"},{"id":314,"type_of_event":"substitution-out","player":"Ayoub EL KAABI","time":"77'"},{"id":30,"type_of_event":"substitution-in","player":"Manuel DA COSTA","time":"82'"},{"id":316,"type_of_event":"substitution-out","player":"Amine HARIT","time":"82'"},{"id":34,"type_of_event":"goal-own","player":"Aziz BOUHADDOUZ","time":"90'+5'"}],"away_team_events":[{"id":22,"type_of_event":"yellow-card","player":"Masoud SHOJAEI","time":"10'"},{"id":24,"type_of_event":"yellow-card","player":"Alireza JAHANBAKHSH","time":"47'"},{"id":25,"type_of_event":"substitution-in","player":"Mehdi TAREMI","time":"68'"},{"id":317,"type_of_event":"substitution-out","player":"Masoud SHOJAEI","time":"68'"},{"id":28,"type_of_event":"substitution-in","player":"Pejman MONTAZERI","time":"79'"},{"id":33,"type_of_event":"substitution-in","player":"Majid HOSSEINI","time":"81'"},{"id":318,"type_of_event":"substitution-out","player":"Omid EBRAHIMI","time":"81'"},{"id":29,"type_of_event":"substitution-in","player":"Majid HOSSEINI","time":"82'"},{"id":32,"type_of_event":"substitution-in","player":"Saman GHODDOS","time":"85'"},{"id":319,"type_of_event":"substitution-out","player":"Alireza JAHANBAKHSH","time":"85'"},{"id":35,"type_of_event":"yellow-card","player":"Karim ANSARIFARD","time":"90'+2'"}],"home_team_statistics":{"country":"Morocco","attempts_on_goal":13,"on_target":3,"off_target":6,"blocked":4,"woodwork":0,"corners":5,"offsides":0,"ball_possession":64,"pass_accuracy":86,"num_passes":433,"passes_completed":371,"distance_covered":101,"balls_recovered":38,"tackles":9,"clearances":16,"yellow_cards":1,"red_cards":0,"fouls_committed":22,"tactics":"3-4-3","starting_eleven":[{"name":"Monir EL KAJOUI","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Achraf HAKIMI","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Mehdi BENATIA","captain":true,"shirt_number":5,"position":"Defender"},{"name":"Ghanem SAISS","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Hakim ZIYACH","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Karim EL AHMADI","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Ayoub EL KAABI","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Younes BELHANDA","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Mbark BOUSSOUFA","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Noureddine AMRABAT","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Amine HARIT","captain":false,"shirt_number":18,"position":"Midfield"}],"substitutes":[{"name":"Yassine BOUNOU","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Hamza MENDYL","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Manuel DA COSTA","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Faycal FAJR","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Khalid BOUTAIB","captain":false,"shirt_number":13,"position":"Forward"},{"name":"Youssef AIT BENNASSER","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Nabil DIRAR","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Youssef EN NESYRI","captain":false,"shirt_number":19,"position":"Forward"},{"name":"Aziz BOUHADDOUZ","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Sofyan AMRABAT","captain":false,"shirt_number":21,"position":"Midfield"},{"name":"Ahmed TAGNAOUTI","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"Mehdi CARCELA","captain":false,"shirt_number":23,"position":"Midfield"}]},"away_team_statistics":{"country":"Iran","attempts_on_goal":8,"on_target":2,"off_target":5,"blocked":1,"woodwork":0,"corners":2,"offsides":0,"ball_possession":36,"pass_accuracy":66,"num_passes":194,"passes_completed":129,"distance_covered":100,"balls_recovered":38,"tackles":14,"clearances":24,"yellow_cards":3,"red_cards":0,"fouls_committed":14,"tactics":"3-4-3","starting_eleven":[{"name":"Ali BEIRANVAND","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Ehsan HAJI SAFI","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Roozbeh CHESHMI","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Masoud SHOJAEI","captain":true,"shirt_number":7,"position":"Midfield"},{"name":"Morteza POURALIGANJI","captain":false,"shirt_number":8,"position":"Defender"},{"name":"Omid EBRAHIMI","captain":false,"shirt_number":9,"position":"Midfield"},{"name":"Karim ANSARIFARD","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Vahid AMIRI","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Alireza JAHANBAKHSH","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Sardar AZMOUN","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Ramin REZAEIAN","captain":false,"shirt_number":23,"position":"Defender"}],"substitutes":[{"name":"Mahdi TORABI","captain":false,"shirt_number":2,"position":"Midfield"},{"name":"Milad MOHAMMADI","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Rashid MAZAHERI","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Mohammad Reza KHANZADEH","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Saman GHODDOS","captain":false,"shirt_number":14,"position":"Forward"},{"name":"Pejman MONTAZERI","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Reza GHOOCHANNEJHAD","captain":false,"shirt_number":16,"position":"Forward"},{"name":"Mehdi TAREMI","captain":false,"shirt_number":17,"position":"Forward"},{"name":"Majid HOSSEINI","captain":false,"shirt_number":19,"position":"Defender"},{"name":"Ashkan DEJAGAH","captain":false,"shirt_number":21,"position":"Forward"},{"name":"Amir ABEDZADEH","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"Saeid EZATOLAHI","captain":false,"shirt_number":6,"position":"Midfield"}]},"last_event_update_at":"2018-06-21T02:36:30Z","last_score_update_at":null},{"venue":"Sochi","location":"Fisht Stadium","status":"completed","time":"full-time","fifa_id":"300331524","weather":{"humidity":"74","temp_celsius":"24","temp_farenheit":"56","wind_speed":"10","description":"Partly Cloudy Night"},"attendance":"43866","officials":["Gianluca ROCCHI","Elenito DI LIBERATORE","Mauro TONOLINI","Ryuji SATO","Massimiliano IRRATI","Carlos ASTROZA","Paolo VALERI","Daniele ORSATO","Toru SAGARA"],"stage_name":"First stage","home_team_country":"Portugal","away_team_country":"Spain","datetime":"2018-06-15T18:00:00Z","winner":"Draw","winner_code":"Draw","home_team":{"country":"Portugal","code":"POR","goals":3,"penalties":0},"away_team":{"country":"Spain","code":"ESP","goals":3,"penalties":0},"home_team_events":[{"id":36,"type_of_event":"goal-penalty","player":"CRISTIANO RONALDO","time":"4'"},{"id":39,"type_of_event":"yellow-card","player":"BRUNO FERNANDES","time":"28'"},{"id":40,"type_of_event":"goal","player":"CRISTIANO RONALDO","time":"44'"},{"id":43,"type_of_event":"substitution-in","player":"JOAO MARIO","time":"68'"},{"id":309,"type_of_event":"substitution-out","player":"BRUNO FERNANDES","time":"68'"},{"id":44,"type_of_event":"substitution-in","player":"RICARDO QUARESMA","time":"69'"},{"id":308,"type_of_event":"substitution-out","player":"BERNARDO SILVA","time":"69'"},{"id":47,"type_of_event":"substitution-in","player":"ANDRE SILVA","time":"80'"},{"id":310,"type_of_event":"substitution-out","player":"GONCALO GUEDES","time":"80'"},{"id":48,"type_of_event":"goal","player":"CRISTIANO RONALDO","time":"88'"}],"away_team_events":[{"id":37,"type_of_event":"yellow-card","player":"Sergio BUSQUETS","time":"17'"},{"id":38,"type_of_event":"goal","player":"Diego COSTA","time":"24'"},{"id":42,"type_of_event":"goal","player":"Diego COSTA","time":"55'"},{"id":41,"type_of_event":"goal","player":"NACHO","time":"58'"},{"id":45,"type_of_event":"substitution-in","player":"THIAGO","time":"70'"},{"id":311,"type_of_event":"substitution-out","player":"Andres INIESTA","time":"70'"},{"id":46,"type_of_event":"substitution-in","player":"Iago ASPAS","time":"77'"},{"id":312,"type_of_event":"substitution-out","player":"Diego COSTA","time":"77'"},{"id":49,"type_of_event":"substitution-in","player":"Lucas VAZQUEZ","time":"86'"},{"id":313,"type_of_event":"substitution-out","player":"David SILVA","time":"86'"}],"home_team_statistics":{"country":"Portugal","attempts_on_goal":8,"on_target":3,"off_target":2,"blocked":3,"woodwork":0,"corners":4,"offsides":1,"ball_possession":39,"pass_accuracy":87,"num_passes":366,"passes_completed":320,"distance_covered":102,"balls_recovered":36,"tackles":8,"clearances":17,"yellow_cards":1,"red_cards":0,"fouls_committed":12,"tactics":"4-2-3-1","starting_eleven":[{"name":"RUI PATRICIO","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"PEPE","captain":false,"shirt_number":3,"position":"Defender"},{"name":"RAPHAEL GUERREIRO","captain":false,"shirt_number":5,"position":"Defender"},{"name":"JOSE FONTE","captain":false,"shirt_number":6,"position":"Defender"},{"name":"CRISTIANO RONALDO","captain":true,"shirt_number":7,"position":"Forward"},{"name":"JOAO MOUTINHO","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"BERNARDO SILVA","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"WILLIAM","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"BRUNO FERNANDES","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"GONCALO GUEDES","captain":false,"shirt_number":17,"position":"Forward"},{"name":"CEDRIC","captain":false,"shirt_number":21,"position":"Defender"}],"substitutes":[{"name":"BRUNO ALVES","captain":false,"shirt_number":2,"position":"Defender"},{"name":"MANUEL FERNANDES","captain":false,"shirt_number":4,"position":"Midfield"},{"name":"ANDRE SILVA","captain":false,"shirt_number":9,"position":"Forward"},{"name":"JOAO MARIO","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"ANTHONY LOPES","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"RUBEN DIAS","captain":false,"shirt_number":13,"position":"Defender"},{"name":"RICARDO","captain":false,"shirt_number":15,"position":"Defender"},{"name":"GELSON MARTINS","captain":false,"shirt_number":18,"position":"Forward"},{"name":"MARIO RUI","captain":false,"shirt_number":19,"position":"Defender"},{"name":"RICARDO QUARESMA","captain":false,"shirt_number":20,"position":"Forward"},{"name":"BETO","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"ADRIEN SILVA","captain":false,"shirt_number":23,"position":"Midfield"}]},"away_team_statistics":{"country":"Spain","attempts_on_goal":12,"on_target":5,"off_target":5,"blocked":2,"woodwork":1,"corners":5,"offsides":3,"ball_possession":61,"pass_accuracy":93,"num_passes":727,"passes_completed":677,"distance_covered":103,"balls_recovered":28,"tackles":7,"clearances":9,"yellow_cards":1,"red_cards":0,"fouls_committed":10,"tactics":"4-2-3-1","starting_eleven":[{"name":"David DE GEA","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Gerard PIQUE","captain":false,"shirt_number":3,"position":"Defender"},{"name":"NACHO","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Sergio BUSQUETS","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"Andres INIESTA","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"KOKE","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Sergio RAMOS","captain":true,"shirt_number":15,"position":"Defender"},{"name":"Jordi ALBA","captain":false,"shirt_number":18,"position":"Defender"},{"name":"Diego COSTA","captain":false,"shirt_number":19,"position":"Forward"},{"name":"David SILVA","captain":false,"shirt_number":21,"position":"Forward"},{"name":"ISCO","captain":false,"shirt_number":22,"position":"Midfield"}],"substitutes":[{"name":"Dani CARVAJAL","captain":false,"shirt_number":2,"position":"Defender"},{"name":"SAUL","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"RODRIGO","captain":false,"shirt_number":9,"position":"Forward"},{"name":"THIAGO","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Lucas VAZQUEZ","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Alvaro ODRIOZOLA","captain":false,"shirt_number":12,"position":"Defender"},{"name":"Kepa ARRIZABALAGA","captain":false,"shirt_number":13,"position":"Goalie"},{"name":"Cesar AZPILICUETA","captain":false,"shirt_number":14,"position":"Defender"},{"name":"Nacho MONREAL","captain":false,"shirt_number":16,"position":"Defender"},{"name":"Iago ASPAS","captain":false,"shirt_number":17,"position":"Forward"},{"name":"Marco ASENSIO","captain":false,"shirt_number":20,"position":"Midfield"},{"name":"Pepe REINA","captain":false,"shirt_number":23,"position":"Goalie"}]},"last_event_update_at":"2018-06-21T02:36:18Z","last_score_update_at":"2018-06-15T19:52:38Z"},{"venue":"Kazan","location":"Kazan Arena","status":"completed","time":"full-time","fifa_id":"300331533","weather":{"humidity":"32","temp_celsius":"19","temp_farenheit":"51","wind_speed":"19","description":"Sunny"},"attendance":"41279","officials":["Andres CUNHA","Nicolas TARAN","Mauricio ESPINOSA","Julio BASCUNAN","Mauro VIGLIANO","Hernan MAIDANA","Tiago MARTINS","Jair MARRUFO","Christian SCHIEMANN"],"stage_name":"First stage","home_team_country":"France","away_team_country":"Australia","datetime":"2018-06-16T10:00:00Z","winner":"France","winner_code":"FRA","home_team":{"country":"France","code":"FRA","goals":2,"penalties":0},"away_team":{"country":"Australia","code":"AUS","goals":1,"penalties":0},"home_team_events":[{"id":52,"type_of_event":"goal-penalty","player":"Antoine GRIEZMANN","time":"58'"},{"id":55,"type_of_event":"substitution-in","player":"Olivier GIROUD","time":"70'"},{"id":56,"type_of_event":"substitution-in","player":"Nabil FEKIR","time":"70'"},{"id":340,"type_of_event":"substitution-out","player":"Antoine GRIEZMANN","time":"70'"},{"id":341,"type_of_event":"substitution-out","player":"Ousmane DEMBELE","time":"70'"},{"id":342,"type_of_event":"yellow-card","player":"Corentin TOLISSO","time":"76'"},{"id":58,"type_of_event":"substitution-in","player":"Blaise MATUIDI","time":"78'"},{"id":343,"type_of_event":"substitution-out","player":"Corentin TOLISSO","time":"78'"},{"id":59,"type_of_event":"goal","player":"Paul POGBA","time":"81'"}],"away_team_events":[{"id":50,"type_of_event":"yellow-card","player":"Mathew LECKIE","time":"13'"},{"id":51,"type_of_event":"yellow-card","player":"Joshua RISDON","time":"57'"},{"id":53,"type_of_event":"goal-penalty","player":"Mile JEDINAK","time":"62'"},{"id":54,"type_of_event":"substitution-in","player":"Tomi JURIC","time":"64'"},{"id":345,"type_of_event":"substitution-out","player":"Andrew NABBOUT","time":"64'"},{"id":57,"type_of_event":"substitution-in","player":"Jackson IRVINE","time":"72'"},{"id":347,"type_of_event":"substitution-out","player":"Tom ROGIC","time":"72'"},{"id":346,"type_of_event":"goal-own","player":"Aziz BEHICH","time":"81'"},{"id":61,"type_of_event":"substitution-in","player":"Daniel ARZANI","time":"84'"},{"id":344,"type_of_event":"substitution-out","player":"Robbie KRUSE","time":"84'"},{"id":60,"type_of_event":"yellow-card","player":"Aziz BEHICH","time":"87'"}],"home_team_statistics":{"country":"France","attempts_on_goal":12,"on_target":5,"off_target":4,"blocked":3,"woodwork":0,"corners":5,"offsides":0,"ball_possession":51,"pass_accuracy":87,"num_passes":484,"passes_completed":423,"distance_covered":103,"balls_recovered":52,"tackles":6,"clearances":23,"yellow_cards":1,"red_cards":0,"fouls_committed":16,"tactics":"4-3-3","starting_eleven":[{"name":"Hugo LLORIS","captain":true,"shirt_number":1,"position":"Goalie"},{"name":"Benjamin PAVARD","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Raphael VARANE","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Samuel UMTITI","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Paul POGBA","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Antoine GRIEZMANN","captain":false,"shirt_number":7,"position":"Forward"},{"name":"Kylian MBAPPE","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Ousmane DEMBELE","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Corentin TOLISSO","captain":false,"shirt_number":12,"position":"Midfield"},{"name":"Ngolo KANTE","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Lucas HERNANDEZ","captain":false,"shirt_number":21,"position":"Defender"}],"substitutes":[{"name":"Presnel KIMPEMBE","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Thomas LEMAR","captain":false,"shirt_number":8,"position":"Forward"},{"name":"Olivier GIROUD","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Blaise MATUIDI","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Steven NZONZI","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Steve MANDANDA","captain":false,"shirt_number":16,"position":"Goalie"},{"name":"Adil RAMI","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Nabil FEKIR","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Djibril SIDIBE","captain":false,"shirt_number":19,"position":"Defender"},{"name":"Florian THAUVIN","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Benjamin MENDY","captain":false,"shirt_number":22,"position":"Defender"},{"name":"Alphonse AREOLA","captain":false,"shirt_number":23,"position":"Goalie"}]},"away_team_statistics":{"country":"Australia","attempts_on_goal":4,"on_target":1,"off_target":2,"blocked":1,"woodwork":0,"corners":1,"offsides":0,"ball_possession":49,"pass_accuracy":85,"num_passes":390,"passes_completed":332,"distance_covered":111,"balls_recovered":49,"tackles":15,"clearances":45,"yellow_cards":3,"red_cards":0,"fouls_committed":19,"tactics":"4-2-3-1","starting_eleven":[{"name":"Mathew RYAN","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Mark MILLIGAN","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Mathew LECKIE","captain":false,"shirt_number":7,"position":"Forward"},{"name":"Robbie KRUSE","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Andrew NABBOUT","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Aaron MOOY","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Mile JEDINAK","captain":true,"shirt_number":15,"position":"Midfield"},{"name":"Aziz BEHICH","captain":false,"shirt_number":16,"position":"Defender"},{"name":"Joshua RISDON","captain":false,"shirt_number":19,"position":"Defender"},{"name":"Trent SAINSBURY","captain":false,"shirt_number":20,"position":"Defender"},{"name":"Tom ROGIC","captain":false,"shirt_number":23,"position":"Midfield"}],"substitutes":[{"name":"Milos DEGENEK","captain":false,"shirt_number":2,"position":"Defender"},{"name":"James MEREDITH","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Tim CAHILL","captain":false,"shirt_number":4,"position":"Forward"},{"name":"Matthew JURMAN","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Massimo LUONGO","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Tomi JURIC","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Brad JONES","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Jamie MacLAREN","captain":false,"shirt_number":14,"position":"Forward"},{"name":"Daniel ARZANI","captain":false,"shirt_number":17,"position":"Forward"},{"name":"Danny VUKOVIC","captain":false,"shirt_number":18,"position":"Goalie"},{"name":"Dimitrios PETRATOS","captain":false,"shirt_number":21,"position":"Forward"},{"name":"Jackson IRVINE","captain":false,"shirt_number":22,"position":"Midfield"}]},"last_event_update_at":"2018-06-21T02:42:39Z","last_score_update_at":"2018-06-16T11:52:21Z"},{"venue":"Moscow","location":"Spartak Stadium","status":"completed","time":"full-time","fifa_id":"300331515","weather":{"humidity":"33","temp_celsius":"22","temp_farenheit":"54","wind_speed":"11","description":"Sunny"},"attendance":"44190","officials":["Szymon MARCINIAK","Pawel SOKOLNICKI","Tomasz LISTKIEWICZ","Wilmar ROLDAN","Mark GEIGER","Joe FLETCHER","Pawel GIL","Gery VARGAS","Alexander GUZMAN"],"stage_name":"First stage","home_team_country":"Argentina","away_team_country":"Iceland","datetime":"2018-06-16T13:00:00Z","winner":"Draw","winner_code":"Draw","home_team":{"country":"Argentina","code":"ARG","goals":1,"penalties":0},"away_team":{"country":"Iceland","code":"ISL","goals":1,"penalties":0},"home_team_events":[{"id":62,"type_of_event":"goal","player":"Sergio AGUERO","time":"19'"},{"id":64,"type_of_event":"substitution-in","player":"Ever BANEGA","time":"54'"},{"id":327,"type_of_event":"substitution-out","player":"Lucas BIGLIA","time":"54'"},{"id":66,"type_of_event":"substitution-in","player":"Cristian PAVON","time":"75'"},{"id":328,"type_of_event":"substitution-out","player":"Angel DI MARIA","time":"75'"},{"id":68,"type_of_event":"substitution-in","player":"Gonzalo HIGUAIN","time":"84'"},{"id":329,"type_of_event":"substitution-out","player":"Maximiliano MEZA","time":"84'"}],"away_team_events":[{"id":63,"type_of_event":"goal","player":"Alfred FINNBOGASON","time":"23'"},{"id":65,"type_of_event":"substitution-in","player":"Rurik GISLASON","time":"63'"},{"id":330,"type_of_event":"substitution-out","player":"Johann GUDMUNDSSON","time":"63'"},{"id":67,"type_of_event":"substitution-in","player":"Ari SKULASON","time":"76'"},{"id":332,"type_of_event":"substitution-out","player":"Aron GUNNARSSON","time":"76'"},{"id":69,"type_of_event":"substitution-in","player":"Bjorn SIGURDARSON","time":"89'"},{"id":331,"type_of_event":"substitution-out","player":"Alfred FINNBOGASON","time":"89'"}],"home_team_statistics":{"country":"Argentina","attempts_on_goal":26,"on_target":7,"off_target":9,"blocked":10,"woodwork":0,"corners":10,"offsides":0,"ball_possession":72,"pass_accuracy":92,"num_passes":718,"passes_completed":657,"distance_covered":101,"balls_recovered":40,"tackles":8,"clearances":18,"yellow_cards":0,"red_cards":0,"fouls_committed":10,"tactics":"4-2-3-1","starting_eleven":[{"name":"Wilfredo CABALLERO","captain":false,"shirt_number":23,"position":"Goalie"},{"name":"Nicolas TAGLIAFICO","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Lucas BIGLIA","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"Lionel MESSI","captain":true,"shirt_number":10,"position":"Forward"},{"name":"Angel DI MARIA","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Maximiliano MEZA","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Javier MASCHERANO","captain":false,"shirt_number":14,"position":"Defender"},{"name":"Marcos ROJO","captain":false,"shirt_number":16,"position":"Defender"},{"name":"Nicolas OTAMENDI","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Eduardo SALVIO","captain":false,"shirt_number":18,"position":"Defender"},{"name":"Sergio AGUERO","captain":false,"shirt_number":19,"position":"Forward"}],"substitutes":[{"name":"Nahuel GUZMAN","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Gabriel MERCADO","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Cristian ANSALDI","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Federico FAZIO","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Ever BANEGA","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Marcos ACUNA","captain":false,"shirt_number":8,"position":"Defender"},{"name":"Gonzalo HIGUAIN","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Franco ARMANI","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Enzo PEREZ","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Giovani LO CELSO","captain":false,"shirt_number":20,"position":"Midfield"},{"name":"Paulo DYBALA","captain":false,"shirt_number":21,"position":"Forward"},{"name":"Cristian PAVON","captain":false,"shirt_number":22,"position":"Midfield"}]},"away_team_statistics":{"country":"Iceland","attempts_on_goal":9,"on_target":3,"off_target":5,"blocked":1,"woodwork":0,"corners":2,"offsides":0,"ball_possession":28,"pass_accuracy":67,"num_passes":189,"passes_completed":127,"distance_covered":105,"balls_recovered":35,"tackles":18,"clearances":36,"yellow_cards":0,"red_cards":0,"fouls_committed":15,"tactics":"4-5-1","starting_eleven":[{"name":"Hannes HALLDORSSON","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Birkir SAEVARSSON","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Ragnar SIGURDSSON","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Johann GUDMUNDSSON","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Birkir BJARNASON","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Gylfi SIGURDSSON","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Alfred FINNBOGASON","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Kari ARNASON","captain":false,"shirt_number":14,"position":"Defender"},{"name":"Aron GUNNARSSON","captain":true,"shirt_number":17,"position":"Midfield"},{"name":"Hordur MAGNUSSON","captain":false,"shirt_number":18,"position":"Defender"},{"name":"Emil HALLFREDSSON","captain":false,"shirt_number":20,"position":"Midfield"}],"substitutes":[{"name":"Samuel FRIDJONSSON","captain":false,"shirt_number":3,"position":"Midfield"},{"name":"Albert GUDMUNDSSON","captain":false,"shirt_number":4,"position":"Midfield"},{"name":"Sverrir INGASON","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Bjorn SIGURDARSON","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Frederik SCHRAM","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Runar RUNARSSON","captain":false,"shirt_number":13,"position":"Goalie"},{"name":"Holmar EYJOLFSSON","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Olafur SKULASON","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Rurik GISLASON","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Arnor TRAUSTASON","captain":false,"shirt_number":21,"position":"Midfield"},{"name":"Jon BODVARSSON","captain":false,"shirt_number":22,"position":"Forward"},{"name":"Ari SKULASON","captain":false,"shirt_number":23,"position":"Defender"}]},"last_event_update_at":"2018-06-21T02:37:10Z","last_score_update_at":"2018-06-16T14:54:29Z"},{"venue":"Saransk","location":"Mordovia Arena","status":"completed","time":"full-time","fifa_id":"300331528","weather":{"humidity":"48","temp_celsius":"18","temp_farenheit":"50","wind_speed":"12","description":"Partly Cloudy"},"attendance":"40502","officials":["Bakary GASSAMA","Jean Claude BIRUMUSHAHU","Abdelhak ETCHIALI","Mehdi ABID CHAREF","Felix ZWAYER","Mark BORSCH","Bastian DANKERT","Danny MAKKELIE","Anouar HMILA"],"stage_name":"First stage","home_team_country":"Peru","away_team_country":"Denmark","datetime":"2018-06-16T16:00:00Z","winner":"Denmark","winner_code":"DEN","home_team":{"country":"Peru","code":"PER","goals":0,"penalties":0},"away_team":{"country":"Denmark","code":"DEN","goals":1,"penalties":0},"home_team_events":[{"id":71,"type_of_event":"yellow-card","player":"Renato TAPIA","time":"38'"},{"id":72,"type_of_event":"substitution-in","player":"Paolo GUERRERO","time":"62'"},{"id":350,"type_of_event":"substitution-out","player":"Edison FLORES","time":"62'"},{"id":73,"type_of_event":"substitution-in","player":"Raul RUIDIAZ","time":"85'"},{"id":348,"type_of_event":"substitution-out","player":"Jefferson FARFAN","time":"85'"},{"id":74,"type_of_event":"substitution-in","player":"Pedro AQUINO","time":"87'"},{"id":349,"type_of_event":"substitution-out","player":"Renato TAPIA","time":"87'"}],"away_team_events":[{"id":70,"type_of_event":"substitution-in","player":"Lasse SCHONE","time":"35'"},{"id":352,"type_of_event":"substitution-out","player":"William KVIST","time":"35'"},{"id":78,"type_of_event":"goal","player":"Yussuf Yurary POULSEN","time":"59'"},{"id":76,"type_of_event":"substitution-in","player":"Martin BRAITHWAITE","time":"67'"},{"id":353,"type_of_event":"substitution-out","player":"Pione SISTO","time":"67'"},{"id":77,"type_of_event":"substitution-in","player":"Mathias  JORGENSEN","time":"81'"},{"id":351,"type_of_event":"substitution-out","player":"Andreas CHRISTENSEN","time":"81'"},{"id":75,"type_of_event":"yellow-card","player":"Thomas DELANEY","time":"86'"},{"id":79,"type_of_event":"yellow-card","player":"Yussuf Yurary POULSEN","time":"90'+3'"}],"home_team_statistics":{"country":"Peru","attempts_on_goal":18,"on_target":6,"off_target":7,"blocked":5,"woodwork":0,"corners":3,"offsides":5,"ball_possession":52,"pass_accuracy":85,"num_passes":394,"passes_completed":334,"distance_covered":104,"balls_recovered":42,"tackles":12,"clearances":19,"yellow_cards":1,"red_cards":0,"fouls_committed":10,"tactics":"4-2-3-1","starting_eleven":[{"name":"Pedro GALLESE","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Alberto RODRIGUEZ","captain":true,"shirt_number":2,"position":"Defender"},{"name":"Miguel TRAUCO","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Christian CUEVA","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Jefferson FARFAN","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Renato TAPIA","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Christian RAMOS","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Luis ADVINCULA","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Andre CARRILLO","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Yoshimar YOTUN","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Edison FLORES","captain":false,"shirt_number":20,"position":"Forward"}],"substitutes":[{"name":"Aldo CORZO","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Anderson SANTAMARIA","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Miguel ARAUJO","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Paolo HURTADO","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Paolo GUERRERO","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Raul RUIDIAZ","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Carlos CACEDA","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Andy POLO","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Wilder CARTAGENA","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Jose CARVALLO","captain":false,"shirt_number":21,"position":"Goalie"},{"name":"Nilson LOYOLA","captain":false,"shirt_number":22,"position":"Defender"},{"name":"Pedro AQUINO","captain":false,"shirt_number":23,"position":"Midfield"}]},"away_team_statistics":{"country":"Denmark","attempts_on_goal":10,"on_target":3,"off_target":5,"blocked":2,"woodwork":0,"corners":7,"offsides":3,"ball_possession":48,"pass_accuracy":82,"num_passes":342,"passes_completed":282,"distance_covered":110,"balls_recovered":40,"tackles":11,"clearances":20,"yellow_cards":2,"red_cards":0,"fouls_committed":18,"tactics":"4-3-3","starting_eleven":[{"name":"Kasper  SCHMEICHEL","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Simon KJAER","captain":true,"shirt_number":4,"position":"Defender"},{"name":"Andreas CHRISTENSEN","captain":false,"shirt_number":6,"position":"Defender"},{"name":"William KVIST","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Thomas DELANEY","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Nicolai JORGENSEN","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Christian ERIKSEN","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Henrik DALSGAARD","captain":false,"shirt_number":14,"position":"Defender"},{"name":"Jens Stryger LARSEN","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Yussuf Yurary POULSEN","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Pione SISTO","captain":false,"shirt_number":23,"position":"Forward"}],"substitutes":[{"name":"Michael KROHN-DEHLI","captain":false,"shirt_number":2,"position":"Midfield"},{"name":"Jannik VESTERGAARD","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Jonas KNUDSEN","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Martin BRAITHWAITE","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Kasper DOLBERG","captain":false,"shirt_number":12,"position":"Forward"},{"name":"Mathias  JORGENSEN","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Viktor FISCHER","captain":false,"shirt_number":15,"position":"Forward"},{"name":"Jonas LOSSL","captain":false,"shirt_number":16,"position":"Goalie"},{"name":"Lukas LERAGER","captain":false,"shirt_number":18,"position":"Midfield"},{"name":"Lasse SCHONE","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Andreas CORNELIUS","captain":false,"shirt_number":21,"position":"Forward"},{"name":"Frederik RONNOW","captain":false,"shirt_number":22,"position":"Goalie"}]},"last_event_update_at":"2018-06-21T02:43:11Z","last_score_update_at":"2018-06-16T16:55:28Z"},{"venue":"Kaliningrad","location":"Kaliningrad Stadium","status":"completed","time":"full-time","fifa_id":"300331523","weather":{"humidity":"64","temp_celsius":"20","temp_farenheit":"52","wind_speed":"7","description":"Partly Cloudy"},"attendance":"31136","officials":["Sandro RICCI","Emerson DE CARVALHO","Marcelo VAN GASSE","Antonio MATEU","Daniele ORSATO","Carlos ASTROZA","Wilton SAMPAIO","Artur DIAS","Pau CEBRIAN"],"stage_name":"First stage","home_team_country":"Croatia","away_team_country":"Nigeria","datetime":"2018-06-16T19:00:00Z","winner":"Croatia","winner_code":"CRO","home_team":{"country":"Croatia","code":"CRO","goals":2,"penalties":0},"away_team":{"country":"Nigeria","code":"NGA","goals":0,"penalties":0},"home_team_events":[{"id":80,"type_of_event":"yellow-card","player":"Ivan RAKITIC","time":"30'"},{"id":82,"type_of_event":"substitution-in","player":"Marcelo BROZOVIC","time":"60'"},{"id":84,"type_of_event":"substitution-out","player":"Andrej KRAMARIC","time":"60'"},{"id":87,"type_of_event":"goal-penalty","player":"Luka MODRIC","time":"71'"},{"id":90,"type_of_event":"substitution-out","player":"Ante REBIC","time":"78'"},{"id":91,"type_of_event":"substitution-in","player":"Mateo KOVACIC","time":"78'"},{"id":94,"type_of_event":"substitution-out","player":"Mario MANDZUKIC","time":"86'"},{"id":96,"type_of_event":"substitution-in","player":"Marko PJACA","time":"86'"},{"id":95,"type_of_event":"yellow-card","player":"Marcelo BROZOVIC","time":"89'"}],"away_team_events":[{"id":81,"type_of_event":"goal-own","player":"Oghenekaro ETEBO","time":"32'"},{"id":83,"type_of_event":"substitution-in","player":"Ahmed MUSA","time":"62'"},{"id":86,"type_of_event":"substitution-out","player":"Alex IWOBI","time":"62'"},{"id":85,"type_of_event":"yellow-card","player":"William EKONG","time":"70'"},{"id":92,"type_of_event":"substitution-out","player":"Odion IGHALO","time":"72'"},{"id":93,"type_of_event":"substitution-in","player":"Kelechi IHEANACHO","time":"72'"},{"id":88,"type_of_event":"substitution-out","player":"Odion IGHALO","time":"73'"},{"id":89,"type_of_event":"substitution-in","player":"Kelechi IHEANACHO","time":"73'"},{"id":97,"type_of_event":"substitution-out","player":"John Obi MIKEL","time":"88'"},{"id":98,"type_of_event":"substitution-in","player":"Simeon NWANKWO","time":"88'"}],"home_team_statistics":{"country":"Croatia","attempts_on_goal":11,"on_target":2,"off_target":7,"blocked":2,"woodwork":0,"corners":6,"offsides":2,"ball_possession":54,"pass_accuracy":84,"num_passes":462,"passes_completed":386,"distance_covered":104,"balls_recovered":43,"tackles":16,"clearances":32,"yellow_cards":2,"red_cards":0,"fouls_committed":20,"tactics":"4-2-3-1","starting_eleven":[{"name":"Danijel SUBASIC","captain":false,"shirt_number":23,"position":"Goalie"},{"name":"Sime VRSALJKO","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Ivan STRINIC","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Ivan PERISIC","captain":false,"shirt_number":4,"position":"Forward"},{"name":"Dejan LOVREN","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Ivan RAKITIC","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Andrej KRAMARIC","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Luka MODRIC","captain":true,"shirt_number":10,"position":"Midfield"},{"name":"Mario MANDZUKIC","captain":false,"shirt_number":17,"position":"Forward"},{"name":"Ante REBIC","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Domagoj VIDA","captain":false,"shirt_number":21,"position":"Defender"}],"substitutes":[{"name":"Dominik LIVAKOVIC","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Vedran CORLUKA","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Mateo KOVACIC","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Marcelo BROZOVIC","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Lovre KALINIC","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Tin JEDVAJ","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Filip BRADARIC","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Duje CALETA-CAR","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Nikola KALINIC","captain":false,"shirt_number":16,"position":"Forward"},{"name":"Milan BADELJ","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Marko PJACA","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Josip PIVARIC","captain":false,"shirt_number":22,"position":"Defender"}]},"away_team_statistics":{"country":"Nigeria","attempts_on_goal":14,"on_target":2,"off_target":5,"blocked":7,"woodwork":0,"corners":5,"offsides":1,"ball_possession":46,"pass_accuracy":84,"num_passes":388,"passes_completed":327,"distance_covered":101,"balls_recovered":42,"tackles":7,"clearances":26,"yellow_cards":1,"red_cards":0,"fouls_committed":16,"tactics":"4-2-3-1","starting_eleven":[{"name":"Francis UZOHO","captain":false,"shirt_number":23,"position":"Goalie"},{"name":"Bryan IDOWU","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Wilfred NDIDI","captain":false,"shirt_number":4,"position":"Midfield"},{"name":"William EKONG","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Leon BALOGUN","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Oghenekaro ETEBO","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Odion IGHALO","captain":false,"shirt_number":9,"position":"Forward"},{"name":"John Obi MIKEL","captain":true,"shirt_number":10,"position":"Midfield"},{"name":"Victor MOSES","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Abdullahi SHEHU","captain":false,"shirt_number":12,"position":"Defender"},{"name":"Alex IWOBI","captain":false,"shirt_number":18,"position":"Forward"}],"substitutes":[{"name":"Ikechukwu EZENWA","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Elderson ECHIEJILE","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Ahmed MUSA","captain":false,"shirt_number":7,"position":"Forward"},{"name":"Simeon NWANKWO","captain":false,"shirt_number":13,"position":"Forward"},{"name":"Kelechi IHEANACHO","captain":false,"shirt_number":14,"position":"Forward"},{"name":"Joel OBI","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Daniel AKPEYI","captain":false,"shirt_number":16,"position":"Goalie"},{"name":"Ogenyi ONAZI","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"John OGU","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Chidozie AWAZIEM","captain":false,"shirt_number":20,"position":"Defender"},{"name":"Tyronne EBUEHI","captain":false,"shirt_number":21,"position":"Defender"},{"name":"Kenneth OMERUO","captain":false,"shirt_number":22,"position":"Defender"}]},"last_event_update_at":"2018-06-21T02:42:48Z","last_score_update_at":"2018-06-16T20:53:41Z"},{"venue":"Samara","location":"Samara Arena","status":"completed","time":"full-time","fifa_id":"300331529","weather":{"humidity":"32","temp_celsius":"22","temp_farenheit":"54","wind_speed":"18","description":"Sunny"},"attendance":"41432","officials":["Malang DIEDHIOU","Djibril CAMARA","El Hadji SAMBA","Bamlak TESSEMA","Clement TURPIN","Cyril GRINGORE","Pawel GIL","Artur DIAS","Tikhon KALUGIN"],"stage_name":"First stage","home_team_country":"Costa Rica","away_team_country":"Serbia","datetime":"2018-06-17T12:00:00Z","winner":"Serbia","winner_code":"SRB","home_team":{"country":"Costa Rica","code":"CRC","goals":0,"penalties":0},"away_team":{"country":"Serbia","code":"SRB","goals":1,"penalties":0},"home_team_events":[{"id":99,"type_of_event":"yellow-card","player":"Francisco CALVO","time":"22'"},{"id":100,"type_of_event":"yellow-card","player":"David GUZMAN","time":"56'"},{"id":102,"type_of_event":"substitution-out","player":"Johan VENEGAS","time":"60'"},{"id":103,"type_of_event":"substitution-in","player":"Christian BOLANOS","time":"60'"},{"id":105,"type_of_event":"substitution-out","player":"Marcos URENA","time":"66'"},{"id":106,"type_of_event":"substitution-in","player":"Joel CAMPBELL","time":"66'"},{"id":109,"type_of_event":"substitution-out","player":"David GUZMAN","time":"73'"},{"id":110,"type_of_event":"substitution-in","player":"Daniel COLINDRES","time":"73'"}],"away_team_events":[{"id":101,"type_of_event":"goal","player":"Aleksandar KOLAROV","time":"56'"},{"id":104,"type_of_event":"yellow-card","player":"Branislav IVANOVIC","time":"59'"},{"id":107,"type_of_event":"substitution-out","player":"Adem LJAJIC","time":"70'"},{"id":108,"type_of_event":"substitution-in","player":"Filip KOSTIC","time":"70'"},{"id":111,"type_of_event":"substitution-out","player":"Dusan TADIC","time":"83'"},{"id":112,"type_of_event":"substitution-in","player":"Antonio RUKAVINA","time":"83'"},{"id":113,"type_of_event":"substitution-out","player":"Aleksandar MITROVIC","time":"90'"},{"id":114,"type_of_event":"substitution-in","player":"Aleksandar PRIJOVIC","time":"90'"},{"id":354,"type_of_event":"yellow-card","player":"Aleksandar PRIJOVIC","time":"90'+8'"}],"home_team_statistics":{"country":"Costa Rica","attempts_on_goal":10,"on_target":3,"off_target":3,"blocked":4,"woodwork":0,"corners":5,"offsides":1,"ball_possession":50,"pass_accuracy":83,"num_passes":428,"passes_completed":355,"distance_covered":107,"balls_recovered":38,"tackles":10,"clearances":30,"yellow_cards":2,"red_cards":0,"fouls_committed":18,"tactics":"5-4-1","starting_eleven":[{"name":"Keylor NAVAS","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Johnny ACOSTA","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Giancarlo GONZALEZ","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Celso BORGES","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"Oscar DUARTE","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Bryan RUIZ","captain":true,"shirt_number":10,"position":"Midfield"},{"name":"Johan VENEGAS","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Francisco CALVO","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Cristian GAMBOA","captain":false,"shirt_number":16,"position":"Defender"},{"name":"David GUZMAN","captain":false,"shirt_number":20,"position":"Midfield"},{"name":"Marcos URENA","captain":false,"shirt_number":21,"position":"Forward"}],"substitutes":[{"name":"Ian SMITH","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Christian BOLANOS","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Bryan OVIEDO","captain":false,"shirt_number":8,"position":"Defender"},{"name":"Daniel COLINDRES","captain":false,"shirt_number":9,"position":"Midfield"},{"name":"Joel CAMPBELL","captain":false,"shirt_number":12,"position":"Forward"},{"name":"Rodney WALLACE","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Randall AZOFEIFA","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Yeltsin TEJEDA","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Patrick PEMBERTON","captain":false,"shirt_number":18,"position":"Goalie"},{"name":"Kendall WASTON","captain":false,"shirt_number":19,"position":"Defender"},{"name":"Kenner GUTIERREZ","captain":false,"shirt_number":22,"position":"Defender"},{"name":"Leonel MOREIRA","captain":false,"shirt_number":23,"position":"Goalie"}]},"away_team_statistics":{"country":"Serbia","attempts_on_goal":10,"on_target":3,"off_target":5,"blocked":2,"woodwork":0,"corners":4,"offsides":3,"ball_possession":50,"pass_accuracy":83,"num_passes":392,"passes_completed":325,"distance_covered":109,"balls_recovered":42,"tackles":7,"clearances":31,"yellow_cards":2,"red_cards":0,"fouls_committed":15,"tactics":"4-2-3-1","starting_eleven":[{"name":"Vladimir STOJKOVIC","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Dusko TOSIC","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Luka MILIVOJEVIC","captain":false,"shirt_number":4,"position":"Midfield"},{"name":"Branislav IVANOVIC","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Aleksandar MITROVIC","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Dusan TADIC","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Aleksandar KOLAROV","captain":true,"shirt_number":11,"position":"Defender"},{"name":"Nikola MILENKOVIC","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Sergej MILINKOVIC-SAVIC","captain":false,"shirt_number":20,"position":"Midfield"},{"name":"Nemanja MATIC","captain":false,"shirt_number":21,"position":"Midfield"},{"name":"Adem LJAJIC","captain":false,"shirt_number":22,"position":"Midfield"}],"substitutes":[{"name":"Antonio RUKAVINA","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Uros SPAJIC","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Andrija ZIVKOVIC","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Aleksandar PRIJOVIC","captain":false,"shirt_number":8,"position":"Forward"},{"name":"Predrag RAJKOVIC","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Milos VELJKOVIC","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Milan RODIC","captain":false,"shirt_number":14,"position":"Defender"},{"name":"Marko GRUJIC","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Filip KOSTIC","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Nemanja RADONJIC","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Luka JOVIC","captain":false,"shirt_number":19,"position":"Forward"},{"name":"Marko DMITROVIC","captain":false,"shirt_number":23,"position":"Goalie"}]},"last_event_update_at":"2018-06-21T02:44:52Z","last_score_update_at":"2018-06-17T13:54:55Z"},{"venue":"Moscow","location":"Luzhniki Stadium","status":"completed","time":"full-time","fifa_id":"300331502","weather":{"humidity":"42","temp_celsius":"23","temp_farenheit":"55","wind_speed":"11","description":"Sunny"},"attendance":"78011","officials":["Alireza FAGHANI","Reza SOKHANDAN","Mohammadreza MANSOURI","Mohammed Abdulla MOHAMMED","Massimiliano IRRATI","Carlos ASTROZA","Wilton SAMPAIO","Mark GEIGER","Mohamed ALHAMMADI"],"stage_name":"First stage","home_team_country":"Germany","away_team_country":"Mexico","datetime":"2018-06-17T15:00:00Z","winner":"Mexico","winner_code":"MEX","home_team":{"country":"Germany","code":"GER","goals":0,"penalties":0},"away_team":{"country":"Mexico","code":"MEX","goals":1,"penalties":0},"home_team_events":[{"id":119,"type_of_event":"substitution-out","player":"Sami KHEDIRA","time":"60'"},{"id":120,"type_of_event":"substitution-in","player":"Marco REUS","time":"60'"},{"id":125,"type_of_event":"substitution-out","player":"Marvin PLATTENHARDT","time":"79'"},{"id":126,"type_of_event":"substitution-in","player":"Mario GOMEZ","time":"79'"},{"id":128,"type_of_event":"yellow-card","player":"Thomas MUELLER","time":"83'"},{"id":127,"type_of_event":"yellow-card","player":"Mats HUMMELS","time":"84'"},{"id":129,"type_of_event":"substitution-out","player":"Timo WERNER","time":"86'"},{"id":130,"type_of_event":"substitution-in","player":"Julian BRANDT","time":"86'"}],"away_team_events":[{"id":115,"type_of_event":"goal","player":"Hirving  LOZANO","time":"35'"},{"id":116,"type_of_event":"yellow-card","player":"Hector MORENO","time":"40'"},{"id":117,"type_of_event":"substitution-out","player":"Carlos VELA","time":"58'"},{"id":118,"type_of_event":"substitution-in","player":"Edson ALVAREZ","time":"58'"},{"id":121,"type_of_event":"substitution-out","player":"Hirving  LOZANO","time":"66'"},{"id":122,"type_of_event":"substitution-in","player":"Raul JIMENEZ","time":"66'"},{"id":123,"type_of_event":"substitution-out","player":"Andres GUARDADO","time":"74'"},{"id":124,"type_of_event":"substitution-in","player":"Rafael MARQUEZ","time":"74'"},{"id":131,"type_of_event":"yellow-card","player":"Hector HERRERA","time":"90'"}],"home_team_statistics":{"country":"Germany","attempts_on_goal":25,"on_target":9,"off_target":9,"blocked":7,"woodwork":2,"corners":8,"offsides":1,"ball_possession":60,"pass_accuracy":88,"num_passes":595,"passes_completed":524,"distance_covered":110,"balls_recovered":31,"tackles":9,"clearances":12,"yellow_cards":2,"red_cards":0,"fouls_committed":10,"tactics":"4-2-3-1","starting_eleven":[{"name":"Manuel NEUER","captain":true,"shirt_number":1,"position":"Goalie"},{"name":"Marvin PLATTENHARDT","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Mats HUMMELS","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Sami KHEDIRA","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Julian DRAXLER","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Toni KROOS","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Timo WERNER","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Mesut OEZIL","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Thomas MUELLER","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Jerome BOATENG","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Joshua KIMMICH","captain":false,"shirt_number":18,"position":"Defender"}],"substitutes":[{"name":"Matthias GINTER","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Marco REUS","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Kevin TRAPP","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Leon GORETZKA","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Niklas SUELE","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Antonio RUEDIGER","captain":false,"shirt_number":16,"position":"Defender"},{"name":"Sebastian RUDY","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Julian BRANDT","captain":false,"shirt_number":20,"position":"Midfield"},{"name":"Ilkay GUENDOGAN","captain":false,"shirt_number":21,"position":"Midfield"},{"name":"Marc-Andre TER STEGEN","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"Mario GOMEZ","captain":false,"shirt_number":23,"position":"Forward"},{"name":"Jonas HECTOR","captain":false,"shirt_number":3,"position":"Defender"}]},"away_team_statistics":{"country":"Mexico","attempts_on_goal":12,"on_target":4,"off_target":6,"blocked":2,"woodwork":0,"corners":1,"offsides":2,"ball_possession":40,"pass_accuracy":82,"num_passes":281,"passes_completed":231,"distance_covered":106,"balls_recovered":38,"tackles":7,"clearances":42,"yellow_cards":2,"red_cards":0,"fouls_committed":15,"tactics":"4-2-3-1","starting_eleven":[{"name":"Guillermo OCHOA","captain":false,"shirt_number":13,"position":"Goalie"},{"name":"Hugo AYALA","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Carlos SALCEDO","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Miguel LAYUN","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Carlos VELA","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Javier HERNANDEZ","captain":false,"shirt_number":14,"position":"Forward"},{"name":"Hector MORENO","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Hector HERRERA","captain":false,"shirt_number":16,"position":"Defender"},{"name":"Andres GUARDADO","captain":true,"shirt_number":18,"position":"Midfield"},{"name":"Hirving  LOZANO","captain":false,"shirt_number":22,"position":"Forward"},{"name":"Jesus GALLARDO","captain":false,"shirt_number":23,"position":"Midfield"}],"substitutes":[{"name":"Jose CORONA","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Rafael MARQUEZ","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Erick GUTIERREZ","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"Jonathan DOS SANTOS","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Marco FABIAN","captain":false,"shirt_number":8,"position":"Forward"},{"name":"Raul JIMENEZ","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Giovani DOS SANTOS","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Alfredo TALAVERA","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Jesus CORONA","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Oribe PERALTA","captain":false,"shirt_number":19,"position":"Forward"},{"name":"Javier AQUINO","captain":false,"shirt_number":20,"position":"Midfield"},{"name":"Edson ALVAREZ","captain":false,"shirt_number":21,"position":"Defender"}]},"last_event_update_at":"2018-06-21T02:43:20Z","last_score_update_at":"2018-06-17T16:50:54Z"},{"venue":"Rostov-On-Don","location":"Rostov Arena","status":"completed","time":"full-time","fifa_id":"300331525","weather":{"humidity":"27","temp_celsius":"25","temp_farenheit":"57","wind_speed":"16","description":"Partly Cloudy Night"},"attendance":"43109","officials":["Cesar RAMOS","Marvin TORRENTERA","Miguel HERNANDEZ","John PITTI","Paolo VALERI","Elenito DI LIBERATORE","Mauro VIGLIANO","Gianluca ROCCHI","Gabriel VICTORIA"],"stage_name":"First stage","home_team_country":"Brazil","away_team_country":"Switzerland","datetime":"2018-06-17T18:00:00Z","winner":"Draw","winner_code":"Draw","home_team":{"country":"Brazil","code":"BRA","goals":1,"penalties":0},"away_team":{"country":"Switzerland","code":"SUI","goals":1,"penalties":0},"home_team_events":[{"id":132,"type_of_event":"goal","player":"PHILIPPE COUTINHO","time":"20'"},{"id":134,"type_of_event":"yellow-card","player":"CASEMIRO","time":"47'"},{"id":136,"type_of_event":"substitution-out","player":"CASEMIRO","time":"60'"},{"id":137,"type_of_event":"substitution-in","player":"FERNANDINHO","time":"60'"},{"id":138,"type_of_event":"substitution-out","player":"PAULINHO","time":"67'"},{"id":139,"type_of_event":"substitution-in","player":"RENATO AUGUSTO","time":"67'"},{"id":144,"type_of_event":"substitution-out","player":"GABRIEL JESUS","time":"79'"},{"id":145,"type_of_event":"substitution-in","player":"ROBERTO FIRMINO","time":"79'"}],"away_team_events":[{"id":133,"type_of_event":"yellow-card","player":"Stephan LICHTSTEINER","time":"31'"},{"id":135,"type_of_event":"goal","player":"Steven ZUBER","time":"50'"},{"id":140,"type_of_event":"yellow-card","player":"Fabian SCHAER","time":"65'"},{"id":141,"type_of_event":"yellow-card","player":"Valon BEHRAMI","time":"68'"},{"id":142,"type_of_event":"substitution-out","player":"Valon BEHRAMI","time":"71'"},{"id":143,"type_of_event":"substitution-in","player":"Denis ZAKARIA","time":"71'"},{"id":146,"type_of_event":"substitution-out","player":"Haris SEFEROVIC","time":"80'"},{"id":147,"type_of_event":"substitution-in","player":"Breel EMBOLO","time":"80'"},{"id":148,"type_of_event":"substitution-out","player":"Stephan LICHTSTEINER","time":"87'"},{"id":149,"type_of_event":"substitution-in","player":"Michael LANG","time":"87'"}],"home_team_statistics":{"country":"Brazil","attempts_on_goal":20,"on_target":4,"off_target":9,"blocked":7,"woodwork":0,"corners":7,"offsides":1,"ball_possession":52,"pass_accuracy":88,"num_passes":521,"passes_completed":460,"distance_covered":103,"balls_recovered":51,"tackles":4,"clearances":14,"yellow_cards":1,"red_cards":0,"fouls_committed":12,"tactics":"4-2-3-1","starting_eleven":[{"name":"ALISSON","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"THIAGO SILVA","captain":false,"shirt_number":2,"position":"Defender"},{"name":"MIRANDA","captain":false,"shirt_number":3,"position":"Defender"},{"name":"CASEMIRO","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"GABRIEL JESUS","captain":false,"shirt_number":9,"position":"Forward"},{"name":"NEYMAR","captain":false,"shirt_number":10,"position":"Forward"},{"name":"PHILIPPE COUTINHO","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"MARCELO","captain":true,"shirt_number":12,"position":"Defender"},{"name":"DANILO","captain":false,"shirt_number":14,"position":"Defender"},{"name":"PAULINHO","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"WILLIAN","captain":false,"shirt_number":19,"position":"Midfield"}],"substitutes":[{"name":"PEDRO GEROMEL","captain":false,"shirt_number":4,"position":"Defender"},{"name":"FILIPE LUIS","captain":false,"shirt_number":6,"position":"Defender"},{"name":"DOUGLAS COSTA","captain":false,"shirt_number":7,"position":"Forward"},{"name":"RENATO AUGUSTO","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"MARQUINHOS","captain":false,"shirt_number":13,"position":"Defender"},{"name":"CASSIO","captain":false,"shirt_number":16,"position":"Goalie"},{"name":"FERNANDINHO","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"ROBERTO FIRMINO","captain":false,"shirt_number":20,"position":"Forward"},{"name":"TAISON","captain":false,"shirt_number":21,"position":"Forward"},{"name":"FAGNER","captain":false,"shirt_number":22,"position":"Defender"},{"name":"EDERSON","captain":false,"shirt_number":23,"position":"Goalie"},{"name":"FRED","captain":false,"shirt_number":18,"position":"Midfield"}]},"away_team_statistics":{"country":"Switzerland","attempts_on_goal":6,"on_target":2,"off_target":4,"blocked":0,"woodwork":0,"corners":2,"offsides":0,"ball_possession":48,"pass_accuracy":83,"num_passes":436,"passes_completed":362,"distance_covered":108,"balls_recovered":56,"tackles":17,"clearances":19,"yellow_cards":3,"red_cards":0,"fouls_committed":19,"tactics":"4-2-3-1","starting_eleven":[{"name":"Yann SOMMER","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Stephan LICHTSTEINER","captain":true,"shirt_number":2,"position":"Defender"},{"name":"Manuel AKANJI","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Haris SEFEROVIC","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Granit XHAKA","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Valon BEHRAMI","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Ricardo RODRIGUEZ","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Steven ZUBER","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Blerim DZEMAILI","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Fabian SCHAER","captain":false,"shirt_number":22,"position":"Defender"},{"name":"Xherdan SHAQIRI","captain":false,"shirt_number":23,"position":"Midfield"}],"substitutes":[{"name":"Francois MOUBANDJE","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Nico ELVEDI","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Michael LANG","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Breel EMBOLO","captain":false,"shirt_number":7,"position":"Forward"},{"name":"Remo FREULER","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Yvon MVOGO","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Gelson FERNANDES","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Denis ZAKARIA","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Mario GAVRANOVIC","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Josip DRMIC","captain":false,"shirt_number":19,"position":"Forward"},{"name":"Johan DJOUROU","captain":false,"shirt_number":20,"position":"Defender"},{"name":"Roman BUERKI","captain":false,"shirt_number":21,"position":"Goalie"}]},"last_event_update_at":"2018-06-21T02:43:35Z","last_score_update_at":"2018-06-17T19:55:21Z"},{"venue":"Nizhny Novgorod","location":"Nizhny Novgorod Stadium","status":"completed","time":"full-time","fifa_id":"300331499","weather":{"humidity":"36","temp_celsius":"25","temp_farenheit":"57","wind_speed":"9","description":"Partly Cloudy"},"attendance":"42300","officials":["Joel AGUILAR","Juan ZUMBA","Juan Carlos MORA","Norbert HAUATA","Mauro VIGLIANO","Taleb AL MARRI","Abdulrahman AL JASSIM","Daniele ORSATO","Bertrand BRIAL"],"stage_name":"First stage","home_team_country":"Sweden","away_team_country":"Korea Republic","datetime":"2018-06-18T12:00:00Z","winner":"Sweden","winner_code":"SWE","home_team":{"country":"Sweden","code":"SWE","goals":1,"penalties":0},"away_team":{"country":"Korea Republic","code":"KOR","goals":0,"penalties":0},"home_team_events":[{"id":156,"type_of_event":"yellow-card","player":"Viktor CLAESSON","time":"61'"},{"id":154,"type_of_event":"goal-penalty","player":"Andreas GRANQVIST","time":"65'"},{"id":155,"type_of_event":"substitution-out","player":"Albin EKDAL","time":"71'"},{"id":157,"type_of_event":"substitution-in","player":"Oscar HILJEMARK","time":"71'"},{"id":163,"type_of_event":"substitution-out","player":"Ola TOIVONEN","time":"77'"},{"id":165,"type_of_event":"substitution-in","player":"Isaac Kiese THELIN","time":"77'"},{"id":162,"type_of_event":"substitution-out","player":"Sebastian LARSSON","time":"81'"},{"id":164,"type_of_event":"substitution-in","player":"Gustav SVENSSON","time":"81'"}],"away_team_events":[{"id":150,"type_of_event":"yellow-card","player":"KIM Shinwook","time":"13'"},{"id":151,"type_of_event":"substitution-out","player":"PARK Jooho","time":"28'"},{"id":152,"type_of_event":"substitution-in","player":"KIM Minwoo","time":"28'"},{"id":153,"type_of_event":"yellow-card","player":"HWANG Heechan","time":"55'"},{"id":158,"type_of_event":"substitution-out","player":"KIM Shinwook","time":"66'"},{"id":161,"type_of_event":"substitution-in","player":"JUNG Wooyoung","time":"66'"},{"id":159,"type_of_event":"substitution-out","player":"KOO Jacheol","time":"73'"},{"id":160,"type_of_event":"substitution-in","player":"LEE Seungwoo","time":"73'"}],"home_team_statistics":{"country":"Sweden","attempts_on_goal":15,"on_target":4,"off_target":5,"blocked":6,"woodwork":0,"corners":6,"offsides":1,"ball_possession":52,"pass_accuracy":84,"num_passes":417,"passes_completed":352,"distance_covered":102,"balls_recovered":43,"tackles":9,"clearances":30,"yellow_cards":1,"red_cards":0,"fouls_committed":20,"tactics":"4-4-2","starting_eleven":[{"name":"Robin OLSEN","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Mikael LUSTIG","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Andreas GRANQVIST","captain":true,"shirt_number":4,"position":"Defender"},{"name":"Ludwig AUGUSTINSSON","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Sebastian LARSSON","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Albin EKDAL","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Marcus BERG","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Emil FORSBERG","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Viktor CLAESSON","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Pontus JANSSON","captain":false,"shirt_number":18,"position":"Defender"},{"name":"Ola TOIVONEN","captain":false,"shirt_number":20,"position":"Forward"}],"substitutes":[{"name":"Martin OLSSON","captain":false,"shirt_number":5,"position":"Defender"},{"name":"John GUIDETTI","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Karl-Johan JOHNSSON","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Gustav SVENSSON","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Filip HELANDER","captain":false,"shirt_number":14,"position":"Defender"},{"name":"Oscar HILJEMARK","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Emil KRAFTH","captain":false,"shirt_number":16,"position":"Defender"},{"name":"Marcus ROHDEN","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Jimmy DURMAZ","captain":false,"shirt_number":21,"position":"Midfield"},{"name":"Isaac Kiese THELIN","captain":false,"shirt_number":22,"position":"Forward"},{"name":"Kristoffer NORDFELDT","captain":false,"shirt_number":23,"position":"Goalie"},{"name":"Victor LINDELOF","captain":false,"shirt_number":3,"position":"Defender"}]},"away_team_statistics":{"country":"Korea Republic","attempts_on_goal":5,"on_target":0,"off_target":2,"blocked":3,"woodwork":0,"corners":5,"offsides":0,"ball_possession":48,"pass_accuracy":79,"num_passes":351,"passes_completed":278,"distance_covered":103,"balls_recovered":45,"tackles":12,"clearances":31,"yellow_cards":2,"red_cards":0,"fouls_committed":23,"tactics":"4-3-3","starting_eleven":[{"name":"JO Hyeonwoo","captain":false,"shirt_number":23,"position":"Goalie"},{"name":"LEE Yong","captain":false,"shirt_number":2,"position":"Defender"},{"name":"PARK Jooho","captain":false,"shirt_number":6,"position":"Defender"},{"name":"SON Heungmin","captain":false,"shirt_number":7,"position":"Forward"},{"name":"KIM Shinwook","captain":false,"shirt_number":9,"position":"Forward"},{"name":"HWANG Heechan","captain":false,"shirt_number":11,"position":"Forward"},{"name":"KOO Jacheol","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"KI Sungyueng","captain":true,"shirt_number":16,"position":"Midfield"},{"name":"LEE Jaesung","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"KIM Younggwon","captain":false,"shirt_number":19,"position":"Defender"},{"name":"JANG Hyunsoo","captain":false,"shirt_number":20,"position":"Defender"}],"substitutes":[{"name":"KIM Seunggyu","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"JUNG Seunghyun","captain":false,"shirt_number":3,"position":"Defender"},{"name":"OH Bansuk","captain":false,"shirt_number":4,"position":"Defender"},{"name":"YUN Youngsun","captain":false,"shirt_number":5,"position":"Defender"},{"name":"JU Sejong","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"LEE Seungwoo","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"KIM Minwoo","captain":false,"shirt_number":12,"position":"Defender"},{"name":"HONG Chul","captain":false,"shirt_number":14,"position":"Defender"},{"name":"JUNG Wooyoung","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"MOON Seonmin","captain":false,"shirt_number":18,"position":"Midfield"},{"name":"KIM Jinhyeon","captain":false,"shirt_number":21,"position":"Goalie"},{"name":"GO Yohan","captain":false,"shirt_number":22,"position":"Defender"}]},"last_event_update_at":"2018-06-21T02:42:55Z","last_score_update_at":"2018-06-18T13:50:50Z"},{"venue":"Sochi","location":"Fisht Stadium","status":"completed","time":"full-time","fifa_id":"300331539","weather":{"humidity":"71","temp_celsius":"24","temp_farenheit":"56","wind_speed":"12","description":"Partly Cloudy"},"attendance":"43257","officials":["Janny SIKAZWE","Jerson DOS SANTOS","Zakhele SIWELA","Ryuji SATO","Bastian DANKERT","Sander VAN ROEKEL","Felix ZWAYER","Danny MAKKELIE","Toru SAGARA"],"stage_name":"First stage","home_team_country":"Belgium","away_team_country":"Panama","datetime":"2018-06-18T15:00:00Z","winner":"Belgium","winner_code":"BEL","home_team":{"country":"Belgium","code":"BEL","goals":3,"penalties":0},"away_team":{"country":"Panama","code":"PAN","goals":0,"penalties":0},"home_team_events":[{"id":166,"type_of_event":"yellow-card","player":"Thomas MEUNIER","time":"14'"},{"id":169,"type_of_event":"goal","player":"Dries MERTENS","time":"47'"},{"id":173,"type_of_event":"yellow-card","player":"Jan VERTONGHEN","time":"59'"},{"id":178,"type_of_event":"goal","player":"Romelu LUKAKU","time":"69'"},{"id":180,"type_of_event":"substitution-out","player":"Yannick CARRASCO","time":"74'"},{"id":181,"type_of_event":"substitution-in","player":"Moussa DEMBELE","time":"74'"},{"id":179,"type_of_event":"goal","player":"Romelu LUKAKU","time":"75'"},{"id":184,"type_of_event":"substitution-out","player":"Dries MERTENS","time":"83'"},{"id":185,"type_of_event":"substitution-in","player":"Thorgan HAZARD","time":"83'"},{"id":187,"type_of_event":"yellow-card","player":"Kevin DE BRUYNE","time":"88'"},{"id":186,"type_of_event":"substitution-out","player":"Axel WITSEL","time":"90'"},{"id":188,"type_of_event":"substitution-in","player":"Nacer CHADLI","time":"90'"}],"away_team_events":[{"id":167,"type_of_event":"yellow-card","player":"Eric DAVIS","time":"18'"},{"id":168,"type_of_event":"yellow-card","player":"Edgar BARCENAS","time":"45'+2'"},{"id":170,"type_of_event":"yellow-card","player":"Armando COOPER","time":"49'"},{"id":171,"type_of_event":"yellow-card","player":"Michael MURILLO","time":"51'"},{"id":172,"type_of_event":"yellow-card","player":"Anibal GODOY","time":"57'"},{"id":174,"type_of_event":"substitution-out","player":"Edgar BARCENAS","time":"63'"},{"id":175,"type_of_event":"substitution-out","player":"Jose Luis RODRIGUEZ","time":"63'"},{"id":176,"type_of_event":"substitution-in","player":"Gabriel TORRES","time":"63'"},{"id":177,"type_of_event":"substitution-in","player":"Ismael DIAZ","time":"63'"},{"id":182,"type_of_event":"substitution-out","player":"Blas PEREZ","time":"73'"},{"id":183,"type_of_event":"substitution-in","player":"Luis TEJADA","time":"73'"}],"home_team_statistics":{"country":"Belgium","attempts_on_goal":15,"on_target":6,"off_target":7,"blocked":2,"woodwork":0,"corners":9,"offsides":1,"ball_possession":61,"pass_accuracy":89,"num_passes":544,"passes_completed":483,"distance_covered":102,"balls_recovered":41,"tackles":1,"clearances":12,"yellow_cards":3,"red_cards":0,"fouls_committed":17,"tactics":"3-4-2-1","starting_eleven":[{"name":"Thibaut COURTOIS","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Toby ALDERWEIRELD","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Jan VERTONGHEN","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Axel WITSEL","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Kevin DE BRUYNE","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Romelu LUKAKU","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Eden HAZARD","captain":true,"shirt_number":10,"position":"Forward"},{"name":"Yannick CARRASCO","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Dries MERTENS","captain":false,"shirt_number":14,"position":"Forward"},{"name":"Thomas MEUNIER","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Dedryck BOYATA","captain":false,"shirt_number":20,"position":"Defender"}],"substitutes":[{"name":"Marouane FELLAINI","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Simon MIGNOLET","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Koen CASTEELS","captain":false,"shirt_number":13,"position":"Goalie"},{"name":"Thorgan HAZARD","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Youri TIELEMANS","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Adnan JANUZAJ","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Moussa DEMBELE","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Michy BATSHUAYI","captain":false,"shirt_number":21,"position":"Forward"},{"name":"Nacer CHADLI","captain":false,"shirt_number":22,"position":"Midfield"},{"name":"Leander DENDONCKER","captain":false,"shirt_number":23,"position":"Defender"},{"name":"Vincent KOMPANY","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Thomas VERMAELEN","captain":false,"shirt_number":3,"position":"Defender"}]},"away_team_statistics":{"country":"Panama","attempts_on_goal":6,"on_target":2,"off_target":4,"blocked":0,"woodwork":0,"corners":3,"offsides":3,"ball_possession":39,"pass_accuracy":82,"num_passes":317,"passes_completed":260,"distance_covered":100,"balls_recovered":38,"tackles":6,"clearances":29,"yellow_cards":5,"red_cards":0,"fouls_committed":18,"tactics":"4-5-1","starting_eleven":[{"name":"Jaime PENEDO","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Michael MURILLO","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Fidel ESCOBAR","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Roman TORRES","captain":true,"shirt_number":5,"position":"Defender"},{"name":"Gabriel GOMEZ","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Blas PEREZ","captain":false,"shirt_number":7,"position":"Forward"},{"name":"Edgar BARCENAS","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Armando COOPER","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Eric DAVIS","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Anibal GODOY","captain":false,"shirt_number":20,"position":"Midfield"},{"name":"Jose Luis RODRIGUEZ","captain":false,"shirt_number":21,"position":"Midfield"}],"substitutes":[{"name":"Harold CUMMINGS","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Gabriel TORRES","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Ismael DIAZ","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Jose CALDERON","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Adolfo MACHADO","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Valentin PIMENTEL","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Abdiel ARROYO","captain":false,"shirt_number":16,"position":"Forward"},{"name":"Luis OVALLE","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Luis TEJADA","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Ricardo AVILA","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Alex RODRIGUEZ","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"Felipe BALOY","captain":false,"shirt_number":23,"position":"Defender"}]},"last_event_update_at":"2018-06-21T01:51:44Z","last_score_update_at":"2018-06-18T16:53:29Z"},{"venue":"Volgograd","location":"Volgograd Arena","status":"completed","time":"full-time","fifa_id":"300331554","weather":{"humidity":"17","temp_celsius":"24","temp_farenheit":"56","wind_speed":"7","description":"Clear Night"},"attendance":"41064","officials":["Wilmar ROLDAN","Alexander GUZMAN","Cristian DE LA CRUZ","Ricardo MONTERO","Sandro RICCI","Emerson DE CARVALHO","Gery VARGAS","Tiago MARTINS","Hiroshi YAMAUCHI"],"stage_name":"First stage","home_team_country":"Tunisia","away_team_country":"England","datetime":"2018-06-18T18:00:00Z","winner":"England","winner_code":"ENG","home_team":{"country":"Tunisia","code":"TUN","goals":1,"penalties":0},"away_team":{"country":"England","code":"ENG","goals":2,"penalties":0},"home_team_events":[{"id":190,"type_of_event":"substitution-out","player":"Mouez HASSEN","time":"16'"},{"id":191,"type_of_event":"substitution-in","player":"Farouk BEN MUSTAPHA","time":"16'"},{"id":193,"type_of_event":"goal-penalty","player":"Ferjani SASSI","time":"35'"},{"id":196,"type_of_event":"substitution-out","player":"Naim SLITI","time":"74'"},{"id":197,"type_of_event":"substitution-in","player":"Mohamed BEN AMOR","time":"74'"},{"id":200,"type_of_event":"substitution-out","player":"Wahbi KHAZRI","time":"85'"},{"id":201,"type_of_event":"substitution-in","player":"Saber KHALIFA","time":"85'"}],"away_team_events":[{"id":189,"type_of_event":"goal","player":"Harry KANE","time":"11'"},{"id":192,"type_of_event":"yellow-card","player":"Kyle WALKER","time":"33'"},{"id":194,"type_of_event":"substitution-out","player":"Raheem STERLING","time":"68'"},{"id":195,"type_of_event":"substitution-in","player":"Marcus RASHFORD","time":"68'"},{"id":198,"type_of_event":"substitution-out","player":"Dele ALLI","time":"80'"},{"id":199,"type_of_event":"substitution-in","player":"Ruben LOFTUS-CHEEK","time":"80'"},{"id":202,"type_of_event":"goal","player":"Harry KANE","time":"90'+1'"},{"id":303,"type_of_event":"substitution-out","player":"Jesse  LINGARD","time":"90'+3'"},{"id":304,"type_of_event":"substitution-in","player":"Eric  DIER","time":"90'+3'"}],"home_team_statistics":{"country":"Tunisia","attempts_on_goal":6,"on_target":1,"off_target":3,"blocked":2,"woodwork":0,"corners":2,"offsides":2,"ball_possession":41,"pass_accuracy":82,"num_passes":326,"passes_completed":266,"distance_covered":103,"balls_recovered":30,"tackles":12,"clearances":26,"yellow_cards":0,"red_cards":0,"fouls_committed":14,"tactics":"4-3-3","starting_eleven":[{"name":"Mouez HASSEN","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"Syam BEN YOUSSEF","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Yassine MERIAH","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Fakhreddine BEN YOUSSEF","captain":false,"shirt_number":8,"position":"Forward"},{"name":"Anice BADRI","captain":false,"shirt_number":9,"position":"Midfield"},{"name":"Wahbi KHAZRI","captain":true,"shirt_number":10,"position":"Forward"},{"name":"Dylan BRONN","captain":false,"shirt_number":11,"position":"Defender"},{"name":"Ali MAALOUL","captain":false,"shirt_number":12,"position":"Defender"},{"name":"Ferjani SASSI","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Ellyes SKHIRI","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Naim SLITI","captain":false,"shirt_number":23,"position":"Forward"}],"substitutes":[{"name":"Farouk BEN MUSTAPHA","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Yohan BEN ALOUANE","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Oussama HADDADI","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Rami BEDOUI","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Saifeddine KHAOUI","captain":false,"shirt_number":7,"position":"Forward"},{"name":"Mohamed BEN AMOR","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Ahmed KHALIL","captain":false,"shirt_number":15,"position":"Forward"},{"name":"Aymen MATHLOUTHI","captain":false,"shirt_number":16,"position":"Goalie"},{"name":"Bassem SRARFI","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Saber KHALIFA","captain":false,"shirt_number":19,"position":"Forward"},{"name":"Ghaylen CHAALELI","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Hamdi NAGUEZ","captain":false,"shirt_number":21,"position":"Defender"}]},"away_team_statistics":{"country":"England","attempts_on_goal":17,"on_target":7,"off_target":7,"blocked":3,"woodwork":2,"corners":7,"offsides":3,"ball_possession":59,"pass_accuracy":91,"num_passes":492,"passes_completed":446,"distance_covered":105,"balls_recovered":37,"tackles":2,"clearances":8,"yellow_cards":1,"red_cards":0,"fouls_committed":8,"tactics":"3-5-2","starting_eleven":[{"name":"Jordan PICKFORD","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Kyle WALKER","captain":false,"shirt_number":2,"position":"Defender"},{"name":"John STONES","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Harry MAGUIRE","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Jesse  LINGARD","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Jordan HENDERSON","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Harry KANE","captain":true,"shirt_number":9,"position":"Forward"},{"name":"Raheem STERLING","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Kieran TRIPPIER","captain":false,"shirt_number":12,"position":"Defender"},{"name":"Ashley  YOUNG","captain":false,"shirt_number":18,"position":"Defender"},{"name":"Dele ALLI","captain":false,"shirt_number":20,"position":"Midfield"}],"substitutes":[{"name":"Danny ROSE","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Eric  DIER","captain":false,"shirt_number":4,"position":"Midfield"},{"name":"Jamie VARDY","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Jack BUTLAND","captain":false,"shirt_number":13,"position":"Goalie"},{"name":"Danny WELBECK","captain":false,"shirt_number":14,"position":"Forward"},{"name":"Gary CAHILL","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Phil JONES","captain":false,"shirt_number":16,"position":"Defender"},{"name":"Fabian DELPH","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Marcus RASHFORD","captain":false,"shirt_number":19,"position":"Forward"},{"name":"Ruben LOFTUS-CHEEK","captain":false,"shirt_number":21,"position":"Midfield"},{"name":"Trent ALEXANDER-ARNOLD","captain":false,"shirt_number":22,"position":"Defender"},{"name":"Nick POPE","captain":false,"shirt_number":23,"position":"Goalie"}]},"last_event_update_at":"2018-06-21T01:40:20Z","last_score_update_at":"2018-06-18T19:54:06Z"},{"venue":"Saransk","location":"Mordovia Arena","status":"completed","time":"full-time","fifa_id":"300331550","weather":{"humidity":"38","temp_celsius":"27","temp_farenheit":"59","wind_speed":"12","description":"Sunny"},"attendance":"40842","officials":["Damir SKOMINA","Jure PRAPROTNIK","Robert VUKAN","Mehdi ABID CHAREF","Danny MAKKELIE","Sander VAN ROEKEL","Bastian DANKERT","Felix ZWAYER","Anouar HMILA"],"stage_name":"First stage","home_team_country":"Colombia","away_team_country":"Japan","datetime":"2018-06-19T12:00:00Z","winner":"Japan","winner_code":"JPN","home_team":{"country":"Colombia","code":"COL","goals":1,"penalties":0},"away_team":{"country":"Japan","code":"JPN","goals":2,"penalties":0},"home_team_events":[{"id":203,"type_of_event":"red-card","player":"Carlos SANCHEZ","time":"3'"},{"id":205,"type_of_event":"substitution-out","player":"Juan CUADRADO","time":"31'"},{"id":206,"type_of_event":"substitution-in","player":"Wilmar BARRIOS","time":"31'"},{"id":207,"type_of_event":"goal","player":"Juan QUINTERO","time":"39'"},{"id":208,"type_of_event":"substitution-out","player":"Juan QUINTERO","time":"59'"},{"id":209,"type_of_event":"substitution-in","player":"James RODRIGUEZ","time":"59'"},{"id":210,"type_of_event":"yellow-card","player":"Wilmar BARRIOS","time":"64'"},{"id":211,"type_of_event":"substitution-out","player":"Jose IZQUIERDO","time":"70'"},{"id":212,"type_of_event":"substitution-in","player":"Carlos BACCA","time":"70'"},{"id":220,"type_of_event":"yellow-card","player":"James RODRIGUEZ","time":"86'"}],"away_team_events":[{"id":204,"type_of_event":"goal-penalty","player":"Shinji KAGAWA","time":"6'"},{"id":213,"type_of_event":"substitution-out","player":"Shinji KAGAWA","time":"70'"},{"id":214,"type_of_event":"substitution-in","player":"Keisuke HONDA","time":"70'"},{"id":215,"type_of_event":"goal","player":"Yuya OSAKO","time":"73'"},{"id":216,"type_of_event":"substitution-out","player":"Gaku SHIBASAKI","time":"80'"},{"id":217,"type_of_event":"substitution-in","player":"Hotaru YAMAGUCHI","time":"80'"},{"id":218,"type_of_event":"substitution-out","player":"Yuya OSAKO","time":"85'"},{"id":219,"type_of_event":"substitution-in","player":"Shinji OKAZAKI","time":"85'"},{"id":221,"type_of_event":"yellow-card","player":"Eiji KAWASHIMA","time":"90'+4'"}],"home_team_statistics":{"country":"Colombia","attempts_on_goal":8,"on_target":3,"off_target":1,"blocked":4,"woodwork":0,"corners":3,"offsides":2,"ball_possession":41,"pass_accuracy":82,"num_passes":352,"passes_completed":290,"distance_covered":93,"balls_recovered":40,"tackles":15,"clearances":22,"yellow_cards":2,"red_cards":1,"fouls_committed":15,"tactics":"4-2-3-1","starting_eleven":[{"name":"David OSPINA","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Oscar MURILLO","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Santiago ARIAS","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Carlos SANCHEZ","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Radamel FALCAO","captain":true,"shirt_number":9,"position":"Forward"},{"name":"Juan CUADRADO","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Jefferson  LERMA","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Johan MOJICA","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Juan QUINTERO","captain":false,"shirt_number":20,"position":"Midfield"},{"name":"Jose IZQUIERDO","captain":false,"shirt_number":21,"position":"Forward"},{"name":"Davinson SANCHEZ","captain":false,"shirt_number":23,"position":"Defender"}],"substitutes":[{"name":"Cristian ZAPATA","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Wilmar BARRIOS","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"Carlos BACCA","captain":false,"shirt_number":7,"position":"Forward"},{"name":"Abel AGUILAR","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"James RODRIGUEZ","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Camilo VARGAS","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Yerry MINA","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Luis MURIEL","captain":false,"shirt_number":14,"position":"Forward"},{"name":"Mateus URIBE","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Farid DIAZ","captain":false,"shirt_number":18,"position":"Defender"},{"name":"Miguel BORJA","captain":false,"shirt_number":19,"position":"Forward"},{"name":"Jose CUADRADO","captain":false,"shirt_number":22,"position":"Goalie"}]},"away_team_statistics":{"country":"Japan","attempts_on_goal":14,"on_target":6,"off_target":5,"blocked":3,"woodwork":0,"corners":6,"offsides":1,"ball_possession":59,"pass_accuracy":87,"num_passes":565,"passes_completed":491,"distance_covered":101,"balls_recovered":46,"tackles":16,"clearances":24,"yellow_cards":1,"red_cards":0,"fouls_committed":9,"tactics":"4-2-3-1","starting_eleven":[{"name":"Eiji KAWASHIMA","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Gen SHOJI","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Yuto NAGATOMO","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Gaku SHIBASAKI","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Genki HARAGUCHI","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Shinji KAGAWA","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Takashi INUI","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Yuya OSAKO","captain":false,"shirt_number":15,"position":"Forward"},{"name":"Makoto HASEBE","captain":true,"shirt_number":17,"position":"Midfield"},{"name":"Hiroki SAKAI","captain":false,"shirt_number":19,"position":"Defender"},{"name":"Maya YOSHIDA","captain":false,"shirt_number":22,"position":"Defender"}],"substitutes":[{"name":"Naomichi UEDA","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Keisuke HONDA","captain":false,"shirt_number":4,"position":"Midfield"},{"name":"Wataru ENDO","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Shinji OKAZAKI","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Takashi USAMI","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Masaaki HIGASHIGUCHI","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Yoshinori MUTO","captain":false,"shirt_number":13,"position":"Forward"},{"name":"Hotaru YAMAGUCHI","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Ryota OHSHIMA","captain":false,"shirt_number":18,"position":"Midfield"},{"name":"Tomoaki MAKINO","captain":false,"shirt_number":20,"position":"Defender"},{"name":"Gotoku SAKAI","captain":false,"shirt_number":21,"position":"Defender"},{"name":"Kosuke NAKAMURA","captain":false,"shirt_number":23,"position":"Goalie"}]},"last_event_update_at":"2018-06-21T02:42:30Z","last_score_update_at":"2018-06-19T13:52:45Z"},{"venue":"Moscow","location":"Spartak Stadium","status":"completed","time":"full-time","fifa_id":"300331545","weather":{"humidity":"40","temp_celsius":"27","temp_farenheit":"59","wind_speed":"19","description":"Cloudy"},"attendance":"44190","officials":["Nawaf SHUKRALLA","Yaser TULEFAT","Taleb AL MARRI","Abdulrahman AL JASSIM","Artur DIAS","Hernan MAIDANA","Tiago MARTINS","Wilton SAMPAIO","Mohamed ALHAMMADI"],"stage_name":"First stage","home_team_country":"Poland","away_team_country":"Senegal","datetime":"2018-06-19T15:00:00Z","winner":"Senegal","winner_code":"SEN","home_team":{"country":"Poland","code":"POL","goals":1,"penalties":0},"away_team":{"country":"Senegal","code":"SEN","goals":2,"penalties":0},"home_team_events":[{"id":222,"type_of_event":"yellow-card","player":"Grzegorz KRYCHOWIAK","time":"12'"},{"id":224,"type_of_event":"goal-own","player":"Thiago CIONEK","time":"37'"},{"id":223,"type_of_event":"goal-own","player":"Thiago CIONEK","time":"38'"},{"id":225,"type_of_event":"substitution-out","player":"Jakub BLASZCZYKOWSKI","time":"46'"},{"id":226,"type_of_event":"substitution-in","player":"Jan BEDNAREK","time":"46'"},{"id":231,"type_of_event":"substitution-out","player":"Arkadiusz MILIK","time":"73'"},{"id":232,"type_of_event":"substitution-in","player":"Dawid KOWNACKI","time":"73'"},{"id":237,"type_of_event":"substitution-out","player":"Lukasz PISZCZEK","time":"83'"},{"id":238,"type_of_event":"substitution-in","player":"Bartosz BERESZYNSKI","time":"83'"},{"id":236,"type_of_event":"goal","player":"Grzegorz KRYCHOWIAK","time":"86'"}],"away_team_events":[{"id":227,"type_of_event":"yellow-card","player":"Salif SANE","time":"49'"},{"id":228,"type_of_event":"goal","player":"Mbaye NIANG","time":"60'"},{"id":229,"type_of_event":"substitution-out","player":"Mame DIOUF","time":"62'"},{"id":230,"type_of_event":"substitution-in","player":"Cheikh NDOYE","time":"62'"},{"id":233,"type_of_event":"yellow-card","player":"Idrissa Gana GUEYE","time":"72'"},{"id":234,"type_of_event":"substitution-out","player":"Mbaye NIANG","time":"75'"},{"id":235,"type_of_event":"substitution-in","player":"Moussa KONATE","time":"75'"},{"id":239,"type_of_event":"substitution-out","player":"Alfred NDIAYE","time":"87'"},{"id":240,"type_of_event":"substitution-in","player":"Cheikhou KOUYATE","time":"87'"}],"home_team_statistics":{"country":"Poland","attempts_on_goal":10,"on_target":4,"off_target":5,"blocked":1,"woodwork":0,"corners":3,"offsides":3,"ball_possession":57,"pass_accuracy":88,"num_passes":552,"passes_completed":483,"distance_covered":110,"balls_recovered":43,"tackles":11,"clearances":23,"yellow_cards":1,"red_cards":0,"fouls_committed":8,"tactics":"4-2-3-1","starting_eleven":[{"name":"Wojciech SZCZESNY","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Michal PAZDAN","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Thiago CIONEK","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Arkadiusz MILIK","captain":false,"shirt_number":7,"position":"Forward"},{"name":"Robert LEWANDOWSKI","captain":true,"shirt_number":9,"position":"Forward"},{"name":"Grzegorz KRYCHOWIAK","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Kamil GROSICKI","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Maciej RYBUS","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Jakub BLASZCZYKOWSKI","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Piotr ZIELINSKI","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Lukasz PISZCZEK","captain":false,"shirt_number":20,"position":"Defender"}],"substitutes":[{"name":"Artur JEDRZEJCZYK","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Jan BEDNAREK","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Jacek GORALSKI","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Karol LINETTY","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Bartosz BIALKOWSKI","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Lukasz TEODORCZYK","captain":false,"shirt_number":14,"position":"Forward"},{"name":"Kamil GLIK","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Slawomir PESZKO","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Bartosz BERESZYNSKI","captain":false,"shirt_number":18,"position":"Defender"},{"name":"Rafal KURZAWA","captain":false,"shirt_number":21,"position":"Midfield"},{"name":"Lukasz FABIANSKI","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"Dawid KOWNACKI","captain":false,"shirt_number":23,"position":"Forward"}]},"away_team_statistics":{"country":"Senegal","attempts_on_goal":8,"on_target":2,"off_target":4,"blocked":2,"woodwork":0,"corners":3,"offsides":3,"ball_possession":43,"pass_accuracy":81,"num_passes":328,"passes_completed":266,"distance_covered":107,"balls_recovered":48,"tackles":9,"clearances":38,"yellow_cards":2,"red_cards":0,"fouls_committed":15,"tactics":"4-4-2","starting_eleven":[{"name":"Khadim NDIAYE","captain":false,"shirt_number":16,"position":"Goalie"},{"name":"Kalidou KOULIBALY","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Idrissa Gana GUEYE","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"Salif SANE","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Mame DIOUF","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Sadio MANE","captain":true,"shirt_number":10,"position":"Forward"},{"name":"Youssouf SABALY","captain":false,"shirt_number":12,"position":"Defender"},{"name":"Alfred NDIAYE","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Ismaila SARR","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Mbaye NIANG","captain":false,"shirt_number":19,"position":"Forward"},{"name":"Moussa WAGUE","captain":false,"shirt_number":22,"position":"Defender"}],"substitutes":[{"name":"Abdoulaye DIALLO","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Adama MBENGUE","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Kara MBODJI","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Moussa SOW","captain":false,"shirt_number":7,"position":"Forward"},{"name":"Cheikhou KOUYATE","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Cheikh NDOYE","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Moussa KONATE","captain":false,"shirt_number":14,"position":"Forward"},{"name":"Diafra SAKHO","captain":false,"shirt_number":15,"position":"Forward"},{"name":"Pape Alioune NDIAYE","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Keita BALDE","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Lamine GASSAMA","captain":false,"shirt_number":21,"position":"Defender"},{"name":"Alfred GOMIS","captain":false,"shirt_number":23,"position":"Goalie"}]},"last_event_update_at":"2018-06-21T02:18:31Z","last_score_update_at":"2018-06-19T16:53:34Z"},{"venue":"St. Petersburg","location":"Saint Petersburg Stadium","status":"completed","time":"full-time","fifa_id":"300331495","weather":{"humidity":"83","temp_celsius":"15","temp_farenheit":"47","wind_speed":"14","description":"Cloudy"},"attendance":"64468","officials":["Enrique CACERES","Eduardo CARDOZO","Juan ZORRILLA","Cuneyt CAKIR","Massimiliano IRRATI","Carlos ASTROZA","Mauro VIGLIANO","Szymon MARCINIAK","Bahattin DURAN"],"stage_name":"First stage","home_team_country":"Russia","away_team_country":"Egypt","datetime":"2018-06-19T18:00:00Z","winner":"Russia","winner_code":"RUS","home_team":{"country":"Russia","code":"RUS","goals":3,"penalties":0},"away_team":{"country":"Egypt","code":"EGY","goals":1,"penalties":0},"home_team_events":[{"id":243,"type_of_event":"goal","player":"Denis CHERYSHEV","time":"59'"},{"id":244,"type_of_event":"goal","player":"Artem DZYUBA","time":"62'"},{"id":249,"type_of_event":"substitution-out","player":"Denis CHERYSHEV","time":"74'"},{"id":250,"type_of_event":"substitution-in","player":"Daler KUZIAEV","time":"74'"},{"id":252,"type_of_event":"substitution-out","player":"Artem DZYUBA","time":"79'"},{"id":253,"type_of_event":"substitution-in","player":"Fedor SMOLOV","time":"79'"},{"id":254,"type_of_event":"yellow-card","player":"Fedor SMOLOV","time":"84'"},{"id":257,"type_of_event":"substitution-out","player":"Yury ZHIRKOV","time":"86'"},{"id":258,"type_of_event":"substitution-in","player":"Fedor KUDRIASHOV","time":"86'"}],"away_team_events":[{"id":241,"type_of_event":"goal-own","player":"AHMED FATHI","time":"47'"},{"id":242,"type_of_event":"yellow-card","player":"TREZEGUET","time":"57'"},{"id":305,"type_of_event":"yellow-card","player":"TREZIGUET","time":"57'"},{"id":245,"type_of_event":"substitution-out","player":"MOHAMED ELNENY","time":"64'"},{"id":246,"type_of_event":"substitution-in","player":"AMR WARDA","time":"64'"},{"id":247,"type_of_event":"substitution-out","player":"TREZEGUET","time":"68'"},{"id":248,"type_of_event":"substitution-in","player":"RAMADAN SOBHY","time":"68'"},{"id":306,"type_of_event":"substitution-out","player":"TREZIGUET","time":"68'"},{"id":251,"type_of_event":"goal-penalty","player":"MOHAMED SALAH","time":"73'"},{"id":255,"type_of_event":"substitution-out","player":"MARWAN MOHSEN","time":"82'"},{"id":256,"type_of_event":"substitution-in","player":"KAHRABA","time":"82'"}],"home_team_statistics":{"country":"Russia","attempts_on_goal":11,"on_target":3,"off_target":5,"blocked":3,"woodwork":0,"corners":7,"offsides":0,"ball_possession":47,"pass_accuracy":76,"num_passes":380,"passes_completed":289,"distance_covered":115,"balls_recovered":59,"tackles":9,"clearances":47,"yellow_cards":1,"red_cards":0,"fouls_committed":11,"tactics":"4-2-3-1","starting_eleven":[{"name":"Igor AKINFEEV","captain":true,"shirt_number":1,"position":"Goalie"},{"name":"MARIO FERNANDES","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Ilya KUTEPOV","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Sergey IGNASHEVICH","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Denis CHERYSHEV","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Iury GAZINSKY","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Roman ZOBNIN","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Aleksandr GOLOVIN","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Yury ZHIRKOV","captain":false,"shirt_number":18,"position":"Midfield"},{"name":"Alexander SAMEDOV","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Artem DZYUBA","captain":false,"shirt_number":22,"position":"Forward"}],"substitutes":[{"name":"Andrey SEMENOV","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Daler KUZIAEV","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Fedor SMOLOV","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Andrei LUNEV","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Fedor KUDRIASHOV","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Vladimir GRANAT","captain":false,"shirt_number":14,"position":"Defender"},{"name":"Alexey MIRANCHUK","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Anton MIRANCHUK","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Vladimir GABULOV","captain":false,"shirt_number":20,"position":"Goalie"},{"name":"Aleksandr EROKHIN","captain":false,"shirt_number":21,"position":"Midfield"},{"name":"Igor SMOLNIKOV","captain":false,"shirt_number":23,"position":"Defender"},{"name":"Alan DZAGOEV","captain":false,"shirt_number":9,"position":"Midfield"}]},"away_team_statistics":{"country":"Egypt","attempts_on_goal":13,"on_target":1,"off_target":8,"blocked":4,"woodwork":0,"corners":4,"offsides":0,"ball_possession":53,"pass_accuracy":81,"num_passes":438,"passes_completed":356,"distance_covered":110,"balls_recovered":41,"tackles":11,"clearances":29,"yellow_cards":1,"red_cards":0,"fouls_committed":10,"tactics":"4-2-3-1","starting_eleven":[{"name":"MOHAMED ELSHENAWY","captain":false,"shirt_number":23,"position":"Goalie"},{"name":"ALI GABR","captain":false,"shirt_number":2,"position":"Defender"},{"name":"AHMED HEGAZY","captain":false,"shirt_number":6,"position":"Defender"},{"name":"AHMED FATHI","captain":true,"shirt_number":7,"position":"Defender"},{"name":"TAREK HAMED","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"MARWAN MOHSEN","captain":false,"shirt_number":9,"position":"Forward"},{"name":"MOHAMED SALAH","captain":false,"shirt_number":10,"position":"Forward"},{"name":"MOHAMED ABDELSHAFY","captain":false,"shirt_number":13,"position":"Defender"},{"name":"MOHAMED ELNENY","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"ABDALLA SAID","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"TREZIGUET","captain":false,"shirt_number":21,"position":"Midfield"}],"substitutes":[{"name":"ESSAM ELHADARY","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"AHMED ELMOHAMADY","captain":false,"shirt_number":3,"position":"Defender"},{"name":"OMAR GABER","captain":false,"shirt_number":4,"position":"Midfield"},{"name":"SAM MORSY","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"KAHRABA","captain":false,"shirt_number":11,"position":"Forward"},{"name":"AYMAN ASHRAF","captain":false,"shirt_number":12,"position":"Defender"},{"name":"RAMADAN SOBHY","captain":false,"shirt_number":14,"position":"Forward"},{"name":"MAHMOUD HAMDY","captain":false,"shirt_number":15,"position":"Defender"},{"name":"SHERIF EKRAMY","captain":false,"shirt_number":16,"position":"Goalie"},{"name":"SHIKABALA","captain":false,"shirt_number":18,"position":"Forward"},{"name":"SAMIR SAAD","captain":false,"shirt_number":20,"position":"Defender"},{"name":"AMR WARDA","captain":false,"shirt_number":22,"position":"Forward"}]},"last_event_update_at":"2018-06-21T02:11:00Z","last_score_update_at":"2018-06-19T19:51:07Z"},{"venue":"Moscow","location":"Luzhniki Stadium","status":"completed","time":"full-time","fifa_id":"300331511","weather":{"humidity":"33","temp_celsius":"20","temp_farenheit":"52","wind_speed":"24","description":"Partly Cloudy"},"attendance":"78011","officials":["Mark GEIGER","Joe FLETCHER","Frank ANDERSON","Sergei KARASEV","Felix ZWAYER","Simon LOUNT","Jair MARRUFO","Bastian DANKERT","Anton AVERIANOV"],"stage_name":"First stage","home_team_country":"Portugal","away_team_country":"Morocco","datetime":"2018-06-20T12:00:00Z","winner":"Portugal","winner_code":"POR","home_team":{"country":"Portugal","code":"POR","goals":1,"penalties":0},"away_team":{"country":"Morocco","code":"MAR","goals":0,"penalties":0},"home_team_events":[{"id":259,"type_of_event":"goal","player":"CRISTIANO RONALDO","time":"4'"},{"id":261,"type_of_event":"substitution-out","player":"BERNARDO SILVA","time":"59'"},{"id":262,"type_of_event":"substitution-in","player":"GELSON MARTINS","time":"59'"},{"id":265,"type_of_event":"substitution-out","player":"JOAO MARIO","time":"70'"},{"id":266,"type_of_event":"substitution-in","player":"BRUNO FERNANDES","time":"70'"},{"id":273,"type_of_event":"substitution-out","player":"JOAO MOUTINHO","time":"89'"},{"id":274,"type_of_event":"substitution-in","player":"ADRIEN SILVA","time":"89'"},{"id":275,"type_of_event":"yellow-card","player":"ADRIEN SILVA","time":"90'+2'"}],"away_team_events":[{"id":260,"type_of_event":"yellow-card","player":"Mehdi BENATIA","time":"40'"},{"id":263,"type_of_event":"substitution-out","player":"Khalid BOUTAIB","time":"69'"},{"id":264,"type_of_event":"substitution-in","player":"Ayoub EL KAABI","time":"69'"},{"id":268,"type_of_event":"substitution-out","player":"Khalid BOUTAIB","time":"70'"},{"id":269,"type_of_event":"substitution-in","player":"Ayoub EL KAABI","time":"70'"},{"id":267,"type_of_event":"substitution-out","player":"Younes BELHANDA","time":"75'"},{"id":270,"type_of_event":"substitution-in","player":"Mehdi CARCELA","time":"75'"},{"id":271,"type_of_event":"substitution-out","player":"Karim EL AHMADI","time":"86'"},{"id":272,"type_of_event":"substitution-in","player":"Faycal FAJR","time":"86'"}],"home_team_statistics":{"country":"Portugal","attempts_on_goal":10,"on_target":2,"off_target":4,"blocked":4,"woodwork":0,"corners":5,"offsides":1,"ball_possession":47,"pass_accuracy":76,"num_passes":387,"passes_completed":293,"distance_covered":105,"balls_recovered":49,"tackles":13,"clearances":36,"yellow_cards":1,"red_cards":0,"fouls_committed":19,"tactics":"4-4-2","starting_eleven":[{"name":"RUI PATRICIO","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"PEPE","captain":false,"shirt_number":3,"position":"Defender"},{"name":"RAPHAEL GUERREIRO","captain":false,"shirt_number":5,"position":"Defender"},{"name":"JOSE FONTE","captain":false,"shirt_number":6,"position":"Defender"},{"name":"CRISTIANO RONALDO","captain":true,"shirt_number":7,"position":"Forward"},{"name":"JOAO MOUTINHO","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"JOAO MARIO","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"BERNARDO SILVA","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"WILLIAM","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"GONCALO GUEDES","captain":false,"shirt_number":17,"position":"Forward"},{"name":"CEDRIC","captain":false,"shirt_number":21,"position":"Defender"}],"substitutes":[{"name":"BRUNO ALVES","captain":false,"shirt_number":2,"position":"Defender"},{"name":"MANUEL FERNANDES","captain":false,"shirt_number":4,"position":"Midfield"},{"name":"ANDRE SILVA","captain":false,"shirt_number":9,"position":"Forward"},{"name":"ANTHONY LOPES","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"RUBEN DIAS","captain":false,"shirt_number":13,"position":"Defender"},{"name":"RICARDO","captain":false,"shirt_number":15,"position":"Defender"},{"name":"BRUNO FERNANDES","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"GELSON MARTINS","captain":false,"shirt_number":18,"position":"Forward"},{"name":"MARIO RUI","captain":false,"shirt_number":19,"position":"Defender"},{"name":"RICARDO QUARESMA","captain":false,"shirt_number":20,"position":"Forward"},{"name":"BETO","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"ADRIEN SILVA","captain":false,"shirt_number":23,"position":"Midfield"}]},"away_team_statistics":{"country":"Morocco","attempts_on_goal":16,"on_target":4,"off_target":10,"blocked":2,"woodwork":0,"corners":7,"offsides":1,"ball_possession":53,"pass_accuracy":77,"num_passes":466,"passes_completed":359,"distance_covered":107,"balls_recovered":66,"tackles":17,"clearances":16,"yellow_cards":1,"red_cards":0,"fouls_committed":23,"tactics":"4-2-3-1","starting_eleven":[{"name":"Monir EL KAJOUI","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Achraf HAKIMI","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Manuel DA COSTA","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Mehdi BENATIA","captain":true,"shirt_number":5,"position":"Defender"},{"name":"Hakim ZIYACH","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Karim EL AHMADI","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Younes BELHANDA","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Khalid BOUTAIB","captain":false,"shirt_number":13,"position":"Forward"},{"name":"Mbark BOUSSOUFA","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Noureddine AMRABAT","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Nabil DIRAR","captain":false,"shirt_number":17,"position":"Defender"}],"substitutes":[{"name":"Yassine BOUNOU","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Hamza MENDYL","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Ghanem SAISS","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Ayoub EL KAABI","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Faycal FAJR","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Amine HARIT","captain":false,"shirt_number":18,"position":"Midfield"},{"name":"Youssef EN NESYRI","captain":false,"shirt_number":19,"position":"Forward"},{"name":"Aziz BOUHADDOUZ","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Sofyan AMRABAT","captain":false,"shirt_number":21,"position":"Midfield"},{"name":"Ahmed TAGNAOUTI","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"Mehdi CARCELA","captain":false,"shirt_number":23,"position":"Midfield"},{"name":"Youssef AIT BENNASSER","captain":false,"shirt_number":15,"position":"Midfield"}]},"last_event_update_at":"2018-06-21T02:35:54Z","last_score_update_at":"2018-06-20T13:55:28Z"},{"venue":"Rostov-On-Don","location":"Rostov Arena","status":"completed","time":"full-time","fifa_id":"300331530","weather":{"humidity":"26","temp_celsius":"32","temp_farenheit":"64","wind_speed":"10","description":"Sunny"},"attendance":"42678","officials":["Clement TURPIN","Nicolas DANOS","Cyril GRINGORE","John PITTI","Szymon MARCINIAK","Pawel SOKOLNICKI","Pawel GIL","Daniele ORSATO","Gabriel VICTORIA"],"stage_name":"First stage","home_team_country":"Uruguay","away_team_country":"Saudi Arabia","datetime":"2018-06-20T15:00:00Z","winner":"Uruguay","winner_code":"URU","home_team":{"country":"Uruguay","code":"URU","goals":1,"penalties":0},"away_team":{"country":"Saudi Arabia","code":"KSA","goals":0,"penalties":0},"home_team_events":[{"id":276,"type_of_event":"goal","player":"Luis SUAREZ","time":"23'"},{"id":279,"type_of_event":"substitution-out","player":"Cristian RODRIGUEZ","time":"59'"},{"id":280,"type_of_event":"substitution-out","player":"Matias VECINO","time":"59'"},{"id":281,"type_of_event":"substitution-in","player":"Lucas TORREIRA","time":"59'"},{"id":282,"type_of_event":"substitution-in","player":"Diego LAXALT","time":"59'"},{"id":287,"type_of_event":"substitution-out","player":"Carlos SANCHEZ","time":"82'"},{"id":288,"type_of_event":"substitution-in","player":"Nahitan NANDEZ","time":"82'"}],"away_team_events":[{"id":277,"type_of_event":"substitution-out","player":"TAISEER ALJASSAM","time":"44'"},{"id":278,"type_of_event":"substitution-in","player":"HUSSAIN ALMOQAHWI","time":"44'"},{"id":283,"type_of_event":"substitution-out","player":"HATAN BAHBRI","time":"75'"},{"id":286,"type_of_event":"substitution-in","player":"MOHAMED KANNO","time":"75'"},{"id":284,"type_of_event":"substitution-out","player":"FAHAD ALMUWALLAD","time":"78'"},{"id":285,"type_of_event":"substitution-in","player":"MOHAMMED ALSAHLAWI","time":"78'"}],"home_team_statistics":{"country":"Uruguay","attempts_on_goal":13,"on_target":4,"off_target":6,"blocked":3,"woodwork":0,"corners":3,"offsides":1,"ball_possession":47,"pass_accuracy":88,"num_passes":521,"passes_completed":456,"distance_covered":101,"balls_recovered":43,"tackles":6,"clearances":19,"yellow_cards":0,"red_cards":0,"fouls_committed":10,"tactics":"4-4-2","starting_eleven":[{"name":"Fernando MUSLERA","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Jose GIMENEZ","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Diego GODIN","captain":true,"shirt_number":3,"position":"Defender"},{"name":"Guillermo VARELA","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Carlos SANCHEZ","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"Rodrigo BENTANCUR","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Cristian RODRIGUEZ","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Luis SUAREZ","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Matias VECINO","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Edinson CAVANI","captain":false,"shirt_number":21,"position":"Forward"},{"name":"Martin CACERES","captain":false,"shirt_number":22,"position":"Defender"}],"substitutes":[{"name":"Nahitan NANDEZ","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Giorgian DE ARRASCAETA","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Cristhian STUANI","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Martin CAMPANA","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Gaston SILVA","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Lucas TORREIRA","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Maximiliano PEREIRA","captain":false,"shirt_number":16,"position":"Defender"},{"name":"Diego LAXALT","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Maximiliano GOMEZ","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Sebastian COATES","captain":false,"shirt_number":19,"position":"Defender"},{"name":"Jonathan URRETAVISCAYA","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Martin SILVA","captain":false,"shirt_number":23,"position":"Goalie"}]},"away_team_statistics":{"country":"Saudi Arabia","attempts_on_goal":8,"on_target":3,"off_target":3,"blocked":2,"woodwork":0,"corners":4,"offsides":2,"ball_possession":53,"pass_accuracy":86,"num_passes":590,"passes_completed":510,"distance_covered":100,"balls_recovered":45,"tackles":11,"clearances":14,"yellow_cards":0,"red_cards":0,"fouls_committed":13,"tactics":"4-5-1","starting_eleven":[{"name":"MOHAMMED ALOWAIS","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"OSAMA HAWSAWI","captain":true,"shirt_number":3,"position":"Defender"},{"name":"ALI ALBULAYHI","captain":false,"shirt_number":4,"position":"Defender"},{"name":"MOHAMMED ALBURAYK","captain":false,"shirt_number":6,"position":"Defender"},{"name":"SALMAN ALFARAJ","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"HATAN BAHBRI","captain":false,"shirt_number":9,"position":"Midfield"},{"name":"YASSER ALSHAHRANI","captain":false,"shirt_number":13,"position":"Defender"},{"name":"ABDULLAH OTAYF","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"TAISEER ALJASSAM","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"SALEM ALDAWSARI","captain":false,"shirt_number":18,"position":"Midfield"},{"name":"FAHAD ALMUWALLAD","captain":false,"shirt_number":19,"position":"Forward"}],"substitutes":[{"name":"ABDULLAH ALMUAIOUF","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"MANSOUR ALHARBI","captain":false,"shirt_number":2,"position":"Defender"},{"name":"OMAR HAWSAWI","captain":false,"shirt_number":5,"position":"Defender"},{"name":"YAHIA ALSHEHRI","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"MOHAMMED ALSAHLAWI","captain":false,"shirt_number":10,"position":"Forward"},{"name":"ABDULMALEK ALKHAIBRI","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"MOHAMED KANNO","captain":false,"shirt_number":12,"position":"Midfield"},{"name":"ABDULLAH ALKHAIBARI","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"HUSSAIN ALMOQAHWI","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"MUHANNAD ASIRI","captain":false,"shirt_number":20,"position":"Forward"},{"name":"YASSER ALMOSAILEM","captain":false,"shirt_number":21,"position":"Goalie"},{"name":"MOTAZ HAWSAWI","captain":false,"shirt_number":23,"position":"Defender"}]},"last_event_update_at":"2018-06-21T02:36:00Z","last_score_update_at":"2018-06-20T16:52:56Z"},{"venue":"Kazan","location":"Kazan Arena","status":"completed","time":"full-time","fifa_id":"300331496","weather":{"humidity":"48","temp_celsius":"18","temp_farenheit":"50","wind_speed":"26","description":"Clear Night"},"attendance":"42718","officials":["Andres CUNHA","Nicolas TARAN","Mauricio ESPINOSA","Julio BASCUNAN","Mauro VIGLIANO","Alexander GUZMAN","Wilton SAMPAIO","Massimiliano IRRATI","Christian SCHIEMANN"],"stage_name":"First stage","home_team_country":"Iran","away_team_country":"Spain","datetime":"2018-06-20T18:00:00Z","winner":"Spain","winner_code":"ESP","home_team":{"country":"Iran","code":"IRN","goals":0,"penalties":0},"away_team":{"country":"Spain","code":"ESP","goals":1,"penalties":0},"home_team_events":[{"id":290,"type_of_event":"substitution-out","player":"Ehsan HAJI SAFI","time":"69'"},{"id":291,"type_of_event":"substitution-in","player":"Milad MOHAMMADI","time":"69'"},{"id":294,"type_of_event":"substitution-out","player":"Karim ANSARIFARD","time":"74'"},{"id":295,"type_of_event":"substitution-in","player":"Alireza JAHANBAKHSH","time":"74'"},{"id":296,"type_of_event":"yellow-card","player":"Vahid AMIRI","time":"79'"},{"id":299,"type_of_event":"substitution-out","player":"Vahid AMIRI","time":"86'"},{"id":300,"type_of_event":"substitution-in","player":"Saman GHODDOS","time":"86'"},{"id":307,"type_of_event":"yellow-card","player":"Omid EBRAHIMI","time":"90'+2'"}],"away_team_events":[{"id":289,"type_of_event":"goal","player":"Diego COSTA","time":"54'"},{"id":292,"type_of_event":"substitution-out","player":"Andres INIESTA","time":"71'"},{"id":293,"type_of_event":"substitution-in","player":"KOKE","time":"71'"},{"id":297,"type_of_event":"substitution-out","player":"Lucas VAZQUEZ","time":"79'"},{"id":298,"type_of_event":"substitution-in","player":"Marco ASENSIO","time":"79'"},{"id":301,"type_of_event":"substitution-out","player":"Diego COSTA","time":"89'"},{"id":302,"type_of_event":"substitution-in","player":"RODRIGO","time":"89'"}],"home_team_statistics":{"country":"Iran","attempts_on_goal":5,"on_target":0,"off_target":5,"blocked":0,"woodwork":0,"corners":2,"offsides":2,"ball_possession":30,"pass_accuracy":69,"num_passes":219,"passes_completed":152,"distance_covered":106,"balls_recovered":50,"tackles":17,"clearances":48,"yellow_cards":2,"red_cards":0,"fouls_committed":14,"tactics":"4-2-3-1","starting_eleven":[{"name":"Ali BEIRANVAND","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Ehsan HAJI SAFI","captain":true,"shirt_number":3,"position":"Defender"},{"name":"Saeid EZATOLAHI","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Morteza POURALIGANJI","captain":false,"shirt_number":8,"position":"Defender"},{"name":"Omid EBRAHIMI","captain":false,"shirt_number":9,"position":"Midfield"},{"name":"Karim ANSARIFARD","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Vahid AMIRI","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Mehdi TAREMI","captain":false,"shirt_number":17,"position":"Forward"},{"name":"Majid HOSSEINI","captain":false,"shirt_number":19,"position":"Defender"},{"name":"Sardar AZMOUN","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Ramin REZAEIAN","captain":false,"shirt_number":23,"position":"Defender"}],"substitutes":[{"name":"Mahdi TORABI","captain":false,"shirt_number":2,"position":"Midfield"},{"name":"Milad MOHAMMADI","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Masoud SHOJAEI","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Rashid MAZAHERI","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Mohammad Reza KHANZADEH","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Saman GHODDOS","captain":false,"shirt_number":14,"position":"Forward"},{"name":"Pejman MONTAZERI","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Reza GHOOCHANNEJHAD","captain":false,"shirt_number":16,"position":"Forward"},{"name":"Alireza JAHANBAKHSH","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Ashkan DEJAGAH","captain":false,"shirt_number":21,"position":"Forward"},{"name":"Amir ABEDZADEH","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"Roozbeh CHESHMI","captain":false,"shirt_number":4,"position":"Defender"}]},"away_team_statistics":{"country":"Spain","attempts_on_goal":17,"on_target":3,"off_target":6,"blocked":8,"woodwork":0,"corners":6,"offsides":1,"ball_possession":70,"pass_accuracy":89,"num_passes":805,"passes_completed":718,"distance_covered":105,"balls_recovered":35,"tackles":5,"clearances":14,"yellow_cards":0,"red_cards":0,"fouls_committed":14,"tactics":"4-2-3-1","starting_eleven":[{"name":"David DE GEA","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Dani CARVAJAL","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Gerard PIQUE","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Sergio BUSQUETS","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"Andres INIESTA","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Lucas VAZQUEZ","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Sergio RAMOS","captain":true,"shirt_number":15,"position":"Defender"},{"name":"Jordi ALBA","captain":false,"shirt_number":18,"position":"Defender"},{"name":"Diego COSTA","captain":false,"shirt_number":19,"position":"Forward"},{"name":"David SILVA","captain":false,"shirt_number":21,"position":"Forward"},{"name":"ISCO","captain":false,"shirt_number":22,"position":"Midfield"}],"substitutes":[{"name":"NACHO","captain":false,"shirt_number":4,"position":"Defender"},{"name":"SAUL","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"KOKE","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"RODRIGO","captain":false,"shirt_number":9,"position":"Forward"},{"name":"THIAGO","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Alvaro ODRIOZOLA","captain":false,"shirt_number":12,"position":"Defender"},{"name":"Kepa ARRIZABALAGA","captain":false,"shirt_number":13,"position":"Goalie"},{"name":"Cesar AZPILICUETA","captain":false,"shirt_number":14,"position":"Defender"},{"name":"Nacho MONREAL","captain":false,"shirt_number":16,"position":"Defender"},{"name":"Iago ASPAS","captain":false,"shirt_number":17,"position":"Forward"},{"name":"Marco ASENSIO","captain":false,"shirt_number":20,"position":"Midfield"},{"name":"Pepe REINA","captain":false,"shirt_number":23,"position":"Goalie"}]},"last_event_update_at":"2018-06-21T02:36:07Z","last_score_update_at":"2018-06-20T19:50:29Z"},{"venue":"Samara","location":"Samara Arena","status":"completed","time":"full-time","fifa_id":"300331518","weather":{"humidity":"32","temp_celsius":"24","temp_farenheit":"56","wind_speed":"25","description":"Sunny"},"attendance":"40727","officials":["Antonio MATEU","Pau CEBRIAN","Roberto DIAZ","Bamlak TESSEMA","Mark GEIGER","Joe FLETCHER","Jair MARRUFO","Paolo VALERI","Juan Carlos MORA"],"stage_name":"First stage","home_team_country":"Denmark","away_team_country":"Australia","datetime":"2018-06-21T12:00:00Z","winner":"Draw","winner_code":"Draw","home_team":{"country":"Denmark","code":"DEN","goals":1,"penalties":0},"away_team":{"country":"Australia","code":"AUS","goals":1,"penalties":0},"home_team_events":[{"id":355,"type_of_event":"goal","player":"Christian ERIKSEN","time":"7'"},{"id":356,"type_of_event":"yellow-card","player":"Yussuf Yurary POULSEN","time":"37'"},{"id":358,"type_of_event":"substitution-out","player":"Yussuf Yurary POULSEN","time":"59'"},{"id":359,"type_of_event":"substitution-in","player":"Martin BRAITHWAITE","time":"59'"},{"id":360,"type_of_event":"substitution-out","player":"Nicolai JORGENSEN","time":"68'"},{"id":361,"type_of_event":"substitution-in","player":"Andreas CORNELIUS","time":"68'"},{"id":368,"type_of_event":"yellow-card","player":"Pione SISTO","time":"84'"}],"away_team_events":[{"id":357,"type_of_event":"goal-penalty","player":"Mile JEDINAK","time":"38'"},{"id":362,"type_of_event":"substitution-out","player":"Robbie KRUSE","time":"68'"},{"id":363,"type_of_event":"substitution-in","player":"Daniel ARZANI","time":"68'"},{"id":364,"type_of_event":"substitution-out","player":"Andrew NABBOUT","time":"75'"},{"id":365,"type_of_event":"substitution-in","player":"Tomi JURIC","time":"75'"},{"id":366,"type_of_event":"substitution-out","player":"Tom ROGIC","time":"82'"},{"id":367,"type_of_event":"substitution-in","player":"Jackson IRVINE","time":"82'"}],"home_team_statistics":{"country":"Denmark","attempts_on_goal":10,"on_target":5,"off_target":5,"blocked":0,"woodwork":0,"corners":3,"offsides":1,"ball_possession":49,"pass_accuracy":88,"num_passes":458,"passes_completed":403,"distance_covered":112,"balls_recovered":41,"tackles":14,"clearances":26,"yellow_cards":2,"red_cards":0,"fouls_committed":7,"tactics":"4-3-3","starting_eleven":[{"name":"Kasper  SCHMEICHEL","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Simon KJAER","captain":true,"shirt_number":4,"position":"Defender"},{"name":"Andreas CHRISTENSEN","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Thomas DELANEY","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Nicolai JORGENSEN","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Christian ERIKSEN","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Henrik DALSGAARD","captain":false,"shirt_number":14,"position":"Defender"},{"name":"Jens Stryger LARSEN","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Lasse SCHONE","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Yussuf Yurary POULSEN","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Pione SISTO","captain":false,"shirt_number":23,"position":"Forward"}],"substitutes":[{"name":"Michael KROHN-DEHLI","captain":false,"shirt_number":2,"position":"Midfield"},{"name":"Jannik VESTERGAARD","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Jonas KNUDSEN","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Martin BRAITHWAITE","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Kasper DOLBERG","captain":false,"shirt_number":12,"position":"Forward"},{"name":"Mathias  JORGENSEN","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Viktor FISCHER","captain":false,"shirt_number":15,"position":"Forward"},{"name":"Jonas LOSSL","captain":false,"shirt_number":16,"position":"Goalie"},{"name":"Lukas LERAGER","captain":false,"shirt_number":18,"position":"Midfield"},{"name":"Andreas CORNELIUS","captain":false,"shirt_number":21,"position":"Forward"},{"name":"Frederik RONNOW","captain":false,"shirt_number":22,"position":"Goalie"},{"name":"William KVIST","captain":false,"shirt_number":7,"position":"Midfield"}]},"away_team_statistics":{"country":"Australia","attempts_on_goal":14,"on_target":5,"off_target":5,"blocked":4,"woodwork":0,"corners":5,"offsides":0,"ball_possession":51,"pass_accuracy":85,"num_passes":520,"passes_completed":441,"distance_covered":114,"balls_recovered":42,"tackles":6,"clearances":26,"yellow_cards":0,"red_cards":0,"fouls_committed":5,"tactics":"4-2-3-1","starting_eleven":[{"name":"Mathew RYAN","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Mark MILLIGAN","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Mathew LECKIE","captain":false,"shirt_number":7,"position":"Forward"},{"name":"Robbie KRUSE","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Andrew NABBOUT","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Aaron MOOY","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Mile JEDINAK","captain":true,"shirt_number":15,"position":"Midfield"},{"name":"Aziz BEHICH","captain":false,"shirt_number":16,"position":"Defender"},{"name":"Joshua RISDON","captain":false,"shirt_number":19,"position":"Defender"},{"name":"Trent SAINSBURY","captain":false,"shirt_number":20,"position":"Defender"},{"name":"Tom ROGIC","captain":false,"shirt_number":23,"position":"Midfield"}],"substitutes":[{"name":"Milos DEGENEK","captain":false,"shirt_number":2,"position":"Defender"},{"name":"James MEREDITH","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Tim CAHILL","captain":false,"shirt_number":4,"position":"Forward"},{"name":"Matthew JURMAN","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Massimo LUONGO","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Tomi JURIC","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Brad JONES","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Jamie MacLAREN","captain":false,"shirt_number":14,"position":"Forward"},{"name":"Daniel ARZANI","captain":false,"shirt_number":17,"position":"Forward"},{"name":"Danny VUKOVIC","captain":false,"shirt_number":18,"position":"Goalie"},{"name":"Dimitrios PETRATOS","captain":false,"shirt_number":21,"position":"Forward"},{"name":"Jackson IRVINE","captain":false,"shirt_number":22,"position":"Midfield"}]},"last_event_update_at":"2018-06-22T00:00:03Z","last_score_update_at":"2018-06-22T00:00:03Z"},{"venue":"Ekaterinburg","location":"Ekaterinburg Arena","status":"completed","time":"full-time","fifa_id":"300331527","weather":{"humidity":"79","temp_celsius":"12","temp_farenheit":"44","wind_speed":"21","description":"Cloudy"},"attendance":"32789","officials":["Mohammed Abdulla MOHAMMED","Mohamed ALHAMMADI","Hasan ALMAHRI","Janny SIKAZWE","Daniele ORSATO","Taleb AL MARRI","Abdulrahman AL JASSIM","Szymon MARCINIAK","Jerson DOS SANTOS"],"stage_name":"First stage","home_team_country":"France","away_team_country":"Peru","datetime":"2018-06-21T15:00:00Z","winner":"France","winner_code":"FRA","home_team":{"country":"France","code":"FRA","goals":1,"penalties":0},"away_team":{"country":"Peru","code":"PER","goals":0,"penalties":0},"home_team_events":[{"id":369,"type_of_event":"yellow-card","player":"Blaise MATUIDI","time":"16'"},{"id":371,"type_of_event":"goal","player":"Kylian MBAPPE","time":"34'"},{"id":376,"type_of_event":"substitution-out","player":"Kylian MBAPPE","time":"75'"},{"id":377,"type_of_event":"substitution-in","player":"Ousmane DEMBELE","time":"75'"},{"id":378,"type_of_event":"substitution-out","player":"Antoine GRIEZMANN","time":"80'"},{"id":379,"type_of_event":"substitution-in","player":"Nabil FEKIR","time":"80'"},{"id":382,"type_of_event":"yellow-card","player":"Paul POGBA","time":"86'"},{"id":385,"type_of_event":"substitution-out","player":"Paul POGBA","time":"89'"},{"id":386,"type_of_event":"substitution-in","player":"Steven NZONZI","time":"89'"}],"away_team_events":[{"id":370,"type_of_event":"yellow-card","player":"Paolo GUERRERO","time":"23'"},{"id":372,"type_of_event":"substitution-out","player":"Alberto RODRIGUEZ","time":"46'"},{"id":373,"type_of_event":"substitution-out","player":"Yoshimar YOTUN","time":"46'"},{"id":374,"type_of_event":"substitution-in","player":"Anderson SANTAMARIA","time":"46'"},{"id":375,"type_of_event":"substitution-in","player":"Jefferson FARFAN","time":"46'"},{"id":380,"type_of_event":"yellow-card","player":"Edison FLORES","time":"81'"},{"id":381,"type_of_event":"yellow-card","player":"Pedro AQUINO","time":"81'"},{"id":383,"type_of_event":"substitution-out","player":"Christian CUEVA","time":"82'"},{"id":384,"type_of_event":"substitution-in","player":"Raul RUIDIAZ","time":"82'"}],"home_team_statistics":{"country":"France","attempts_on_goal":12,"on_target":4,"off_target":6,"blocked":2,"woodwork":0,"corners":5,"offsides":0,"ball_possession":44,"pass_accuracy":77,"num_passes":405,"passes_completed":311,"distance_covered":103,"balls_recovered":46,"tackles":7,"clearances":24,"yellow_cards":2,"red_cards":0,"fouls_committed":11,"tactics":"4-2-3-1","starting_eleven":[{"name":"Hugo LLORIS","captain":true,"shirt_number":1,"position":"Goalie"},{"name":"Benjamin PAVARD","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Raphael VARANE","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Samuel UMTITI","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Paul POGBA","captain":false,"shirt_number":6,"position":"Midfield"},{"name":"Antoine GRIEZMANN","captain":false,"shirt_number":7,"position":"Forward"},{"name":"Olivier GIROUD","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Kylian MBAPPE","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Ngolo KANTE","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Blaise MATUIDI","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Lucas HERNANDEZ","captain":false,"shirt_number":21,"position":"Defender"}],"substitutes":[{"name":"Presnel KIMPEMBE","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Thomas LEMAR","captain":false,"shirt_number":8,"position":"Forward"},{"name":"Ousmane DEMBELE","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Corentin TOLISSO","captain":false,"shirt_number":12,"position":"Midfield"},{"name":"Steven NZONZI","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Steve MANDANDA","captain":false,"shirt_number":16,"position":"Goalie"},{"name":"Adil RAMI","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Nabil FEKIR","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Djibril SIDIBE","captain":false,"shirt_number":19,"position":"Defender"},{"name":"Florian THAUVIN","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Benjamin MENDY","captain":false,"shirt_number":22,"position":"Defender"},{"name":"Alphonse AREOLA","captain":false,"shirt_number":23,"position":"Goalie"}]},"away_team_statistics":{"country":"Peru","attempts_on_goal":10,"on_target":2,"off_target":6,"blocked":2,"woodwork":1,"corners":3,"offsides":1,"ball_possession":56,"pass_accuracy":81,"num_passes":532,"passes_completed":431,"distance_covered":102,"balls_recovered":44,"tackles":15,"clearances":17,"yellow_cards":2,"red_cards":0,"fouls_committed":15,"tactics":"4-2-3-1","starting_eleven":[{"name":"Pedro GALLESE","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Alberto RODRIGUEZ","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Miguel TRAUCO","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Christian CUEVA","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Paolo GUERRERO","captain":true,"shirt_number":9,"position":"Forward"},{"name":"Christian RAMOS","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Luis ADVINCULA","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Andre CARRILLO","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Yoshimar YOTUN","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Edison FLORES","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Pedro AQUINO","captain":false,"shirt_number":23,"position":"Midfield"}],"substitutes":[{"name":"Aldo CORZO","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Anderson SANTAMARIA","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Miguel ARAUJO","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Paolo HURTADO","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Jefferson FARFAN","captain":false,"shirt_number":10,"position":"Forward"},{"name":"Raul RUIDIAZ","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Carlos CACEDA","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Renato TAPIA","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Andy POLO","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Wilder CARTAGENA","captain":false,"shirt_number":16,"position":"Midfield"},{"name":"Jose CARVALLO","captain":false,"shirt_number":21,"position":"Goalie"},{"name":"Nilson LOYOLA","captain":false,"shirt_number":22,"position":"Defender"}]},"last_event_update_at":"2018-06-21T23:59:51Z","last_score_update_at":"2018-06-21T23:59:50Z"},{"venue":"Nizhny Novgorod","location":"Nizhny Novgorod Stadium","status":"completed","time":"full-time","fifa_id":"300331513","weather":{"humidity":"49","temp_celsius":"17","temp_farenheit":"49","wind_speed":"15","description":"Clear Night"},"attendance":"43319","officials":["Ravshan IRMATOV","Abdukhamidullo RASULOV","Jakhongir SAIDOV","Norbert HAUATA","Felix ZWAYER","Corey ROCKWELL","Bastian DANKERT","Danny MAKKELIE","Bertrand BRIAL"],"stage_name":"First stage","home_team_country":"Argentina","away_team_country":"Croatia","datetime":"2018-06-21T18:00:00Z","winner":"Croatia","winner_code":"CRO","home_team":{"country":"Argentina","code":"ARG","goals":0,"penalties":0},"away_team":{"country":"Croatia","code":"CRO","goals":3,"penalties":0},"home_team_events":[{"id":388,"type_of_event":"yellow-card","player":"Gabriel MERCADO","time":"51'"},{"id":390,"type_of_event":"substitution-out","player":"Sergio AGUERO","time":"54'"},{"id":391,"type_of_event":"substitution-in","player":"Gonzalo HIGUAIN","time":"54'"},{"id":389,"type_of_event":"substitution-out","player":"Eduardo SALVIO","time":"56'"},{"id":392,"type_of_event":"substitution-in","player":"Cristian PAVON","time":"56'"},{"id":398,"type_of_event":"substitution-out","player":"Enzo PEREZ","time":"68'"},{"id":399,"type_of_event":"substitution-in","player":"Paulo DYBALA","time":"68'"},{"id":405,"type_of_event":"yellow-card","player":"Nicolas OTAMENDI","time":"85'"},{"id":404,"type_of_event":"yellow-card","player":"Marcos ACUNA","time":"87'"}],"away_team_events":[{"id":387,"type_of_event":"yellow-card","player":"Ante REBIC","time":"39'"},{"id":393,"type_of_event":"goal","player":"Ante REBIC","time":"53'"},{"id":394,"type_of_event":"substitution-out","player":"Ante REBIC","time":"57'"},{"id":395,"type_of_event":"substitution-in","player":"Andrej KRAMARIC","time":"57'"},{"id":397,"type_of_event":"yellow-card","player":"Mario MANDZUKIC","time":"58'"},{"id":396,"type_of_event":"yellow-card","player":"Mario MANDZUKIC","time":"59'"},{"id":400,"type_of_event":"yellow-card","player":"Sime VRSALJKO","time":"67'"},{"id":402,"type_of_event":"goal","player":"Luka MODRIC","time":"80'"},{"id":401,"type_of_event":"substitution-out","player":"Ivan PERISIC","time":"82'"},{"id":403,"type_of_event":"substitution-in","player":"Mateo KOVACIC","time":"82'"},{"id":406,"type_of_event":"goal","player":"Ivan RAKITIC","time":"90'+1'"},{"id":407,"type_of_event":"substitution-out","player":"Mario MANDZUKIC","time":"90'+3'"},{"id":408,"type_of_event":"substitution-in","player":"Vedran CORLUKA","time":"90'+3'"},{"id":409,"type_of_event":"yellow-card","player":"Marcelo BROZOVIC","time":"90'+4'"},{"id":410,"type_of_event":"yellow-card","player":"Vedran CORLUKA","time":"90'+4'"}],"home_team_statistics":{"country":"Argentina","attempts_on_goal":10,"on_target":3,"off_target":3,"blocked":4,"woodwork":1,"corners":5,"offsides":3,"ball_possession":58,"pass_accuracy":81,"num_passes":505,"passes_completed":408,"distance_covered":101,"balls_recovered":35,"tackles":19,"clearances":24,"yellow_cards":3,"red_cards":0,"fouls_committed":15,"tactics":"3-4-3","starting_eleven":[{"name":"Wilfredo CABALLERO","captain":false,"shirt_number":23,"position":"Goalie"},{"name":"Gabriel MERCADO","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Nicolas TAGLIAFICO","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Marcos ACUNA","captain":false,"shirt_number":8,"position":"Defender"},{"name":"Lionel MESSI","captain":true,"shirt_number":10,"position":"Forward"},{"name":"Maximiliano MEZA","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Javier MASCHERANO","captain":false,"shirt_number":14,"position":"Defender"},{"name":"Enzo PEREZ","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Nicolas OTAMENDI","captain":false,"shirt_number":17,"position":"Defender"},{"name":"Eduardo SALVIO","captain":false,"shirt_number":18,"position":"Defender"},{"name":"Sergio AGUERO","captain":false,"shirt_number":19,"position":"Forward"}],"substitutes":[{"name":"Nahuel GUZMAN","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Cristian ANSALDI","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Lucas BIGLIA","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"Federico FAZIO","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Ever BANEGA","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Gonzalo HIGUAIN","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Angel DI MARIA","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Franco ARMANI","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Marcos ROJO","captain":false,"shirt_number":16,"position":"Defender"},{"name":"Giovani LO CELSO","captain":false,"shirt_number":20,"position":"Midfield"},{"name":"Paulo DYBALA","captain":false,"shirt_number":21,"position":"Forward"},{"name":"Cristian PAVON","captain":false,"shirt_number":22,"position":"Midfield"}]},"away_team_statistics":{"country":"Croatia","attempts_on_goal":15,"on_target":5,"off_target":6,"blocked":4,"woodwork":1,"corners":2,"offsides":3,"ball_possession":42,"pass_accuracy":80,"num_passes":372,"passes_completed":296,"distance_covered":104,"balls_recovered":34,"tackles":13,"clearances":19,"yellow_cards":4,"red_cards":0,"fouls_committed":23,"tactics":"4-2-3-1","starting_eleven":[{"name":"Danijel SUBASIC","captain":false,"shirt_number":23,"position":"Goalie"},{"name":"Sime VRSALJKO","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Ivan STRINIC","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Ivan PERISIC","captain":false,"shirt_number":4,"position":"Forward"},{"name":"Dejan LOVREN","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Ivan RAKITIC","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Luka MODRIC","captain":true,"shirt_number":10,"position":"Midfield"},{"name":"Marcelo BROZOVIC","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"Mario MANDZUKIC","captain":false,"shirt_number":17,"position":"Forward"},{"name":"Ante REBIC","captain":false,"shirt_number":18,"position":"Forward"},{"name":"Domagoj VIDA","captain":false,"shirt_number":21,"position":"Defender"}],"substitutes":[{"name":"Dominik LIVAKOVIC","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Vedran CORLUKA","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Mateo KOVACIC","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Andrej KRAMARIC","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Lovre KALINIC","captain":false,"shirt_number":12,"position":"Goalie"},{"name":"Tin JEDVAJ","captain":false,"shirt_number":13,"position":"Defender"},{"name":"Filip BRADARIC","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Duje CALETA-CAR","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Milan BADELJ","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Marko PJACA","captain":false,"shirt_number":20,"position":"Forward"},{"name":"Josip PIVARIC","captain":false,"shirt_number":22,"position":"Defender"},{"name":"Nikola KALINIC","captain":false,"shirt_number":16,"position":"Forward"}]},"last_event_update_at":"2018-06-21T23:59:57Z","last_score_update_at":"2018-06-21T23:59:57Z"},{"venue":"St. Petersburg","location":"Saint Petersburg Stadium","status":"completed","time":"full-time","fifa_id":"300331540","weather":{"humidity":"70","temp_celsius":"19","temp_farenheit":"51","wind_speed":"19","description":"Cloudy"},"attendance":"64468","officials":["Bjorn KUIPERS","Sander VAN ROEKEL","Erwin ZEINSTRA","Damir SKOMINA","Danny MAKKELIE","Joe FLETCHER","Artur DIAS","Mark GEIGER","Jure PRAPROTNIK"],"stage_name":"First stage","home_team_country":"Brazil","away_team_country":"Costa Rica","datetime":"2018-06-22T12:00:00Z","winner":"Brazil","winner_code":"BRA","home_team":{"country":"Brazil","code":"BRA","goals":2,"penalties":0},"away_team":{"country":"Costa Rica","code":"CRC","goals":0,"penalties":0},"home_team_events":[{"id":411,"type_of_event":"substitution-out","player":"WILLIAN","time":"46'"},{"id":412,"type_of_event":"substitution-in","player":"DOUGLAS COSTA","time":"46'"},{"id":415,"type_of_event":"substitution-out","player":"PAULINHO","time":"68'"},{"id":416,"type_of_event":"substitution-in","player":"ROBERTO FIRMINO","time":"68'"},{"id":419,"type_of_event":"yellow-card","player":"NEYMAR","time":"81'"},{"id":420,"type_of_event":"yellow-card","player":"PHILIPPE COUTINHO","time":"81'"},{"id":424,"type_of_event":"substitution-out","player":"GABRIEL JESUS","time":"90'+3'"},{"id":425,"type_of_event":"goal","player":"PHILIPPE COUTINHO","time":"90'+1'"},{"id":426,"type_of_event":"substitution-in","player":"FERNANDINHO","time":"90'+3'"},{"id":427,"type_of_event":"goal","player":"NEYMAR","time":"90'+7'"}],"away_team_events":[{"id":413,"type_of_event":"substitution-out","player":"Marcos URENA","time":"54'"},{"id":414,"type_of_event":"substitution-in","player":"Christian BOLANOS","time":"54'"},{"id":417,"type_of_event":"substitution-out","player":"Cristian GAMBOA","time":"75'"},{"id":418,"type_of_event":"substitution-in","player":"Francisco CALVO","time":"75'"},{"id":421,"type_of_event":"substitution-out","player":"David GUZMAN","time":"83'"},{"id":422,"type_of_event":"substitution-in","player":"Yeltsin TEJEDA","time":"83'"},{"id":423,"type_of_event":"yellow-card","player":"Johnny ACOSTA","time":"84'"}],"home_team_statistics":{"country":"Brazil","attempts_on_goal":23,"on_target":9,"off_target":9,"blocked":5,"woodwork":1,"corners":10,"offsides":3,"ball_possession":69,"pass_accuracy":87,"num_passes":728,"passes_completed":635,"distance_covered":104,"balls_recovered":43,"tackles":7,"clearances":13,"yellow_cards":2,"red_cards":0,"fouls_committed":11,"tactics":"4-2-3-1","starting_eleven":[{"name":"ALISSON","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"THIAGO SILVA","captain":true,"shirt_number":2,"position":"Defender"},{"name":"MIRANDA","captain":false,"shirt_number":3,"position":"Defender"},{"name":"CASEMIRO","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"GABRIEL JESUS","captain":false,"shirt_number":9,"position":"Forward"},{"name":"NEYMAR","captain":false,"shirt_number":10,"position":"Forward"},{"name":"PHILIPPE COUTINHO","captain":false,"shirt_number":11,"position":"Midfield"},{"name":"MARCELO","captain":false,"shirt_number":12,"position":"Defender"},{"name":"PAULINHO","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"WILLIAN","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"FAGNER","captain":false,"shirt_number":22,"position":"Defender"}],"substitutes":[{"name":"PEDRO GEROMEL","captain":false,"shirt_number":4,"position":"Defender"},{"name":"FILIPE LUIS","captain":false,"shirt_number":6,"position":"Defender"},{"name":"DOUGLAS COSTA","captain":false,"shirt_number":7,"position":"Forward"},{"name":"RENATO AUGUSTO","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"MARQUINHOS","captain":false,"shirt_number":13,"position":"Defender"},{"name":"CASSIO","captain":false,"shirt_number":16,"position":"Goalie"},{"name":"FERNANDINHO","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"FRED","captain":false,"shirt_number":18,"position":"Midfield"},{"name":"ROBERTO FIRMINO","captain":false,"shirt_number":20,"position":"Forward"},{"name":"TAISON","captain":false,"shirt_number":21,"position":"Forward"},{"name":"EDERSON","captain":false,"shirt_number":23,"position":"Goalie"},{"name":"DANILO","captain":false,"shirt_number":14,"position":"Defender"}]},"away_team_statistics":{"country":"Costa Rica","attempts_on_goal":4,"on_target":0,"off_target":4,"blocked":0,"woodwork":0,"corners":1,"offsides":3,"ball_possession":31,"pass_accuracy":66,"num_passes":277,"passes_completed":182,"distance_covered":109,"balls_recovered":36,"tackles":11,"clearances":41,"yellow_cards":1,"red_cards":0,"fouls_committed":11,"tactics":"5-4-1","starting_eleven":[{"name":"Keylor NAVAS","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Johnny ACOSTA","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Giancarlo GONZALEZ","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Celso BORGES","captain":false,"shirt_number":5,"position":"Midfield"},{"name":"Oscar DUARTE","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Bryan OVIEDO","captain":false,"shirt_number":8,"position":"Defender"},{"name":"Bryan RUIZ","captain":true,"shirt_number":10,"position":"Midfield"},{"name":"Johan VENEGAS","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Cristian GAMBOA","captain":false,"shirt_number":16,"position":"Defender"},{"name":"David GUZMAN","captain":false,"shirt_number":20,"position":"Midfield"},{"name":"Marcos URENA","captain":false,"shirt_number":21,"position":"Forward"}],"substitutes":[{"name":"Ian SMITH","captain":false,"shirt_number":4,"position":"Defender"},{"name":"Christian BOLANOS","captain":false,"shirt_number":7,"position":"Midfield"},{"name":"Daniel COLINDRES","captain":false,"shirt_number":9,"position":"Midfield"},{"name":"Joel CAMPBELL","captain":false,"shirt_number":12,"position":"Forward"},{"name":"Rodney WALLACE","captain":false,"shirt_number":13,"position":"Midfield"},{"name":"Randall AZOFEIFA","captain":false,"shirt_number":14,"position":"Midfield"},{"name":"Francisco CALVO","captain":false,"shirt_number":15,"position":"Defender"},{"name":"Yeltsin TEJEDA","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Patrick PEMBERTON","captain":false,"shirt_number":18,"position":"Goalie"},{"name":"Kendall WASTON","captain":false,"shirt_number":19,"position":"Defender"},{"name":"Kenner GUTIERREZ","captain":false,"shirt_number":22,"position":"Defender"},{"name":"Leonel MOREIRA","captain":false,"shirt_number":23,"position":"Goalie"}]},"last_event_update_at":"2018-06-22T13:55:03Z","last_score_update_at":"2018-06-22T13:55:03Z"},{"venue":"Volgograd","location":"Volgograd Arena","status":"completed","time":"full-time","fifa_id":"300331497","weather":{"humidity":"19","temp_celsius":"32","temp_farenheit":"64","wind_speed":"2","description":"Sunny"},"attendance":"40904","officials":["Matt CONGER","Simon LOUNT","Tevita MAKASINI","Ricardo MONTERO","Massimiliano IRRATI","Elenito DI LIBERATORE","Pawel GIL","Gianluca ROCCHI","Hiroshi YAMAUCHI"],"stage_name":"First stage","home_team_country":"Nigeria","away_team_country":"Iceland","datetime":"2018-06-22T15:00:00Z","winner":"Nigeria","winner_code":"NGA","home_team":{"country":"Nigeria","code":"NGA","goals":2,"penalties":0},"away_team":{"country":"Iceland","code":"ISL","goals":0,"penalties":0},"home_team_events":[{"id":428,"type_of_event":"yellow-card","player":"Bryan IDOWU","time":"44'"},{"id":429,"type_of_event":"substitution-out","player":"Bryan IDOWU","time":"46'"},{"id":431,"type_of_event":"substitution-in","player":"Tyronne EBUEHI","time":"46'"},{"id":430,"type_of_event":"goal","player":"Ahmed MUSA","time":"49'"},{"id":436,"type_of_event":"goal","player":"Ahmed MUSA","time":"75'"},{"id":437,"type_of_event":"substitution-out","player":"Kelechi IHEANACHO","time":"85'"},{"id":438,"type_of_event":"substitution-in","player":"Odion IGHALO","time":"85'"},{"id":441,"type_of_event":"substitution-out","player":"Oghenekaro ETEBO","time":"90'"},{"id":442,"type_of_event":"substitution-in","player":"Alex IWOBI","time":"90'"}],"away_team_events":[{"id":432,"type_of_event":"substitution-out","player":"Ragnar SIGURDSSON","time":"65'"},{"id":433,"type_of_event":"substitution-in","player":"Sverrir INGASON","time":"65'"},{"id":434,"type_of_event":"substitution-out","player":"Jon BODVARSSON","time":"71'"},{"id":435,"type_of_event":"substitution-in","player":"Bjorn SIGURDARSON","time":"71'"},{"id":439,"type_of_event":"substitution-out","player":"Aron GUNNARSSON","time":"87'"},{"id":440,"type_of_event":"substitution-in","player":"Ari SKULASON","time":"87'"}],"home_team_statistics":{"country":"Nigeria","attempts_on_goal":16,"on_target":4,"off_target":6,"blocked":6,"woodwork":1,"corners":6,"offsides":1,"ball_possession":57,"pass_accuracy":82,"num_passes":487,"passes_completed":398,"distance_covered":100,"balls_recovered":41,"tackles":6,"clearances":39,"yellow_cards":1,"red_cards":0,"fouls_committed":10,"tactics":"3-5-2","starting_eleven":[{"name":"Francis UZOHO","captain":false,"shirt_number":23,"position":"Goalie"},{"name":"Bryan IDOWU","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Wilfred NDIDI","captain":false,"shirt_number":4,"position":"Midfield"},{"name":"William EKONG","captain":false,"shirt_number":5,"position":"Defender"},{"name":"Leon BALOGUN","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Ahmed MUSA","captain":false,"shirt_number":7,"position":"Forward"},{"name":"Oghenekaro ETEBO","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"John Obi MIKEL","captain":true,"shirt_number":10,"position":"Midfield"},{"name":"Victor MOSES","captain":false,"shirt_number":11,"position":"Forward"},{"name":"Kelechi IHEANACHO","captain":false,"shirt_number":14,"position":"Forward"},{"name":"Kenneth OMERUO","captain":false,"shirt_number":22,"position":"Defender"}],"substitutes":[{"name":"Ikechukwu EZENWA","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Elderson ECHIEJILE","captain":false,"shirt_number":3,"position":"Defender"},{"name":"Odion IGHALO","captain":false,"shirt_number":9,"position":"Forward"},{"name":"Abdullahi SHEHU","captain":false,"shirt_number":12,"position":"Defender"},{"name":"Simeon NWANKWO","captain":false,"shirt_number":13,"position":"Forward"},{"name":"Joel OBI","captain":false,"shirt_number":15,"position":"Midfield"},{"name":"Daniel AKPEYI","captain":false,"shirt_number":16,"position":"Goalie"},{"name":"Ogenyi ONAZI","captain":false,"shirt_number":17,"position":"Midfield"},{"name":"Alex IWOBI","captain":false,"shirt_number":18,"position":"Forward"},{"name":"John OGU","captain":false,"shirt_number":19,"position":"Midfield"},{"name":"Chidozie AWAZIEM","captain":false,"shirt_number":20,"position":"Defender"},{"name":"Tyronne EBUEHI","captain":false,"shirt_number":21,"position":"Defender"}]},"away_team_statistics":{"country":"Iceland","attempts_on_goal":10,"on_target":3,"off_target":6,"blocked":1,"woodwork":0,"corners":5,"offsides":0,"ball_possession":43,"pass_accuracy":69,"num_passes":319,"passes_completed":220,"distance_covered":106,"balls_recovered":49,"tackles":8,"clearances":27,"yellow_cards":0,"red_cards":0,"fouls_committed":9,"tactics":"4-4-2","starting_eleven":[{"name":"Hannes HALLDORSSON","captain":false,"shirt_number":1,"position":"Goalie"},{"name":"Birkir SAEVARSSON","captain":false,"shirt_number":2,"position":"Defender"},{"name":"Ragnar SIGURDSSON","captain":false,"shirt_number":6,"position":"Defender"},{"name":"Birkir BJARNASON","captain":false,"shirt_number":8,"position":"Midfield"},{"name":"Gylfi SIGURDSSON","captain":false,"shirt_number":10,"position":"Midfield"},{"name":"Alfred FINNBOGASON","captain":false,"shirt_number":11,"position":"Forwar
Download .txt
gitextract_xldk5i0j/

├── .babelrc
├── .editorconfig
├── .eslintrc
├── .gitignore
├── .npmignore
├── .travis.yml
├── Dockerfile
├── LICENSE
├── README.md
├── bin/
│   └── wc2018
├── fixtures/
│   ├── group_results.json
│   ├── match.json
│   └── matches.json
├── package.json
└── src/
    ├── api/
    │   ├── fixtures.js
    │   └── prod.js
    ├── components/
    │   ├── Dashboard/
    │   │   └── Dashboard.jsx
    │   ├── GroupList/
    │   │   ├── GroupDetails/
    │   │   │   └── GroupDetails.jsx
    │   │   ├── GroupList.jsx
    │   │   ├── GroupList.spec.jsx
    │   │   └── __snapshots__/
    │   │       └── GroupList.spec.jsx.snap
    │   ├── MatchDetails/
    │   │   ├── MatchDetails.jsx
    │   │   ├── MatchEvents/
    │   │   │   └── MatchEvents.jsx
    │   │   └── MatchTeamScoreboard/
    │   │       └── MatchTeamScoreboard.jsx
    │   └── MatchNav/
    │       ├── MatchNav.jsx
    │       ├── MatchNav.spec.jsx
    │       └── MatchNavItem/
    │           └── MatchNavItem.jsx
    ├── config.js
    ├── format/
    │   ├── country-name-colors.js
    │   ├── flag-colors.js
    │   ├── format.js
    │   └── format.spec.js
    ├── index.jsx
    ├── moment.js
    └── notifications/
        ├── EventTracker.js
        ├── __tests__/
        │   └── EventTracker.js
        └── notifier.js
Download .txt
SYMBOL INDEX (28 symbols across 4 files)

FILE: src/components/Dashboard/Dashboard.jsx
  class Dashboard (line 34) | class Dashboard extends Component {
    method constructor (line 35) | constructor(props) {
    method componentDidMount (line 44) | componentDidMount() {
    method matchDetails (line 52) | get matchDetails() {
    method groups (line 67) | get groups() {
    method matchNav (line 74) | get matchNav() {
    method addKeyPressListeners (line 89) | addKeyPressListeners() {
    method updateGroups (line 123) | async updateGroups() {
    method updateMatches (line 137) | async updateMatches() {
    method render (line 153) | render() {

FILE: src/components/MatchDetails/MatchTeamScoreboard/MatchTeamScoreboard.jsx
  class MatchTeamScoreboard (line 7) | class MatchTeamScoreboard extends Component {
    method goalsLeftPosition (line 8) | get goalsLeftPosition() {
    method render (line 16) | render() {

FILE: src/format/format.js
  function getColoredCountryName (line 7) | function getColoredCountryName(countryName) {
  function getFormattedShortCountryName (line 14) | function getFormattedShortCountryName(countryName, fifaCode) {
  function getFormattedScore (line 21) | function getFormattedScore(match) {
  function getShortFormattedNonCompletedMatch (line 25) | function getShortFormattedNonCompletedMatch(match) {
  function getFormattedTeamCodeForCompletedMatch (line 29) | function getFormattedTeamCodeForCompletedMatch(teamCode, winnerCode) {
  function getShortFormattedCompletedMatch (line 36) | function getShortFormattedCompletedMatch(match) {
  function getShortFormattedMatch (line 46) | function getShortFormattedMatch(match) {
  function getFormattedDatetime (line 53) | function getFormattedDatetime(match, displayMinuteIfLive = false) {
  function getEventTypeFriendlyName (line 63) | function getEventTypeFriendlyName(eventType) {
  function getFormattedMatchEventLeft (line 83) | function getFormattedMatchEventLeft(event) {
  function getFormattedMatchEventRight (line 89) | function getFormattedMatchEventRight(event) {
  function getShortStageName (line 95) | function getShortStageName(match) {

FILE: src/notifications/EventTracker.js
  class EventTracker (line 69) | class EventTracker {
    method constructor (line 70) | constructor() {
    method findNewEvents (line 74) | findNewEvents(matches) {
Condensed preview — 37 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (581K chars).
[
  {
    "path": ".babelrc",
    "chars": 104,
    "preview": "{\n  \"presets\": [\n    [\"env\", {\n      \"targets\": {\n        \"node\": \"6\"\n      }\n    }],\n    \"react\"\n  ]\n}\n"
  },
  {
    "path": ".editorconfig",
    "chars": 170,
    "preview": "root = true\n\n[*]\nindent_style = space\nindent_size = 2\ncharset = utf-8\ntrim_trailing_whitespace = true\ninsert_final_newli"
  },
  {
    "path": ".eslintrc",
    "chars": 365,
    "preview": "\n{\n  extends: ['airbnb', 'prettier'],\n  plugins: ['prettier'],\n  rules: {\n    'prettier/prettier': [\n      'error',\n    "
  },
  {
    "path": ".gitignore",
    "chars": 71,
    "preview": "node_modules\n.idea\n.DS_Store\nnpm-debug.log\nyarn-error.log\n.vscode\ndist\n"
  },
  {
    "path": ".npmignore",
    "chars": 85,
    "preview": "node_modules\n.idea\n.DS_Store\nnpm-debug.log\nyarn-error.log\n.vscode\nscreenshot.jpg\nsrc\n"
  },
  {
    "path": ".travis.yml",
    "chars": 173,
    "preview": "language: node_js\n\nnode_js:\n  - 8\n\ndist: trusty\n\nbefore_install:\n  - sudo apt-get -qq update\n\nsudo: false\n\nscript:\n  - y"
  },
  {
    "path": "Dockerfile",
    "chars": 592,
    "preview": "FROM node:8-slim\n\nRUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y locales \\\n    && sed -i -e 's/"
  },
  {
    "path": "LICENSE",
    "chars": 1072,
    "preview": "MIT License\n\nCopyright (c) 2017 Cédric Blondeau\n\nPermission is hereby granted, free of charge, to any person obtaining a"
  },
  {
    "path": "README.md",
    "chars": 2815,
    "preview": "<p align=\"center\">\n  <strong>Check out the 2022 dashboard: <a href=\"https://github.com/cedricblondeau/world-cup-2022-cli"
  },
  {
    "path": "bin/wc2018",
    "chars": 49,
    "preview": "#!/usr/bin/env node\nrequire('../dist/index.js');\n"
  },
  {
    "path": "fixtures/group_results.json",
    "chars": 12342,
    "preview": "[\n  {\n    \"id\": 1,\n    \"letter\": \"A\",\n    \"ordered_teams\": [\n      {\n        \"id\": 4,\n        \"country\": \"Uruguay\",\n    "
  },
  {
    "path": "fixtures/match.json",
    "chars": 11700,
    "preview": "{\n  \"venue\": \"Kazan\",\n  \"location\": \"Kazan Arena\",\n  \"status\": \"completed\",\n  \"time\": \"full-time\",\n  \"fifa_id\": \"3003315"
  },
  {
    "path": "fixtures/matches.json",
    "chars": 441760,
    "preview": "[{\"venue\":\"Moscow\",\"location\":\"Luzhniki Stadium\",\"status\":\"completed\",\"time\":\"full-time\",\"fifa_id\":\"300331503\",\"weather\""
  },
  {
    "path": "package.json",
    "chars": 1403,
    "preview": "{\n  \"name\": \"world-cup-cli-dashboard\",\n  \"version\": \"1.7.1\",\n  \"main\": \"dist/index.js\",\n  \"module\": \"src/index.jsx\",\n  \""
  },
  {
    "path": "src/api/fixtures.js",
    "chars": 255,
    "preview": "import groupFixtures from '../../fixtures/group_results.json';\nimport matchFixtures from '../../fixtures/matches.json';\n"
  },
  {
    "path": "src/api/prod.js",
    "chars": 256,
    "preview": "import matchFixtures from '../../fixtures/matches.json';\nimport groupFixtures from '../../fixtures/group_results.json';\n"
  },
  {
    "path": "src/components/Dashboard/Dashboard.jsx",
    "chars": 4625,
    "preview": "import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nimport config from '../../config';\nimport"
  },
  {
    "path": "src/components/GroupList/GroupDetails/GroupDetails.jsx",
    "chars": 932,
    "preview": "import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { getFormattedShortCountryName } from '../../../f"
  },
  {
    "path": "src/components/GroupList/GroupList.jsx",
    "chars": 608,
    "preview": "import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport GroupDetails from './GroupDetails/GroupDetails';\n"
  },
  {
    "path": "src/components/GroupList/GroupList.spec.jsx",
    "chars": 401,
    "preview": "import React from 'react';\nimport TestRenderer from 'react-test-renderer';\n\nimport groups from '../../../fixtures/group_"
  },
  {
    "path": "src/components/GroupList/__snapshots__/GroupList.spec.jsx.snap",
    "chars": 2951,
    "preview": "// Jest Snapshot v1, https://goo.gl/fbAQLP\n\nexports[`<GroupList> Renders properly 1`] = `\n<element\n  height={6}\n  left=\""
  },
  {
    "path": "src/components/MatchDetails/MatchDetails.jsx",
    "chars": 1346,
    "preview": "import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { getFormattedDatetime } from '../../format/forma"
  },
  {
    "path": "src/components/MatchDetails/MatchEvents/MatchEvents.jsx",
    "chars": 706,
    "preview": "import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport {\n  getFormattedMatchEventLeft,\n  getFormattedMat"
  },
  {
    "path": "src/components/MatchDetails/MatchTeamScoreboard/MatchTeamScoreboard.jsx",
    "chars": 1384,
    "preview": "import PropTypes from 'prop-types';\nimport React, { Component } from 'react';\n\nimport { getColoredCountryName } from '.."
  },
  {
    "path": "src/components/MatchNav/MatchNav.jsx",
    "chars": 1716,
    "preview": "import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport MatchNavItem from './MatchNavItem/MatchNavItem';\n"
  },
  {
    "path": "src/components/MatchNav/MatchNav.spec.jsx",
    "chars": 3883,
    "preview": "import React from 'react';\nimport TestRenderer from 'react-test-renderer';\n\nimport matchFixture from '../../../fixtures/"
  },
  {
    "path": "src/components/MatchNav/MatchNavItem/MatchNavItem.jsx",
    "chars": 1122,
    "preview": "import chalk from 'chalk';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {\n  getShortFormattedM"
  },
  {
    "path": "src/config.js",
    "chars": 142,
    "preview": "export default {\n  shouldUseFixtures: process.env.USE_FIXTURES === '1',\n  shouldPostNotifications: process.env.POST_NOTI"
  },
  {
    "path": "src/format/country-name-colors.js",
    "chars": 890,
    "preview": "export default {\n  'Korea Republic': 'bgRed.white',\n  Germany: 'bgGreen.white',\n  Serbia: 'bgWhite.red',\n  'Costa Rica':"
  },
  {
    "path": "src/format/flag-colors.js",
    "chars": 643,
    "preview": "export default {\n  'Korea Republic': 'red',\n  Germany: 'green',\n  Serbia: 'red',\n  'Costa Rica': 'red',\n  Poland: 'red',"
  },
  {
    "path": "src/format/format.js",
    "chars": 3258,
    "preview": "import chalk from 'chalk';\n\nimport countryNameColors from './country-name-colors';\nimport flagColors from './flag-colors"
  },
  {
    "path": "src/format/format.spec.js",
    "chars": 1664,
    "preview": "import chalk from 'chalk';\n\nimport {\n  getShortStageName,\n  getFormattedDatetime,\n  getColoredCountryName,\n  getFormatte"
  },
  {
    "path": "src/index.jsx",
    "chars": 508,
    "preview": "import React from 'react';\nimport blessed from 'blessed';\nimport { render } from 'react-blessed';\n\nimport Dashboard from"
  },
  {
    "path": "src/moment.js",
    "chars": 276,
    "preview": "import moment from 'moment';\n\nmoment.updateLocale('en', {\n  calendar: {\n    lastDay: '[Yesterday at] LT',\n    sameDay: '"
  },
  {
    "path": "src/notifications/EventTracker.js",
    "chars": 2791,
    "preview": "const byFifaId = fifaId => match => match.fifa_id === fifaId;\n\nconst isInProgress = match => match.status === 'in progre"
  },
  {
    "path": "src/notifications/__tests__/EventTracker.js",
    "chars": 3277,
    "preview": "import EventTracker from '../EventTracker';\nimport matchFixtures from '../../../fixtures/matches.json';\n\nlet eventTracke"
  },
  {
    "path": "src/notifications/notifier.js",
    "chars": 286,
    "preview": "import notifier from 'node-notifier';\n\nconst createNotification = event => ({\n  title: event.type_of_event,\n  message: `"
  }
]

About this extraction

This page contains the full source code of the cedricblondeau/world-cup-2018-cli-dashboard GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 37 files (494.7 KB), approximately 151.1k tokens, and a symbol index with 28 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!