[
    {
        "name": "WIDTH",
        "kind": "Constant",
        "range": {
            "start": {
                "line": 6,
                "character": 0
            },
            "end": {
                "line": 6,
                "character": 5
            }
        },
        "children": []
    },
    {
        "name": "HEIGHT",
        "kind": "Constant",
        "range": {
            "start": {
                "line": 7,
                "character": 0
            },
            "end": {
                "line": 7,
                "character": 6
            }
        },
        "children": []
    },
    {
        "name": "SPEED",
        "kind": "Constant",
        "range": {
            "start": {
                "line": 8,
                "character": 0
            },
            "end": {
                "line": 8,
                "character": 5
            }
        },
        "children": []
    },
    {
        "name": "SPACE_SIZE",
        "kind": "Constant",
        "range": {
            "start": {
                "line": 9,
                "character": 0
            },
            "end": {
                "line": 9,
                "character": 10
            }
        },
        "children": []
    },
    {
        "name": "BODY_SIZE",
        "kind": "Constant",
        "range": {
            "start": {
                "line": 10,
                "character": 0
            },
            "end": {
                "line": 10,
                "character": 9
            }
        },
        "children": []
    },
    {
        "name": "SNAKE",
        "kind": "Constant",
        "range": {
            "start": {
                "line": 11,
                "character": 0
            },
            "end": {
                "line": 11,
                "character": 5
            }
        },
        "children": []
    },
    {
        "name": "FOOD",
        "kind": "Constant",
        "range": {
            "start": {
                "line": 12,
                "character": 0
            },
            "end": {
                "line": 12,
                "character": 4
            }
        },
        "children": []
    },
    {
        "name": "BACKGROUND",
        "kind": "Constant",
        "range": {
            "start": {
                "line": 13,
                "character": 0
            },
            "end": {
                "line": 13,
                "character": 10
            }
        },
        "children": []
    },
    {
        "name": "Snake",
        "kind": "Class",
        "range": {
            "start": {
                "line": 16,
                "character": 0
            },
            "end": {
                "line": 30,
                "character": 30
            }
        },
        "children": [
            {
                "name": "__init__",
                "kind": "Method",
                "range": {
                    "start": {
                        "line": 18,
                        "character": 1
                    },
                    "end": {
                        "line": 30,
                        "character": 30
                    }
                },
                "children": [
                    {
                        "name": "i",
                        "kind": "Variable",
                        "range": {
                            "start": {
                                "line": 23,
                                "character": 6
                            },
                            "end": {
                                "line": 23,
                                "character": 7
                            }
                        },
                        "children": []
                    },
                    {
                        "name": "x",
                        "kind": "Variable",
                        "range": {
                            "start": {
                                "line": 26,
                                "character": 6
                            },
                            "end": {
                                "line": 26,
                                "character": 7
                            }
                        },
                        "children": []
                    },
                    {
                        "name": "y",
                        "kind": "Variable",
                        "range": {
                            "start": {
                                "line": 26,
                                "character": 9
                            },
                            "end": {
                                "line": 26,
                                "character": 10
                            }
                        },
                        "children": []
                    },
                    {
                        "name": "square",
                        "kind": "Variable",
                        "range": {
                            "start": {
                                "line": 27,
                                "character": 3
                            },
                            "end": {
                                "line": 27,
                                "character": 9
                            }
                        },
                        "children": []
                    }
                ]
            },
            {
                "name": "body_size",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 19,
                        "character": 7
                    },
                    "end": {
                        "line": 19,
                        "character": 16
                    }
                },
                "children": []
            },
            {
                "name": "coordinates",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 20,
                        "character": 7
                    },
                    "end": {
                        "line": 20,
                        "character": 18
                    }
                },
                "children": []
            },
            {
                "name": "squares",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 21,
                        "character": 7
                    },
                    "end": {
                        "line": 21,
                        "character": 14
                    }
                },
                "children": []
            }
        ]
    },
    {
        "name": "Food",
        "kind": "Class",
        "range": {
            "start": {
                "line": 33,
                "character": 0
            },
            "end": {
                "line": 45,
                "character": 40
            }
        },
        "children": [
            {
                "name": "__init__",
                "kind": "Method",
                "range": {
                    "start": {
                        "line": 35,
                        "character": 1
                    },
                    "end": {
                        "line": 45,
                        "character": 40
                    }
                },
                "children": [
                    {
                        "name": "x",
                        "kind": "Variable",
                        "range": {
                            "start": {
                                "line": 37,
                                "character": 2
                            },
                            "end": {
                                "line": 37,
                                "character": 3
                            }
                        },
                        "children": []
                    },
                    {
                        "name": "y",
                        "kind": "Variable",
                        "range": {
                            "start": {
                                "line": 39,
                                "character": 2
                            },
                            "end": {
                                "line": 39,
                                "character": 3
                            }
                        },
                        "children": []
                    }
                ]
            },
            {
                "name": "coordinates",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 42,
                        "character": 7
                    },
                    "end": {
                        "line": 42,
                        "character": 18
                    }
                },
                "children": []
            }
        ]
    },
    {
        "name": "next_turn",
        "kind": "Function",
        "range": {
            "start": {
                "line": 48,
                "character": 0
            },
            "end": {
                "line": 93,
                "character": 45
            }
        },
        "children": [
            {
                "name": "snake",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 48,
                        "character": 14
                    },
                    "end": {
                        "line": 48,
                        "character": 19
                    }
                },
                "children": []
            },
            {
                "name": "food",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 48,
                        "character": 21
                    },
                    "end": {
                        "line": 48,
                        "character": 25
                    }
                },
                "children": []
            },
            {
                "name": "x",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 50,
                        "character": 1
                    },
                    "end": {
                        "line": 50,
                        "character": 2
                    }
                },
                "children": []
            },
            {
                "name": "y",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 50,
                        "character": 4
                    },
                    "end": {
                        "line": 50,
                        "character": 5
                    }
                },
                "children": []
            },
            {
                "name": "square",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 63,
                        "character": 1
                    },
                    "end": {
                        "line": 63,
                        "character": 7
                    }
                },
                "children": []
            }
        ]
    },
    {
        "name": "change_direction",
        "kind": "Function",
        "range": {
            "start": {
                "line": 96,
                "character": 0
            },
            "end": {
                "line": 111,
                "character": 28
            }
        },
        "children": [
            {
                "name": "new_direction",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 96,
                        "character": 21
                    },
                    "end": {
                        "line": 96,
                        "character": 34
                    }
                },
                "children": []
            }
        ]
    },
    {
        "name": "check_collisions",
        "kind": "Function",
        "range": {
            "start": {
                "line": 114,
                "character": 0
            },
            "end": {
                "line": 127,
                "character": 13
            }
        },
        "children": [
            {
                "name": "snake",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 114,
                        "character": 21
                    },
                    "end": {
                        "line": 114,
                        "character": 26
                    }
                },
                "children": []
            },
            {
                "name": "x",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 116,
                        "character": 1
                    },
                    "end": {
                        "line": 116,
                        "character": 2
                    }
                },
                "children": []
            },
            {
                "name": "y",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 116,
                        "character": 4
                    },
                    "end": {
                        "line": 116,
                        "character": 5
                    }
                },
                "children": []
            },
            {
                "name": "body_part",
                "kind": "Variable",
                "range": {
                    "start": {
                        "line": 123,
                        "character": 5
                    },
                    "end": {
                        "line": 123,
                        "character": 14
                    }
                },
                "children": []
            }
        ]
    },
    {
        "name": "game_over",
        "kind": "Function",
        "range": {
            "start": {
                "line": 130,
                "character": 0
            },
            "end": {
                "line": 137,
                "character": 20
            }
        },
        "children": []
    },
    {
        "name": "window",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 142,
                "character": 0
            },
            "end": {
                "line": 142,
                "character": 6
            }
        },
        "children": []
    },
    {
        "name": "score",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 146,
                "character": 0
            },
            "end": {
                "line": 146,
                "character": 5
            }
        },
        "children": []
    },
    {
        "name": "direction",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 147,
                "character": 0
            },
            "end": {
                "line": 147,
                "character": 9
            }
        },
        "children": []
    },
    {
        "name": "label",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 151,
                "character": 0
            },
            "end": {
                "line": 151,
                "character": 5
            }
        },
        "children": []
    },
    {
        "name": "canvas",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 155,
                "character": 0
            },
            "end": {
                "line": 155,
                "character": 6
            }
        },
        "children": []
    },
    {
        "name": "window_width",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 161,
                "character": 0
            },
            "end": {
                "line": 161,
                "character": 12
            }
        },
        "children": []
    },
    {
        "name": "window_height",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 162,
                "character": 0
            },
            "end": {
                "line": 162,
                "character": 13
            }
        },
        "children": []
    },
    {
        "name": "screen_width",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 163,
                "character": 0
            },
            "end": {
                "line": 163,
                "character": 12
            }
        },
        "children": []
    },
    {
        "name": "screen_height",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 164,
                "character": 0
            },
            "end": {
                "line": 164,
                "character": 13
            }
        },
        "children": []
    },
    {
        "name": "x",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 166,
                "character": 0
            },
            "end": {
                "line": 166,
                "character": 1
            }
        },
        "children": []
    },
    {
        "name": "y",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 167,
                "character": 0
            },
            "end": {
                "line": 167,
                "character": 1
            }
        },
        "children": []
    },
    {
        "name": "snake",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 180,
                "character": 0
            },
            "end": {
                "line": 180,
                "character": 5
            }
        },
        "children": []
    },
    {
        "name": "food",
        "kind": "Variable",
        "range": {
            "start": {
                "line": 181,
                "character": 0
            },
            "end": {
                "line": 181,
                "character": 4
            }
        },
        "children": []
    }
]