                 {
                     newxy(10, 1, GREENS);
                 }
+        }
+}
+
+void offside()
+{
+    currentMillis = millis();
+    log("Side out at " + String(currentMillis) + " after " + String(previousMillis));
+    previousMillis = currentMillis;
+    reset_buttons_flagClick();
+    ballkick = false;
+    game = GAME_PERFORMED;
+    if (vector == GREENS)
+    {
+        newxy(6, 2, REDS);
+    }
+    else
+        if (vector == REDS)
+        {
+            newxy(5, 2, GREENS);
         }
 }
 

        case GAME_END_OUT:
            goalline();
            break;

        default:
        // выполняется, если не выбрана ни одна альтернатива
        // default необязателен

                        {
                            digitalWrite(l4r, HIGH);
                        }
                    break;
                default:
            }
        }
        else
            digitalWrite(field[x][y], HIGH); // проверка наличия светодиода в новой координате
    }
    digitalWrite(field[xPrev][yPrev], LOW);
    if (y == 0 || y == 4)
