9 |
10 | {% endblock %}
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Byte-compiled / optimized / DLL files
2 | __pycache__/
3 | *.py[cod]
4 |
5 | # C extensions
6 | *.so
7 |
8 | # Distribution / packaging
9 | bin/
10 | build/
11 | develop-eggs/
12 | dist/
13 | eggs/
14 | lib/
15 | lib64/
16 | parts/
17 | sdist/
18 | var/
19 | *.egg-info/
20 | .installed.cfg
21 | *.egg
22 |
23 | # Installer logs
24 | pip-log.txt
25 | pip-delete-this-directory.txt
26 |
27 | # Unit test / coverage reports
28 | .tox/
29 | .coverage
30 | .cache
31 | nosetests.xml
32 | coverage.xml
33 |
34 | # Translations
35 | *.mo
36 |
37 | # Mr Developer
38 | .mr.developer.cfg
39 | .project
40 | .pydevproject
41 |
42 | # Rope
43 | .ropeproject
44 |
45 | # Django stuff:
46 | *.log
47 | *.pot
48 |
49 | # Sphinx documentation
50 | docs/_build/
--------------------------------------------------------------------------------
/resources/data-generator.py:
--------------------------------------------------------------------------------
1 | import random
2 |
3 | names = ["Jon", "Monica", "Carl", "Ron", "Anna", "Lucy", "Eddy", "Eva", "Tom", "Harry", "Donna", "Jessica", "Peter", "Ritta", "Sarah", "Rodney", "Phyllis", "Meredith", "Angela",
4 | "Kelly", "Armando", "Kindra", "Monty", "Jona", "Val", "Lenny", "Bruce", "Simon", "Hector", "Laura", "Oleta", "Drucilla", "Rick", "Morty", "Jerry", "Beth", "Summer", "Eric", "Kenny"]
5 |
6 | number_of_nodes = 300
7 |
8 | f = open("data.txt", "w+")
9 |
10 | for i in range(number_of_nodes):
11 | row = "CREATE (n:User { id:" + str(i) + ", name: '" + \
12 | str(random.choice(names)) + "'});\n"
13 | f.write(row)
14 |
15 | for _ in range(2):
16 | for i in range(number_of_nodes):
17 | row = "MATCH (a:User),(b:User) WHERE a.id = " + str(i) + " AND b.id = " + str(random.randrange(
18 | number_of_nodes)) + " CREATE (a)-[r:FRIENDS]->(b);\n"
19 | f.write(row)
20 |
21 | f.close()
22 |
--------------------------------------------------------------------------------
/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM python:3.7-slim-bullseye
2 |
3 | # Install pymgclient
4 | RUN apt-get update && \
5 | apt-get install -y git cmake make gcc g++ libssl-dev && \
6 | git clone --recursive https://github.com/memgraph/pymgclient /pymgclient && \
7 | cd pymgclient && \
8 | git checkout v1.1.0 && \
9 | python3 setup.py install && \
10 | python3 -c "import mgclient"
11 |
12 | # Install poetry
13 | RUN python3 -m pip install -U pip \
14 | && python3 -c "import urllib.request; print(urllib.request.urlopen('https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py').read().decode('utf-8'))" | python3
15 |
16 | RUN pip install poetry
17 | # ENV PATH="${PATH}:/root/.poetry/bin"
18 |
19 | WORKDIR /app
20 | COPY poetry.lock pyproject.toml /app/
21 |
22 |
23 | RUN poetry config virtualenvs.create false && \
24 | poetry install --no-interaction --no-ansi
25 |
26 | COPY . /app
27 | EXPOSE 5000
28 |
29 | ADD start.sh /
30 | RUN chmod +x /start.sh
31 |
32 | ENTRYPOINT [ "poetry", "run" ]
33 | CMD ["/start.sh"]
34 |
--------------------------------------------------------------------------------
/app.py:
--------------------------------------------------------------------------------
1 | from flask import Flask, render_template, jsonify, make_response
2 | from sng_demo.database import Memgraph
3 | from sng_demo import db_operations
4 |
5 | app = Flask(__name__)
6 |
7 |
8 | @app.route('/')
9 | @app.route('/index')
10 | def index():
11 | db = Memgraph()
12 | db_operations.clear(db)
13 | db_operations.populate_database(db, "resources/data_big.txt")
14 | return render_template('index.html')
15 |
16 | @app.route('/query')
17 | def query():
18 | return render_template('query.html')
19 |
20 | @app.route("/get-graph", methods=["POST"])
21 | def get_graph():
22 | db = Memgraph()
23 | response = make_response(
24 | jsonify(db_operations.get_graph(db)), 200)
25 | return response
26 |
27 | @app.route('/get-users', methods=["POST"])
28 | def get_users():
29 | db = Memgraph()
30 | response = make_response(
31 | jsonify(db_operations.get_users(db)), 200)
32 | return response
33 |
34 | @app.route('/get-relationships', methods=["POST"])
35 | def get_relationships():
36 | db = Memgraph()
37 | response = make_response(
38 | jsonify(db_operations.get_relationships(db)), 200)
39 | return response
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Social Network Graph Demo
2 |
3 |
4 | When you think about a web application, a graph database doesn’t usually spring to mind. Instead, most people just take the familiar route of using an SQL database to store information. While this is perfectly acceptable for most use cases there are sometimes those that would see tremendous benefits by using a graph database.
5 | In this tutorial, I will show you how to make a basic web application using Flask that stores all of its information in a graph database. To be more precise we are using Memgraph DB, an in-memory database that can easily handle a lot of information and perform read/write instructions quite quickly.
6 | Our use case is a Social Network Graph (in the code referred to as **SNG** for convenience) representing users and the connections between them. Usually, such a graph would contain millions of nodes and edges and the algorithms that are performed on them don’t do well with data being stored in relational databases.
6 |
7 |
8 | ## Introduction
9 |
10 |
11 | When you think about a web application, a graph database doesn’t usually spring to mind. Instead, most people just take the familiar route of using an SQL database to store information. While this is perfectly acceptable for most use cases there are sometimes those that would see tremendous benefits by using a graph database.
12 | In this tutorial, I will show you how to make a basic web application using Flask that stores all of its information in a graph database. To be more precise we are using **Memgraph DB**, an in-memory database that can easily handle a lot of information and perform read/write instructions quite quickly.
13 | Our use case is a **Social Network Graph** (in the code referred to as **SNG** for convenience) representing users and the connections between them. Usually, such a graph would contain millions of relationships and the algorithms that are performed on them don’t do well with data being stored in relational databases.
14 | In this tutorial, I will show you step by step how to build a simple Python web application from the bottom up so you get a basic understanding of the technologies that are used. You can also find all of the code [here](https://github.com/g-despot/sng-demo) if you don't want to work on it as you go through the tutorial. If at any point in this tutorial you have a question or something is not working for you, feel free to post on [StackOverflow](https://stackoverflow.com/questions/tagged/memgraphdb) with the tag `memgraphdb`.
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | ## Prerequisites
23 |
24 |
25 | Because we are building a complete web application there is a number of tools that you will need to install before we begin:
26 | * **[Poetry](https://python-poetry.org/docs/)**: a tool for dependency management and packaging in Python. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you.
27 | * **[Flask](https://flask.palletsprojects.com/en/1.1.x/quickstart/)**: a very powerful web framework that provides you with tools, libraries and technologies used in web development. A Flask application can be as small as a single web page or as complex as a management interface.
28 | * **[Docker and Compose](https://docs.docker.com/get-docker/)**: an open platform for developing, shipping, and running applications. It enables us to separate our application from our infrastructure (host machine). If you are installing Docker on Windows, Compose will be already included. For Linux and macOS visit [this site](https://docs.docker.com/compose/install/).
29 | * **[Memgraph DB](https://docs.memgraph.com/memgraph/quick-start)**: a native fully distributed in-memory graph database built to handle real-time use-cases at enterprise scale. Follow the **Docker Installation** instructions on the Quick Start page. While it's completely optional, I encourage you to also install **[Memgraph Lab](https://memgraph.com/product/lab)** so you can execute **openCypher** queries on the database directly and see visualized results.
30 |
31 |
32 |
33 | ## Creating the Project Structure and Handling Dependencies
34 |
35 |
36 | Sometimes standard packaging systems and dependency management in Python can be confusing for beginners so we decided to use Poetry.
37 | To start building our project structure choose a working directory and run:
38 |
39 | ```
40 | poetry new sng-demo
41 | ```
42 |
43 | Now you should have a directory with the following content:
44 |
45 | ```
46 | sng-demo
47 | ├── pyproject.toml
48 | ├── README.rst
49 | ├── sng_demo
50 | │ └── __init__.py
51 | └── tests
52 | ├── __init__.py
53 | └── test_poetry_demo.py
54 | ```
55 |
56 | In this tutorial, we won’t use the testing functionalities so go on ahead and delete the directory `tests` as well as the file `README.rst`.
57 |
58 | Now we need to add the dependencies for our project. Given that we are going to run the app inside a Docker container we don't need the dependencies installed locally, only inside the container. Copy the files [`project.toml`](https://github.com/g-despot/sng-demo/blob/master/pyproject.toml) and [`poetry.lock`](https://github.com/g-despot/sng-demo/blob/master/poetry.lock) and place them in the root directory of the project. The only other thing we need to do about dependency management is to tell Docker how to run Poetry on startup so it can install/update all the necessary dependencies inside the container.
59 |
60 |
61 | ## Dockerizing an Application
62 |
63 |
64 | In the root directory of the project create two files, `Dockerfile` and `docker-compose.yml`. At the beginning of the `Dockerfile`, we specify the Python version and instruct the container to install **CMake**, **poetry**, **mgclient** and **pymgclient**. Poetry is necessary to manage our dependencies inside the container while CMake and mgclient are required for pymgclient, the Python driver for **Memgraph DB**.
65 | You don’t have to focus too much on this part just copy the code to your `Dockerfile`:
66 | ```dockerfile
67 | FROM python:3.7-slim-bullseye
68 |
69 | # Install pymgclient
70 | RUN apt-get update && \
71 | apt-get install -y git cmake make gcc g++ libssl-dev && \
72 | git clone --recursive https://github.com/memgraph/pymgclient /pymgclient && \
73 | cd pymgclient && \
74 | git checkout v1.1.0 && \
75 | python3 setup.py install && \
76 | python3 -c "import mgclient"
77 |
78 | # Install poetry
79 | RUN python3 -m pip install -U pip \
80 | && python3 -c "import urllib.request; print(urllib.request.urlopen('https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py').read().decode('utf-8'))" | python3
81 |
82 | ENV PATH="${PATH}:/root/.poetry/bin"
83 | ```
84 | Next, we define the working directory with:
85 | ```dockerfile
86 | WORKDIR /app
87 | COPY poetry.lock pyproject.toml /app/
88 | ```
89 | The second command will enable us to cache the project requirements and only reinstall them when `pyproject.toml` or `poetry.lock` are changed.
90 | ```dockerfile
91 | RUN poetry config virtualenvs.create false && \
92 | poetry install --no-interaction --no-ansi
93 | ```
94 | We don’t need to create a virtual environment because our application is already isolated by being in a Docker container. To disable it `virtualenvs.create` needs to be set to false.
95 | The second line in the command ensures that Poetry asks us no interactive questions while installing/updating dependencies and it makes the output more log friendly.
96 | ```dockerfile
97 | COPY . /app
98 | EXPOSE 5000
99 | ENTRYPOINT [ "poetry", "run" ]
100 | ```
101 | This is where we essentially create all the directories and files inside of our container. The `EXPOSE` command informs Docker that the container listens on the specified network port at runtime.
102 |
103 | Next, we need to create a `docker-compose.yml` file. **Compose** is a tool for defining and running multi-container Docker applications. With Compose, you use a YAML file to configure your application’s services. Then, with a single command, you create and start all the services from your configuration. For our project, we need two services. One is the web application (`sng_demo`) and the other a database instance (`memgraph`).
104 |
105 | If you followed the instructions on [how to setup Memgraph DB with Docker](https://docs.memgraph.com/memgraph/quick-start) correctly you only need to add the following code to your `docker-compose.yml` file to run the container:
106 | ```yaml
107 | version: '3'
108 | services:
109 | memgraph:
110 | image: memgraph/memgraph
111 | ports:
112 | - "7687:7687"
113 | sng_demo:
114 | build: .
115 | volumes:
116 | - .:/app
117 | ports:
118 | - "5000:5000"
119 | environment:
120 | MG_HOST: memgraph
121 | MG_PORT: 7687
122 | depends_on:
123 | - memgraph
124 | ```
125 | When it comes to the `ports` key, there is an important distinction between the **HOST_PORT** and the **CONTAINER_PORT**. The first number in the key is the **HOST_PORT** and it can be used to connect from your host machine to the service (for example with **Memgraph Lab**). The second number specifies the **CONTAINER_PORT** which is used for service-to-service communication. More precisely, our service `sng_db` can use this port to access the service `memgraph` and connect to the database.
126 |
127 | The `environment` key contains `MG_HOST` and `MG_PORT` which represent environment variables in the service’s container. They store the `memgraph` service address and port which are needed to establish a database connection.
128 | The `depends_on` key is used to start services in dependency order because we need the database to start before the web application.
129 |
130 | The `build` key allows us to tell Compose where to find the build instructions as well as the files and/or folders used during the build process. By using the `volumes` key, we bypass the need to constantly restart our image to load new changes to it from the host machine.
131 |
132 | Finally, we have a dockerized project that utilizes Poetry! This approach is great for development because it enables us to run our project on completely different operating systems and environments without having to worry about compatibility issues.
133 |
134 |
135 |
136 | ## Web Development with Flask
137 |
138 |
139 | Flask is very simple to use so why not create a **Hello World!** page to try out our Docker+Poetry setup.
140 | In the project root directory create a file called `app.py` with the following code:
141 | ```python
142 | from flask import Flask
143 |
144 | app = Flask(__name__)
145 |
146 |
147 | @app.route('/')
148 | @app.route('/index')
149 | def index():
150 | return "Hello World"
151 |
152 | ```
153 | First, we imported the Flask class and then created an instance of it. The `route()` decorator tells Flask what URL should trigger our function.
154 | Now, we need to tell Docker how to run our app. This can be done by creating a simple script in the project root directory. Let’s call it `start.sh`:
155 | ```bash
156 | #!/bin/bash
157 | export FLASK_APP=app.py
158 | export FLASK_ENV=development
159 | flask run --host 0.0.0.0
160 | ```
161 | Setting `FLASK_ENV` to `development` will enable the debug mode. This makes Flask use an interactive debugger and reloader.
162 | Setting `FLASK_APP` to `app.py` specifies how to start the application.
163 | We need to tell Docker when and how to run this script so put the following code in your `Dockerfile` after the line `EXPOSE 5000` :
164 | ```dockerfile
165 | ADD start.sh /
166 | RUN chmod +x /start.sh
167 | ```
168 | The command `chmod +x` makes the script executable by setting the right permission.
169 | To execute the script, add the following command after the line `ENTRYPOINT [ "poetry", "run" ]`:
170 | ```dockerfile
171 | CMD ["/start.sh"]
172 | ```
173 | That’s it! Our first web page is ready so let’s start our app to make sure we don’t have any errors.
174 | In the project root directory execute:
175 | ```shell
176 | docker-compose build
177 | ```
178 | The first build will take some time because Docker has to download and install a lot of dependencies.
179 | After it finishes run:
180 | ```shell
181 | docker-compose up
182 | ```
183 | The URL of our web application is http://localhost:5000/. When you open it there should be a message **Hello World!** which means that the app is up and running.
184 | Now it’s time to create a more complex web page that will contain our Social Network Graph. In the project root directory create a folder called `templates` and in it a file with the name `base.html`. This will be our base HTML template for other pages. Copy the code:
185 | ```html
186 |
187 |
188 |
189 |
190 |
191 |
192 |
193 |
194 |
195 |
196 |
197 |
198 |
199 |
200 | Social Network Graph Demo
201 |
202 |
203 |
204 | {% block content %} {% endblock %}
205 |
206 |
207 |
208 | ```
209 | We also need to create an HTML file for our actual landing site that utilizes this base file and an accompanying JavaScript file. Create the HTML file in the same location with the name `index.html` and copy the following code into it:
210 | ```html
211 | {% extends 'base.html' %} {% block content %}
212 |
213 | Hello World!
214 |
215 |
216 | {% endblock %}
217 | ```
218 | In the project root directory create a folder called `static` with one subfolder called `js` and another called `css`. The `js` folder will contain all of the needed local JavaScript files while the `css` folder will contain all the CSS stylesheets. In the `js` folder create a file called `index.js` and in the `css` folder one called `style.css`. Just leave them empty for now.
219 | If you want to find out more about web development with Flask I suggest you try out [this tutorial](https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world).
220 | Your current project structure should like this:
221 | ```
222 | sng-demo
223 | ├── sng_demo
224 | │ └── __init__.py
225 | ├── templates
226 | │ └── index.html
227 | ├── static
228 | │ ├── css
229 | │ │ └── style.css
230 | │ └── js
231 | │ ├── base.html
232 | │ └── index.js
233 | ├── app.py
234 | ├── docker-compose.yml
235 | ├── Dockerfile
236 | ├── poetry.lock
237 | ├── pyproject.toml
238 | └── start.sh
239 | ```
240 |
241 |
242 |
243 | ## The Data Model and Database Connection
244 |
245 |
246 | In the app directory `sng-demo` create a folder called `database`. This folder will contain all of the modules that we need to communicate with the database. You can find them [here](https://github.com/g-despot/sng-demo/tree/master/sng_demo/database) and just copy their contents. They are closely related to the database driver and if you wish to examine them a bit more I suggest you look up the driver documentation [here](https://github.com/memgraph/pymgclient).
247 | In the app directory `sng-demo` create the module `db_operations.py`. This is where all the custom database related commands will be located.
248 | The `sng_demo` directory should look like this:
249 |
250 | ```
251 | sng_demo
252 | ├── __init__.py
253 | ├── db_operations.py
254 | └── database
255 | ├── __init__.py
256 | ├── memgraph.py
257 | ├── connection.py
258 | └── models.py
259 | ```
260 | We will use a very simple data model that can be easily upgraded later on.
261 | There is only one node with the label `User` and each `User` has two properties, a numerical `id` and a string `name`. Nodes are connected with edges of the type `FRIENDS`:
262 |
263 |
264 |
265 |
266 |
267 | There are several methods to populate our database ([more on that here](https://docs.memgraph.com/memgraph/how-to-guides-overview/import-data)) but we will be doing it manually by executing **openCypher** queries so you can get a better understanding of how to communicate with the database. You will find all the necessary queries to populate the database in the files [`data_big.txt`](https://github.com/g-despot/sng-demo/blob/master/resources/data_big.txt) and [`data_small.txt`](https://github.com/g-despot/sng-demo/blob/master/resources/data_small.txt). The former just has a larger dataset than the latter.
268 | In the project root directory create a folder called `resources` and place the files in it. Now you can add an import method to your web application.
269 | In the module `db_operations.py` add the following import and method:
270 |
271 | ```python
272 | import json
273 |
274 | def clear(db):
275 | command = "MATCH (node) DETACH DELETE node"
276 | db.execute_query(command)
277 |
278 | def populate_database(db, path):
279 | file = open(path)
280 | lines = file.readlines()
281 | file.close()
282 | for line in lines:
283 | if len(line.strip()) != 0 and line[0] != '/':
284 | db.execute_query(line)
285 | ```
286 | The method `clear()` deletes any data that might have been left in the database before populating it.
287 | The method `populate_database()` reads all of the **openCypher** queries in the specified file and executes them.
288 | In the module `app.py` change the imports and method `index()` to:
289 |
290 | ```python
291 | from flask import Flask, render_template, request, jsonify, make_response
292 | from sng_demo.database import Memgraph
293 | from sng_demo import db_operations
294 |
295 | app = Flask(__name__)
296 |
297 |
298 | @app.route('/')
299 | @app.route('/index')
300 | def index():
301 | db = Memgraph()
302 | db_operations.clear(db)
303 | db_operations.populate_database(db, "resources/data_small.txt")
304 | return render_template('index.html')
305 | ```
306 | Now every time we refresh our index page the database is cleared and repopulated with new data. While this is not suitable for the production stage, it is highly useful during development because it will enable us to make changes in the data without having to restart the whole application or working directly on the database.
307 | If you want to examine the graph before proceeding, I suggest you open **Memgraph Lab** and run the query `MATCH (n1)-[e:FRIENDS]-(n2) RETURN n1,n2,e;`.
308 | The result should be:
309 |
310 |
311 |
312 |
313 |
314 |
315 |
316 | We also need a method in our app to fetch all the relevant data from the database when a client requests it.
317 | Let’s call it `get_graph()` and place it in the `db_operations.py` module:
318 |
319 | ```python
320 | def get_graph(db):
321 | command = "MATCH (n1)-[e:FRIENDS]-(n2) RETURN n1,n2,e;"
322 | relationships = db.execute_and_fetch(command)
323 |
324 | link_objects = []
325 | node_objects = []
326 | added_nodes = []
327 | for relationship in relationships:
328 | e = relationship['e']
329 | data = {"source": e.nodes[0], "target": e.nodes[1]}
330 | link_objects.append(data)
331 |
332 | n1 = relationship['n1']
333 | if not (n1.id in added_nodes):
334 | data = {"id": n1.id, "name": n1.properties['name']}
335 | node_objects.append(data)
336 | added_nodes.append(n1.id)
337 |
338 | n2 = relationship['n2']
339 | if not (n2.id in added_nodes):
340 | data = {"id": n2.id, "name": n2.properties['name']}
341 | node_objects.append(data)
342 | added_nodes.append(n2.id)
343 | data = {"links": link_objects, "nodes": node_objects}
344 |
345 | return json.dumps(data)
346 | ```
347 |
348 | First, we need to execute the **openCypher** query `MATCH (n1)-[e:FRIENDS]-(n2) RETURN n1,n2,e;` and return its results from the database. These results will contain all the edges in the graph as well as all the nodes that are connected to those edges. Nodes that don't have connections will not be returned and that's ok for now.
349 | The results (the object `relationships`) are in the form of a generator which we can iterate over and access its contents by using the node/edge names specified in our initial query (`n1`,`n2` and `e`).
350 | We also need to check if a node has already been appended to the `node_objects` list because multiple edges can contain (point to or from) the same node. All of the objects are stored in key-value pairs suitable for later JSON conversion.
351 | The final result is a JSON object containing:
352 | * `links`: all the relationships that are in the graph as pairs of `source` and `target` id properties,
353 | * `nodes`: all the nodes from the graph that form relationships with other nodes.
354 |
355 | In your `app.py` module add the following method:
356 |
357 | ```python
358 | @app.route("/get-graph", methods=["POST"])
359 | def get_graph():
360 | db = Memgraph()
361 | response = make_response(
362 | jsonify(db_operations.get_graph(db)), 200)
363 | return response
364 | ```
365 |
366 | This method is responsible for responding to POST requests from the client. It returns the graph data that we fetched from the server in the previous method.
367 | Now let's do something with this data! Copy the contents for your `index.js` file [from here](https://github.com/g-despot/sng-demo/blob/master/static/js/index.js)
368 | and the `style.css` file [from here](https://github.com/g-despot/sng-demo/blob/master/static/css/style.css).
369 | We also need to add the actual SVG graphic to our page so change the `index.html` file to:
370 | ```html
371 | {% extends 'base.html' %} {% block content %}
372 |
373 |
374 |
375 |
376 | {% endblock %}
377 | ```
378 | I won't go into much detail about how to use **D3.js** so if you want to find out more I encourage you to visit [their website](https://d3js.org/).
379 | In short, we fetch all the nodes and edges from the database and add them to an SVG element. The visual representation of the graph is made by simulating how physical forces act on particles (charge and gravity). You can drag and drop the nodes, hover over them to see the value of their name property, zoom in and out of the graph and move the SVG graphic.
380 |
381 |
382 |
383 |
384 |
385 |
386 |
387 |
388 | ## Additional Functionalities
389 |
390 |
391 | Go ahead and copy the file [`query.js`](https://github.com/g-despot/sng-demo/blob/master/static/js/query.js) to the directory `static/js` and [`query.html`](https://github.com/g-despot/sng-demo/blob/master/templates/query.html) to the directory `templates`. You can find the updated `base.html` file [here](https://github.com/g-despot/sng-demo/blob/master/templates/base.html). Copy the necessary methods from the [db_operations.py](https://github.com/g-despot/sng-demo/blob/master/sng_demo/db_operations.py) module and [app.py](https://github.com/g-despot/sng-demo/blob/master/app.py) module.
392 | After you made the changes, just open http://localhost:5000/query/ and see the results.
393 | This page will make your life easier if you want to debug the data being fetched from the server. It returns all the nodes or edges and shows them in a JSON highlighted format.
394 |
395 |
396 |
397 |
398 | Your current project structure should like this:
399 | ```
400 | sng-demo
401 | ├── resources
402 | │ ├── data_big.py
403 | │ └── data_small.txt
404 | ├── sng_demo
405 | │ ├── __init__.py
406 | │ ├── db_operations.py
407 | │ └── database
408 | │ ├── __init__.py
409 | │ ├── memgraph.py
410 | │ ├── connection.py
411 | │ └── models.py
412 | ├── templates
413 | │ ├── base.html
414 | │ ├── index.html
415 | │ └── query.html
416 | ├── static
417 | │ ├── css
418 | │ │ └── style.css
419 | │ └── js
420 | │ ├── index.js
421 | │ └── query.js
422 | ├── app.py
423 | ├── docker-compose.yml
424 | ├── Dockerfile
425 | ├── poetry.lock
426 | ├── pyproject.toml
427 | └── start.sh
428 | ```
429 |
430 |
431 | ## Conclusion
432 |
433 |
434 | Even though graph databases have been around for a long time, they are still not considered a mainstream tool in software development. **Relational database-management systems** model data as a set of predetermined structures. Complex joins and self-joins are necessary when the dataset becomes too inter-related. Modern datasets require technically complex queries which are often very inefficient in real-time scenarios.
435 | **Graph databases** offer powerful data modelling and analysis capabilities for many real-world problems such as social networks, business relationships, dependencies, shipping, logistics... and they have been adopted by many of the worlds leading tech companies. With this tutorial, I hope to shed some light on how easy it is to integrate a graph database in your development process and I encourage you to try it out yourself.
436 | As I said at the beginning, feel free to ask us any questions about this tutorial or Memgraph in general on [StackOverflow](https://stackoverflow.com/questions/tagged/memgraphdb) with the tag `memgraphdb` or on our official [forum](https://discourse.memgraph.com/). **Good luck with your coding!**
437 |
438 |
--------------------------------------------------------------------------------
/resources/data_big.txt:
--------------------------------------------------------------------------------
1 | CREATE (n:User { id:0, name: 'Harry'});
2 | CREATE (n:User { id:1, name: 'Jon'});
3 | CREATE (n:User { id:2, name: 'Rick'});
4 | CREATE (n:User { id:3, name: 'Summer'});
5 | CREATE (n:User { id:4, name: 'Ritta'});
6 | CREATE (n:User { id:5, name: 'Eddy'});
7 | CREATE (n:User { id:6, name: 'Sarah'});
8 | CREATE (n:User { id:7, name: 'Tom'});
9 | CREATE (n:User { id:8, name: 'Oleta'});
10 | CREATE (n:User { id:9, name: 'Angela'});
11 | CREATE (n:User { id:10, name: 'Eva'});
12 | CREATE (n:User { id:11, name: 'Monica'});
13 | CREATE (n:User { id:12, name: 'Eddy'});
14 | CREATE (n:User { id:13, name: 'Ritta'});
15 | CREATE (n:User { id:14, name: 'Armando'});
16 | CREATE (n:User { id:15, name: 'Jerry'});
17 | CREATE (n:User { id:16, name: 'Meredith'});
18 | CREATE (n:User { id:17, name: 'Jona'});
19 | CREATE (n:User { id:18, name: 'Eric'});
20 | CREATE (n:User { id:19, name: 'Rodney'});
21 | CREATE (n:User { id:20, name: 'Monica'});
22 | CREATE (n:User { id:21, name: 'Jessica'});
23 | CREATE (n:User { id:22, name: 'Anna'});
24 | CREATE (n:User { id:23, name: 'Ron'});
25 | CREATE (n:User { id:24, name: 'Monty'});
26 | CREATE (n:User { id:25, name: 'Lucy'});
27 | CREATE (n:User { id:26, name: 'Peter'});
28 | CREATE (n:User { id:27, name: 'Beth'});
29 | CREATE (n:User { id:28, name: 'Kindra'});
30 | CREATE (n:User { id:29, name: 'Hector'});
31 | CREATE (n:User { id:30, name: 'Simon'});
32 | CREATE (n:User { id:31, name: 'Bruce'});
33 | CREATE (n:User { id:32, name: 'Donna'});
34 | CREATE (n:User { id:33, name: 'Eric'});
35 | CREATE (n:User { id:34, name: 'Oleta'});
36 | CREATE (n:User { id:35, name: 'Eddy'});
37 | CREATE (n:User { id:36, name: 'Phyllis'});
38 | CREATE (n:User { id:37, name: 'Oleta'});
39 | CREATE (n:User { id:38, name: 'Eric'});
40 | CREATE (n:User { id:39, name: 'Meredith'});
41 | CREATE (n:User { id:40, name: 'Ron'});
42 | CREATE (n:User { id:41, name: 'Laura'});
43 | CREATE (n:User { id:42, name: 'Carl'});
44 | CREATE (n:User { id:43, name: 'Rodney'});
45 | CREATE (n:User { id:44, name: 'Monty'});
46 | CREATE (n:User { id:45, name: 'Meredith'});
47 | CREATE (n:User { id:46, name: 'Carl'});
48 | CREATE (n:User { id:47, name: 'Phyllis'});
49 | CREATE (n:User { id:48, name: 'Kindra'});
50 | CREATE (n:User { id:49, name: 'Kenny'});
51 | CREATE (n:User { id:50, name: 'Kelly'});
52 | CREATE (n:User { id:51, name: 'Oleta'});
53 | CREATE (n:User { id:52, name: 'Phyllis'});
54 | CREATE (n:User { id:53, name: 'Donna'});
55 | CREATE (n:User { id:54, name: 'Jessica'});
56 | CREATE (n:User { id:55, name: 'Armando'});
57 | CREATE (n:User { id:56, name: 'Jona'});
58 | CREATE (n:User { id:57, name: 'Drucilla'});
59 | CREATE (n:User { id:58, name: 'Angela'});
60 | CREATE (n:User { id:59, name: 'Eddy'});
61 | CREATE (n:User { id:60, name: 'Bruce'});
62 | CREATE (n:User { id:61, name: 'Eddy'});
63 | CREATE (n:User { id:62, name: 'Rodney'});
64 | CREATE (n:User { id:63, name: 'Ron'});
65 | CREATE (n:User { id:64, name: 'Meredith'});
66 | CREATE (n:User { id:65, name: 'Phyllis'});
67 | CREATE (n:User { id:66, name: 'Ritta'});
68 | CREATE (n:User { id:67, name: 'Eva'});
69 | CREATE (n:User { id:68, name: 'Kelly'});
70 | CREATE (n:User { id:69, name: 'Kelly'});
71 | CREATE (n:User { id:70, name: 'Eric'});
72 | CREATE (n:User { id:71, name: 'Jon'});
73 | CREATE (n:User { id:72, name: 'Angela'});
74 | CREATE (n:User { id:73, name: 'Eva'});
75 | CREATE (n:User { id:74, name: 'Monica'});
76 | CREATE (n:User { id:75, name: 'Eddy'});
77 | CREATE (n:User { id:76, name: 'Kenny'});
78 | CREATE (n:User { id:77, name: 'Jon'});
79 | CREATE (n:User { id:78, name: 'Val'});
80 | CREATE (n:User { id:79, name: 'Hector'});
81 | CREATE (n:User { id:80, name: 'Lenny'});
82 | CREATE (n:User { id:81, name: 'Anna'});
83 | CREATE (n:User { id:82, name: 'Rodney'});
84 | CREATE (n:User { id:83, name: 'Kindra'});
85 | CREATE (n:User { id:84, name: 'Ritta'});
86 | CREATE (n:User { id:85, name: 'Summer'});
87 | CREATE (n:User { id:86, name: 'Laura'});
88 | CREATE (n:User { id:87, name: 'Hector'});
89 | CREATE (n:User { id:88, name: 'Kenny'});
90 | CREATE (n:User { id:89, name: 'Val'});
91 | CREATE (n:User { id:90, name: 'Oleta'});
92 | CREATE (n:User { id:91, name: 'Ritta'});
93 | CREATE (n:User { id:92, name: 'Donna'});
94 | CREATE (n:User { id:93, name: 'Eva'});
95 | CREATE (n:User { id:94, name: 'Jerry'});
96 | CREATE (n:User { id:95, name: 'Carl'});
97 | CREATE (n:User { id:96, name: 'Summer'});
98 | CREATE (n:User { id:97, name: 'Laura'});
99 | CREATE (n:User { id:98, name: 'Kindra'});
100 | CREATE (n:User { id:99, name: 'Laura'});
101 | CREATE (n:User { id:100, name: 'Jona'});
102 | CREATE (n:User { id:101, name: 'Tom'});
103 | CREATE (n:User { id:102, name: 'Jerry'});
104 | CREATE (n:User { id:103, name: 'Jessica'});
105 | CREATE (n:User { id:104, name: 'Eddy'});
106 | CREATE (n:User { id:105, name: 'Oleta'});
107 | CREATE (n:User { id:106, name: 'Monty'});
108 | CREATE (n:User { id:107, name: 'Phyllis'});
109 | CREATE (n:User { id:108, name: 'Jon'});
110 | CREATE (n:User { id:109, name: 'Kindra'});
111 | CREATE (n:User { id:110, name: 'Oleta'});
112 | CREATE (n:User { id:111, name: 'Lucy'});
113 | CREATE (n:User { id:112, name: 'Val'});
114 | CREATE (n:User { id:113, name: 'Peter'});
115 | CREATE (n:User { id:114, name: 'Drucilla'});
116 | CREATE (n:User { id:115, name: 'Monty'});
117 | CREATE (n:User { id:116, name: 'Drucilla'});
118 | CREATE (n:User { id:117, name: 'Drucilla'});
119 | CREATE (n:User { id:118, name: 'Eddy'});
120 | CREATE (n:User { id:119, name: 'Jona'});
121 | CREATE (n:User { id:120, name: 'Lucy'});
122 | CREATE (n:User { id:121, name: 'Lenny'});
123 | CREATE (n:User { id:122, name: 'Meredith'});
124 | CREATE (n:User { id:123, name: 'Rodney'});
125 | CREATE (n:User { id:124, name: 'Laura'});
126 | CREATE (n:User { id:125, name: 'Monica'});
127 | CREATE (n:User { id:126, name: 'Rodney'});
128 | CREATE (n:User { id:127, name: 'Armando'});
129 | CREATE (n:User { id:128, name: 'Jerry'});
130 | CREATE (n:User { id:129, name: 'Laura'});
131 | CREATE (n:User { id:130, name: 'Tom'});
132 | CREATE (n:User { id:131, name: 'Tom'});
133 | CREATE (n:User { id:132, name: 'Kenny'});
134 | CREATE (n:User { id:133, name: 'Drucilla'});
135 | CREATE (n:User { id:134, name: 'Jessica'});
136 | CREATE (n:User { id:135, name: 'Jessica'});
137 | CREATE (n:User { id:136, name: 'Eddy'});
138 | CREATE (n:User { id:137, name: 'Anna'});
139 | CREATE (n:User { id:138, name: 'Tom'});
140 | CREATE (n:User { id:139, name: 'Peter'});
141 | CREATE (n:User { id:140, name: 'Bruce'});
142 | CREATE (n:User { id:141, name: 'Morty'});
143 | CREATE (n:User { id:142, name: 'Phyllis'});
144 | CREATE (n:User { id:143, name: 'Simon'});
145 | CREATE (n:User { id:144, name: 'Hector'});
146 | CREATE (n:User { id:145, name: 'Eva'});
147 | CREATE (n:User { id:146, name: 'Phyllis'});
148 | CREATE (n:User { id:147, name: 'Val'});
149 | CREATE (n:User { id:148, name: 'Kelly'});
150 | CREATE (n:User { id:149, name: 'Drucilla'});
151 | CREATE (n:User { id:150, name: 'Donna'});
152 | CREATE (n:User { id:151, name: 'Peter'});
153 | CREATE (n:User { id:152, name: 'Val'});
154 | CREATE (n:User { id:153, name: 'Tom'});
155 | CREATE (n:User { id:154, name: 'Eric'});
156 | CREATE (n:User { id:155, name: 'Monica'});
157 | CREATE (n:User { id:156, name: 'Anna'});
158 | CREATE (n:User { id:157, name: 'Tom'});
159 | CREATE (n:User { id:158, name: 'Hector'});
160 | CREATE (n:User { id:159, name: 'Carl'});
161 | CREATE (n:User { id:160, name: 'Lenny'});
162 | CREATE (n:User { id:161, name: 'Beth'});
163 | CREATE (n:User { id:162, name: 'Jessica'});
164 | CREATE (n:User { id:163, name: 'Eva'});
165 | CREATE (n:User { id:164, name: 'Phyllis'});
166 | CREATE (n:User { id:165, name: 'Monica'});
167 | CREATE (n:User { id:166, name: 'Eric'});
168 | CREATE (n:User { id:167, name: 'Jessica'});
169 | CREATE (n:User { id:168, name: 'Laura'});
170 | CREATE (n:User { id:169, name: 'Rick'});
171 | CREATE (n:User { id:170, name: 'Anna'});
172 | CREATE (n:User { id:171, name: 'Val'});
173 | CREATE (n:User { id:172, name: 'Lucy'});
174 | CREATE (n:User { id:173, name: 'Jessica'});
175 | CREATE (n:User { id:174, name: 'Kindra'});
176 | CREATE (n:User { id:175, name: 'Armando'});
177 | CREATE (n:User { id:176, name: 'Summer'});
178 | CREATE (n:User { id:177, name: 'Morty'});
179 | CREATE (n:User { id:178, name: 'Beth'});
180 | CREATE (n:User { id:179, name: 'Drucilla'});
181 | CREATE (n:User { id:180, name: 'Tom'});
182 | CREATE (n:User { id:181, name: 'Oleta'});
183 | CREATE (n:User { id:182, name: 'Simon'});
184 | CREATE (n:User { id:183, name: 'Oleta'});
185 | CREATE (n:User { id:184, name: 'Sarah'});
186 | CREATE (n:User { id:185, name: 'Oleta'});
187 | CREATE (n:User { id:186, name: 'Peter'});
188 | CREATE (n:User { id:187, name: 'Jerry'});
189 | CREATE (n:User { id:188, name: 'Jona'});
190 | CREATE (n:User { id:189, name: 'Meredith'});
191 | CREATE (n:User { id:190, name: 'Eddy'});
192 | CREATE (n:User { id:191, name: 'Kindra'});
193 | CREATE (n:User { id:192, name: 'Lenny'});
194 | CREATE (n:User { id:193, name: 'Sarah'});
195 | CREATE (n:User { id:194, name: 'Tom'});
196 | CREATE (n:User { id:195, name: 'Harry'});
197 | CREATE (n:User { id:196, name: 'Jona'});
198 | CREATE (n:User { id:197, name: 'Kelly'});
199 | CREATE (n:User { id:198, name: 'Kindra'});
200 | CREATE (n:User { id:199, name: 'Tom'});
201 | CREATE (n:User { id:200, name: 'Peter'});
202 | CREATE (n:User { id:201, name: 'Eddy'});
203 | CREATE (n:User { id:202, name: 'Jon'});
204 | CREATE (n:User { id:203, name: 'Bruce'});
205 | CREATE (n:User { id:204, name: 'Jerry'});
206 | CREATE (n:User { id:205, name: 'Morty'});
207 | CREATE (n:User { id:206, name: 'Ron'});
208 | CREATE (n:User { id:207, name: 'Eddy'});
209 | CREATE (n:User { id:208, name: 'Kenny'});
210 | CREATE (n:User { id:209, name: 'Meredith'});
211 | CREATE (n:User { id:210, name: 'Kelly'});
212 | CREATE (n:User { id:211, name: 'Eddy'});
213 | CREATE (n:User { id:212, name: 'Lenny'});
214 | CREATE (n:User { id:213, name: 'Kindra'});
215 | CREATE (n:User { id:214, name: 'Monica'});
216 | CREATE (n:User { id:215, name: 'Jerry'});
217 | CREATE (n:User { id:216, name: 'Ritta'});
218 | CREATE (n:User { id:217, name: 'Meredith'});
219 | CREATE (n:User { id:218, name: 'Meredith'});
220 | CREATE (n:User { id:219, name: 'Meredith'});
221 | CREATE (n:User { id:220, name: 'Monty'});
222 | CREATE (n:User { id:221, name: 'Lenny'});
223 | CREATE (n:User { id:222, name: 'Peter'});
224 | CREATE (n:User { id:223, name: 'Lenny'});
225 | CREATE (n:User { id:224, name: 'Simon'});
226 | CREATE (n:User { id:225, name: 'Sarah'});
227 | CREATE (n:User { id:226, name: 'Rick'});
228 | CREATE (n:User { id:227, name: 'Beth'});
229 | CREATE (n:User { id:228, name: 'Ritta'});
230 | CREATE (n:User { id:229, name: 'Jerry'});
231 | CREATE (n:User { id:230, name: 'Kelly'});
232 | CREATE (n:User { id:231, name: 'Eddy'});
233 | CREATE (n:User { id:232, name: 'Harry'});
234 | CREATE (n:User { id:233, name: 'Peter'});
235 | CREATE (n:User { id:234, name: 'Kindra'});
236 | CREATE (n:User { id:235, name: 'Ron'});
237 | CREATE (n:User { id:236, name: 'Jon'});
238 | CREATE (n:User { id:237, name: 'Laura'});
239 | CREATE (n:User { id:238, name: 'Simon'});
240 | CREATE (n:User { id:239, name: 'Rick'});
241 | CREATE (n:User { id:240, name: 'Angela'});
242 | CREATE (n:User { id:241, name: 'Jon'});
243 | CREATE (n:User { id:242, name: 'Peter'});
244 | CREATE (n:User { id:243, name: 'Simon'});
245 | CREATE (n:User { id:244, name: 'Drucilla'});
246 | CREATE (n:User { id:245, name: 'Carl'});
247 | CREATE (n:User { id:246, name: 'Meredith'});
248 | CREATE (n:User { id:247, name: 'Jerry'});
249 | CREATE (n:User { id:248, name: 'Eric'});
250 | CREATE (n:User { id:249, name: 'Rick'});
251 | CREATE (n:User { id:250, name: 'Tom'});
252 | CREATE (n:User { id:251, name: 'Summer'});
253 | CREATE (n:User { id:252, name: 'Angela'});
254 | CREATE (n:User { id:253, name: 'Armando'});
255 | CREATE (n:User { id:254, name: 'Rick'});
256 | CREATE (n:User { id:255, name: 'Ritta'});
257 | CREATE (n:User { id:256, name: 'Rick'});
258 | CREATE (n:User { id:257, name: 'Eva'});
259 | CREATE (n:User { id:258, name: 'Laura'});
260 | CREATE (n:User { id:259, name: 'Carl'});
261 | CREATE (n:User { id:260, name: 'Phyllis'});
262 | CREATE (n:User { id:261, name: 'Tom'});
263 | CREATE (n:User { id:262, name: 'Peter'});
264 | CREATE (n:User { id:263, name: 'Jona'});
265 | CREATE (n:User { id:264, name: 'Lucy'});
266 | CREATE (n:User { id:265, name: 'Armando'});
267 | CREATE (n:User { id:266, name: 'Rick'});
268 | CREATE (n:User { id:267, name: 'Kenny'});
269 | CREATE (n:User { id:268, name: 'Lenny'});
270 | CREATE (n:User { id:269, name: 'Monica'});
271 | CREATE (n:User { id:270, name: 'Armando'});
272 | CREATE (n:User { id:271, name: 'Sarah'});
273 | CREATE (n:User { id:272, name: 'Beth'});
274 | CREATE (n:User { id:273, name: 'Peter'});
275 | CREATE (n:User { id:274, name: 'Jona'});
276 | CREATE (n:User { id:275, name: 'Donna'});
277 | CREATE (n:User { id:276, name: 'Angela'});
278 | CREATE (n:User { id:277, name: 'Lucy'});
279 | CREATE (n:User { id:278, name: 'Anna'});
280 | CREATE (n:User { id:279, name: 'Bruce'});
281 | CREATE (n:User { id:280, name: 'Eva'});
282 | CREATE (n:User { id:281, name: 'Eddy'});
283 | CREATE (n:User { id:282, name: 'Armando'});
284 | CREATE (n:User { id:283, name: 'Ron'});
285 | CREATE (n:User { id:284, name: 'Summer'});
286 | CREATE (n:User { id:285, name: 'Kelly'});
287 | CREATE (n:User { id:286, name: 'Jona'});
288 | CREATE (n:User { id:287, name: 'Oleta'});
289 | CREATE (n:User { id:288, name: 'Bruce'});
290 | CREATE (n:User { id:289, name: 'Summer'});
291 | CREATE (n:User { id:290, name: 'Eddy'});
292 | CREATE (n:User { id:291, name: 'Lenny'});
293 | CREATE (n:User { id:292, name: 'Meredith'});
294 | CREATE (n:User { id:293, name: 'Peter'});
295 | CREATE (n:User { id:294, name: 'Donna'});
296 | CREATE (n:User { id:295, name: 'Monty'});
297 | CREATE (n:User { id:296, name: 'Peter'});
298 | CREATE (n:User { id:297, name: 'Ritta'});
299 | CREATE (n:User { id:298, name: 'Angela'});
300 | CREATE (n:User { id:299, name: 'Jon'});
301 | MATCH (a:User),(b:User) WHERE a.id = 0 AND b.id = 296 CREATE (a)-[r:FRIENDS]->(b);
302 | MATCH (a:User),(b:User) WHERE a.id = 1 AND b.id = 79 CREATE (a)-[r:FRIENDS]->(b);
303 | MATCH (a:User),(b:User) WHERE a.id = 2 AND b.id = 22 CREATE (a)-[r:FRIENDS]->(b);
304 | MATCH (a:User),(b:User) WHERE a.id = 3 AND b.id = 48 CREATE (a)-[r:FRIENDS]->(b);
305 | MATCH (a:User),(b:User) WHERE a.id = 4 AND b.id = 108 CREATE (a)-[r:FRIENDS]->(b);
306 | MATCH (a:User),(b:User) WHERE a.id = 5 AND b.id = 289 CREATE (a)-[r:FRIENDS]->(b);
307 | MATCH (a:User),(b:User) WHERE a.id = 6 AND b.id = 29 CREATE (a)-[r:FRIENDS]->(b);
308 | MATCH (a:User),(b:User) WHERE a.id = 7 AND b.id = 24 CREATE (a)-[r:FRIENDS]->(b);
309 | MATCH (a:User),(b:User) WHERE a.id = 8 AND b.id = 226 CREATE (a)-[r:FRIENDS]->(b);
310 | MATCH (a:User),(b:User) WHERE a.id = 9 AND b.id = 215 CREATE (a)-[r:FRIENDS]->(b);
311 | MATCH (a:User),(b:User) WHERE a.id = 10 AND b.id = 19 CREATE (a)-[r:FRIENDS]->(b);
312 | MATCH (a:User),(b:User) WHERE a.id = 11 AND b.id = 160 CREATE (a)-[r:FRIENDS]->(b);
313 | MATCH (a:User),(b:User) WHERE a.id = 12 AND b.id = 23 CREATE (a)-[r:FRIENDS]->(b);
314 | MATCH (a:User),(b:User) WHERE a.id = 13 AND b.id = 282 CREATE (a)-[r:FRIENDS]->(b);
315 | MATCH (a:User),(b:User) WHERE a.id = 14 AND b.id = 247 CREATE (a)-[r:FRIENDS]->(b);
316 | MATCH (a:User),(b:User) WHERE a.id = 15 AND b.id = 61 CREATE (a)-[r:FRIENDS]->(b);
317 | MATCH (a:User),(b:User) WHERE a.id = 16 AND b.id = 2 CREATE (a)-[r:FRIENDS]->(b);
318 | MATCH (a:User),(b:User) WHERE a.id = 17 AND b.id = 46 CREATE (a)-[r:FRIENDS]->(b);
319 | MATCH (a:User),(b:User) WHERE a.id = 18 AND b.id = 194 CREATE (a)-[r:FRIENDS]->(b);
320 | MATCH (a:User),(b:User) WHERE a.id = 19 AND b.id = 229 CREATE (a)-[r:FRIENDS]->(b);
321 | MATCH (a:User),(b:User) WHERE a.id = 20 AND b.id = 151 CREATE (a)-[r:FRIENDS]->(b);
322 | MATCH (a:User),(b:User) WHERE a.id = 21 AND b.id = 5 CREATE (a)-[r:FRIENDS]->(b);
323 | MATCH (a:User),(b:User) WHERE a.id = 22 AND b.id = 114 CREATE (a)-[r:FRIENDS]->(b);
324 | MATCH (a:User),(b:User) WHERE a.id = 23 AND b.id = 258 CREATE (a)-[r:FRIENDS]->(b);
325 | MATCH (a:User),(b:User) WHERE a.id = 24 AND b.id = 260 CREATE (a)-[r:FRIENDS]->(b);
326 | MATCH (a:User),(b:User) WHERE a.id = 25 AND b.id = 289 CREATE (a)-[r:FRIENDS]->(b);
327 | MATCH (a:User),(b:User) WHERE a.id = 26 AND b.id = 35 CREATE (a)-[r:FRIENDS]->(b);
328 | MATCH (a:User),(b:User) WHERE a.id = 27 AND b.id = 294 CREATE (a)-[r:FRIENDS]->(b);
329 | MATCH (a:User),(b:User) WHERE a.id = 28 AND b.id = 230 CREATE (a)-[r:FRIENDS]->(b);
330 | MATCH (a:User),(b:User) WHERE a.id = 29 AND b.id = 211 CREATE (a)-[r:FRIENDS]->(b);
331 | MATCH (a:User),(b:User) WHERE a.id = 30 AND b.id = 155 CREATE (a)-[r:FRIENDS]->(b);
332 | MATCH (a:User),(b:User) WHERE a.id = 31 AND b.id = 56 CREATE (a)-[r:FRIENDS]->(b);
333 | MATCH (a:User),(b:User) WHERE a.id = 32 AND b.id = 153 CREATE (a)-[r:FRIENDS]->(b);
334 | MATCH (a:User),(b:User) WHERE a.id = 33 AND b.id = 115 CREATE (a)-[r:FRIENDS]->(b);
335 | MATCH (a:User),(b:User) WHERE a.id = 34 AND b.id = 45 CREATE (a)-[r:FRIENDS]->(b);
336 | MATCH (a:User),(b:User) WHERE a.id = 35 AND b.id = 44 CREATE (a)-[r:FRIENDS]->(b);
337 | MATCH (a:User),(b:User) WHERE a.id = 36 AND b.id = 148 CREATE (a)-[r:FRIENDS]->(b);
338 | MATCH (a:User),(b:User) WHERE a.id = 37 AND b.id = 299 CREATE (a)-[r:FRIENDS]->(b);
339 | MATCH (a:User),(b:User) WHERE a.id = 38 AND b.id = 195 CREATE (a)-[r:FRIENDS]->(b);
340 | MATCH (a:User),(b:User) WHERE a.id = 39 AND b.id = 223 CREATE (a)-[r:FRIENDS]->(b);
341 | MATCH (a:User),(b:User) WHERE a.id = 40 AND b.id = 177 CREATE (a)-[r:FRIENDS]->(b);
342 | MATCH (a:User),(b:User) WHERE a.id = 41 AND b.id = 65 CREATE (a)-[r:FRIENDS]->(b);
343 | MATCH (a:User),(b:User) WHERE a.id = 42 AND b.id = 8 CREATE (a)-[r:FRIENDS]->(b);
344 | MATCH (a:User),(b:User) WHERE a.id = 43 AND b.id = 180 CREATE (a)-[r:FRIENDS]->(b);
345 | MATCH (a:User),(b:User) WHERE a.id = 44 AND b.id = 7 CREATE (a)-[r:FRIENDS]->(b);
346 | MATCH (a:User),(b:User) WHERE a.id = 45 AND b.id = 18 CREATE (a)-[r:FRIENDS]->(b);
347 | MATCH (a:User),(b:User) WHERE a.id = 46 AND b.id = 198 CREATE (a)-[r:FRIENDS]->(b);
348 | MATCH (a:User),(b:User) WHERE a.id = 47 AND b.id = 100 CREATE (a)-[r:FRIENDS]->(b);
349 | MATCH (a:User),(b:User) WHERE a.id = 48 AND b.id = 125 CREATE (a)-[r:FRIENDS]->(b);
350 | MATCH (a:User),(b:User) WHERE a.id = 49 AND b.id = 83 CREATE (a)-[r:FRIENDS]->(b);
351 | MATCH (a:User),(b:User) WHERE a.id = 50 AND b.id = 294 CREATE (a)-[r:FRIENDS]->(b);
352 | MATCH (a:User),(b:User) WHERE a.id = 51 AND b.id = 39 CREATE (a)-[r:FRIENDS]->(b);
353 | MATCH (a:User),(b:User) WHERE a.id = 52 AND b.id = 277 CREATE (a)-[r:FRIENDS]->(b);
354 | MATCH (a:User),(b:User) WHERE a.id = 53 AND b.id = 244 CREATE (a)-[r:FRIENDS]->(b);
355 | MATCH (a:User),(b:User) WHERE a.id = 54 AND b.id = 36 CREATE (a)-[r:FRIENDS]->(b);
356 | MATCH (a:User),(b:User) WHERE a.id = 55 AND b.id = 193 CREATE (a)-[r:FRIENDS]->(b);
357 | MATCH (a:User),(b:User) WHERE a.id = 56 AND b.id = 90 CREATE (a)-[r:FRIENDS]->(b);
358 | MATCH (a:User),(b:User) WHERE a.id = 57 AND b.id = 285 CREATE (a)-[r:FRIENDS]->(b);
359 | MATCH (a:User),(b:User) WHERE a.id = 58 AND b.id = 79 CREATE (a)-[r:FRIENDS]->(b);
360 | MATCH (a:User),(b:User) WHERE a.id = 59 AND b.id = 102 CREATE (a)-[r:FRIENDS]->(b);
361 | MATCH (a:User),(b:User) WHERE a.id = 60 AND b.id = 118 CREATE (a)-[r:FRIENDS]->(b);
362 | MATCH (a:User),(b:User) WHERE a.id = 61 AND b.id = 269 CREATE (a)-[r:FRIENDS]->(b);
363 | MATCH (a:User),(b:User) WHERE a.id = 62 AND b.id = 80 CREATE (a)-[r:FRIENDS]->(b);
364 | MATCH (a:User),(b:User) WHERE a.id = 63 AND b.id = 157 CREATE (a)-[r:FRIENDS]->(b);
365 | MATCH (a:User),(b:User) WHERE a.id = 64 AND b.id = 288 CREATE (a)-[r:FRIENDS]->(b);
366 | MATCH (a:User),(b:User) WHERE a.id = 65 AND b.id = 71 CREATE (a)-[r:FRIENDS]->(b);
367 | MATCH (a:User),(b:User) WHERE a.id = 66 AND b.id = 245 CREATE (a)-[r:FRIENDS]->(b);
368 | MATCH (a:User),(b:User) WHERE a.id = 67 AND b.id = 130 CREATE (a)-[r:FRIENDS]->(b);
369 | MATCH (a:User),(b:User) WHERE a.id = 68 AND b.id = 93 CREATE (a)-[r:FRIENDS]->(b);
370 | MATCH (a:User),(b:User) WHERE a.id = 69 AND b.id = 128 CREATE (a)-[r:FRIENDS]->(b);
371 | MATCH (a:User),(b:User) WHERE a.id = 70 AND b.id = 106 CREATE (a)-[r:FRIENDS]->(b);
372 | MATCH (a:User),(b:User) WHERE a.id = 71 AND b.id = 84 CREATE (a)-[r:FRIENDS]->(b);
373 | MATCH (a:User),(b:User) WHERE a.id = 72 AND b.id = 81 CREATE (a)-[r:FRIENDS]->(b);
374 | MATCH (a:User),(b:User) WHERE a.id = 73 AND b.id = 122 CREATE (a)-[r:FRIENDS]->(b);
375 | MATCH (a:User),(b:User) WHERE a.id = 74 AND b.id = 160 CREATE (a)-[r:FRIENDS]->(b);
376 | MATCH (a:User),(b:User) WHERE a.id = 75 AND b.id = 24 CREATE (a)-[r:FRIENDS]->(b);
377 | MATCH (a:User),(b:User) WHERE a.id = 76 AND b.id = 137 CREATE (a)-[r:FRIENDS]->(b);
378 | MATCH (a:User),(b:User) WHERE a.id = 77 AND b.id = 194 CREATE (a)-[r:FRIENDS]->(b);
379 | MATCH (a:User),(b:User) WHERE a.id = 78 AND b.id = 131 CREATE (a)-[r:FRIENDS]->(b);
380 | MATCH (a:User),(b:User) WHERE a.id = 79 AND b.id = 140 CREATE (a)-[r:FRIENDS]->(b);
381 | MATCH (a:User),(b:User) WHERE a.id = 80 AND b.id = 149 CREATE (a)-[r:FRIENDS]->(b);
382 | MATCH (a:User),(b:User) WHERE a.id = 81 AND b.id = 47 CREATE (a)-[r:FRIENDS]->(b);
383 | MATCH (a:User),(b:User) WHERE a.id = 82 AND b.id = 43 CREATE (a)-[r:FRIENDS]->(b);
384 | MATCH (a:User),(b:User) WHERE a.id = 83 AND b.id = 208 CREATE (a)-[r:FRIENDS]->(b);
385 | MATCH (a:User),(b:User) WHERE a.id = 84 AND b.id = 107 CREATE (a)-[r:FRIENDS]->(b);
386 | MATCH (a:User),(b:User) WHERE a.id = 85 AND b.id = 263 CREATE (a)-[r:FRIENDS]->(b);
387 | MATCH (a:User),(b:User) WHERE a.id = 86 AND b.id = 26 CREATE (a)-[r:FRIENDS]->(b);
388 | MATCH (a:User),(b:User) WHERE a.id = 87 AND b.id = 26 CREATE (a)-[r:FRIENDS]->(b);
389 | MATCH (a:User),(b:User) WHERE a.id = 88 AND b.id = 4 CREATE (a)-[r:FRIENDS]->(b);
390 | MATCH (a:User),(b:User) WHERE a.id = 89 AND b.id = 56 CREATE (a)-[r:FRIENDS]->(b);
391 | MATCH (a:User),(b:User) WHERE a.id = 90 AND b.id = 282 CREATE (a)-[r:FRIENDS]->(b);
392 | MATCH (a:User),(b:User) WHERE a.id = 91 AND b.id = 15 CREATE (a)-[r:FRIENDS]->(b);
393 | MATCH (a:User),(b:User) WHERE a.id = 92 AND b.id = 32 CREATE (a)-[r:FRIENDS]->(b);
394 | MATCH (a:User),(b:User) WHERE a.id = 93 AND b.id = 144 CREATE (a)-[r:FRIENDS]->(b);
395 | MATCH (a:User),(b:User) WHERE a.id = 94 AND b.id = 66 CREATE (a)-[r:FRIENDS]->(b);
396 | MATCH (a:User),(b:User) WHERE a.id = 95 AND b.id = 166 CREATE (a)-[r:FRIENDS]->(b);
397 | MATCH (a:User),(b:User) WHERE a.id = 96 AND b.id = 200 CREATE (a)-[r:FRIENDS]->(b);
398 | MATCH (a:User),(b:User) WHERE a.id = 97 AND b.id = 51 CREATE (a)-[r:FRIENDS]->(b);
399 | MATCH (a:User),(b:User) WHERE a.id = 98 AND b.id = 97 CREATE (a)-[r:FRIENDS]->(b);
400 | MATCH (a:User),(b:User) WHERE a.id = 99 AND b.id = 180 CREATE (a)-[r:FRIENDS]->(b);
401 | MATCH (a:User),(b:User) WHERE a.id = 100 AND b.id = 203 CREATE (a)-[r:FRIENDS]->(b);
402 | MATCH (a:User),(b:User) WHERE a.id = 101 AND b.id = 77 CREATE (a)-[r:FRIENDS]->(b);
403 | MATCH (a:User),(b:User) WHERE a.id = 102 AND b.id = 249 CREATE (a)-[r:FRIENDS]->(b);
404 | MATCH (a:User),(b:User) WHERE a.id = 103 AND b.id = 117 CREATE (a)-[r:FRIENDS]->(b);
405 | MATCH (a:User),(b:User) WHERE a.id = 104 AND b.id = 69 CREATE (a)-[r:FRIENDS]->(b);
406 | MATCH (a:User),(b:User) WHERE a.id = 105 AND b.id = 76 CREATE (a)-[r:FRIENDS]->(b);
407 | MATCH (a:User),(b:User) WHERE a.id = 106 AND b.id = 114 CREATE (a)-[r:FRIENDS]->(b);
408 | MATCH (a:User),(b:User) WHERE a.id = 107 AND b.id = 15 CREATE (a)-[r:FRIENDS]->(b);
409 | MATCH (a:User),(b:User) WHERE a.id = 108 AND b.id = 64 CREATE (a)-[r:FRIENDS]->(b);
410 | MATCH (a:User),(b:User) WHERE a.id = 109 AND b.id = 241 CREATE (a)-[r:FRIENDS]->(b);
411 | MATCH (a:User),(b:User) WHERE a.id = 110 AND b.id = 42 CREATE (a)-[r:FRIENDS]->(b);
412 | MATCH (a:User),(b:User) WHERE a.id = 111 AND b.id = 294 CREATE (a)-[r:FRIENDS]->(b);
413 | MATCH (a:User),(b:User) WHERE a.id = 112 AND b.id = 131 CREATE (a)-[r:FRIENDS]->(b);
414 | MATCH (a:User),(b:User) WHERE a.id = 113 AND b.id = 161 CREATE (a)-[r:FRIENDS]->(b);
415 | MATCH (a:User),(b:User) WHERE a.id = 114 AND b.id = 43 CREATE (a)-[r:FRIENDS]->(b);
416 | MATCH (a:User),(b:User) WHERE a.id = 115 AND b.id = 252 CREATE (a)-[r:FRIENDS]->(b);
417 | MATCH (a:User),(b:User) WHERE a.id = 116 AND b.id = 9 CREATE (a)-[r:FRIENDS]->(b);
418 | MATCH (a:User),(b:User) WHERE a.id = 117 AND b.id = 94 CREATE (a)-[r:FRIENDS]->(b);
419 | MATCH (a:User),(b:User) WHERE a.id = 118 AND b.id = 286 CREATE (a)-[r:FRIENDS]->(b);
420 | MATCH (a:User),(b:User) WHERE a.id = 119 AND b.id = 254 CREATE (a)-[r:FRIENDS]->(b);
421 | MATCH (a:User),(b:User) WHERE a.id = 120 AND b.id = 120 CREATE (a)-[r:FRIENDS]->(b);
422 | MATCH (a:User),(b:User) WHERE a.id = 121 AND b.id = 185 CREATE (a)-[r:FRIENDS]->(b);
423 | MATCH (a:User),(b:User) WHERE a.id = 122 AND b.id = 49 CREATE (a)-[r:FRIENDS]->(b);
424 | MATCH (a:User),(b:User) WHERE a.id = 123 AND b.id = 168 CREATE (a)-[r:FRIENDS]->(b);
425 | MATCH (a:User),(b:User) WHERE a.id = 124 AND b.id = 125 CREATE (a)-[r:FRIENDS]->(b);
426 | MATCH (a:User),(b:User) WHERE a.id = 125 AND b.id = 96 CREATE (a)-[r:FRIENDS]->(b);
427 | MATCH (a:User),(b:User) WHERE a.id = 126 AND b.id = 238 CREATE (a)-[r:FRIENDS]->(b);
428 | MATCH (a:User),(b:User) WHERE a.id = 127 AND b.id = 37 CREATE (a)-[r:FRIENDS]->(b);
429 | MATCH (a:User),(b:User) WHERE a.id = 128 AND b.id = 182 CREATE (a)-[r:FRIENDS]->(b);
430 | MATCH (a:User),(b:User) WHERE a.id = 129 AND b.id = 100 CREATE (a)-[r:FRIENDS]->(b);
431 | MATCH (a:User),(b:User) WHERE a.id = 130 AND b.id = 265 CREATE (a)-[r:FRIENDS]->(b);
432 | MATCH (a:User),(b:User) WHERE a.id = 131 AND b.id = 146 CREATE (a)-[r:FRIENDS]->(b);
433 | MATCH (a:User),(b:User) WHERE a.id = 132 AND b.id = 201 CREATE (a)-[r:FRIENDS]->(b);
434 | MATCH (a:User),(b:User) WHERE a.id = 133 AND b.id = 93 CREATE (a)-[r:FRIENDS]->(b);
435 | MATCH (a:User),(b:User) WHERE a.id = 134 AND b.id = 60 CREATE (a)-[r:FRIENDS]->(b);
436 | MATCH (a:User),(b:User) WHERE a.id = 135 AND b.id = 70 CREATE (a)-[r:FRIENDS]->(b);
437 | MATCH (a:User),(b:User) WHERE a.id = 136 AND b.id = 38 CREATE (a)-[r:FRIENDS]->(b);
438 | MATCH (a:User),(b:User) WHERE a.id = 137 AND b.id = 241 CREATE (a)-[r:FRIENDS]->(b);
439 | MATCH (a:User),(b:User) WHERE a.id = 138 AND b.id = 67 CREATE (a)-[r:FRIENDS]->(b);
440 | MATCH (a:User),(b:User) WHERE a.id = 139 AND b.id = 83 CREATE (a)-[r:FRIENDS]->(b);
441 | MATCH (a:User),(b:User) WHERE a.id = 140 AND b.id = 250 CREATE (a)-[r:FRIENDS]->(b);
442 | MATCH (a:User),(b:User) WHERE a.id = 141 AND b.id = 244 CREATE (a)-[r:FRIENDS]->(b);
443 | MATCH (a:User),(b:User) WHERE a.id = 142 AND b.id = 74 CREATE (a)-[r:FRIENDS]->(b);
444 | MATCH (a:User),(b:User) WHERE a.id = 143 AND b.id = 175 CREATE (a)-[r:FRIENDS]->(b);
445 | MATCH (a:User),(b:User) WHERE a.id = 144 AND b.id = 285 CREATE (a)-[r:FRIENDS]->(b);
446 | MATCH (a:User),(b:User) WHERE a.id = 145 AND b.id = 48 CREATE (a)-[r:FRIENDS]->(b);
447 | MATCH (a:User),(b:User) WHERE a.id = 146 AND b.id = 19 CREATE (a)-[r:FRIENDS]->(b);
448 | MATCH (a:User),(b:User) WHERE a.id = 147 AND b.id = 285 CREATE (a)-[r:FRIENDS]->(b);
449 | MATCH (a:User),(b:User) WHERE a.id = 148 AND b.id = 40 CREATE (a)-[r:FRIENDS]->(b);
450 | MATCH (a:User),(b:User) WHERE a.id = 149 AND b.id = 108 CREATE (a)-[r:FRIENDS]->(b);
451 | MATCH (a:User),(b:User) WHERE a.id = 150 AND b.id = 282 CREATE (a)-[r:FRIENDS]->(b);
452 | MATCH (a:User),(b:User) WHERE a.id = 151 AND b.id = 46 CREATE (a)-[r:FRIENDS]->(b);
453 | MATCH (a:User),(b:User) WHERE a.id = 152 AND b.id = 219 CREATE (a)-[r:FRIENDS]->(b);
454 | MATCH (a:User),(b:User) WHERE a.id = 153 AND b.id = 106 CREATE (a)-[r:FRIENDS]->(b);
455 | MATCH (a:User),(b:User) WHERE a.id = 154 AND b.id = 188 CREATE (a)-[r:FRIENDS]->(b);
456 | MATCH (a:User),(b:User) WHERE a.id = 155 AND b.id = 13 CREATE (a)-[r:FRIENDS]->(b);
457 | MATCH (a:User),(b:User) WHERE a.id = 156 AND b.id = 172 CREATE (a)-[r:FRIENDS]->(b);
458 | MATCH (a:User),(b:User) WHERE a.id = 157 AND b.id = 229 CREATE (a)-[r:FRIENDS]->(b);
459 | MATCH (a:User),(b:User) WHERE a.id = 158 AND b.id = 36 CREATE (a)-[r:FRIENDS]->(b);
460 | MATCH (a:User),(b:User) WHERE a.id = 159 AND b.id = 190 CREATE (a)-[r:FRIENDS]->(b);
461 | MATCH (a:User),(b:User) WHERE a.id = 160 AND b.id = 178 CREATE (a)-[r:FRIENDS]->(b);
462 | MATCH (a:User),(b:User) WHERE a.id = 161 AND b.id = 102 CREATE (a)-[r:FRIENDS]->(b);
463 | MATCH (a:User),(b:User) WHERE a.id = 162 AND b.id = 58 CREATE (a)-[r:FRIENDS]->(b);
464 | MATCH (a:User),(b:User) WHERE a.id = 163 AND b.id = 135 CREATE (a)-[r:FRIENDS]->(b);
465 | MATCH (a:User),(b:User) WHERE a.id = 164 AND b.id = 272 CREATE (a)-[r:FRIENDS]->(b);
466 | MATCH (a:User),(b:User) WHERE a.id = 165 AND b.id = 62 CREATE (a)-[r:FRIENDS]->(b);
467 | MATCH (a:User),(b:User) WHERE a.id = 166 AND b.id = 30 CREATE (a)-[r:FRIENDS]->(b);
468 | MATCH (a:User),(b:User) WHERE a.id = 167 AND b.id = 245 CREATE (a)-[r:FRIENDS]->(b);
469 | MATCH (a:User),(b:User) WHERE a.id = 168 AND b.id = 222 CREATE (a)-[r:FRIENDS]->(b);
470 | MATCH (a:User),(b:User) WHERE a.id = 169 AND b.id = 211 CREATE (a)-[r:FRIENDS]->(b);
471 | MATCH (a:User),(b:User) WHERE a.id = 170 AND b.id = 21 CREATE (a)-[r:FRIENDS]->(b);
472 | MATCH (a:User),(b:User) WHERE a.id = 171 AND b.id = 245 CREATE (a)-[r:FRIENDS]->(b);
473 | MATCH (a:User),(b:User) WHERE a.id = 172 AND b.id = 286 CREATE (a)-[r:FRIENDS]->(b);
474 | MATCH (a:User),(b:User) WHERE a.id = 173 AND b.id = 51 CREATE (a)-[r:FRIENDS]->(b);
475 | MATCH (a:User),(b:User) WHERE a.id = 174 AND b.id = 107 CREATE (a)-[r:FRIENDS]->(b);
476 | MATCH (a:User),(b:User) WHERE a.id = 175 AND b.id = 231 CREATE (a)-[r:FRIENDS]->(b);
477 | MATCH (a:User),(b:User) WHERE a.id = 176 AND b.id = 126 CREATE (a)-[r:FRIENDS]->(b);
478 | MATCH (a:User),(b:User) WHERE a.id = 177 AND b.id = 148 CREATE (a)-[r:FRIENDS]->(b);
479 | MATCH (a:User),(b:User) WHERE a.id = 178 AND b.id = 227 CREATE (a)-[r:FRIENDS]->(b);
480 | MATCH (a:User),(b:User) WHERE a.id = 179 AND b.id = 259 CREATE (a)-[r:FRIENDS]->(b);
481 | MATCH (a:User),(b:User) WHERE a.id = 180 AND b.id = 50 CREATE (a)-[r:FRIENDS]->(b);
482 | MATCH (a:User),(b:User) WHERE a.id = 181 AND b.id = 96 CREATE (a)-[r:FRIENDS]->(b);
483 | MATCH (a:User),(b:User) WHERE a.id = 182 AND b.id = 51 CREATE (a)-[r:FRIENDS]->(b);
484 | MATCH (a:User),(b:User) WHERE a.id = 183 AND b.id = 24 CREATE (a)-[r:FRIENDS]->(b);
485 | MATCH (a:User),(b:User) WHERE a.id = 184 AND b.id = 262 CREATE (a)-[r:FRIENDS]->(b);
486 | MATCH (a:User),(b:User) WHERE a.id = 185 AND b.id = 272 CREATE (a)-[r:FRIENDS]->(b);
487 | MATCH (a:User),(b:User) WHERE a.id = 186 AND b.id = 234 CREATE (a)-[r:FRIENDS]->(b);
488 | MATCH (a:User),(b:User) WHERE a.id = 187 AND b.id = 271 CREATE (a)-[r:FRIENDS]->(b);
489 | MATCH (a:User),(b:User) WHERE a.id = 188 AND b.id = 81 CREATE (a)-[r:FRIENDS]->(b);
490 | MATCH (a:User),(b:User) WHERE a.id = 189 AND b.id = 226 CREATE (a)-[r:FRIENDS]->(b);
491 | MATCH (a:User),(b:User) WHERE a.id = 190 AND b.id = 10 CREATE (a)-[r:FRIENDS]->(b);
492 | MATCH (a:User),(b:User) WHERE a.id = 191 AND b.id = 156 CREATE (a)-[r:FRIENDS]->(b);
493 | MATCH (a:User),(b:User) WHERE a.id = 192 AND b.id = 61 CREATE (a)-[r:FRIENDS]->(b);
494 | MATCH (a:User),(b:User) WHERE a.id = 193 AND b.id = 206 CREATE (a)-[r:FRIENDS]->(b);
495 | MATCH (a:User),(b:User) WHERE a.id = 194 AND b.id = 177 CREATE (a)-[r:FRIENDS]->(b);
496 | MATCH (a:User),(b:User) WHERE a.id = 195 AND b.id = 186 CREATE (a)-[r:FRIENDS]->(b);
497 | MATCH (a:User),(b:User) WHERE a.id = 196 AND b.id = 68 CREATE (a)-[r:FRIENDS]->(b);
498 | MATCH (a:User),(b:User) WHERE a.id = 197 AND b.id = 214 CREATE (a)-[r:FRIENDS]->(b);
499 | MATCH (a:User),(b:User) WHERE a.id = 198 AND b.id = 158 CREATE (a)-[r:FRIENDS]->(b);
500 | MATCH (a:User),(b:User) WHERE a.id = 199 AND b.id = 221 CREATE (a)-[r:FRIENDS]->(b);
501 | MATCH (a:User),(b:User) WHERE a.id = 200 AND b.id = 138 CREATE (a)-[r:FRIENDS]->(b);
502 | MATCH (a:User),(b:User) WHERE a.id = 201 AND b.id = 79 CREATE (a)-[r:FRIENDS]->(b);
503 | MATCH (a:User),(b:User) WHERE a.id = 202 AND b.id = 238 CREATE (a)-[r:FRIENDS]->(b);
504 | MATCH (a:User),(b:User) WHERE a.id = 203 AND b.id = 162 CREATE (a)-[r:FRIENDS]->(b);
505 | MATCH (a:User),(b:User) WHERE a.id = 204 AND b.id = 132 CREATE (a)-[r:FRIENDS]->(b);
506 | MATCH (a:User),(b:User) WHERE a.id = 205 AND b.id = 39 CREATE (a)-[r:FRIENDS]->(b);
507 | MATCH (a:User),(b:User) WHERE a.id = 206 AND b.id = 235 CREATE (a)-[r:FRIENDS]->(b);
508 | MATCH (a:User),(b:User) WHERE a.id = 207 AND b.id = 163 CREATE (a)-[r:FRIENDS]->(b);
509 | MATCH (a:User),(b:User) WHERE a.id = 208 AND b.id = 248 CREATE (a)-[r:FRIENDS]->(b);
510 | MATCH (a:User),(b:User) WHERE a.id = 209 AND b.id = 53 CREATE (a)-[r:FRIENDS]->(b);
511 | MATCH (a:User),(b:User) WHERE a.id = 210 AND b.id = 26 CREATE (a)-[r:FRIENDS]->(b);
512 | MATCH (a:User),(b:User) WHERE a.id = 211 AND b.id = 84 CREATE (a)-[r:FRIENDS]->(b);
513 | MATCH (a:User),(b:User) WHERE a.id = 212 AND b.id = 111 CREATE (a)-[r:FRIENDS]->(b);
514 | MATCH (a:User),(b:User) WHERE a.id = 213 AND b.id = 299 CREATE (a)-[r:FRIENDS]->(b);
515 | MATCH (a:User),(b:User) WHERE a.id = 214 AND b.id = 262 CREATE (a)-[r:FRIENDS]->(b);
516 | MATCH (a:User),(b:User) WHERE a.id = 215 AND b.id = 18 CREATE (a)-[r:FRIENDS]->(b);
517 | MATCH (a:User),(b:User) WHERE a.id = 216 AND b.id = 174 CREATE (a)-[r:FRIENDS]->(b);
518 | MATCH (a:User),(b:User) WHERE a.id = 217 AND b.id = 267 CREATE (a)-[r:FRIENDS]->(b);
519 | MATCH (a:User),(b:User) WHERE a.id = 218 AND b.id = 132 CREATE (a)-[r:FRIENDS]->(b);
520 | MATCH (a:User),(b:User) WHERE a.id = 219 AND b.id = 298 CREATE (a)-[r:FRIENDS]->(b);
521 | MATCH (a:User),(b:User) WHERE a.id = 220 AND b.id = 74 CREATE (a)-[r:FRIENDS]->(b);
522 | MATCH (a:User),(b:User) WHERE a.id = 221 AND b.id = 25 CREATE (a)-[r:FRIENDS]->(b);
523 | MATCH (a:User),(b:User) WHERE a.id = 222 AND b.id = 181 CREATE (a)-[r:FRIENDS]->(b);
524 | MATCH (a:User),(b:User) WHERE a.id = 223 AND b.id = 234 CREATE (a)-[r:FRIENDS]->(b);
525 | MATCH (a:User),(b:User) WHERE a.id = 224 AND b.id = 253 CREATE (a)-[r:FRIENDS]->(b);
526 | MATCH (a:User),(b:User) WHERE a.id = 225 AND b.id = 40 CREATE (a)-[r:FRIENDS]->(b);
527 | MATCH (a:User),(b:User) WHERE a.id = 226 AND b.id = 194 CREATE (a)-[r:FRIENDS]->(b);
528 | MATCH (a:User),(b:User) WHERE a.id = 227 AND b.id = 82 CREATE (a)-[r:FRIENDS]->(b);
529 | MATCH (a:User),(b:User) WHERE a.id = 228 AND b.id = 12 CREATE (a)-[r:FRIENDS]->(b);
530 | MATCH (a:User),(b:User) WHERE a.id = 229 AND b.id = 163 CREATE (a)-[r:FRIENDS]->(b);
531 | MATCH (a:User),(b:User) WHERE a.id = 230 AND b.id = 30 CREATE (a)-[r:FRIENDS]->(b);
532 | MATCH (a:User),(b:User) WHERE a.id = 231 AND b.id = 28 CREATE (a)-[r:FRIENDS]->(b);
533 | MATCH (a:User),(b:User) WHERE a.id = 232 AND b.id = 111 CREATE (a)-[r:FRIENDS]->(b);
534 | MATCH (a:User),(b:User) WHERE a.id = 233 AND b.id = 123 CREATE (a)-[r:FRIENDS]->(b);
535 | MATCH (a:User),(b:User) WHERE a.id = 234 AND b.id = 48 CREATE (a)-[r:FRIENDS]->(b);
536 | MATCH (a:User),(b:User) WHERE a.id = 235 AND b.id = 45 CREATE (a)-[r:FRIENDS]->(b);
537 | MATCH (a:User),(b:User) WHERE a.id = 236 AND b.id = 42 CREATE (a)-[r:FRIENDS]->(b);
538 | MATCH (a:User),(b:User) WHERE a.id = 237 AND b.id = 93 CREATE (a)-[r:FRIENDS]->(b);
539 | MATCH (a:User),(b:User) WHERE a.id = 238 AND b.id = 23 CREATE (a)-[r:FRIENDS]->(b);
540 | MATCH (a:User),(b:User) WHERE a.id = 239 AND b.id = 27 CREATE (a)-[r:FRIENDS]->(b);
541 | MATCH (a:User),(b:User) WHERE a.id = 240 AND b.id = 260 CREATE (a)-[r:FRIENDS]->(b);
542 | MATCH (a:User),(b:User) WHERE a.id = 241 AND b.id = 290 CREATE (a)-[r:FRIENDS]->(b);
543 | MATCH (a:User),(b:User) WHERE a.id = 242 AND b.id = 224 CREATE (a)-[r:FRIENDS]->(b);
544 | MATCH (a:User),(b:User) WHERE a.id = 243 AND b.id = 146 CREATE (a)-[r:FRIENDS]->(b);
545 | MATCH (a:User),(b:User) WHERE a.id = 244 AND b.id = 204 CREATE (a)-[r:FRIENDS]->(b);
546 | MATCH (a:User),(b:User) WHERE a.id = 245 AND b.id = 268 CREATE (a)-[r:FRIENDS]->(b);
547 | MATCH (a:User),(b:User) WHERE a.id = 246 AND b.id = 267 CREATE (a)-[r:FRIENDS]->(b);
548 | MATCH (a:User),(b:User) WHERE a.id = 247 AND b.id = 81 CREATE (a)-[r:FRIENDS]->(b);
549 | MATCH (a:User),(b:User) WHERE a.id = 248 AND b.id = 39 CREATE (a)-[r:FRIENDS]->(b);
550 | MATCH (a:User),(b:User) WHERE a.id = 249 AND b.id = 223 CREATE (a)-[r:FRIENDS]->(b);
551 | MATCH (a:User),(b:User) WHERE a.id = 250 AND b.id = 92 CREATE (a)-[r:FRIENDS]->(b);
552 | MATCH (a:User),(b:User) WHERE a.id = 251 AND b.id = 213 CREATE (a)-[r:FRIENDS]->(b);
553 | MATCH (a:User),(b:User) WHERE a.id = 252 AND b.id = 297 CREATE (a)-[r:FRIENDS]->(b);
554 | MATCH (a:User),(b:User) WHERE a.id = 253 AND b.id = 16 CREATE (a)-[r:FRIENDS]->(b);
555 | MATCH (a:User),(b:User) WHERE a.id = 254 AND b.id = 7 CREATE (a)-[r:FRIENDS]->(b);
556 | MATCH (a:User),(b:User) WHERE a.id = 255 AND b.id = 185 CREATE (a)-[r:FRIENDS]->(b);
557 | MATCH (a:User),(b:User) WHERE a.id = 256 AND b.id = 213 CREATE (a)-[r:FRIENDS]->(b);
558 | MATCH (a:User),(b:User) WHERE a.id = 257 AND b.id = 257 CREATE (a)-[r:FRIENDS]->(b);
559 | MATCH (a:User),(b:User) WHERE a.id = 258 AND b.id = 117 CREATE (a)-[r:FRIENDS]->(b);
560 | MATCH (a:User),(b:User) WHERE a.id = 259 AND b.id = 94 CREATE (a)-[r:FRIENDS]->(b);
561 | MATCH (a:User),(b:User) WHERE a.id = 260 AND b.id = 202 CREATE (a)-[r:FRIENDS]->(b);
562 | MATCH (a:User),(b:User) WHERE a.id = 261 AND b.id = 49 CREATE (a)-[r:FRIENDS]->(b);
563 | MATCH (a:User),(b:User) WHERE a.id = 262 AND b.id = 123 CREATE (a)-[r:FRIENDS]->(b);
564 | MATCH (a:User),(b:User) WHERE a.id = 263 AND b.id = 108 CREATE (a)-[r:FRIENDS]->(b);
565 | MATCH (a:User),(b:User) WHERE a.id = 264 AND b.id = 14 CREATE (a)-[r:FRIENDS]->(b);
566 | MATCH (a:User),(b:User) WHERE a.id = 265 AND b.id = 83 CREATE (a)-[r:FRIENDS]->(b);
567 | MATCH (a:User),(b:User) WHERE a.id = 266 AND b.id = 56 CREATE (a)-[r:FRIENDS]->(b);
568 | MATCH (a:User),(b:User) WHERE a.id = 267 AND b.id = 266 CREATE (a)-[r:FRIENDS]->(b);
569 | MATCH (a:User),(b:User) WHERE a.id = 268 AND b.id = 267 CREATE (a)-[r:FRIENDS]->(b);
570 | MATCH (a:User),(b:User) WHERE a.id = 269 AND b.id = 41 CREATE (a)-[r:FRIENDS]->(b);
571 | MATCH (a:User),(b:User) WHERE a.id = 270 AND b.id = 288 CREATE (a)-[r:FRIENDS]->(b);
572 | MATCH (a:User),(b:User) WHERE a.id = 271 AND b.id = 274 CREATE (a)-[r:FRIENDS]->(b);
573 | MATCH (a:User),(b:User) WHERE a.id = 272 AND b.id = 50 CREATE (a)-[r:FRIENDS]->(b);
574 | MATCH (a:User),(b:User) WHERE a.id = 273 AND b.id = 201 CREATE (a)-[r:FRIENDS]->(b);
575 | MATCH (a:User),(b:User) WHERE a.id = 274 AND b.id = 106 CREATE (a)-[r:FRIENDS]->(b);
576 | MATCH (a:User),(b:User) WHERE a.id = 275 AND b.id = 256 CREATE (a)-[r:FRIENDS]->(b);
577 | MATCH (a:User),(b:User) WHERE a.id = 276 AND b.id = 194 CREATE (a)-[r:FRIENDS]->(b);
578 | MATCH (a:User),(b:User) WHERE a.id = 277 AND b.id = 24 CREATE (a)-[r:FRIENDS]->(b);
579 | MATCH (a:User),(b:User) WHERE a.id = 278 AND b.id = 16 CREATE (a)-[r:FRIENDS]->(b);
580 | MATCH (a:User),(b:User) WHERE a.id = 279 AND b.id = 174 CREATE (a)-[r:FRIENDS]->(b);
581 | MATCH (a:User),(b:User) WHERE a.id = 280 AND b.id = 205 CREATE (a)-[r:FRIENDS]->(b);
582 | MATCH (a:User),(b:User) WHERE a.id = 281 AND b.id = 274 CREATE (a)-[r:FRIENDS]->(b);
583 | MATCH (a:User),(b:User) WHERE a.id = 282 AND b.id = 211 CREATE (a)-[r:FRIENDS]->(b);
584 | MATCH (a:User),(b:User) WHERE a.id = 283 AND b.id = 255 CREATE (a)-[r:FRIENDS]->(b);
585 | MATCH (a:User),(b:User) WHERE a.id = 284 AND b.id = 85 CREATE (a)-[r:FRIENDS]->(b);
586 | MATCH (a:User),(b:User) WHERE a.id = 285 AND b.id = 227 CREATE (a)-[r:FRIENDS]->(b);
587 | MATCH (a:User),(b:User) WHERE a.id = 286 AND b.id = 186 CREATE (a)-[r:FRIENDS]->(b);
588 | MATCH (a:User),(b:User) WHERE a.id = 287 AND b.id = 6 CREATE (a)-[r:FRIENDS]->(b);
589 | MATCH (a:User),(b:User) WHERE a.id = 288 AND b.id = 29 CREATE (a)-[r:FRIENDS]->(b);
590 | MATCH (a:User),(b:User) WHERE a.id = 289 AND b.id = 194 CREATE (a)-[r:FRIENDS]->(b);
591 | MATCH (a:User),(b:User) WHERE a.id = 290 AND b.id = 50 CREATE (a)-[r:FRIENDS]->(b);
592 | MATCH (a:User),(b:User) WHERE a.id = 291 AND b.id = 84 CREATE (a)-[r:FRIENDS]->(b);
593 | MATCH (a:User),(b:User) WHERE a.id = 292 AND b.id = 68 CREATE (a)-[r:FRIENDS]->(b);
594 | MATCH (a:User),(b:User) WHERE a.id = 293 AND b.id = 179 CREATE (a)-[r:FRIENDS]->(b);
595 | MATCH (a:User),(b:User) WHERE a.id = 294 AND b.id = 104 CREATE (a)-[r:FRIENDS]->(b);
596 | MATCH (a:User),(b:User) WHERE a.id = 295 AND b.id = 134 CREATE (a)-[r:FRIENDS]->(b);
597 | MATCH (a:User),(b:User) WHERE a.id = 296 AND b.id = 89 CREATE (a)-[r:FRIENDS]->(b);
598 | MATCH (a:User),(b:User) WHERE a.id = 297 AND b.id = 93 CREATE (a)-[r:FRIENDS]->(b);
599 | MATCH (a:User),(b:User) WHERE a.id = 298 AND b.id = 150 CREATE (a)-[r:FRIENDS]->(b);
600 | MATCH (a:User),(b:User) WHERE a.id = 299 AND b.id = 152 CREATE (a)-[r:FRIENDS]->(b);
601 | MATCH (a:User),(b:User) WHERE a.id = 0 AND b.id = 166 CREATE (a)-[r:FRIENDS]->(b);
602 | MATCH (a:User),(b:User) WHERE a.id = 1 AND b.id = 201 CREATE (a)-[r:FRIENDS]->(b);
603 | MATCH (a:User),(b:User) WHERE a.id = 2 AND b.id = 141 CREATE (a)-[r:FRIENDS]->(b);
604 | MATCH (a:User),(b:User) WHERE a.id = 3 AND b.id = 1 CREATE (a)-[r:FRIENDS]->(b);
605 | MATCH (a:User),(b:User) WHERE a.id = 4 AND b.id = 232 CREATE (a)-[r:FRIENDS]->(b);
606 | MATCH (a:User),(b:User) WHERE a.id = 5 AND b.id = 87 CREATE (a)-[r:FRIENDS]->(b);
607 | MATCH (a:User),(b:User) WHERE a.id = 6 AND b.id = 39 CREATE (a)-[r:FRIENDS]->(b);
608 | MATCH (a:User),(b:User) WHERE a.id = 7 AND b.id = 299 CREATE (a)-[r:FRIENDS]->(b);
609 | MATCH (a:User),(b:User) WHERE a.id = 8 AND b.id = 48 CREATE (a)-[r:FRIENDS]->(b);
610 | MATCH (a:User),(b:User) WHERE a.id = 9 AND b.id = 107 CREATE (a)-[r:FRIENDS]->(b);
611 | MATCH (a:User),(b:User) WHERE a.id = 10 AND b.id = 271 CREATE (a)-[r:FRIENDS]->(b);
612 | MATCH (a:User),(b:User) WHERE a.id = 11 AND b.id = 104 CREATE (a)-[r:FRIENDS]->(b);
613 | MATCH (a:User),(b:User) WHERE a.id = 12 AND b.id = 122 CREATE (a)-[r:FRIENDS]->(b);
614 | MATCH (a:User),(b:User) WHERE a.id = 13 AND b.id = 193 CREATE (a)-[r:FRIENDS]->(b);
615 | MATCH (a:User),(b:User) WHERE a.id = 14 AND b.id = 45 CREATE (a)-[r:FRIENDS]->(b);
616 | MATCH (a:User),(b:User) WHERE a.id = 15 AND b.id = 252 CREATE (a)-[r:FRIENDS]->(b);
617 | MATCH (a:User),(b:User) WHERE a.id = 16 AND b.id = 64 CREATE (a)-[r:FRIENDS]->(b);
618 | MATCH (a:User),(b:User) WHERE a.id = 17 AND b.id = 124 CREATE (a)-[r:FRIENDS]->(b);
619 | MATCH (a:User),(b:User) WHERE a.id = 18 AND b.id = 164 CREATE (a)-[r:FRIENDS]->(b);
620 | MATCH (a:User),(b:User) WHERE a.id = 19 AND b.id = 135 CREATE (a)-[r:FRIENDS]->(b);
621 | MATCH (a:User),(b:User) WHERE a.id = 20 AND b.id = 171 CREATE (a)-[r:FRIENDS]->(b);
622 | MATCH (a:User),(b:User) WHERE a.id = 21 AND b.id = 215 CREATE (a)-[r:FRIENDS]->(b);
623 | MATCH (a:User),(b:User) WHERE a.id = 22 AND b.id = 56 CREATE (a)-[r:FRIENDS]->(b);
624 | MATCH (a:User),(b:User) WHERE a.id = 23 AND b.id = 190 CREATE (a)-[r:FRIENDS]->(b);
625 | MATCH (a:User),(b:User) WHERE a.id = 24 AND b.id = 186 CREATE (a)-[r:FRIENDS]->(b);
626 | MATCH (a:User),(b:User) WHERE a.id = 25 AND b.id = 134 CREATE (a)-[r:FRIENDS]->(b);
627 | MATCH (a:User),(b:User) WHERE a.id = 26 AND b.id = 139 CREATE (a)-[r:FRIENDS]->(b);
628 | MATCH (a:User),(b:User) WHERE a.id = 27 AND b.id = 72 CREATE (a)-[r:FRIENDS]->(b);
629 | MATCH (a:User),(b:User) WHERE a.id = 28 AND b.id = 209 CREATE (a)-[r:FRIENDS]->(b);
630 | MATCH (a:User),(b:User) WHERE a.id = 29 AND b.id = 252 CREATE (a)-[r:FRIENDS]->(b);
631 | MATCH (a:User),(b:User) WHERE a.id = 30 AND b.id = 31 CREATE (a)-[r:FRIENDS]->(b);
632 | MATCH (a:User),(b:User) WHERE a.id = 31 AND b.id = 103 CREATE (a)-[r:FRIENDS]->(b);
633 | MATCH (a:User),(b:User) WHERE a.id = 32 AND b.id = 192 CREATE (a)-[r:FRIENDS]->(b);
634 | MATCH (a:User),(b:User) WHERE a.id = 33 AND b.id = 99 CREATE (a)-[r:FRIENDS]->(b);
635 | MATCH (a:User),(b:User) WHERE a.id = 34 AND b.id = 105 CREATE (a)-[r:FRIENDS]->(b);
636 | MATCH (a:User),(b:User) WHERE a.id = 35 AND b.id = 11 CREATE (a)-[r:FRIENDS]->(b);
637 | MATCH (a:User),(b:User) WHERE a.id = 36 AND b.id = 113 CREATE (a)-[r:FRIENDS]->(b);
638 | MATCH (a:User),(b:User) WHERE a.id = 37 AND b.id = 85 CREATE (a)-[r:FRIENDS]->(b);
639 | MATCH (a:User),(b:User) WHERE a.id = 38 AND b.id = 137 CREATE (a)-[r:FRIENDS]->(b);
640 | MATCH (a:User),(b:User) WHERE a.id = 39 AND b.id = 110 CREATE (a)-[r:FRIENDS]->(b);
641 | MATCH (a:User),(b:User) WHERE a.id = 40 AND b.id = 149 CREATE (a)-[r:FRIENDS]->(b);
642 | MATCH (a:User),(b:User) WHERE a.id = 41 AND b.id = 32 CREATE (a)-[r:FRIENDS]->(b);
643 | MATCH (a:User),(b:User) WHERE a.id = 42 AND b.id = 15 CREATE (a)-[r:FRIENDS]->(b);
644 | MATCH (a:User),(b:User) WHERE a.id = 43 AND b.id = 254 CREATE (a)-[r:FRIENDS]->(b);
645 | MATCH (a:User),(b:User) WHERE a.id = 44 AND b.id = 139 CREATE (a)-[r:FRIENDS]->(b);
646 | MATCH (a:User),(b:User) WHERE a.id = 45 AND b.id = 257 CREATE (a)-[r:FRIENDS]->(b);
647 | MATCH (a:User),(b:User) WHERE a.id = 46 AND b.id = 71 CREATE (a)-[r:FRIENDS]->(b);
648 | MATCH (a:User),(b:User) WHERE a.id = 47 AND b.id = 73 CREATE (a)-[r:FRIENDS]->(b);
649 | MATCH (a:User),(b:User) WHERE a.id = 48 AND b.id = 240 CREATE (a)-[r:FRIENDS]->(b);
650 | MATCH (a:User),(b:User) WHERE a.id = 49 AND b.id = 32 CREATE (a)-[r:FRIENDS]->(b);
651 | MATCH (a:User),(b:User) WHERE a.id = 50 AND b.id = 276 CREATE (a)-[r:FRIENDS]->(b);
652 | MATCH (a:User),(b:User) WHERE a.id = 51 AND b.id = 201 CREATE (a)-[r:FRIENDS]->(b);
653 | MATCH (a:User),(b:User) WHERE a.id = 52 AND b.id = 37 CREATE (a)-[r:FRIENDS]->(b);
654 | MATCH (a:User),(b:User) WHERE a.id = 53 AND b.id = 269 CREATE (a)-[r:FRIENDS]->(b);
655 | MATCH (a:User),(b:User) WHERE a.id = 54 AND b.id = 269 CREATE (a)-[r:FRIENDS]->(b);
656 | MATCH (a:User),(b:User) WHERE a.id = 55 AND b.id = 89 CREATE (a)-[r:FRIENDS]->(b);
657 | MATCH (a:User),(b:User) WHERE a.id = 56 AND b.id = 243 CREATE (a)-[r:FRIENDS]->(b);
658 | MATCH (a:User),(b:User) WHERE a.id = 57 AND b.id = 70 CREATE (a)-[r:FRIENDS]->(b);
659 | MATCH (a:User),(b:User) WHERE a.id = 58 AND b.id = 243 CREATE (a)-[r:FRIENDS]->(b);
660 | MATCH (a:User),(b:User) WHERE a.id = 59 AND b.id = 256 CREATE (a)-[r:FRIENDS]->(b);
661 | MATCH (a:User),(b:User) WHERE a.id = 60 AND b.id = 18 CREATE (a)-[r:FRIENDS]->(b);
662 | MATCH (a:User),(b:User) WHERE a.id = 61 AND b.id = 260 CREATE (a)-[r:FRIENDS]->(b);
663 | MATCH (a:User),(b:User) WHERE a.id = 62 AND b.id = 206 CREATE (a)-[r:FRIENDS]->(b);
664 | MATCH (a:User),(b:User) WHERE a.id = 63 AND b.id = 35 CREATE (a)-[r:FRIENDS]->(b);
665 | MATCH (a:User),(b:User) WHERE a.id = 64 AND b.id = 30 CREATE (a)-[r:FRIENDS]->(b);
666 | MATCH (a:User),(b:User) WHERE a.id = 65 AND b.id = 27 CREATE (a)-[r:FRIENDS]->(b);
667 | MATCH (a:User),(b:User) WHERE a.id = 66 AND b.id = 235 CREATE (a)-[r:FRIENDS]->(b);
668 | MATCH (a:User),(b:User) WHERE a.id = 67 AND b.id = 97 CREATE (a)-[r:FRIENDS]->(b);
669 | MATCH (a:User),(b:User) WHERE a.id = 68 AND b.id = 224 CREATE (a)-[r:FRIENDS]->(b);
670 | MATCH (a:User),(b:User) WHERE a.id = 69 AND b.id = 99 CREATE (a)-[r:FRIENDS]->(b);
671 | MATCH (a:User),(b:User) WHERE a.id = 70 AND b.id = 193 CREATE (a)-[r:FRIENDS]->(b);
672 | MATCH (a:User),(b:User) WHERE a.id = 71 AND b.id = 292 CREATE (a)-[r:FRIENDS]->(b);
673 | MATCH (a:User),(b:User) WHERE a.id = 72 AND b.id = 295 CREATE (a)-[r:FRIENDS]->(b);
674 | MATCH (a:User),(b:User) WHERE a.id = 73 AND b.id = 135 CREATE (a)-[r:FRIENDS]->(b);
675 | MATCH (a:User),(b:User) WHERE a.id = 74 AND b.id = 112 CREATE (a)-[r:FRIENDS]->(b);
676 | MATCH (a:User),(b:User) WHERE a.id = 75 AND b.id = 205 CREATE (a)-[r:FRIENDS]->(b);
677 | MATCH (a:User),(b:User) WHERE a.id = 76 AND b.id = 10 CREATE (a)-[r:FRIENDS]->(b);
678 | MATCH (a:User),(b:User) WHERE a.id = 77 AND b.id = 59 CREATE (a)-[r:FRIENDS]->(b);
679 | MATCH (a:User),(b:User) WHERE a.id = 78 AND b.id = 227 CREATE (a)-[r:FRIENDS]->(b);
680 | MATCH (a:User),(b:User) WHERE a.id = 79 AND b.id = 176 CREATE (a)-[r:FRIENDS]->(b);
681 | MATCH (a:User),(b:User) WHERE a.id = 80 AND b.id = 6 CREATE (a)-[r:FRIENDS]->(b);
682 | MATCH (a:User),(b:User) WHERE a.id = 81 AND b.id = 289 CREATE (a)-[r:FRIENDS]->(b);
683 | MATCH (a:User),(b:User) WHERE a.id = 82 AND b.id = 126 CREATE (a)-[r:FRIENDS]->(b);
684 | MATCH (a:User),(b:User) WHERE a.id = 83 AND b.id = 202 CREATE (a)-[r:FRIENDS]->(b);
685 | MATCH (a:User),(b:User) WHERE a.id = 84 AND b.id = 209 CREATE (a)-[r:FRIENDS]->(b);
686 | MATCH (a:User),(b:User) WHERE a.id = 85 AND b.id = 12 CREATE (a)-[r:FRIENDS]->(b);
687 | MATCH (a:User),(b:User) WHERE a.id = 86 AND b.id = 256 CREATE (a)-[r:FRIENDS]->(b);
688 | MATCH (a:User),(b:User) WHERE a.id = 87 AND b.id = 126 CREATE (a)-[r:FRIENDS]->(b);
689 | MATCH (a:User),(b:User) WHERE a.id = 88 AND b.id = 234 CREATE (a)-[r:FRIENDS]->(b);
690 | MATCH (a:User),(b:User) WHERE a.id = 89 AND b.id = 158 CREATE (a)-[r:FRIENDS]->(b);
691 | MATCH (a:User),(b:User) WHERE a.id = 90 AND b.id = 205 CREATE (a)-[r:FRIENDS]->(b);
692 | MATCH (a:User),(b:User) WHERE a.id = 91 AND b.id = 107 CREATE (a)-[r:FRIENDS]->(b);
693 | MATCH (a:User),(b:User) WHERE a.id = 92 AND b.id = 79 CREATE (a)-[r:FRIENDS]->(b);
694 | MATCH (a:User),(b:User) WHERE a.id = 93 AND b.id = 42 CREATE (a)-[r:FRIENDS]->(b);
695 | MATCH (a:User),(b:User) WHERE a.id = 94 AND b.id = 246 CREATE (a)-[r:FRIENDS]->(b);
696 | MATCH (a:User),(b:User) WHERE a.id = 95 AND b.id = 178 CREATE (a)-[r:FRIENDS]->(b);
697 | MATCH (a:User),(b:User) WHERE a.id = 96 AND b.id = 128 CREATE (a)-[r:FRIENDS]->(b);
698 | MATCH (a:User),(b:User) WHERE a.id = 97 AND b.id = 81 CREATE (a)-[r:FRIENDS]->(b);
699 | MATCH (a:User),(b:User) WHERE a.id = 98 AND b.id = 72 CREATE (a)-[r:FRIENDS]->(b);
700 | MATCH (a:User),(b:User) WHERE a.id = 99 AND b.id = 123 CREATE (a)-[r:FRIENDS]->(b);
701 | MATCH (a:User),(b:User) WHERE a.id = 100 AND b.id = 255 CREATE (a)-[r:FRIENDS]->(b);
702 | MATCH (a:User),(b:User) WHERE a.id = 101 AND b.id = 13 CREATE (a)-[r:FRIENDS]->(b);
703 | MATCH (a:User),(b:User) WHERE a.id = 102 AND b.id = 47 CREATE (a)-[r:FRIENDS]->(b);
704 | MATCH (a:User),(b:User) WHERE a.id = 103 AND b.id = 138 CREATE (a)-[r:FRIENDS]->(b);
705 | MATCH (a:User),(b:User) WHERE a.id = 104 AND b.id = 104 CREATE (a)-[r:FRIENDS]->(b);
706 | MATCH (a:User),(b:User) WHERE a.id = 105 AND b.id = 244 CREATE (a)-[r:FRIENDS]->(b);
707 | MATCH (a:User),(b:User) WHERE a.id = 106 AND b.id = 221 CREATE (a)-[r:FRIENDS]->(b);
708 | MATCH (a:User),(b:User) WHERE a.id = 107 AND b.id = 10 CREATE (a)-[r:FRIENDS]->(b);
709 | MATCH (a:User),(b:User) WHERE a.id = 108 AND b.id = 167 CREATE (a)-[r:FRIENDS]->(b);
710 | MATCH (a:User),(b:User) WHERE a.id = 109 AND b.id = 50 CREATE (a)-[r:FRIENDS]->(b);
711 | MATCH (a:User),(b:User) WHERE a.id = 110 AND b.id = 49 CREATE (a)-[r:FRIENDS]->(b);
712 | MATCH (a:User),(b:User) WHERE a.id = 111 AND b.id = 287 CREATE (a)-[r:FRIENDS]->(b);
713 | MATCH (a:User),(b:User) WHERE a.id = 112 AND b.id = 8 CREATE (a)-[r:FRIENDS]->(b);
714 | MATCH (a:User),(b:User) WHERE a.id = 113 AND b.id = 213 CREATE (a)-[r:FRIENDS]->(b);
715 | MATCH (a:User),(b:User) WHERE a.id = 114 AND b.id = 113 CREATE (a)-[r:FRIENDS]->(b);
716 | MATCH (a:User),(b:User) WHERE a.id = 115 AND b.id = 284 CREATE (a)-[r:FRIENDS]->(b);
717 | MATCH (a:User),(b:User) WHERE a.id = 116 AND b.id = 276 CREATE (a)-[r:FRIENDS]->(b);
718 | MATCH (a:User),(b:User) WHERE a.id = 117 AND b.id = 165 CREATE (a)-[r:FRIENDS]->(b);
719 | MATCH (a:User),(b:User) WHERE a.id = 118 AND b.id = 152 CREATE (a)-[r:FRIENDS]->(b);
720 | MATCH (a:User),(b:User) WHERE a.id = 119 AND b.id = 262 CREATE (a)-[r:FRIENDS]->(b);
721 | MATCH (a:User),(b:User) WHERE a.id = 120 AND b.id = 78 CREATE (a)-[r:FRIENDS]->(b);
722 | MATCH (a:User),(b:User) WHERE a.id = 121 AND b.id = 101 CREATE (a)-[r:FRIENDS]->(b);
723 | MATCH (a:User),(b:User) WHERE a.id = 122 AND b.id = 264 CREATE (a)-[r:FRIENDS]->(b);
724 | MATCH (a:User),(b:User) WHERE a.id = 123 AND b.id = 99 CREATE (a)-[r:FRIENDS]->(b);
725 | MATCH (a:User),(b:User) WHERE a.id = 124 AND b.id = 269 CREATE (a)-[r:FRIENDS]->(b);
726 | MATCH (a:User),(b:User) WHERE a.id = 125 AND b.id = 77 CREATE (a)-[r:FRIENDS]->(b);
727 | MATCH (a:User),(b:User) WHERE a.id = 126 AND b.id = 43 CREATE (a)-[r:FRIENDS]->(b);
728 | MATCH (a:User),(b:User) WHERE a.id = 127 AND b.id = 182 CREATE (a)-[r:FRIENDS]->(b);
729 | MATCH (a:User),(b:User) WHERE a.id = 128 AND b.id = 4 CREATE (a)-[r:FRIENDS]->(b);
730 | MATCH (a:User),(b:User) WHERE a.id = 129 AND b.id = 79 CREATE (a)-[r:FRIENDS]->(b);
731 | MATCH (a:User),(b:User) WHERE a.id = 130 AND b.id = 17 CREATE (a)-[r:FRIENDS]->(b);
732 | MATCH (a:User),(b:User) WHERE a.id = 131 AND b.id = 219 CREATE (a)-[r:FRIENDS]->(b);
733 | MATCH (a:User),(b:User) WHERE a.id = 132 AND b.id = 250 CREATE (a)-[r:FRIENDS]->(b);
734 | MATCH (a:User),(b:User) WHERE a.id = 133 AND b.id = 141 CREATE (a)-[r:FRIENDS]->(b);
735 | MATCH (a:User),(b:User) WHERE a.id = 134 AND b.id = 219 CREATE (a)-[r:FRIENDS]->(b);
736 | MATCH (a:User),(b:User) WHERE a.id = 135 AND b.id = 172 CREATE (a)-[r:FRIENDS]->(b);
737 | MATCH (a:User),(b:User) WHERE a.id = 136 AND b.id = 236 CREATE (a)-[r:FRIENDS]->(b);
738 | MATCH (a:User),(b:User) WHERE a.id = 137 AND b.id = 71 CREATE (a)-[r:FRIENDS]->(b);
739 | MATCH (a:User),(b:User) WHERE a.id = 138 AND b.id = 137 CREATE (a)-[r:FRIENDS]->(b);
740 | MATCH (a:User),(b:User) WHERE a.id = 139 AND b.id = 114 CREATE (a)-[r:FRIENDS]->(b);
741 | MATCH (a:User),(b:User) WHERE a.id = 140 AND b.id = 90 CREATE (a)-[r:FRIENDS]->(b);
742 | MATCH (a:User),(b:User) WHERE a.id = 141 AND b.id = 96 CREATE (a)-[r:FRIENDS]->(b);
743 | MATCH (a:User),(b:User) WHERE a.id = 142 AND b.id = 138 CREATE (a)-[r:FRIENDS]->(b);
744 | MATCH (a:User),(b:User) WHERE a.id = 143 AND b.id = 39 CREATE (a)-[r:FRIENDS]->(b);
745 | MATCH (a:User),(b:User) WHERE a.id = 144 AND b.id = 217 CREATE (a)-[r:FRIENDS]->(b);
746 | MATCH (a:User),(b:User) WHERE a.id = 145 AND b.id = 55 CREATE (a)-[r:FRIENDS]->(b);
747 | MATCH (a:User),(b:User) WHERE a.id = 146 AND b.id = 147 CREATE (a)-[r:FRIENDS]->(b);
748 | MATCH (a:User),(b:User) WHERE a.id = 147 AND b.id = 74 CREATE (a)-[r:FRIENDS]->(b);
749 | MATCH (a:User),(b:User) WHERE a.id = 148 AND b.id = 10 CREATE (a)-[r:FRIENDS]->(b);
750 | MATCH (a:User),(b:User) WHERE a.id = 149 AND b.id = 146 CREATE (a)-[r:FRIENDS]->(b);
751 | MATCH (a:User),(b:User) WHERE a.id = 150 AND b.id = 45 CREATE (a)-[r:FRIENDS]->(b);
752 | MATCH (a:User),(b:User) WHERE a.id = 151 AND b.id = 48 CREATE (a)-[r:FRIENDS]->(b);
753 | MATCH (a:User),(b:User) WHERE a.id = 152 AND b.id = 226 CREATE (a)-[r:FRIENDS]->(b);
754 | MATCH (a:User),(b:User) WHERE a.id = 153 AND b.id = 276 CREATE (a)-[r:FRIENDS]->(b);
755 | MATCH (a:User),(b:User) WHERE a.id = 154 AND b.id = 44 CREATE (a)-[r:FRIENDS]->(b);
756 | MATCH (a:User),(b:User) WHERE a.id = 155 AND b.id = 99 CREATE (a)-[r:FRIENDS]->(b);
757 | MATCH (a:User),(b:User) WHERE a.id = 156 AND b.id = 162 CREATE (a)-[r:FRIENDS]->(b);
758 | MATCH (a:User),(b:User) WHERE a.id = 157 AND b.id = 297 CREATE (a)-[r:FRIENDS]->(b);
759 | MATCH (a:User),(b:User) WHERE a.id = 158 AND b.id = 224 CREATE (a)-[r:FRIENDS]->(b);
760 | MATCH (a:User),(b:User) WHERE a.id = 159 AND b.id = 198 CREATE (a)-[r:FRIENDS]->(b);
761 | MATCH (a:User),(b:User) WHERE a.id = 160 AND b.id = 27 CREATE (a)-[r:FRIENDS]->(b);
762 | MATCH (a:User),(b:User) WHERE a.id = 161 AND b.id = 191 CREATE (a)-[r:FRIENDS]->(b);
763 | MATCH (a:User),(b:User) WHERE a.id = 162 AND b.id = 18 CREATE (a)-[r:FRIENDS]->(b);
764 | MATCH (a:User),(b:User) WHERE a.id = 163 AND b.id = 206 CREATE (a)-[r:FRIENDS]->(b);
765 | MATCH (a:User),(b:User) WHERE a.id = 164 AND b.id = 242 CREATE (a)-[r:FRIENDS]->(b);
766 | MATCH (a:User),(b:User) WHERE a.id = 165 AND b.id = 199 CREATE (a)-[r:FRIENDS]->(b);
767 | MATCH (a:User),(b:User) WHERE a.id = 166 AND b.id = 62 CREATE (a)-[r:FRIENDS]->(b);
768 | MATCH (a:User),(b:User) WHERE a.id = 167 AND b.id = 47 CREATE (a)-[r:FRIENDS]->(b);
769 | MATCH (a:User),(b:User) WHERE a.id = 168 AND b.id = 82 CREATE (a)-[r:FRIENDS]->(b);
770 | MATCH (a:User),(b:User) WHERE a.id = 169 AND b.id = 139 CREATE (a)-[r:FRIENDS]->(b);
771 | MATCH (a:User),(b:User) WHERE a.id = 170 AND b.id = 12 CREATE (a)-[r:FRIENDS]->(b);
772 | MATCH (a:User),(b:User) WHERE a.id = 171 AND b.id = 86 CREATE (a)-[r:FRIENDS]->(b);
773 | MATCH (a:User),(b:User) WHERE a.id = 172 AND b.id = 104 CREATE (a)-[r:FRIENDS]->(b);
774 | MATCH (a:User),(b:User) WHERE a.id = 173 AND b.id = 101 CREATE (a)-[r:FRIENDS]->(b);
775 | MATCH (a:User),(b:User) WHERE a.id = 174 AND b.id = 193 CREATE (a)-[r:FRIENDS]->(b);
776 | MATCH (a:User),(b:User) WHERE a.id = 175 AND b.id = 51 CREATE (a)-[r:FRIENDS]->(b);
777 | MATCH (a:User),(b:User) WHERE a.id = 176 AND b.id = 235 CREATE (a)-[r:FRIENDS]->(b);
778 | MATCH (a:User),(b:User) WHERE a.id = 177 AND b.id = 31 CREATE (a)-[r:FRIENDS]->(b);
779 | MATCH (a:User),(b:User) WHERE a.id = 178 AND b.id = 8 CREATE (a)-[r:FRIENDS]->(b);
780 | MATCH (a:User),(b:User) WHERE a.id = 179 AND b.id = 146 CREATE (a)-[r:FRIENDS]->(b);
781 | MATCH (a:User),(b:User) WHERE a.id = 180 AND b.id = 264 CREATE (a)-[r:FRIENDS]->(b);
782 | MATCH (a:User),(b:User) WHERE a.id = 181 AND b.id = 136 CREATE (a)-[r:FRIENDS]->(b);
783 | MATCH (a:User),(b:User) WHERE a.id = 182 AND b.id = 30 CREATE (a)-[r:FRIENDS]->(b);
784 | MATCH (a:User),(b:User) WHERE a.id = 183 AND b.id = 195 CREATE (a)-[r:FRIENDS]->(b);
785 | MATCH (a:User),(b:User) WHERE a.id = 184 AND b.id = 107 CREATE (a)-[r:FRIENDS]->(b);
786 | MATCH (a:User),(b:User) WHERE a.id = 185 AND b.id = 227 CREATE (a)-[r:FRIENDS]->(b);
787 | MATCH (a:User),(b:User) WHERE a.id = 186 AND b.id = 211 CREATE (a)-[r:FRIENDS]->(b);
788 | MATCH (a:User),(b:User) WHERE a.id = 187 AND b.id = 130 CREATE (a)-[r:FRIENDS]->(b);
789 | MATCH (a:User),(b:User) WHERE a.id = 188 AND b.id = 168 CREATE (a)-[r:FRIENDS]->(b);
790 | MATCH (a:User),(b:User) WHERE a.id = 189 AND b.id = 299 CREATE (a)-[r:FRIENDS]->(b);
791 | MATCH (a:User),(b:User) WHERE a.id = 190 AND b.id = 254 CREATE (a)-[r:FRIENDS]->(b);
792 | MATCH (a:User),(b:User) WHERE a.id = 191 AND b.id = 65 CREATE (a)-[r:FRIENDS]->(b);
793 | MATCH (a:User),(b:User) WHERE a.id = 192 AND b.id = 50 CREATE (a)-[r:FRIENDS]->(b);
794 | MATCH (a:User),(b:User) WHERE a.id = 193 AND b.id = 48 CREATE (a)-[r:FRIENDS]->(b);
795 | MATCH (a:User),(b:User) WHERE a.id = 194 AND b.id = 229 CREATE (a)-[r:FRIENDS]->(b);
796 | MATCH (a:User),(b:User) WHERE a.id = 195 AND b.id = 236 CREATE (a)-[r:FRIENDS]->(b);
797 | MATCH (a:User),(b:User) WHERE a.id = 196 AND b.id = 279 CREATE (a)-[r:FRIENDS]->(b);
798 | MATCH (a:User),(b:User) WHERE a.id = 197 AND b.id = 142 CREATE (a)-[r:FRIENDS]->(b);
799 | MATCH (a:User),(b:User) WHERE a.id = 198 AND b.id = 181 CREATE (a)-[r:FRIENDS]->(b);
800 | MATCH (a:User),(b:User) WHERE a.id = 199 AND b.id = 125 CREATE (a)-[r:FRIENDS]->(b);
801 | MATCH (a:User),(b:User) WHERE a.id = 200 AND b.id = 32 CREATE (a)-[r:FRIENDS]->(b);
802 | MATCH (a:User),(b:User) WHERE a.id = 201 AND b.id = 80 CREATE (a)-[r:FRIENDS]->(b);
803 | MATCH (a:User),(b:User) WHERE a.id = 202 AND b.id = 227 CREATE (a)-[r:FRIENDS]->(b);
804 | MATCH (a:User),(b:User) WHERE a.id = 203 AND b.id = 267 CREATE (a)-[r:FRIENDS]->(b);
805 | MATCH (a:User),(b:User) WHERE a.id = 204 AND b.id = 283 CREATE (a)-[r:FRIENDS]->(b);
806 | MATCH (a:User),(b:User) WHERE a.id = 205 AND b.id = 246 CREATE (a)-[r:FRIENDS]->(b);
807 | MATCH (a:User),(b:User) WHERE a.id = 206 AND b.id = 28 CREATE (a)-[r:FRIENDS]->(b);
808 | MATCH (a:User),(b:User) WHERE a.id = 207 AND b.id = 152 CREATE (a)-[r:FRIENDS]->(b);
809 | MATCH (a:User),(b:User) WHERE a.id = 208 AND b.id = 106 CREATE (a)-[r:FRIENDS]->(b);
810 | MATCH (a:User),(b:User) WHERE a.id = 209 AND b.id = 289 CREATE (a)-[r:FRIENDS]->(b);
811 | MATCH (a:User),(b:User) WHERE a.id = 210 AND b.id = 188 CREATE (a)-[r:FRIENDS]->(b);
812 | MATCH (a:User),(b:User) WHERE a.id = 211 AND b.id = 227 CREATE (a)-[r:FRIENDS]->(b);
813 | MATCH (a:User),(b:User) WHERE a.id = 212 AND b.id = 185 CREATE (a)-[r:FRIENDS]->(b);
814 | MATCH (a:User),(b:User) WHERE a.id = 213 AND b.id = 197 CREATE (a)-[r:FRIENDS]->(b);
815 | MATCH (a:User),(b:User) WHERE a.id = 214 AND b.id = 113 CREATE (a)-[r:FRIENDS]->(b);
816 | MATCH (a:User),(b:User) WHERE a.id = 215 AND b.id = 224 CREATE (a)-[r:FRIENDS]->(b);
817 | MATCH (a:User),(b:User) WHERE a.id = 216 AND b.id = 125 CREATE (a)-[r:FRIENDS]->(b);
818 | MATCH (a:User),(b:User) WHERE a.id = 217 AND b.id = 228 CREATE (a)-[r:FRIENDS]->(b);
819 | MATCH (a:User),(b:User) WHERE a.id = 218 AND b.id = 57 CREATE (a)-[r:FRIENDS]->(b);
820 | MATCH (a:User),(b:User) WHERE a.id = 219 AND b.id = 50 CREATE (a)-[r:FRIENDS]->(b);
821 | MATCH (a:User),(b:User) WHERE a.id = 220 AND b.id = 156 CREATE (a)-[r:FRIENDS]->(b);
822 | MATCH (a:User),(b:User) WHERE a.id = 221 AND b.id = 154 CREATE (a)-[r:FRIENDS]->(b);
823 | MATCH (a:User),(b:User) WHERE a.id = 222 AND b.id = 243 CREATE (a)-[r:FRIENDS]->(b);
824 | MATCH (a:User),(b:User) WHERE a.id = 223 AND b.id = 285 CREATE (a)-[r:FRIENDS]->(b);
825 | MATCH (a:User),(b:User) WHERE a.id = 224 AND b.id = 46 CREATE (a)-[r:FRIENDS]->(b);
826 | MATCH (a:User),(b:User) WHERE a.id = 225 AND b.id = 11 CREATE (a)-[r:FRIENDS]->(b);
827 | MATCH (a:User),(b:User) WHERE a.id = 226 AND b.id = 107 CREATE (a)-[r:FRIENDS]->(b);
828 | MATCH (a:User),(b:User) WHERE a.id = 227 AND b.id = 281 CREATE (a)-[r:FRIENDS]->(b);
829 | MATCH (a:User),(b:User) WHERE a.id = 228 AND b.id = 181 CREATE (a)-[r:FRIENDS]->(b);
830 | MATCH (a:User),(b:User) WHERE a.id = 229 AND b.id = 72 CREATE (a)-[r:FRIENDS]->(b);
831 | MATCH (a:User),(b:User) WHERE a.id = 230 AND b.id = 214 CREATE (a)-[r:FRIENDS]->(b);
832 | MATCH (a:User),(b:User) WHERE a.id = 231 AND b.id = 177 CREATE (a)-[r:FRIENDS]->(b);
833 | MATCH (a:User),(b:User) WHERE a.id = 232 AND b.id = 291 CREATE (a)-[r:FRIENDS]->(b);
834 | MATCH (a:User),(b:User) WHERE a.id = 233 AND b.id = 293 CREATE (a)-[r:FRIENDS]->(b);
835 | MATCH (a:User),(b:User) WHERE a.id = 234 AND b.id = 277 CREATE (a)-[r:FRIENDS]->(b);
836 | MATCH (a:User),(b:User) WHERE a.id = 235 AND b.id = 99 CREATE (a)-[r:FRIENDS]->(b);
837 | MATCH (a:User),(b:User) WHERE a.id = 236 AND b.id = 245 CREATE (a)-[r:FRIENDS]->(b);
838 | MATCH (a:User),(b:User) WHERE a.id = 237 AND b.id = 284 CREATE (a)-[r:FRIENDS]->(b);
839 | MATCH (a:User),(b:User) WHERE a.id = 238 AND b.id = 194 CREATE (a)-[r:FRIENDS]->(b);
840 | MATCH (a:User),(b:User) WHERE a.id = 239 AND b.id = 281 CREATE (a)-[r:FRIENDS]->(b);
841 | MATCH (a:User),(b:User) WHERE a.id = 240 AND b.id = 215 CREATE (a)-[r:FRIENDS]->(b);
842 | MATCH (a:User),(b:User) WHERE a.id = 241 AND b.id = 183 CREATE (a)-[r:FRIENDS]->(b);
843 | MATCH (a:User),(b:User) WHERE a.id = 242 AND b.id = 171 CREATE (a)-[r:FRIENDS]->(b);
844 | MATCH (a:User),(b:User) WHERE a.id = 243 AND b.id = 199 CREATE (a)-[r:FRIENDS]->(b);
845 | MATCH (a:User),(b:User) WHERE a.id = 244 AND b.id = 161 CREATE (a)-[r:FRIENDS]->(b);
846 | MATCH (a:User),(b:User) WHERE a.id = 245 AND b.id = 128 CREATE (a)-[r:FRIENDS]->(b);
847 | MATCH (a:User),(b:User) WHERE a.id = 246 AND b.id = 120 CREATE (a)-[r:FRIENDS]->(b);
848 | MATCH (a:User),(b:User) WHERE a.id = 247 AND b.id = 277 CREATE (a)-[r:FRIENDS]->(b);
849 | MATCH (a:User),(b:User) WHERE a.id = 248 AND b.id = 254 CREATE (a)-[r:FRIENDS]->(b);
850 | MATCH (a:User),(b:User) WHERE a.id = 249 AND b.id = 97 CREATE (a)-[r:FRIENDS]->(b);
851 | MATCH (a:User),(b:User) WHERE a.id = 250 AND b.id = 188 CREATE (a)-[r:FRIENDS]->(b);
852 | MATCH (a:User),(b:User) WHERE a.id = 251 AND b.id = 39 CREATE (a)-[r:FRIENDS]->(b);
853 | MATCH (a:User),(b:User) WHERE a.id = 252 AND b.id = 122 CREATE (a)-[r:FRIENDS]->(b);
854 | MATCH (a:User),(b:User) WHERE a.id = 253 AND b.id = 109 CREATE (a)-[r:FRIENDS]->(b);
855 | MATCH (a:User),(b:User) WHERE a.id = 254 AND b.id = 102 CREATE (a)-[r:FRIENDS]->(b);
856 | MATCH (a:User),(b:User) WHERE a.id = 255 AND b.id = 295 CREATE (a)-[r:FRIENDS]->(b);
857 | MATCH (a:User),(b:User) WHERE a.id = 256 AND b.id = 230 CREATE (a)-[r:FRIENDS]->(b);
858 | MATCH (a:User),(b:User) WHERE a.id = 257 AND b.id = 256 CREATE (a)-[r:FRIENDS]->(b);
859 | MATCH (a:User),(b:User) WHERE a.id = 258 AND b.id = 170 CREATE (a)-[r:FRIENDS]->(b);
860 | MATCH (a:User),(b:User) WHERE a.id = 259 AND b.id = 193 CREATE (a)-[r:FRIENDS]->(b);
861 | MATCH (a:User),(b:User) WHERE a.id = 260 AND b.id = 173 CREATE (a)-[r:FRIENDS]->(b);
862 | MATCH (a:User),(b:User) WHERE a.id = 261 AND b.id = 135 CREATE (a)-[r:FRIENDS]->(b);
863 | MATCH (a:User),(b:User) WHERE a.id = 262 AND b.id = 118 CREATE (a)-[r:FRIENDS]->(b);
864 | MATCH (a:User),(b:User) WHERE a.id = 263 AND b.id = 11 CREATE (a)-[r:FRIENDS]->(b);
865 | MATCH (a:User),(b:User) WHERE a.id = 264 AND b.id = 178 CREATE (a)-[r:FRIENDS]->(b);
866 | MATCH (a:User),(b:User) WHERE a.id = 265 AND b.id = 82 CREATE (a)-[r:FRIENDS]->(b);
867 | MATCH (a:User),(b:User) WHERE a.id = 266 AND b.id = 196 CREATE (a)-[r:FRIENDS]->(b);
868 | MATCH (a:User),(b:User) WHERE a.id = 267 AND b.id = 277 CREATE (a)-[r:FRIENDS]->(b);
869 | MATCH (a:User),(b:User) WHERE a.id = 268 AND b.id = 206 CREATE (a)-[r:FRIENDS]->(b);
870 | MATCH (a:User),(b:User) WHERE a.id = 269 AND b.id = 94 CREATE (a)-[r:FRIENDS]->(b);
871 | MATCH (a:User),(b:User) WHERE a.id = 270 AND b.id = 105 CREATE (a)-[r:FRIENDS]->(b);
872 | MATCH (a:User),(b:User) WHERE a.id = 271 AND b.id = 12 CREATE (a)-[r:FRIENDS]->(b);
873 | MATCH (a:User),(b:User) WHERE a.id = 272 AND b.id = 132 CREATE (a)-[r:FRIENDS]->(b);
874 | MATCH (a:User),(b:User) WHERE a.id = 273 AND b.id = 164 CREATE (a)-[r:FRIENDS]->(b);
875 | MATCH (a:User),(b:User) WHERE a.id = 274 AND b.id = 85 CREATE (a)-[r:FRIENDS]->(b);
876 | MATCH (a:User),(b:User) WHERE a.id = 275 AND b.id = 129 CREATE (a)-[r:FRIENDS]->(b);
877 | MATCH (a:User),(b:User) WHERE a.id = 276 AND b.id = 136 CREATE (a)-[r:FRIENDS]->(b);
878 | MATCH (a:User),(b:User) WHERE a.id = 277 AND b.id = 153 CREATE (a)-[r:FRIENDS]->(b);
879 | MATCH (a:User),(b:User) WHERE a.id = 278 AND b.id = 82 CREATE (a)-[r:FRIENDS]->(b);
880 | MATCH (a:User),(b:User) WHERE a.id = 279 AND b.id = 57 CREATE (a)-[r:FRIENDS]->(b);
881 | MATCH (a:User),(b:User) WHERE a.id = 280 AND b.id = 273 CREATE (a)-[r:FRIENDS]->(b);
882 | MATCH (a:User),(b:User) WHERE a.id = 281 AND b.id = 23 CREATE (a)-[r:FRIENDS]->(b);
883 | MATCH (a:User),(b:User) WHERE a.id = 282 AND b.id = 157 CREATE (a)-[r:FRIENDS]->(b);
884 | MATCH (a:User),(b:User) WHERE a.id = 283 AND b.id = 247 CREATE (a)-[r:FRIENDS]->(b);
885 | MATCH (a:User),(b:User) WHERE a.id = 284 AND b.id = 255 CREATE (a)-[r:FRIENDS]->(b);
886 | MATCH (a:User),(b:User) WHERE a.id = 285 AND b.id = 268 CREATE (a)-[r:FRIENDS]->(b);
887 | MATCH (a:User),(b:User) WHERE a.id = 286 AND b.id = 53 CREATE (a)-[r:FRIENDS]->(b);
888 | MATCH (a:User),(b:User) WHERE a.id = 287 AND b.id = 159 CREATE (a)-[r:FRIENDS]->(b);
889 | MATCH (a:User),(b:User) WHERE a.id = 288 AND b.id = 258 CREATE (a)-[r:FRIENDS]->(b);
890 | MATCH (a:User),(b:User) WHERE a.id = 289 AND b.id = 192 CREATE (a)-[r:FRIENDS]->(b);
891 | MATCH (a:User),(b:User) WHERE a.id = 290 AND b.id = 130 CREATE (a)-[r:FRIENDS]->(b);
892 | MATCH (a:User),(b:User) WHERE a.id = 291 AND b.id = 225 CREATE (a)-[r:FRIENDS]->(b);
893 | MATCH (a:User),(b:User) WHERE a.id = 292 AND b.id = 241 CREATE (a)-[r:FRIENDS]->(b);
894 | MATCH (a:User),(b:User) WHERE a.id = 293 AND b.id = 153 CREATE (a)-[r:FRIENDS]->(b);
895 | MATCH (a:User),(b:User) WHERE a.id = 294 AND b.id = 236 CREATE (a)-[r:FRIENDS]->(b);
896 | MATCH (a:User),(b:User) WHERE a.id = 295 AND b.id = 25 CREATE (a)-[r:FRIENDS]->(b);
897 | MATCH (a:User),(b:User) WHERE a.id = 296 AND b.id = 40 CREATE (a)-[r:FRIENDS]->(b);
898 | MATCH (a:User),(b:User) WHERE a.id = 297 AND b.id = 205 CREATE (a)-[r:FRIENDS]->(b);
899 | MATCH (a:User),(b:User) WHERE a.id = 298 AND b.id = 91 CREATE (a)-[r:FRIENDS]->(b);
900 | MATCH (a:User),(b:User) WHERE a.id = 299 AND b.id = 255 CREATE (a)-[r:FRIENDS]->(b);
901 |
--------------------------------------------------------------------------------