Fix this code:
<!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Yaoi</title>
</head>
<body>
<div>
    <img src="me.png" style="display: none;" id="scream"/>
    <img src="cloud.png" style="display: none;" id="cloud"/>
    <img src="restart.png" style="display: none;" id="restart"/>
</div>

<h3 style="text-align: center;">Save Me</h3>
<div id="container" style="text-align: center; padding-top: 25px;"> 
    <canvas id="gameCanvas" width="800" height="500" style="border: 1px solid #d3d3d3; background: url(bac.jpg);" onclick="playAgain()"></canvas>
</div>
<audio style="display: none;" autoplay="autoplay">
    <source src="3D_Worldrunner_Main.mid" type="audio/mpeg">
    Your browser does not support the audio element.
</audio>
<div style="text-align: center;"><input type="button" value="FullScreen" onclick="fullScreen()"/></div>
<script>
    let startTime = 0;
    const elem = document.getElementById("gameCanvas");
    elem.addEventListener('webkitfullscreenchange', function(e) {
        config.isFullScreen = !config.isFullScreen;
        if (config.isFullScreen) {
            const elem = document.getElementById("gameCanvas");
            elem.setAttribute("width", screen.width);
            elem.setAttribute("height", screen.height);
            container.width = screen.width;
            container.height = screen.height;
            config.font="30px arial";
        } else {
            const elem = document.getElementById("gameCanvas");
            elem.setAttribute("width", 800);
            elem.setAttribute("height", 500);
            container.width = 800;
            container.height = 500;
            config.font="25px arial";
        }
    }, false);
    const config = {isFullScreen: false, font:"25px arial", fontColor:"rgba(0,0,0,0.9)"};
    function fullScreen() {
        const elem = document.getElementById("gameCanvas");
        //config.isFullScreen = true;
        elem.requestFullscreen();
    }
    function playAgain() {
        startTime = new Date();
        gameLoop = setInterval(moveBalls, 20);
        enemyIncrementLoop = setInterval(incrementEnemy, 5000);
        init();
        $("#gameCanvas").off("click");
    }

    const container = {id: "container", width: 800, height: 500};
    const player = {id: 'player', x: container.width / 2, y: container.height - 50, width: 50, height: 80, speedX: 20, speedY: 5};
    const cloud = {id: "cloud", x: -150, y: 50, width: 150, height: 100, speedX: 3, speedY: 5};
    let objects;
    function init() {
        objects = [];
        incrementEnemy();
    }
    function incrementEnemy() {
        if (objects.length < 10) {
            const r = Math.floor(Math.random() * 256);
            const g = Math.floor(Math.random() * 256);
            const b = Math.floor(Math.random() * 256);
            const color = `rgba(${r},${g},${b},0.5)`;
            const xPosition = container.width * Math.random();
            const xRandius = Math.floor(Math.random() * 40) + 10;
            const xSpeed = Math.floor(Math.random() * 6) + 2;
            const ySpeed = Math.floor(Math.random() * 6) + 2;
            if (xPosition <= 2 * xRandius || xPosition + 2 * xRandius >= container.width) {
                xPosition = container.width / 2;
            }
            objects.push({id: "#circle", radius: xRandius, speedX: xSpeed, speedY: ySpeed, color: color, centerX: xPosition, centerY: 80});

        }
    }
    const c = document.getElementById('gameCanvas');
    const ctx = c.getContext('2d');
    ctx.font = config.font;
    ctx.fillText('Click Here To Start Game', container.width / 2 - 5 * 25, container.height / 2);
    window.addEventListener('keydown', gamekeyboard);
    let mouseOffset = 1;
    let currentLoopCountOffset = 0;
    function gamemousemove() {
        if (currentLoopCountOffset == mouseOffset) {
            currentLoopCountOffset = 0
            if (config.isFullScreen)
            {
                if (event.pageX - this.offsetLeft > player.width / 2 && event.pageX - this.offsetLeft <= container.width - player.width / 2) {
                    player.x = event.pageX - player.width / 2;
                }
                if (event.pageY > player.height / 2 && event.pageY <= container.height - player.height / 2) {
                    player.y = event.pageY - player.height / 2;
                }
            else {
                if (event.pageX - this.offsetLeft > player.width / 2 && event.pageX - this.offsetLeft <= container.width - player.width / 2) {
                    player.x = event.pageX - player.width / 2 - this.offsetLeft;
                }
                if (event.pageY - this.offsetTop > player.height / 2 && event.pageY - this.offsetTop <= container.height - player.height / 2) {
                    player.y = event.pageY - player.height / 2 - this.offsetTop;
                }
            }
            }
            }
            currentLoopCountOffset++;
        }
        function gamekeyboardlistener() {
            if (event.keyCode == 37) {
                e('Left');
                if (player.x > 0)
                    player.x -= player.speedX;
            }
            if (event.keyCode == 38) {
                e('Top');
            }
            if (event.keyCode == 39) {
                e('Right');
                if (player.x + player.width + player.speedX < container.width)
                    player.x += player.speedX;
            }
            if (event.keyCode == 40) {
                e('Bottom');
            }
        }
        function moveBalls() {
            const c = document.getElementById('gameCanvas');
            const ctx = c.getContext('2d');
            ctx.clearRect(0, 0, container.width, container.height);
            for (let i = 0; i < objects.length; i++) {
                const object = objects[i];
                if (
                    (object.centerY + object.radius * 0.75 >= player.y && object.centerY + object.radius * 0.75 <= player.y + player.height)
                    ||
                    (object.centerY - object.radius * 0.75 >= player.y && object.centerY - object.radius * 0.75 <= player.y + player.height)
                ) {
                    if (
                        (object.centerX + object.radius * 0.75 > player.x && object.centerX + object.radius * 0.75 < player.x + player.width)
                        ||
                        (object.centerX - object.radius * 0.75 > player.x && object.centerX - object.radius * 0.75 < player.x + player.width)
                    ) {
                        const score = Math.ceil((new Date() - startTime) / 1000);
                        if (score < 0)
                            score *= -1;
                        ctx.fillStyle = config.fontColor;
                        ctx.fillText('Game Over', container.width / 2 - 3 * 25, container.height / 2);
                        ctx.fillText('Score : '+ score +' seconds', container.width / 2 - 4 * 25, container.height / 2 + 35);
                        const imgRestart = document.getElementById('restart');
                        const restart = {x:container.width * 0.5 - 50, y:container.height * 0.75 - 50, width:100, height: 100};
                        ctx.drawImage(imgRestart, restart.x, restart.y, restart.width, restart.height);
                        clearInterval(gameLoop);
                        clearInterval(enemyIncrementLoop);
                        $('#gameCanvas').off("click");
                    }
                    if (object.centerX + object.radius > container.width || object.centerX - object.radius < 0) {
                        object.speedX *= -1;
                    }
                    if (object.centerY + object.radius > container.height || object.centerY - object.radius < 0) {
                        object.speedY *= -1;
                    }
                    ctx.beginPath();
                    ctx.fillStyle = object.color;
                    ctx.arc(object.centerX, object.centerY, object.radius, 0, 2 * Math.PI);
                    ctx.fill();
                    object.centerX += object.speedX;
                    object.centerY += object.speedY;
                }
                const img = document.getElementById('scream');
                const imgCloud = document.getElementById('cloud');
                ctx.drawImage(img, player.x, player.y, player.width, player.height);
                ctx.drawImage(imgCloud, cloud.x, cloud.y, cloud.width, cloud.height);
                cloud.x = cloud.x + cloud.speedX;
                if (cloud.x > container.width) {
                    cloud.x = (cloud.width * -1) - 20;
                }
                ctx.font = config.font;
                ctx.fillStyle = config.fontColor;
                ctx.fillText("Sec : " + (new Date()-startTime) + "", container.width *0.8,40);
                // ctx.rect(player.x - 1, player.y - 1, player.width + 2, player.heidht + 2);
                // ctx.stroke();
            }
        }
    </script>
</body>
</html>