set up viz
3
.gitignore
поставляемый
Обычный файл
@ -0,0 +1,3 @@
|
||||
.DS_Store
|
||||
node_modules/
|
||||
public/build/
|
||||
41
README.md
@ -1,2 +1,39 @@
|
||||
# interference2020
|
||||
Interference2020 Website
|
||||
# Interference2020
|
||||
> Interference2020 Website
|
||||
|
||||
This repository contains the visualization tool running at [interference2020.org](https://interference2020.org)
|
||||
|
||||
For the Interference2020 database, please go to [this repository]([/](https://github.com/DFRLab/interference2020-Data)).
|
||||
|
||||
## Research team
|
||||
[Emerson T. Brooking](https://twitter.com/etbrooking) (lead), [Alyssa Kann](https://twitter.com/AlyssaKann), [Max Rizzuto](https://twitter.com/maxbrizzuto), [Jacqueline Malaret](https://twitter.com/jacqumalaret), and Helen Simpson.
|
||||
|
||||
|
||||
## Design and Implementation
|
||||
[Matthias Stahl](https://higsch.com) (higsch | data & design)
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
## Architecture
|
||||
The data visualization has been built with HTML, CSS and JavaScript – heavily using the [Svelte](https://svelte.dev) frontend compiler. Interference data is dynamically pulled from a separate [data repository](/). The world map is pulled from [JSDELIVR](https://cdn.jsdelivr.net/npm/world-atlas@2/countries-50m.json) and uses the [World Atlas](https://www.npmjs.com/package/world-atlas) TopoJSON package. COVID-19 case and death numbers in the U.S. are collected from a repository managed by [The New York Times](https://github.com/nytimes/covid-19-data).
|
||||
|
||||
|
||||
## Run it locally
|
||||
|
||||
First install the dependencies. You will need to have [Node.js](https://nodejs.org) installed.
|
||||
|
||||
```bash
|
||||
git clone https://github.com/DFRLab/interference2020.git
|
||||
cd interference2020
|
||||
npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
Navigate to [localhost:5000](http://localhost:5000) in your browser.
|
||||
You should see the visualization running.
|
||||
|
||||
|
||||
|
||||
*Built in August & September 2020.*
|
||||
|
||||
12
babel.config.js
Обычный файл
@ -0,0 +1,12 @@
|
||||
module.exports = {
|
||||
presets: [
|
||||
[
|
||||
'@babel/preset-env',
|
||||
{
|
||||
useBuiltIns: 'usage',
|
||||
corejs: 3,
|
||||
targets: '> 0.25%, not dead'
|
||||
},
|
||||
],
|
||||
],
|
||||
};
|
||||
5854
package-lock.json
сгенерированный
Обычный файл
35
package.json
Обычный файл
@ -0,0 +1,35 @@
|
||||
{
|
||||
"name": "fiat-visualization",
|
||||
"version": "0.9.0",
|
||||
"scripts": {
|
||||
"build": "rollup -c",
|
||||
"dev": "rollup -c -w",
|
||||
"start": "sirv public"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.11.6",
|
||||
"@babel/plugin-transform-spread": "^7.11.0",
|
||||
"@babel/preset-env": "^7.11.5",
|
||||
"@rollup/plugin-commonjs": "^14.0.0",
|
||||
"@rollup/plugin-node-resolve": "^8.0.0",
|
||||
"common-tags": "^1.8.0",
|
||||
"cookies-eu-banner": "^2.0.1",
|
||||
"core-js": "^3.6.5",
|
||||
"d3": "^6.1.1",
|
||||
"d3fc-discontinuous-scale": "^2.0.5",
|
||||
"flubber": "^0.4.2",
|
||||
"lodash": "^4.17.20",
|
||||
"node-sass": "^4.14.1",
|
||||
"rollup": "^2.3.4",
|
||||
"rollup-plugin-babel": "^4.4.0",
|
||||
"rollup-plugin-livereload": "^1.0.0",
|
||||
"rollup-plugin-postcss": "^3.1.8",
|
||||
"rollup-plugin-svelte": "^5.0.3",
|
||||
"rollup-plugin-terser": "^7.0.0",
|
||||
"svelte": "^3.0.0",
|
||||
"topojson": "^3.0.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"sirv-cli": "^1.0.0"
|
||||
}
|
||||
}
|
||||
1
public/CNAME
Обычный файл
@ -0,0 +1 @@
|
||||
interference2020.org
|
||||
13
public/data/spots.csv
Обычный файл
@ -0,0 +1,13 @@
|
||||
event_name,date,description
|
||||
Presidential Election,11/3/2020,"On November 3, Americans will cast their vote for President of the United States. "
|
||||
Murder of George Floyd ,5/25/2020,"George Floyd, a 46-year-old African-American man, is murdered by Minneapolis police officers. Graphic video of his death ignites waves of racial justice protests across the United States. "
|
||||
Biden Secures Democratic Presidential Nomination,4/8/2020,"Senator Bernie Sanders (D-VT), the remaining challenger to former Vice President Joe Biden, suspends his campaign. Biden has secured the Democratic presidential nomination. "
|
||||
Super Tuesday,3/3/2020,Fourteen states hold party primaries. Vice President Joe Biden becomes the statistical favorite to win the Democratic presidential nomination.
|
||||
Trump Launches Re-Election Campaign,6/18/2019,President Trump formally announces the start of his re-election campaign.
|
||||
House Initiaties Impeachment Proceedings Against Trump,9/24/2019,"The House of Representatives initiates impeachment proceedings against President Trump, accusing him of abuse of power and obstruction of Congress. The charges follow revelations that Trump sought to use his powers to damage the candidacy of former Vice President Joe Biden. "
|
||||
House Votes to Impeach Trump ,12/18/2019,The House of Representatives votes to formally impeach President Trump. The vote falls largely along party lines.
|
||||
Iowa Caucuses,2/3/2020,"The Iowa Caucuses begin, marking the official start of voting in the Democratic primary contest. Technical failures leave the outcome of the vote in lingering doubt. "
|
||||
Biden Launches Presidential Campaign,4/25/2019,Former Vice President Joe Biden announces that he will seek the Democratic nomination for President of the United States. He joins a crowded field that will ultimately swell to 27 candidates.
|
||||
Midterm Election,11/8/2018,More than 122 million Americans participate in the 2018 midterm elections—the highest voter turnout in decades. The Democratic Party takes the majority in the House of Representatives. The Republican Party retains control of the Senate.
|
||||
First Mail-In Ballot Application Deadline,10/18/2020,"The first mail-in ballot application deadline (Rhode Island) falls on October 18. The final deadlines (Delaware, Georgia, Louisiana, Michigan) fall on October 30. "
|
||||
Senate Votes to Acquit Trump ,2/5/2020,"Following a contentious impeachment trial, the Senate votes to acquit President Trump on the charges of both abuse of power and obstruction of justice. One Republican senator defects to join the Democratic minority in support of impeachment. "
|
||||
|
465
public/global.css
Обычный файл
@ -0,0 +1,465 @@
|
||||
/* set the global variables */
|
||||
:root {
|
||||
/* CI */
|
||||
--dfrlab-green: #00857d;
|
||||
--dfrlab-gray: #7e8083;
|
||||
--dfrlab-lightgray: #cacaca;
|
||||
--dfrlab-lightlightgray: #ECE9E9;
|
||||
--dfrlab-silver: #bfb8af;
|
||||
--dfrlab-white: #ffffff;
|
||||
--dfrlab-black: #000000;
|
||||
|
||||
/* possible text colors */
|
||||
--text-black: #2a3035;
|
||||
--text-darkgray: #5e4a4a;
|
||||
--text-purple: #452f47;
|
||||
|
||||
/* flames */
|
||||
--flame-03: #c26e8d;
|
||||
--flame-02: #d8808b;
|
||||
--flame-01: #e2a6ad;
|
||||
/* --flame-03: #a35b73;
|
||||
--flame-02: #f88773;
|
||||
--flame-01: #fac9b1; */
|
||||
|
||||
--usa-red: #b22234;
|
||||
--usa-lightred: #c5888f;
|
||||
--usa-lightlightred: #dbb6b6;
|
||||
/* --usa-lightlightred: #DBBCB6; */
|
||||
--usa-blue: #3c3b6e;
|
||||
--usa-lightblue: #8f8eaa;
|
||||
--usa-lightlightblue: #c9c7eb;
|
||||
--usa-green: #a3b4a2;
|
||||
/* --usa-red: #b22234; */
|
||||
|
||||
/* background */
|
||||
/* --bg: #e4dac7; */
|
||||
--bg: #F9F8F8;
|
||||
/* --bg: #eee9df; */
|
||||
--transparentbg: #F9F8F8cb;
|
||||
|
||||
/* fonts */
|
||||
--font-01: Volkhov, serif;
|
||||
--font-02: Quicksand, sans-serif;
|
||||
}
|
||||
|
||||
/* reset and page-wide settings */
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
html {
|
||||
-ms-overflow-style: -ms-autohiding-scrollbar;
|
||||
}
|
||||
|
||||
html, body {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: var(--bg);
|
||||
position: relative;
|
||||
pointer-events: all;
|
||||
}
|
||||
|
||||
#svelte-target {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
/* switch font size for different device widths */
|
||||
@media (min-width: 600px) {
|
||||
html,
|
||||
body {
|
||||
font-size: 15px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 980px) {
|
||||
html,
|
||||
body {
|
||||
font-size: 17px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1260px) {
|
||||
html,
|
||||
body {
|
||||
font-size: 18px;
|
||||
}
|
||||
}
|
||||
|
||||
/* general classes */
|
||||
.disable-select {
|
||||
user-select: none; /* supported by Chrome and Opera */
|
||||
-webkit-user-select: none; /* Safari */
|
||||
-khtml-user-select: none; /* Konqueror HTML */
|
||||
-moz-user-select: none; /* Firefox */
|
||||
-ms-user-select: none; /* Internet Explorer/Edge */
|
||||
}
|
||||
|
||||
a, span.pseudolink {
|
||||
color: var(--usa-blue);
|
||||
text-decoration: underline;
|
||||
cursor: pointer;
|
||||
transition: all 200ms ease;
|
||||
}
|
||||
|
||||
a:hover, span.pseudolink:hover {
|
||||
color: var(--usa-lightblue);
|
||||
}
|
||||
|
||||
.highlighted {
|
||||
margin: 0 -0.1rem;
|
||||
padding: 0 0.1rem;
|
||||
border: none;
|
||||
border-radius: 2px;
|
||||
background-color:#c95c68;
|
||||
}
|
||||
|
||||
.no-pointer-events {
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
/* social media categories */
|
||||
.facebook {
|
||||
fill: #4267b2;
|
||||
background-color: #4267b2a1;
|
||||
}
|
||||
|
||||
.twitter {
|
||||
fill: #1da1f2;
|
||||
background-color: #1da1f2a1;
|
||||
}
|
||||
|
||||
.reddit {
|
||||
fill: #e24545;
|
||||
background-color: #e24545a1;
|
||||
}
|
||||
|
||||
|
||||
/* the landing page */
|
||||
.page-wrapper {
|
||||
width: 100%;
|
||||
padding: 2rem 0;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
section {
|
||||
font-family: var(--font-02);
|
||||
}
|
||||
|
||||
.separator {
|
||||
width: 67%;
|
||||
max-width: 450px;
|
||||
margin: 1.5rem auto 1.5rem auto;
|
||||
border-bottom: 1px solid var(--dfrlab-gray);
|
||||
}
|
||||
|
||||
.separator.thicker {
|
||||
border-width: 2px;
|
||||
border-color: var(--usa-blue);
|
||||
}
|
||||
|
||||
.info-card {
|
||||
display: inline-block;
|
||||
margin: 0 -0.2rem 0 0.1rem;
|
||||
padding: 0 0.2rem;
|
||||
font-size: 0.9rem;
|
||||
font-weight: normal;
|
||||
color: var(--bg);
|
||||
border: none;
|
||||
border-radius: 2px;
|
||||
background-color: var(--usa-lightred);
|
||||
box-shadow: 0 1px 2px rgba(0,0,0,0.07),
|
||||
0 2px 4px rgba(0,0,0,0.07);
|
||||
transform: translateY(-0.5rem);
|
||||
}
|
||||
|
||||
.fiat-title-bg {
|
||||
width: 50%;
|
||||
max-width: 1100px;
|
||||
position: absolute;
|
||||
left: 50%;
|
||||
top: 30px;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
@media (min-width: 980px) {
|
||||
.fiat-title-bg {
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1260px) {
|
||||
.fiat-title-bg {
|
||||
top: -50px;
|
||||
}
|
||||
}
|
||||
|
||||
.fiat-title-bg img {
|
||||
width: 100%;
|
||||
position: relative;
|
||||
left: -50%;
|
||||
}
|
||||
|
||||
section.content.title {
|
||||
padding-top: 1rem;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
section.title .logos {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
height: 2.2rem;
|
||||
}
|
||||
|
||||
section.title .logos a {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
section.title .logos a:not(:last-child) {
|
||||
margin-right: 1rem;
|
||||
}
|
||||
|
||||
section.title .logos a img {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
section.title .logos a.smaller {
|
||||
height: 80%;
|
||||
}
|
||||
|
||||
section.content {
|
||||
width: 100%;
|
||||
max-width: 1100px;
|
||||
margin: 1rem auto;
|
||||
padding: 0 1.5rem;
|
||||
}
|
||||
|
||||
.no-lower-margin, section.no-lower-margin {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
section.no-upper-margin {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
section h1 {
|
||||
margin: 0.5rem 0 0 0;
|
||||
font-family: var(--font-01);
|
||||
font-size: 3rem;
|
||||
color: var(--usa-blue);
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
section h2, section h3 {
|
||||
color: var(--text-black);
|
||||
}
|
||||
|
||||
section h2 {
|
||||
margin: 0 0 1.5rem 0;
|
||||
font-size: 1.1rem;
|
||||
text-align: center;
|
||||
color: var(--usa-blue);
|
||||
}
|
||||
|
||||
section h3 {
|
||||
margin: 1.2rem 0 0 0;
|
||||
font-size: 1rem;
|
||||
font-weight: normal;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
section h4 {
|
||||
margin: 1rem 0 0 0;
|
||||
font-size: 0.9rem;
|
||||
font-weight: normal;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
section h5 {
|
||||
margin: 0.8rem 0 0 0;
|
||||
font-size: 0.85rem;
|
||||
font-weight: normal;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
section span.copy-tooltip {
|
||||
margin: 0 -0.15rem;
|
||||
padding: 0 0.15rem;
|
||||
border: none;
|
||||
border-radius: 2px;
|
||||
background-color: var(--dfrlab-lightgray);
|
||||
}
|
||||
|
||||
section p, section ul {
|
||||
margin: 0.7rem 0;
|
||||
font-size: 0.85rem;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
section p.center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
section p.smaller, section span.smaller {
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
|
||||
section p span.label {
|
||||
display: block;
|
||||
height: 100%;
|
||||
min-width: 7rem;
|
||||
}
|
||||
|
||||
@media (min-width: 600px) {
|
||||
section p span.label {
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
|
||||
section em {
|
||||
font-style: italic;
|
||||
text-decoration: none;
|
||||
color: var(--text-black);
|
||||
}
|
||||
|
||||
/* collapsibles */
|
||||
input.toggle[type='checkbox'] {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.lbl-toggle {
|
||||
display: block;
|
||||
margin-left: -0.3rem;
|
||||
padding: 0.2rem 0;
|
||||
font-size: 0.9rem;
|
||||
font-weight: normal;
|
||||
font-style: italic;
|
||||
color: var(--text-black);
|
||||
cursor: pointer;
|
||||
transition: all 200ms ease;
|
||||
}
|
||||
|
||||
.lbl-toggle.top {
|
||||
font-size: 0.85rem;
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.lbl-toggle::before {
|
||||
content: ' ';
|
||||
display: inline-block;
|
||||
border-top: 5px solid transparent;
|
||||
border-bottom: 5px solid transparent;
|
||||
border-left: 5px solid currentColor;
|
||||
vertical-align: middle;
|
||||
margin-top: 2px;
|
||||
transform: translateX(-0.6rem) translateY(-2px);
|
||||
transition: transform 200ms ease-out;
|
||||
}
|
||||
|
||||
.collapsible-content {
|
||||
max-height: 0px;
|
||||
overflow: hidden;
|
||||
transition: max-height 200ms ease-in-out;
|
||||
}
|
||||
|
||||
.collapsible-content h4, .collapsible-content h5 {
|
||||
margin: 1.2rem 1rem 0 1rem;
|
||||
}
|
||||
|
||||
.collapsible-content p {
|
||||
padding: 0 1rem;
|
||||
}
|
||||
|
||||
.toggle:checked + .lbl-toggle + .collapsible-content {
|
||||
max-height: 10000px;
|
||||
border: 1px solid var(--dfrlab-lightgray);
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
.toggle:checked + .lbl-toggle::before {
|
||||
transform: rotate(90deg) translateY(0.6rem);
|
||||
}
|
||||
|
||||
.toggle:checked + .lbl-toggle {
|
||||
border-bottom-right-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
}
|
||||
|
||||
section ul {
|
||||
padding: 0 2.5rem;
|
||||
list-style-type: disc;
|
||||
}
|
||||
|
||||
section ul li {
|
||||
margin: 0.2rem 0;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
section ul.inner {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
section ul.filter-list {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
padding: 0;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
section ul.filter-list li {
|
||||
margin: 0.2rem -0.1rem;
|
||||
padding: 0 0.1rem;
|
||||
color: var(--usa-blue);
|
||||
border-bottom: 2px solid var(--usa-blue);
|
||||
cursor: pointer;
|
||||
transition: all 200ms ease;
|
||||
}
|
||||
|
||||
section ul.filter-list li:hover {
|
||||
color: var(--bg);
|
||||
border-radius: 3px;
|
||||
background-color: var(--usa-lightblue);
|
||||
}
|
||||
|
||||
section ul.filter-list li:hover span.apply-filter {
|
||||
background-color: var(--usa-blue);
|
||||
}
|
||||
|
||||
section ol {
|
||||
padding: 0 2.5rem;
|
||||
list-style-type: decimal;
|
||||
counter-reset: section;
|
||||
}
|
||||
|
||||
section ol li {
|
||||
margin: 0.5rem 0;
|
||||
font-size: 0.85rem;
|
||||
line-height: 1.6;
|
||||
counter-increment: step-counter;
|
||||
content: counter(step-counter);
|
||||
}
|
||||
|
||||
footer {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
width: 100%;
|
||||
min-height: 3rem;
|
||||
margin-bottom: 1.5rem;
|
||||
}
|
||||
|
||||
footer a, footer p {
|
||||
margin: 0.2rem 0;
|
||||
font-family: var(--font-02);
|
||||
font-size: 0.7rem;
|
||||
text-align: center;
|
||||
text-decoration: none;
|
||||
}
|
||||
Двоичные данные
public/images/cases/025KQA5P.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 64 KiB |
Двоичные данные
public/images/cases/0R5N2DK5.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 48 KiB |
Двоичные данные
public/images/cases/0UG7TPJ6.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 235 KiB |
Двоичные данные
public/images/cases/1JRQ977C.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 272 KiB |
Двоичные данные
public/images/cases/20W6K0PZ.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 287 KiB |
Двоичные данные
public/images/cases/24DYHJXI.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 242 KiB |
Двоичные данные
public/images/cases/2VHOY7IC.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 126 KiB |
Двоичные данные
public/images/cases/32NQ6NQW.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 80 KiB |
Двоичные данные
public/images/cases/35JWSYN9.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 6.3 KiB |
Двоичные данные
public/images/cases/3WTUPUK1.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 73 KiB |
Двоичные данные
public/images/cases/44PI58XE.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 180 KiB |
Двоичные данные
public/images/cases/4B02962Z.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 13 KiB |
Двоичные данные
public/images/cases/4L5N3407.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 278 KiB |
Двоичные данные
public/images/cases/4TVIMK7Y.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 25 KiB |
Двоичные данные
public/images/cases/508A8K4X.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 235 KiB |
Двоичные данные
public/images/cases/53QRMVHS.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 126 KiB |
Двоичные данные
public/images/cases/5Q5D6SZO.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 122 KiB |
Двоичные данные
public/images/cases/5SP5O2PK.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 35 KiB |
Двоичные данные
public/images/cases/619P6SZ6.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 312 KiB |
Двоичные данные
public/images/cases/72SHQDJ4.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 108 KiB |
Двоичные данные
public/images/cases/7OREGDIV.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 49 KiB |
Двоичные данные
public/images/cases/8PPYXGVD.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 143 KiB |
Двоичные данные
public/images/cases/A1O7CILS.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 128 KiB |
Двоичные данные
public/images/cases/AT5BWCEZ.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 108 KiB |
Двоичные данные
public/images/cases/B2K8L2QM.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 13 KiB |
Двоичные данные
public/images/cases/B3RT49PV.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 56 KiB |
Двоичные данные
public/images/cases/B67Q8PAA.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 316 KiB |
Двоичные данные
public/images/cases/BGIP9QT3.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 235 KiB |
Двоичные данные
public/images/cases/CU6V8230.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 60 KiB |
Двоичные данные
public/images/cases/DHK75NES.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 70 KiB |
Двоичные данные
public/images/cases/E8YL4KIJ.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 51 KiB |
Двоичные данные
public/images/cases/ELWQ0IFJ.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 163 KiB |
Двоичные данные
public/images/cases/EPRR4RES.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 49 KiB |
Двоичные данные
public/images/cases/EWEDMP63.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 52 KiB |
Двоичные данные
public/images/cases/EWV49KEX.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 61 KiB |
Двоичные данные
public/images/cases/G7LNVVQF.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 146 KiB |
Двоичные данные
public/images/cases/GUVPTTS5.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 337 KiB |
Двоичные данные
public/images/cases/HJXZK59K.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 94 KiB |
Двоичные данные
public/images/cases/IAE7CREQ.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 68 KiB |
Двоичные данные
public/images/cases/K7AZA3CE.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 22 KiB |
Двоичные данные
public/images/cases/KE8U1VDO.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 300 KiB |
Двоичные данные
public/images/cases/L98UBEZR.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 321 KiB |
Двоичные данные
public/images/cases/M5L3A3M0.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 278 KiB |
Двоичные данные
public/images/cases/MZI4EHCS.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 173 KiB |
Двоичные данные
public/images/cases/NGORFHPJ.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 52 KiB |
Двоичные данные
public/images/cases/NNFS2A1Q.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 181 KiB |
Двоичные данные
public/images/cases/OC8PKLOR.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 28 KiB |
Двоичные данные
public/images/cases/QGYY2XPE.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 142 KiB |
Двоичные данные
public/images/cases/QHVF6C7V.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 312 KiB |
Двоичные данные
public/images/cases/QOTUZHN6.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 120 KiB |
Двоичные данные
public/images/cases/QVQ936DM.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 50 KiB |
Двоичные данные
public/images/cases/T6FALRDO.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 34 KiB |
Двоичные данные
public/images/cases/T81C4QVK.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 32 KiB |
Двоичные данные
public/images/cases/TCAVVVR4.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 40 KiB |
Двоичные данные
public/images/cases/TJ82BE1R.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 69 KiB |
Двоичные данные
public/images/cases/TUVODB5C.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 33 KiB |
Двоичные данные
public/images/cases/TZ3OU1FU.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 42 KiB |
Двоичные данные
public/images/cases/U4GQKN35.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 239 KiB |
Двоичные данные
public/images/cases/UCMQQ4SU.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 41 KiB |
Двоичные данные
public/images/cases/UIWBCVSM.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 260 KiB |
Двоичные данные
public/images/cases/V5TT6RXM.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 56 KiB |
Двоичные данные
public/images/cases/VO553UH8.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 175 KiB |
Двоичные данные
public/images/cases/W1U1SUQ9.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 14 KiB |
Двоичные данные
public/images/cases/WI5CM5LF.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 303 KiB |
Двоичные данные
public/images/cases/XBVGVN5V.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 50 KiB |
Двоичные данные
public/images/cases/XFSW02FX.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 30 KiB |
Двоичные данные
public/images/cases/XVMM45G3.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 166 KiB |
Двоичные данные
public/images/cases/Y8YL4NQH.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 156 KiB |
Двоичные данные
public/images/cases/YW777IWI.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 295 KiB |
Двоичные данные
public/images/cases/Z6BKMSE3.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 270 KiB |
27
public/images/logos/ac.svg
Обычный файл
@ -0,0 +1,27 @@
|
||||
<svg id="ba64b2dd-2bf5-4415-b16d-84e4edde708f" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" width="2.60764in" height="1.27606in" viewBox="0 0 187.75 91.8765">
|
||||
<defs>
|
||||
<style>
|
||||
.bc8a4bde-47d0-4119-971a-be761e7a1142 {
|
||||
fill: #231f20;
|
||||
}
|
||||
</style>
|
||||
</defs>
|
||||
<g>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M74.69339,51.835l-1.9688-4.8286h-9.1035l-1.9683,4.8286h-4.8281l9.2266-21.6816H70.418L79.64449,51.835Zm-6.5205-15.9922L65.313,42.8238h5.72019Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M87.11469,52.1114c-2.8603,0-4.7973-1.1372-4.7973-4.9512v-7.811h-1.9683V35.3501h1.9683V31.1372h4.6738v4.2129h3.8755v3.9991h-3.8755v7.0419c0,1.0767.4619,1.5992,1.5073,1.5992a4.76609,4.76609,0,0,0,2.3067-.5835v3.7519A6.89417,6.89417,0,0,1,87.11469,52.1114Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M94.52539,51.835V29.3843h4.6743V51.835Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M113.25339,51.835V50.0513a6.33954,6.33954,0,0,1-4.98239,2.0913c-3.106,0-5.65871-1.7842-5.65871-5.0439v-.0611c0-3.5986,2.7373-5.2592,6.6426-5.2592a11.7146,11.7146,0,0,1,4.0293.6762v-.2763c0-1.938-1.19919-3.0137-3.5366-3.0137a12.12153,12.12153,0,0,0-4.5518.8911l-1.1685-3.5674a14.54421,14.54421,0,0,1,6.3965-1.3227c5.105,0,7.3506,2.6455,7.3506,7.1045V51.835Zm.0923-6.6431a7.24831,7.24831,0,0,0-2.9834-.6152c-1.999,0-3.229.7998-3.229,2.2764v.061c0,1.2607,1.0454,1.999,2.55271,1.999,2.18359,0,3.65969-1.1992,3.65969-2.8911Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M132.22709,51.835V42.6392c0-2.2144-1.0464-3.3521-2.83009-3.3521s-2.92191,1.1377-2.92191,3.3521V51.835h-4.6738V35.3501h4.6738V37.688a5.83329,5.83329,0,0,1,4.8291-2.645c3.5366,0,5.5967,2.3374,5.5967,6.1201V51.835Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M146.52589,52.1114c-2.8604,0-4.7974-1.1372-4.7974-4.9512v-7.811h-1.9682V35.3501h1.9682V31.1372h4.6743v4.2129h3.875v3.9991h-3.875v7.0419c0,1.0767.4615,1.5992,1.5074,1.5992a4.76711,4.76711,0,0,0,2.3066-.5835v3.7519A6.89717,6.89717,0,0,1,146.52589,52.1114Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M153.813,33.5362V29.3843h4.92039v4.1519Zm.123,18.2988V35.3501h4.67439V51.835Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M170.78809,52.2041a8.41659,8.41659,0,0,1-8.58009-8.519v-.0615a8.46267,8.46267,0,0,1,8.64109-8.5806,8.10463,8.10463,0,0,1,6.5821,2.7681l-2.8609,3.0752a4.81459,4.81459,0,0,0-3.7519-1.8145,4.21177,4.21177,0,0,0-3.9976,4.4902v.0616c0,2.5215,1.6299,4.5512,4.1821,4.5512a5.21816,5.21816,0,0,0,3.7827-1.7529l2.7373,2.7686A8.30194,8.30194,0,0,1,170.78809,52.2041Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M68.75679,80.3931a10.8667,10.8667,0,0,1-11.0405-11.0713v-.062A10.94139,10.94139,0,0,1,68.94139,58.127a11.10471,11.10471,0,0,1,8.4883,3.3218L74.416,64.9234a7.946,7.946,0,0,0-5.50491-2.4292c-3.6289,0-6.2436,3.0136-6.2436,6.7041v.0615c0,3.6904,2.5527,6.7661,6.2436,6.7661,2.4605,0,3.9668-.9839,5.6587-2.522l3.0137,3.0445A11.00412,11.00412,0,0,1,68.75679,80.3931Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M88.65329,80.3931a8.56788,8.56788,0,0,1-8.8882-8.5186v-.062a8.92674,8.92674,0,0,1,17.8374-.0615v.0615A8.6522,8.6522,0,0,1,88.65329,80.3931Zm4.336-8.5806a4.37965,4.37965,0,0,0-4.336-4.5517,4.22351,4.22351,0,0,0-4.2754,4.4902v.0615a4.37965,4.37965,0,0,0,4.3365,4.5513,4.22266,4.22266,0,0,0,4.2749-4.4893Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M111.28609,80.024V77.6866a5.83329,5.83329,0,0,1-4.82909,2.645c-3.53661,0-5.59661-2.3374-5.59661-6.1206V63.5396h4.6748v9.1958c0,2.2139,1.0454,3.352,2.8291,3.352s2.9218-1.1381,2.9218-3.352V63.5396h4.6748V80.024Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M130.56689,80.024V70.8282c0-2.2144-1.04589-3.3521-2.8296-3.3521s-2.9219,1.1377-2.9219,3.3521V80.024h-4.6743V63.5396h4.6743V65.877a5.83225,5.83225,0,0,1,4.82861-2.6445c3.53719,0,5.59719,2.3374,5.59719,6.1196V80.024Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M147.07959,80.3931a8.41687,8.41687,0,0,1-8.5801-8.5186v-.062a8.46267,8.46267,0,0,1,8.6416-8.58A8.105,8.105,0,0,1,153.72269,66l-2.8604,3.0752a4.81481,4.81481,0,0,0-3.7519-1.8144,4.21232,4.21232,0,0,0-3.9981,4.4902v.0615c0,2.522,1.6299,4.5513,4.1826,4.5513a5.22026,5.22026,0,0,0,3.7827-1.7529l2.7373,2.7685A8.302,8.302,0,0,1,147.07959,80.3931Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M156.95069,61.7251V57.5733h4.9204v4.1518Zm.123,18.2989V63.5396H161.748V80.024Z"/>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M166.36039,80.024V57.5733h4.6738V80.024Z"/>
|
||||
</g>
|
||||
<path class="bc8a4bde-47d0-4119-971a-be761e7a1142" d="M29.13379,30.9663v5.7061h2.9404V30.7847h.0059V27.8208h-.0059V22.3521h-2.9404v5.1152h.0039v3.499Zm0-10.1093h2.9404v-.002h6.4785c-.1582-.6455-.6416-2.2334-.8652-2.9639h-5.6133v-.0029h-2.9404v.0029h-6.0274c-.22549.7305-.71089,2.3184-.86319,2.9639h6.89059Zm2.9404,17.3144h-2.9404v.0049H22.4756c.1709.6504.707,2.2324.95309,2.9619H28.835v-.0019h3.46189v.0019h5.0654c.2168-.6357.7529-2.2197.958-2.9619h-6.2461Zm17.6279.002-5.1787.0029a10.718,10.718,0,0,1-.8447,2.9619h3.8418a20.99569,20.99569,0,0,1-9.25,7.3028,22.92934,22.92934,0,0,0,3.8467-7.2735c.4082-1.3525.7129-2.5449.8486-3.0859a39.12407,39.12407,0,0,0,.8711-5.7979h-2.9853a35.06757,35.06757,0,0,1-.9073,5.5313l.0118.0029A26.90005,26.90005,0,0,1,38.918,41.1382h.00579c-.0224.0576-.04779.1133-.0683.1758-.0147.0352-.02349.0635-.0381.1016h-.0029c-1.6729,4.2441-4.1241,7.167-6.7403,8.0459V42.6324h-2.9404v6.9443c-2.7637-.6963-5.3486-3.6318-7.11429-8.0557h-.0117c-.0439-.1181-.082-.2265-.1221-.3369-.0048-.0166-.0136-.0332-.0185-.0459h0a29.54864,29.54864,0,0,1-.9356-2.9619h-.0029a34.85864,34.85864,0,0,1-.9922-5.8984H16.9541a38.69553,38.69553,0,0,0,.8516,5.7119c.0937.3906.4101,1.665.8603,3.1611a23.27059,23.27059,0,0,0,3.6895,7.0869,21.00434,21.00434,0,0,1-8.7725-7.0996h3.5029a11.82842,11.82842,0,0,1-.8056-2.9619H11.8115a20.60338,20.60338,0,0,1-2.0244-7.3916h6.8731v-.0019h3.497v.0019h7.48149V27.8208H19.8105V27.816H16.8428v.0048H9.75a20.78781,20.78781,0,0,1,1.6387-6.9658H16.082a14.09216,14.09216,0,0,1,.7451-2.9639H12.9678A20.93332,20.93332,0,0,1,22.375,9.8667a23.662,23.662,0,0,0-3.9219,7.7725c-.4258,1.4082-.7021,2.6553-.8154,3.2158h.0029a40.164,40.164,0,0,0-.7217,5.4639h2.9776a35.03586,35.03586,0,0,1,.7539-5.2178h-.0059a28.75824,28.75824,0,0,1,.8994-3.21h-.0058c.0234-.0644.0469-.125.0703-.1914.0244-.0644.043-.1279.0684-.1914h0c1.76269-4.956,4.47849-8.2255,7.457-8.9697v7.8516h2.9404V8.6558c2.80081.9307,5.3623,4.1523,7.0391,8.8525h.0039a29.38483,29.38483,0,0,1,1.0303,3.5928l-.0059.002a35.62135,35.62135,0,0,1,.7549,5.2158h2.9717a39.08518,39.08518,0,0,0-.7188-5.4639h.0078c-.11419-.5381-.3711-1.709-.7676-3.0488a23.4526,23.4526,0,0,0-4.1347-8.1309,20.83709,20.83709,0,0,1,9.8779,8.2158h-4.164a14.32062,14.32062,0,0,1,.7441,2.9639h4.999a20.57785,20.57785,0,0,1,1.6377,6.9658h-7.4062V27.816h-2.9659v.0048h-7.4121v2.9639H40.958v.0039h2.97269v-.0039h7.3838a25.38273,25.38273,0,0,1-2.0342,7.6856"/>
|
||||
</svg>
|
||||
|
После Ширина: | Высота: | Размер: 6.9 KiB |
78
public/images/logos/dfrlab.svg
Обычный файл
@ -0,0 +1,78 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
||||
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
||||
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
|
||||
width="935.000000pt" height="341.000000pt" viewBox="0 0 935.000000 341.000000"
|
||||
preserveAspectRatio="xMidYMid meet">
|
||||
|
||||
<g transform="translate(0.000000,341.000000) scale(0.100000,-0.100000)"
|
||||
fill="#000000" stroke="none">
|
||||
<path d="M1088 3125 c-481 -91 -819 -517 -795 -1000 22 -433 306 -780 735
|
||||
-897 110 -30 354 -31 462 -1 41 12 82 24 91 28 12 5 73 -94 288 -467 150 -260
|
||||
285 -485 302 -500 34 -32 66 -35 115 -12 36 17 64 58 64 94 0 28 4 21 -292
|
||||
533 -142 246 -258 451 -257 455 0 4 34 33 74 65 231 181 367 488 352 792 -22
|
||||
433 -311 785 -735 896 -102 27 -299 34 -404 14z m314 -179 c156 -30 285 -96
|
||||
400 -204 278 -263 327 -690 115 -1008 -51 -78 -104 -133 -94 -99 35 118 49
|
||||
444 23 542 -20 76 -57 150 -110 219 -52 69 -78 82 -107 53 -23 -23 -19 -34 35
|
||||
-98 43 -52 89 -147 106 -220 25 -108 -5 -421 -55 -572 -12 -36 -25 -53 -52
|
||||
-69 l-36 -21 8 23 c30 98 65 248 63 272 -2 16 -11 34 -21 40 -33 21 -49 -5
|
||||
-78 -125 -16 -62 -41 -146 -56 -185 -24 -63 -31 -73 -60 -82 -18 -6 -33 -7
|
||||
-33 -3 0 3 13 38 29 77 62 147 118 436 91 468 -17 21 -57 20 -68 -1 -5 -10
|
||||
-12 -52 -15 -93 -8 -101 -49 -253 -100 -375 -40 -95 -44 -100 -75 -103 -38 -4
|
||||
-38 -2 -12 40 24 39 26 71 5 88 -24 20 -51 1 -87 -60 -28 -47 -38 -55 -67 -58
|
||||
-18 -2 -31 0 -29 5 2 4 21 42 42 83 77 149 120 298 132 464 8 94 0 116 -42
|
||||
116 -32 0 -44 -27 -44 -98 0 -77 -25 -205 -57 -295 -33 -94 -113 -247 -129
|
||||
-247 -33 0 -42 12 -37 45 4 27 1 35 -16 44 -24 13 -55 2 -65 -24 -7 -19 -15
|
||||
-19 -40 0 -19 14 -18 15 6 53 80 120 124 257 142 439 12 121 16 139 42 176 48
|
||||
68 103 100 180 105 107 7 169 -29 247 -142 21 -30 53 -32 70 -4 15 23 -15 86
|
||||
-67 139 -119 122 -317 128 -444 14 -76 -69 -102 -130 -113 -267 -9 -121 -26
|
||||
-197 -63 -289 -25 -62 -83 -159 -95 -159 -5 0 -15 8 -24 18 -14 16 -14 19 3
|
||||
42 22 29 25 61 8 78 -19 19 -45 14 -67 -14 -17 -22 -23 -24 -36 -14 -21 18
|
||||
-19 33 15 100 17 33 36 87 44 120 13 55 13 62 -3 81 -26 33 -58 18 -71 -34
|
||||
-24 -96 -52 -153 -68 -143 -17 11 -73 164 -88 244 -70 367 142 746 492 878
|
||||
139 53 287 66 426 40z"/>
|
||||
<path d="M1102 2610 c-171 -46 -315 -165 -391 -321 -48 -100 -62 -177 -37
|
||||
-198 28 -23 63 0 71 48 11 64 68 172 124 233 87 95 187 148 319 168 96 15 181
|
||||
1 310 -51 59 -25 100 32 47 67 -102 67 -305 92 -443 54z"/>
|
||||
<path d="M1226 2474 c-19 -19 -20 -25 -2 -49 9 -13 33 -21 79 -26 130 -16 239
|
||||
-95 298 -215 23 -47 31 -79 35 -140 8 -122 9 -126 47 -122 l32 3 0 111 c0 107
|
||||
-1 112 -37 186 -66 132 -188 228 -326 257 -73 15 -108 14 -126 -5z"/>
|
||||
<path d="M1030 2429 c-68 -37 -122 -88 -164 -154 -51 -79 -67 -131 -76 -250
|
||||
-5 -60 -16 -141 -26 -178 -15 -62 -15 -70 -1 -84 10 -10 24 -13 41 -9 35 9 51
|
||||
70 74 296 6 52 18 104 32 134 32 66 103 139 175 179 61 33 76 56 55 82 -19 22
|
||||
-49 18 -110 -16z"/>
|
||||
<path d="M1197 2195 c-66 -23 -108 -74 -122 -146 -7 -38 11 -69 40 -69 22 0
|
||||
45 29 45 56 0 15 12 38 29 55 40 40 89 40 133 0 l33 -30 -3 -93 c-1 -51 -12
|
||||
-138 -24 -193 -27 -126 -28 -155 -5 -169 24 -15 49 2 64 46 41 122 65 365 44
|
||||
430 -15 46 -78 103 -128 117 -48 14 -59 13 -106 -4z"/>
|
||||
<path d="M1078 1888 c-8 -7 -23 -44 -32 -83 -10 -38 -34 -110 -53 -159 l-36
|
||||
-89 22 -18 c18 -15 27 -16 42 -8 24 12 62 97 95 208 29 102 31 137 5 151 -24
|
||||
13 -24 13 -43 -2z"/>
|
||||
<path d="M8082 2333 l3 -618 163 -3 162 -2 0 56 0 57 46 -43 c73 -67 122 -85
|
||||
234 -85 85 0 102 3 160 31 156 74 250 242 250 449 0 199 -95 366 -250 439 -59
|
||||
28 -74 31 -160 31 -84 -1 -101 -4 -148 -28 -29 -15 -71 -46 -92 -67 l-40 -40
|
||||
0 220 0 220 -165 0 -165 0 2 -617z m576 32 c78 -33 122 -102 122 -195 0 -212
|
||||
-261 -288 -351 -103 -85 174 63 367 229 298z"/>
|
||||
<path d="M2390 2311 l0 -601 268 0 c147 0 295 5 329 10 328 53 533 282 533
|
||||
595 0 282 -171 498 -450 571 -52 13 -127 18 -372 21 l-308 5 0 -601z m609 280
|
||||
c115 -44 181 -147 181 -281 0 -99 -28 -167 -92 -224 -62 -57 -118 -75 -260
|
||||
-83 l-108 -6 0 313 0 313 113 -5 c80 -4 128 -12 166 -27z"/>
|
||||
<path d="M3700 2310 l0 -600 165 0 165 0 0 210 0 210 283 2 282 3 3 138 3 137
|
||||
-286 0 -285 0 0 105 0 105 315 0 315 0 0 145 0 145 -480 0 -480 0 0 -600z"/>
|
||||
<path d="M4810 2311 l0 -601 165 0 165 0 0 180 0 180 74 0 73 0 119 -180 119
|
||||
-180 193 0 192 0 -53 78 c-141 201 -220 317 -223 327 -2 5 19 24 47 40 144 85
|
||||
215 257 179 437 -28 146 -114 238 -273 291 -57 19 -90 21 -419 25 l-358 4 0
|
||||
-601z m667 283 c97 -71 71 -221 -45 -254 -20 -5 -94 -10 -164 -10 l-128 0 0
|
||||
146 0 145 154 -3 c137 -3 158 -5 183 -24z"/>
|
||||
<path d="M6040 2310 l0 -600 455 0 455 0 0 145 0 145 -290 0 -290 0 0 455 0
|
||||
455 -165 0 -165 0 0 -600z"/>
|
||||
<path d="M7293 2635 c-76 -14 -172 -42 -187 -55 -4 -5 7 -58 25 -119 26 -91
|
||||
35 -111 48 -105 54 22 165 44 228 44 118 0 179 -39 190 -121 6 -41 5 -42 -18
|
||||
-36 -170 46 -349 29 -454 -43 -122 -84 -140 -300 -34 -415 61 -66 124 -90 239
|
||||
-90 105 1 158 18 231 76 l39 31 0 -46 0 -46 161 0 160 0 -3 328 c-4 375 -8
|
||||
397 -86 484 -53 58 -120 94 -211 114 -81 17 -232 17 -328 -1z m295 -539 c19
|
||||
-12 14 -97 -8 -133 -48 -79 -177 -93 -230 -26 -38 49 -16 132 43 159 33 15
|
||||
171 15 195 0z"/>
|
||||
<path d="M2560 1340 l0 -50 3175 0 3175 0 0 50 0 50 -3175 0 -3175 0 0 -50z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
После Ширина: | Высота: | Размер: 4.9 KiB |
Двоичные данные
public/images/logos/fiat_balloons.png
Обычный файл
|
После Ширина: | Высота: | Размер: 43 KiB |
Двоичные данные
public/images/logos/fiat_blurry.png
Обычный файл
|
После Ширина: | Высота: | Размер: 67 KiB |
Двоичные данные
public/images/meta/android-chrome-192x192.png
Обычный файл
|
После Ширина: | Высота: | Размер: 18 KiB |
Двоичные данные
public/images/meta/android-chrome-512x512.png
Обычный файл
|
После Ширина: | Высота: | Размер: 58 KiB |
Двоичные данные
public/images/meta/apple-touch-icon.png
Обычный файл
|
После Ширина: | Высота: | Размер: 5.8 KiB |
9
public/images/meta/browserconfig.xml
Обычный файл
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<browserconfig>
|
||||
<msapplication>
|
||||
<tile>
|
||||
<square150x150logo src="images/meta/mstile-150x150.png"/>
|
||||
<TileColor>#da532c</TileColor>
|
||||
</tile>
|
||||
</msapplication>
|
||||
</browserconfig>
|
||||
Двоичные данные
public/images/meta/favicon-16x16.png
Обычный файл
|
После Ширина: | Высота: | Размер: 673 B |
Двоичные данные
public/images/meta/favicon-32x32.png
Обычный файл
|
После Ширина: | Высота: | Размер: 1.2 KiB |
Двоичные данные
public/images/meta/favicon.ico
Обычный файл
|
После Ширина: | Высота: | Размер: 15 KiB |
Двоичные данные
public/images/meta/mstile-144x144.png
Обычный файл
|
После Ширина: | Высота: | Размер: 5.9 KiB |
Двоичные данные
public/images/meta/mstile-150x150.png
Обычный файл
|
После Ширина: | Высота: | Размер: 5.8 KiB |
Двоичные данные
public/images/meta/mstile-310x150.png
Обычный файл
|
После Ширина: | Высота: | Размер: 6.2 KiB |
Двоичные данные
public/images/meta/mstile-310x310.png
Обычный файл
|
После Ширина: | Высота: | Размер: 13 KiB |
Двоичные данные
public/images/meta/mstile-70x70.png
Обычный файл
|
После Ширина: | Высота: | Размер: 3.9 KiB |
108
public/images/meta/safari-pinned-tab.svg
Обычный файл
@ -0,0 +1,108 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
||||
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
||||
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
|
||||
width="700.000000pt" height="700.000000pt" viewBox="0 0 700.000000 700.000000"
|
||||
preserveAspectRatio="xMidYMid meet">
|
||||
<metadata>
|
||||
Created by potrace 1.11, written by Peter Selinger 2001-2013
|
||||
</metadata>
|
||||
<g transform="translate(0.000000,700.000000) scale(0.100000,-0.100000)"
|
||||
fill="#000000" stroke="none">
|
||||
<path d="M3288 6956 c-1 -2 -46 -7 -98 -10 -52 -4 -102 -9 -110 -11 -8 -2 -42
|
||||
-6 -75 -10 -79 -8 -246 -41 -315 -61 -451 -133 -602 -199 -960 -422 -409 -255
|
||||
-820 -690 -1057 -1117 -97 -174 -240 -492 -258 -575 -2 -8 -22 -73 -43 -145
|
||||
-22 -71 -49 -177 -60 -235 -19 -97 -25 -132 -37 -230 -3 -19 -8 -62 -12 -95
|
||||
-10 -76 -9 -595 1 -695 15 -151 104 -546 159 -705 108 -314 344 -742 518 -940
|
||||
14 -16 69 -79 120 -140 107 -125 150 -169 269 -277 124 -112 363 -289 475
|
||||
-352 17 -9 53 -30 80 -47 54 -32 253 -133 325 -163 151 -65 477 -169 593 -190
|
||||
15 -3 35 -7 45 -10 20 -6 201 -32 287 -42 33 -3 74 -8 90 -10 34 -5 353 -4
|
||||
465 1 98 4 168 11 260 25 41 7 91 14 110 17 67 9 346 82 445 116 97 33 208 77
|
||||
290 113 22 10 42 18 45 19 3 0 48 22 100 49 52 27 109 56 125 64 17 8 67 39
|
||||
112 69 44 29 87 51 95 47 7 -3 52 -58 99 -122 146 -196 619 -826 640 -849 l19
|
||||
-23 450 0 c247 0 450 2 450 5 0 6 -41 66 -51 75 -3 3 -142 187 -309 410 -168
|
||||
223 -307 407 -310 410 -7 6 -414 551 -423 566 -4 6 3 22 16 36 184 201 384
|
||||
488 505 723 112 218 218 502 266 715 2 8 9 33 14 55 14 52 41 212 48 278 3 29
|
||||
7 58 9 64 7 22 19 214 19 308 -1 135 -13 450 -18 466 -3 8 -7 32 -10 54 -11
|
||||
87 -19 127 -62 305 -49 203 -88 330 -141 460 -43 106 -204 424 -243 482 -17
|
||||
24 -30 49 -30 56 0 6 -4 12 -10 12 -5 0 -10 5 -10 11 0 29 -315 416 -435 534
|
||||
-41 40 -139 129 -219 200 -49 43 -227 169 -353 250 -264 168 -616 316 -948
|
||||
398 -96 24 -122 29 -209 43 -21 3 -46 7 -55 9 -9 1 -47 6 -86 10 -38 4 -79 10
|
||||
-90 13 -22 5 -501 13 -507 8z m422 -600 c97 -8 177 -19 240 -31 593 -119 1046
|
||||
-367 1456 -796 398 -419 668 -1033 711 -1619 10 -148 5 -398 -11 -485 -2 -11
|
||||
-7 -47 -11 -80 -21 -183 -120 -523 -210 -725 -87 -198 -211 -399 -349 -570
|
||||
-60 -74 -258 -278 -326 -335 -91 -77 -182 -147 -186 -142 -3 2 11 57 30 120
|
||||
33 107 98 349 110 407 37 179 55 274 61 320 3 30 8 62 11 71 3 10 6 30 9 45 2
|
||||
16 6 43 8 59 3 17 9 64 13 105 3 41 8 89 9 105 13 124 16 209 17 415 1 246 -1
|
||||
267 -32 420 -53 261 -142 478 -283 690 -59 89 -71 105 -164 211 -96 110 -162
|
||||
134 -235 84 -75 -51 -74 -141 1 -223 149 -163 191 -224 290 -427 79 -163 125
|
||||
-306 137 -430 3 -27 9 -77 13 -110 11 -74 11 -417 1 -505 -4 -36 -11 -96 -15
|
||||
-135 -8 -88 -11 -114 -31 -250 -24 -169 -22 -158 -48 -290 -32 -156 -131 -512
|
||||
-186 -665 -40 -112 -46 -157 -26 -202 6 -14 -11 -26 -97 -68 -107 -51 -187
|
||||
-83 -194 -77 -2 2 18 53 43 113 50 119 96 238 124 324 59 178 161 546 176 640
|
||||
3 14 9 49 14 79 22 120 11 171 -44 209 -57 39 -155 20 -185 -37 -6 -11 -26
|
||||
-96 -46 -190 -40 -200 -42 -209 -102 -406 -75 -251 -143 -437 -218 -600 -109
|
||||
-236 -114 -244 -137 -250 -113 -25 -188 -38 -188 -32 0 3 31 67 69 143 74 149
|
||||
84 170 156 339 84 196 201 571 239 765 2 14 11 57 20 95 14 67 38 222 51 330
|
||||
3 28 8 69 11 91 12 86 11 171 -3 205 -40 98 -186 103 -234 8 -10 -19 -20 -65
|
||||
-24 -104 -3 -38 -7 -86 -10 -105 -2 -19 -7 -57 -10 -85 -3 -27 -7 -61 -10 -75
|
||||
-2 -14 -7 -45 -9 -70 -3 -25 -10 -70 -16 -100 -6 -30 -13 -68 -16 -85 -3 -16
|
||||
-22 -100 -44 -185 -58 -235 -131 -450 -211 -627 -10 -23 -19 -44 -19 -46 0
|
||||
-30 -250 -502 -274 -519 -12 -9 -196 -11 -196 -3 0 3 17 31 37 63 67 104 80
|
||||
126 149 242 90 152 114 201 114 227 0 86 -90 151 -173 124 -48 -16 -71 -45
|
||||
-182 -231 -167 -281 -243 -392 -263 -386 -9 3 -28 7 -42 10 -14 2 -44 9 -67
|
||||
14 -23 5 -45 7 -49 3 -13 -12 16 37 66 113 293 443 466 855 565 1348 27 137
|
||||
31 158 40 263 4 39 9 81 11 95 2 14 7 102 10 196 8 195 2 214 -66 253 -46 26
|
||||
-63 26 -117 2 -61 -28 -70 -54 -77 -216 -9 -206 -14 -255 -42 -415 -14 -80
|
||||
-27 -158 -30 -175 -15 -82 -60 -240 -120 -415 -100 -295 -236 -563 -420 -827
|
||||
-101 -144 -89 -137 -176 -101 -40 17 -75 32 -77 34 -2 1 31 49 72 106 110 152
|
||||
125 187 106 245 -13 41 -60 80 -104 89 -65 12 -109 -22 -208 -159 -48 -67 -94
|
||||
-130 -102 -140 -12 -17 -17 -15 -85 28 l-72 46 25 32 c254 337 376 557 482
|
||||
872 22 66 93 337 100 385 4 25 9 54 11 65 2 11 7 44 10 74 3 30 7 63 9 73 2
|
||||
10 7 78 10 151 10 218 14 259 35 332 49 173 164 326 315 420 146 91 332 135
|
||||
475 113 87 -13 110 -18 175 -42 174 -63 314 -191 412 -375 47 -90 77 -115 137
|
||||
-115 74 0 126 50 132 125 2 30 -7 59 -38 120 -143 287 -407 483 -733 544 -68
|
||||
13 -272 13 -340 0 -364 -71 -660 -325 -775 -665 -34 -100 -47 -180 -55 -345
|
||||
-10 -194 -21 -304 -41 -415 -9 -47 -18 -96 -20 -110 -32 -175 -147 -474 -258
|
||||
-670 -98 -174 -272 -414 -291 -402 -32 19 -124 107 -117 112 21 15 198 263
|
||||
227 319 60 118 -56 236 -175 177 -26 -12 -56 -48 -113 -134 -43 -64 -90 -130
|
||||
-104 -147 l-26 -29 -21 25 c-11 14 -37 44 -56 68 -19 24 -41 50 -48 57 -11 11
|
||||
-7 16 27 30 32 12 50 32 94 97 99 152 167 290 221 452 35 107 74 293 69 335
|
||||
-12 112 -148 155 -226 72 -22 -24 -41 -83 -63 -201 -28 -145 -168 -455 -247
|
||||
-546 l-22 -26 -62 118 c-141 271 -259 611 -289 834 -3 30 -8 65 -10 79 -16
|
||||
110 -19 161 -19 355 1 268 23 435 90 685 100 368 273 716 495 995 66 82 241
|
||||
262 320 328 325 272 730 477 1134 572 105 25 127 29 211 41 28 3 59 8 70 10
|
||||
11 2 58 7 105 10 47 3 86 7 87 8 5 5 282 -2 353 -8z"/>
|
||||
<path d="M3388 5165 c-2 -1 -41 -5 -88 -9 -176 -13 -337 -45 -493 -98 -507
|
||||
-169 -933 -579 -1136 -1091 -17 -43 -33 -86 -35 -95 -1 -9 -6 -24 -9 -32 -10
|
||||
-25 -47 -179 -53 -219 -18 -127 131 -201 222 -110 20 20 35 48 39 69 3 19 17
|
||||
78 31 130 102 378 333 694 680 928 67 46 256 142 278 142 8 0 17 4 20 9 6 9
|
||||
206 67 261 75 221 34 328 38 491 19 189 -21 348 -66 514 -146 58 -27 121 -51
|
||||
141 -53 47 -3 89 18 118 61 32 47 26 114 -14 155 -58 60 -355 184 -515 214
|
||||
-134 25 -172 31 -290 42 -94 8 -159 12 -162 9z"/>
|
||||
<path d="M3362 4708 c-50 -24 -72 -60 -72 -117 0 -97 35 -119 215 -136 181
|
||||
-17 304 -52 459 -131 200 -102 399 -302 501 -504 93 -184 128 -350 127 -590
|
||||
-2 -198 7 -228 73 -260 48 -23 95 -20 135 9 50 36 55 60 54 276 0 110 -3 216
|
||||
-6 235 -51 297 -183 571 -373 772 -77 81 -184 174 -260 225 -106 71 -306 161
|
||||
-420 189 -25 6 -127 25 -152 28 -15 2 -48 7 -73 10 -114 16 -164 14 -208 -6z"/>
|
||||
<path d="M2905 4625 c-282 -105 -514 -289 -684 -543 -109 -162 -198 -395 -226
|
||||
-587 -3 -22 -8 -85 -10 -140 -3 -55 -7 -122 -10 -150 -3 -27 -7 -77 -10 -110
|
||||
-6 -68 -14 -128 -20 -165 -3 -14 -7 -41 -10 -60 -8 -46 -32 -143 -51 -200 -35
|
||||
-111 -21 -175 48 -212 55 -30 117 -19 160 29 31 34 96 264 113 398 4 28 8 57
|
||||
10 65 2 8 7 42 10 75 4 33 9 71 11 85 3 14 7 90 10 170 5 163 23 266 66 390
|
||||
63 176 143 305 273 436 123 124 241 204 387 263 34 14 71 38 89 59 28 32 31
|
||||
40 27 87 -6 74 -32 104 -108 128 -9 2 -42 -5 -75 -18z"/>
|
||||
<path d="M3370 3848 c-139 -14 -252 -66 -346 -158 -99 -97 -159 -224 -170
|
||||
-357 -6 -81 12 -125 65 -160 40 -27 78 -29 125 -6 40 18 61 56 71 123 16 112
|
||||
50 177 125 236 116 92 297 76 398 -34 70 -76 77 -100 76 -267 0 -132 -5 -225
|
||||
-18 -370 -5 -50 -23 -182 -32 -230 -2 -11 -8 -45 -14 -75 -6 -30 -12 -65 -15
|
||||
-78 -2 -13 -23 -91 -46 -175 -23 -84 -43 -166 -46 -184 -8 -59 46 -126 113
|
||||
-139 65 -12 124 33 152 116 21 65 96 376 117 490 3 14 7 36 10 50 2 14 7 39 9
|
||||
55 2 17 7 48 11 70 28 182 39 557 19 654 -37 179 -188 349 -365 410 -76 27
|
||||
-163 38 -239 29z"/>
|
||||
<path d="M2884 2890 c-30 -12 -62 -56 -73 -99 -6 -28 -50 -212 -56 -241 -30
|
||||
-129 -127 -389 -209 -560 -20 -42 -36 -90 -36 -110 0 -110 141 -170 221 -94
|
||||
33 32 60 87 144 294 80 198 108 281 151 455 45 179 52 251 30 294 -31 58 -109
|
||||
87 -172 61z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
После Ширина: | Высота: | Размер: 7.3 KiB |
19
public/images/meta/site.webmanifest
Обычный файл
@ -0,0 +1,19 @@
|
||||
{
|
||||
"name": "",
|
||||
"short_name": "",
|
||||
"icons": [
|
||||
{
|
||||
"src": "android-chrome-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "android-chrome-512x512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png"
|
||||
}
|
||||
],
|
||||
"theme_color": "#ffffff",
|
||||
"background_color": "#ffffff",
|
||||
"display": "standalone"
|
||||
}
|
||||
Двоичные данные
public/images/screenshots/fiat_image.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 97 KiB |
Двоичные данные
public/images/screenshots/fiat_placeholder.jpg
Обычный файл
|
После Ширина: | Высота: | Размер: 101 KiB |
342
public/index.html
Обычный файл
@ -0,0 +1,342 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="x-ua-compatible" content="ie=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta name="author" content="Atlantic Council's Digital Forensic Research Lab" />
|
||||
|
||||
<title>Interference 2020</title>
|
||||
|
||||
<link rel="canonical" href="https://interference2020.org" />
|
||||
<meta name="description" content="The DFRLab's Foreign Interference Attribution Tracker (FIAT) is an interactive, open-source database that captures allegations of foreign interference relevant to the 2020 election.">
|
||||
<meta name="keywords" content="interference, elections 2020, U.S. elections, disinformation, democracy, interference attributions, platforms, methods, sources, visualization">
|
||||
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="images/meta/apple-touch-icon.png">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="images/meta/favicon-32x32.png">
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="images/meta/favicon-16x16.png">
|
||||
<link rel="manifest" href="images/meta/site.webmanifest">
|
||||
<link rel="mask-icon" href="images/meta/safari-pinned-tab.svg" color="#5bbad5">
|
||||
<link rel="shortcut icon" href="images/meta/favicon.ico">
|
||||
<meta name="msapplication-TileColor" content="#da532c">
|
||||
<meta name="msapplication-config" content="images/meta/browserconfig.xml">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
|
||||
<meta property="og:title" content="Interference 2020">
|
||||
<meta property="og:site_name" content="Foreign Interference Attribution Tracker">
|
||||
<meta property="og:url" content="https://interference2020.com/">
|
||||
<meta property="og:description" content="The Foreign Interference Attribution Tracker (FIAT) is an open-source database capturing allegations of foreign interference in U.S. elections and political processes.">
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:locale" content="en_US">
|
||||
<meta property="og:image" content="images/screenshots/fiat_image.jpg"/>
|
||||
<meta property="og:image:secure_url" content="images/screenshots/fiat_image.jpg"/>
|
||||
|
||||
<link rel="stylesheet" href="global.css" />
|
||||
<link rel="stylesheet" href="build/bundle.css" />
|
||||
|
||||
<link href="https://fonts.googleapis.com/css2?family=Volkhov:ital,wght@0,400;0,700;1,400&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Quicksand:wght@400;500;700&display=swap" rel="stylesheet">
|
||||
|
||||
<script defer src="build/bundle.js"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="page-wrapper" id="top">
|
||||
<div class="fiat-title-bg">
|
||||
<img src="images/logos/fiat_blurry.png" alt="The FIAT emblem showing blurred circles" />
|
||||
</div>
|
||||
<section class="content title">
|
||||
<div class="logos">
|
||||
<a href="https://www.atlanticcouncil.org"><img src="images/logos/ac.svg" alt="Atlantic Council Logo" /></a>
|
||||
<a class="smaller" href="https://www.atlanticcouncil.org/programs/digital-forensic-research-lab/"><img src="images/logos/dfrlab.svg" alt="Digital Forensic Research Lab Logo" /></a>
|
||||
</div>
|
||||
<h1>Interference 2020</h1>
|
||||
<h2>Foreign Interference Attribution Tracker <span class="info-card">beta</span></h2>
|
||||
<div class="separator thicker"></div>
|
||||
<p class="center"><em>A Project of the Digital Forensic Research Lab (DFRLab) of the Atlantic Council</em></p>
|
||||
</section>
|
||||
<section class="content overview no-lower-margin">
|
||||
<p>
|
||||
The DFRLab's Foreign Interference Attribution Tracker (FIAT) is an interactive, open-source database that captures allegations of foreign interference relevant to the 2020 election. This tool assesses the credibility, bias, evidence, transparency, and impact of each claim. Explore by scrolling through the timeline and map below. Hover over a circle to see details about a particular case.
|
||||
</p>
|
||||
</section>
|
||||
<div id="svelte-target"></div>
|
||||
<section id="medthodology" class="content">
|
||||
<div class="separator"></div>
|
||||
<input id="collapsible-methodology" class="toggle" type="checkbox">
|
||||
<label for="collapsible-methodology" class="lbl-toggle">Methodology</label>
|
||||
<div class="collapsible-content">
|
||||
<h4 id="case-selection">Case Selection</h4>
|
||||
<p>
|
||||
In order to be included, cases must fulfill three criteria.
|
||||
</p>
|
||||
<p>
|
||||
First, cases must involve allegations of <em>foreign interference</em> by primarily digital means. The Australian Government Department of Home Affairs <a href="https://www.homeaffairs.gov.au/about-us/our-portfolios/national-security/countering-foreign-interference" target="_blank">defines</a> foreign interference as activity by a foreign actor that is "coercive, corrupting, deceptive, or clandestine" in nature, distinguishing it from the more benign phenomenon of <em>foreign influence</em>. By focusing expressly on digital activity, this definition denotes a range of interference activities—including disinformation, media manipulation, and cyber intrusion—that are conducted by foreign actors to affect political outcomes.
|
||||
</p>
|
||||
<p>
|
||||
Second, cases must be <em>novel</em>. A novel case is one which involves a fresh foreign interference claim or which reveals new evidence to reinvigorate an old one. A novel case is also one in which significant newsworthiness is attached to the individual or organization making the claim. In general, a president or ex-president’s claim is novel regardless of the evidence presented. Meanwhile, an op-ed or report by a mid-level U.S. official is only novel if it contains previously undisclosed information.
|
||||
</p>
|
||||
<p>
|
||||
Third and finally, cases must be <em>relevant to the 2020 U.S. election</em>. This focuses case selection on alleged foreign interference that seems intended to influence voting behaviors, denigrate particular candidates, or engage in political or social issues of direct relevance to the election. It also bounds case selection to foreign interference claims that have occurred around or following the 2018 U.S. midterm elections.
|
||||
</p>
|
||||
<h4 id="attribution-impact">Attribution Impact</h4>
|
||||
<p>
|
||||
Attribution Impact measures the spread of case-related articles and content over the seven days following a foreign interference allegation. It is a sum of the cumulative Facebook engagements, Twitter shares, and Reddit engagements of relevant articles, intended to capture the digital impact of a given case. It is best used as a comparative, rather than absolute, measure.
|
||||
</p>
|
||||
<p>
|
||||
This sum is computed by a standardized query process that utilizes <a href="https://serpapi.com/" target="_blank">SerpApi</a> (which enables "Google dorks" using advanced Google search operators), <a href="https://buzzsumo.com/" target="_blank">BuzzSumo</a> (which enables the query of a large database of social media content and collection of engagement data), and <a href="https://www.crowdtangle.com/" target="_blank">CrowdTangle</a> (which enables the collection of engagement data for content not indexed by BuzzSumo).
|
||||
</p>
|
||||
<p>
|
||||
The following steps are followed in order to determine the Attribution Impact. This process is automated by Python and run by means of a Google Collab notebook:
|
||||
</p>
|
||||
<ol>
|
||||
<li>
|
||||
A case's Link of Attribution is used by BuzzSumo to compute a list of backlinks, which includes social media engagement data.
|
||||
</li>
|
||||
<li>
|
||||
To account for content not indexed by BuzzSumo, SerpAPI is used. The Google dork is standardized by way of several variables: Source, Disinformation, Disinformant Nation, and Date of Attribution. The standard Google dork is “intext:Source AND Disinformant AND Disinformant Nation.” (In some cases, alternate names are substituted. These substitutions are documented in the raw dataset.) The resulting Google dork is reviewed by coders and irrelevant results are deleted.
|
||||
</li>
|
||||
<li>
|
||||
The edited Google dork is automatically reconciled with the list of BuzzSumo backlinks.
|
||||
</li>
|
||||
<li>
|
||||
An additional BuzzSumo search is performed on remaining web links, importing social media engagement data where matches are found.
|
||||
</li>
|
||||
<li>
|
||||
Where matches are not found, web links are visited manually and their social media engagement data is recorded via the CrowdTangle link checker extension for Google Chrome.
|
||||
</li>
|
||||
<li>
|
||||
Social media engagement data is tallied from these three sources—BuzzSumo backlinks, the BuzzSumo search of web links, and manual CrowdTangle input—to arrive at the final Attribution Impact.
|
||||
</li>
|
||||
</ol>
|
||||
<p>
|
||||
The fixed timeframe, standardized Google dork formula, and opacity of the tools themselves means that relevant social media engagement data may be excluded. Therefore, the Attribution Impact should be treated as a rough estimate, most useful for comparing between cases.
|
||||
</p>
|
||||
<p>
|
||||
It is the intention of the FIAT team to introduce additional dimensions of Attribution Impact as the tool evolves.
|
||||
</p>
|
||||
<h4 id="attribution-score">Attribution Score</h4>
|
||||
<p>
|
||||
The Attribution Score is a framework of eighteen binary statements (true or false) that assess foreign interference claims made by governments, technology companies, the media, and civil society organizations. The measure is intended to capture the reliability of the attribution as discernible through public sources rather than to serve as a fact-check of the attribution itself. If a statement is deemed applicable, a point is awarded. If a statement is deemed inapplicable or irrelevant, no point is awarded. Initial coding was reviewed by the FIAT research team and shaped by iterative discussion.
|
||||
</p>
|
||||
<p>
|
||||
This scoring system is based on the experience of DFRLab experts in assessing—and making—such allegations. It is also based on a review of work produced by the wider disinformation studies community, and particularly resources compiled by <a href="https://attribution.news/" target="_blank">attribution.news</a>.
|
||||
</p>
|
||||
<p>
|
||||
The Attribution Score is composed of four subsections:
|
||||
</p>
|
||||
<h5>Credibility</h5>
|
||||
<ul>
|
||||
<li>The source of the attribution does not have a direct financial interest in a certain attribution outcome.</li>
|
||||
<li>The source of the attribution has a diversified and transparent funding stream.</li>
|
||||
<li>The source of the attribution does not strongly endorse a specific political ideology.</li>
|
||||
<li>The source of the attribution is in no way affiliated with a political campaign.</li>
|
||||
<li>The source of the attribution has not previously promoted mis- or disinformation.</li>
|
||||
</ul>
|
||||
<h5>Objectivity</h5>
|
||||
<ul>
|
||||
<li>The attribution avoids using biased wording. The attribution avoids high-inference or emotive language.</li>
|
||||
<li>The headline accurately conveys the content of the attribution.</li>
|
||||
<li>The attribution clearly distinguishes factual information from argumentative analysis.</li>
|
||||
</ul>
|
||||
<h5>Evidence</h5>
|
||||
<ul>
|
||||
<li>The attribution provides a clear illustration of the methods, tactics, and platforms involved in the alleged information operation.</li>
|
||||
<li>The attribution contextualizes the engagement with, and impact of, the alleged information operation.</li>
|
||||
<li>The attribution identifies actors and states allegedly responsible.</li>
|
||||
<li>The attribution clearly explains the strategic goal and rationale of the actors who conducted the alleged information operation.</li>
|
||||
<li>The attribution relies on information which is unique to, or can only be procured by, the relevant actor. (e.g. classified information for U.S. federal agencies, back-end/developer information for technology companies)</li>
|
||||
</ul>
|
||||
<h5>Transparency</h5>
|
||||
<ul>
|
||||
<li>The attribution provides open access to a dataset or archived links of alleged assets.</li>
|
||||
<li>The attribution methodology is clearly explained.</li>
|
||||
<li>The attribution is replicable through open-source evidence.</li>
|
||||
<li>The attribution acknowledges relevant limitations or mitigating factors in its assessment.</li>
|
||||
<li>The attribution has been corroborated by a third party or independent investigation.</li>
|
||||
</ul>
|
||||
<p>
|
||||
An attribution that scores fifteen points or higher is especially reliable. An attribution that scores six points or fewer should be carefully scrutinized.
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
<section class="content codebook">
|
||||
<input id="collapsible-codebook" class="toggle" type="checkbox">
|
||||
<label for="collapsible-codebook" class="lbl-toggle">Terminology & Codebook</label>
|
||||
<div class="collapsible-content">
|
||||
<p>
|
||||
Allegations of foreign interference in U.S. elections that met the <span class="pseudolink" onclick="window.scrollsmooth('case-selection', 'collapsible-methodology');">case selection</span> criteria were recorded by DFRLab coders using a codebook of variables. Five text variables, 36 binary variable options, and 5 other variables were used to describe who made the allegation of interference against who, what the attribution was, when it occurred, the platforms where it occurred, and how the interference was conducted. New binary variables for platforms and methods were added based on case review.
|
||||
</p>
|
||||
<p>
|
||||
Additional variables were used to measure the impact of the allegation on online media discourse, and to assess the credibility, bias, evidence, and transparency of allegations.
|
||||
</p>
|
||||
<h5 id="source">Who is making the attribution, against whom?</h5>
|
||||
<ul>
|
||||
<li><strong>Source of Allegation</strong> (free text). The original source of the interference allegation.</li>
|
||||
<li>
|
||||
<strong>Source Nation</strong> (country). The country where the source of the interference allegation originates. Since the scope of this dataset is interference in the U.S., the most common source nation for allegations is the United States. The source nation does not necessarily denote the actor was associated with a national government.
|
||||
</li>
|
||||
<li>
|
||||
<strong>Source Category</strong> (binary, select all that apply).
|
||||
<ul class="inner">
|
||||
<li><strong>Civil Society Organization.</strong> A nonprofit, non-governmental, non-media entity, typically a university or think tank.</li>
|
||||
<li><strong>Foreign Government Body.</strong> A non-U.S. government entity.</li>
|
||||
<li><strong>Government.</strong> Government agencies, elected representatives, and officials, even if quoted anonymously.</li>
|
||||
<li><strong>Influential Individual.</strong> A noteworthy individual, not currently affiliated with another category, who is deemed nationally recognizable or operating in the public sphere.</li>
|
||||
<li><strong>Media.</strong> Only applies if a news organization makes the allegation on the basis of its own investigation. A media organization reporting on an allegation made by someone else (e.g. an anonymous government official) is not included.</li>
|
||||
<li><strong>Private Consultancy.</strong> A company engaged in private monitoring and risk consulting, typically in the field of cybersecurity.</li>
|
||||
<li><strong>Technology Company.</strong> A company that operates a social media platform or offers a technology service.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><strong>Disinformant</strong> (free text). Brief description of the actor purportedly responsible for the interference attempt.</li>
|
||||
<li><strong>Disinformant Nation</strong> (free text). The country where the interference originates, according to the source. When an allegation comes from a non-state political actor, this field is the nation of origin of that non-state political actor. This does not necessarily denote an actor is associated with the national government.</li>
|
||||
<li>
|
||||
<strong>Attribution Type</strong> (binary, select all that apply).
|
||||
<ul class="inner">
|
||||
<li><strong>Direct Attribution.</strong> The source directly accuses the disinformant of malicious political behavior.</li>
|
||||
<li><strong>Proxy/Inferred Attribution.</strong> The source does not make a direct attribution, but clearly states that the activity is likely associated with the disinformant or strongly implies the accusation is directed at the disinformant.</li>
|
||||
<li><strong>Non-Aligned Commercial Activity.</strong> The interference consists of malicious commercial activity rather than a politically motivated information operation.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h5 id="description-link">What was the attribution?</h5>
|
||||
<ul>
|
||||
<li><strong>Short title</strong> (free text).</li>
|
||||
<li><strong>Short description</strong> (free text). One to three sentence description of the allegation, alleged activity, and attribution.</li>
|
||||
<li><strong>Link to attribution</strong> (link).</li>
|
||||
</ul>
|
||||
<h5 id="activity-attribution-date">When did the interference and attribution occur?</h5>
|
||||
<ul>
|
||||
<li>
|
||||
<strong>Date(s) of Activity.</strong> Date or range of purported activity..
|
||||
<ul class="inner">
|
||||
<li><strong>Start</strong> (date). Input if start date is known; if not, omit.</li>
|
||||
<li><strong>End</strong> (date). Input if end date is known, if not, omit.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><strong>Date of Attribution</strong> (date). Date corresponds to date of link of attribution. Particular attention should be given to this date by coders because it is used to determine the time span for collecting Attribution Impact metrics.</li>
|
||||
</ul>
|
||||
<h5 id="platform">On what platforms did the interference purportedly take place?</h5>
|
||||
<ul>
|
||||
<li>
|
||||
<strong>Open Web</strong> (binary, select all that apply).
|
||||
<ul class="inner">
|
||||
<li><strong>State Media.</strong> A media outlet controlled by a government or government proxy, which is not editorially independent.</li>
|
||||
<li><strong>Independent Media.</strong> Media outlets that are generally regarded as reputable, balanced, and independent of direct government control.</li>
|
||||
<li><strong>"Junk News" Media.</strong> Unreliable, skewed, openly propagandistic, or fringe media outlets that lack discernable government ties.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<strong>Social Media Platform</strong> (binary, select all that apply). Platform(s) on which alleged interference occurred.
|
||||
<ul class="inner">
|
||||
<li><strong>Facebook</strong></li>
|
||||
<li><strong>Instagram</strong></li>
|
||||
<li><strong>Twitter</strong></li>
|
||||
<li><strong>YouTube</strong></li>
|
||||
<li><strong>LinkedIn</strong></li>
|
||||
<li><strong>Reddit</strong></li>
|
||||
<li><strong>VK</strong></li>
|
||||
<li><strong>Forum Board</strong> (binary)</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<strong>Messaging Platforms.</strong> (binary, select all that apply). Platform(s) on which alleged interference occurred.
|
||||
<ul class="inner">
|
||||
<li><strong>WhatsApp</strong></li>
|
||||
<li><strong>Telegram</strong></li>
|
||||
<li><strong>Signal</strong></li>
|
||||
<li><strong>WeChat</strong></li>
|
||||
<li><strong>SMS</strong></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><strong>Advertisement</strong> (binary).</li>
|
||||
<li><strong>Email</strong> (binary).</li>
|
||||
</ul>
|
||||
<h5 id="method">How was the interference purportedly conducted?</h5>
|
||||
<ul>
|
||||
<li>
|
||||
<strong>Method.</strong> Methods used in both the creation and the amplification of content related to the alleged foreign interference (binary, select all that apply).
|
||||
<ul class="inner">
|
||||
<li><strong>Brigading.</strong> Authentic social media accounts but evidence of coordinated amplification or harassment.</li>
|
||||
<li><strong>Sockpuppets.</strong> Inauthentic social media accounts; evidence suggests a high likelihood of human operation.</li>
|
||||
<li><strong>Botnets.</strong> Inauthentic social media accounts; evidence suggests a high likelihood of automation.</li>
|
||||
<li><strong>Search Engine Manipulation.</strong> Manipulation of search queries and results; typosquatting.</li>
|
||||
<li><strong>Hacking - DDoS.</strong> Distributed denial-of-service attack; malicious attempt to disrupt server traffic.</li>
|
||||
<li><strong>Hacking - Data Exfiltration.</strong> Unauthorized movement of data; spearphishing; hack-and-release.</li>
|
||||
<li><strong>Deceptive Content Manipulation.</strong> Deceptively edited content; deceptive co-option of existing brands; does not include use of deep learning processes.</li>
|
||||
<li><strong>Deep Learning Processes.</strong> Augmented or fabricated content produced using deep learning processes; "deep fakes"; textual generation. Sometimes referred to as "<a href="https://securingdemocracy.gmfus.org/deepfake-myths-common-misconceptions-about-synthetic-media/" target="_blank">synthetic media</a>," although this term does not adequately distinguish between the use of deep learning and use of more basic manipulative techniques.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h5>What was the impact of the allegation on online media discourse?</h5>
|
||||
<ul>
|
||||
<li>
|
||||
<strong>Attribution Impact.</strong> Measures the spread of case-related articles and content over the seven days following a foreign interference allegation. It is a sum of Facebook engagements, Twitter shares, and Reddit engagements. Methodology is <span class="pseudolink" onclick="window.scrollsmooth('attribution-impact', 'collapsible-methodology');">described</span> above to acquire online articles about cases and social media engagement of articles; social media data is defined and sourced by Buzzsumo and Crowdtangle.
|
||||
<ul class="inner">
|
||||
<li><strong>Article count</strong> (quantitative). The number of web links about the allegation in the week after the date of attribution of the case.</li>
|
||||
<li><strong>Facebook engagement</strong> (quantitative). Aggregate shares, comments, and reactions of a web link.</li>
|
||||
<li><strong>Twitter engagement</strong> (quantitative). Aggregate shares of a web link.</li>
|
||||
<li><strong>Reddit engagement</strong> (quantitative). Aggregate shares and interactions of a web link.</li>
|
||||
<li><strong>Total engagement</strong> (quantitative). Aggregate Facebook, Twitter, and Reddit engagement.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h5>How credible, biased, legitimate, and transparent is the allegation?</h5>
|
||||
<ul>
|
||||
<li>
|
||||
<strong>Attribution Score.</strong> Methodology is described <span class="pseudolink" onclick="window.scrollsmooth('attribution-score', 'collapsible-methodology');">above</span>; the goal of this score is to critically assess the validity of the allegation from multiple perspectives.
|
||||
<ul class="inner">
|
||||
<li><strong>Credibility</strong></li>
|
||||
<li><strong>Bias</strong></li>
|
||||
<li><strong>Evidence</strong></li>
|
||||
<li><strong>Transparency</strong></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="separator"></div>
|
||||
</section>
|
||||
<section class="content about">
|
||||
<!--<h3>About</h3>-->
|
||||
<h4>About This Project</h4>
|
||||
<p>
|
||||
The core FIAT research team is composed of <a href="https://twitter.com/etbrooking" target="_blank">Emerson T. Brooking</a> (lead), <a href="https://twitter.com/AlyssaKann" target="_blank">Alyssa Kann</a>, <a href="https://twitter.com/maxbrizzuto" target="_blank">Max Rizzuto</a>, <a href="https://twitter.com/jacqumalaret" target="_blank">Jacqueline Malaret</a>, and Helen Simpson.
|
||||
</p>
|
||||
<p>
|
||||
The tool was designed by <a href="https://higsch.com" target="_blank">Matthias Stahl</a> <span class="smaller">(higsch | data & design)</span>.
|
||||
</p>
|
||||
<p>
|
||||
This project was directed by <a href="https://twitter.com/grahambrookie" target="_blank">Graham Brookie</a> and <a href="https://twitter.com/etbrooking" target="_blank">Emerson T. Brooking</a>.
|
||||
</p>
|
||||
<p>
|
||||
Invaluable counsel and coordination was provided by Nicholas Yap, Kelsey Henquinet, Andy Carvin, Anna Pellegatta, Devin Chavira, Eric Baker, and Zarine Kharazian.
|
||||
</p>
|
||||
<p>
|
||||
This project is made possible thanks to the generosity and commitment of Craig Newmark Philanthropies.
|
||||
</p>
|
||||
<h4>About the DFRLab</h4>
|
||||
<p>
|
||||
The Atlantic Council's <a href="https://www.atlanticcouncil.org/programs/digital-forensic-research-lab/" target="_blank">Digital Forensic Research Lab</a>—whose work resides at the unique intersection between government, media, and technology—aims to establish accountability and transparency online as a means to secure democracy and restore trust in public discourse.
|
||||
</p>
|
||||
<p>
|
||||
DFRLab is spread across five continents, and its work is rooted among three pillars:
|
||||
</p>
|
||||
<ul>
|
||||
<li>To promote objective fact as a foundation of government for and by people, to protect democratic institutions and norms from those who would undermine them online, and to identify, expose, and explain disinformation when and where it occurs.</li>
|
||||
<li>To create a new model of expertise adapted for impact and real-world results.</li>
|
||||
<li>To forge digital resilience at a time when humans are more interconnected than at any point in history.</li>
|
||||
</ul>
|
||||
<h4>About the Atlantic Council</h4>
|
||||
<p>
|
||||
<a href="https://www.atlanticcouncil.org/" target="_blank">The Atlantic Council</a> promotes constructive leadership and engagement in international affairs based on the Atlantic Community’s central role in meeting global challenges. The Council provides an essential forum for navigating the dramatic economic and political changes defining the twenty-first century by informing and galvanizing its uniquely influential network of global leaders. The Atlantic Council—through the papers it publishes, the ideas it generates, the future leaders it develops, and the communities it builds—shapes policy choices and strategies to create a more free, secure, and prosperous world.
|
||||
</p>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="separator"></div>
|
||||
<a href="https://www.atlanticcouncil.org/privacy-policy/" target="_blank">Privacy</a>
|
||||
<a href="https://www.atlanticcouncil.org/programs/digital-forensic-research-lab/" target="_blank">Atlantic Council's Digital Forensic Research Lab</a>
|
||||
<p>2020</p>
|
||||
</footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
1
push_to_ghpages.sh
Исполняемый файл
@ -0,0 +1 @@
|
||||
git subtree push --prefix public origin gh-pages
|
||||