text: #include <stdint.h>
  #include <stdlib.h>
  #include <assert.h>
  #include <stdio.h>
  #include "gamma.h"
  #include <stdbool.h>
  #include <string.h>
  
  
  int main() {
  
  /*
  scenario: test_random_actions
  uuid: 422345757
  */
  /*
  random actions, total chaos
  */
  gamma_t* board = gamma_new(5, 7, 1, 1);
  assert( board != NULL );
  
  
  assert( gamma_move(board, 1, 5, 0) == 0 );
  assert( gamma_move(board, 1, 1, 0) == 1 );
  assert( gamma_busy_fields(board, 1) == 1 );
  assert( gamma_move(board, 1, 2, 0) == 1 );
  assert( gamma_move(board, 1, 1, 0) == 0 );
  assert( gamma_busy_fields(board, 1) == 2 );
  assert( gamma_golden_possible(board, 1) == 0 );
  assert( gamma_move(board, 1, 4, 5) == 0 );
  assert( gamma_move(board, 1, 1, 4) == 0 );
  assert( gamma_golden_move(board, 1, 5, 0) == 0 );
  assert( gamma_move(board, 1, 3, 4) == 0 );
  assert( gamma_move(board, 1, 3, 3) == 0 );
  assert( gamma_move(board, 1, 2, 4) == 0 );
  assert( gamma_free_fields(board, 1) == 4 );
  assert( gamma_move(board, 1, 4, 0) == 0 );
  assert( gamma_free_fields(board, 1) == 4 );
  assert( gamma_move(board, 1, 1, 4) == 0 );
  assert( gamma_move(board, 1, 5, 0) == 0 );
  assert( gamma_move(board, 1, 1, 1) == 1 );
  assert( gamma_free_fields(board, 1) == 5 );
  assert( gamma_move(board, 1, 2, 0) == 0 );
  assert( gamma_move(board, 1, 6, 3) == 0 );
  assert( gamma_free_fields(board, 1) == 5 );
  assert( gamma_move(board, 1, 2, 3) == 0 );
  assert( gamma_free_fields(board, 1) == 5 );
  assert( gamma_move(board, 1, 4, 1) == 0 );
  assert( gamma_move(board, 1, 2, 3) == 0 );
  assert( gamma_move(board, 1, 6, 4) == 0 );
  assert( gamma_move(board, 1, 1, 6) == 0 );
  assert( gamma_move(board, 1, 5, 1) == 0 );
  assert( gamma_move(board, 1, 1, 0) == 0 );
  assert( gamma_move(board, 1, 4, 1) == 0 );
  assert( gamma_move(board, 1, 1, 6) == 0 );
  assert( gamma_busy_fields(board, 1) == 3 );
  assert( gamma_move(board, 1, 4, 2) == 0 );
  assert( gamma_move(board, 1, 3, 1) == 0 );
  assert( gamma_free_fields(board, 1) == 5 );
  assert( gamma_move(board, 1, 2, 4) == 0 );
  assert( gamma_move(board, 1, 5, 2) == 0 );
  assert( gamma_move(board, 1, 1, 0) == 0 );
  assert( gamma_move(board, 1, 4, 1) == 0 );
  assert( gamma_free_fields(board, 1) == 5 );
  assert( gamma_move(board, 1, 3, 3) == 0 );
  assert( gamma_move(board, 1, 4, 6) == 0 );
  assert( gamma_move(board, 1, 4, 0) == 0 );
  assert( gamma_move(board, 1, 6, 2) == 0 );
  assert( gamma_move(board, 1, 4, 0) == 0 );
  assert( gamma_free_fields(board, 1) == 5 );
  assert( gamma_move(board, 1, 5, 4) == 0 );
  assert( gamma_free_fields(board, 1) == 5 );
  assert( gamma_move(board, 1, 6, 3) == 0 );
  assert( gamma_move(board, 1, 1, 6) == 0 );
  assert( gamma_move(board, 1, 0, 3) == 0 );
  assert( gamma_move(board, 1, 4, 2) == 0 );
  assert( gamma_move(board, 1, 2, 3) == 0 );
  assert( gamma_move(board, 1, 4, 3) == 0 );
  assert( gamma_move(board, 1, 3, 3) == 0 );
  assert( gamma_busy_fields(board, 1) == 3 );
  assert( gamma_move(board, 1, 6, 0) == 0 );
  assert( gamma_busy_fields(board, 1) == 3 );
  assert( gamma_move(board, 1, 0, 3) == 0 );
  assert( gamma_move(board, 1, 4, 2) == 0 );
  assert( gamma_move(board, 1, 0, 5) == 0 );
  assert( gamma_move(board, 1, 4, 4) == 0 );
  assert( gamma_golden_possible(board, 1) == 0 );
  assert( gamma_move(board, 1, 5, 3) == 0 );
  assert( gamma_golden_possible(board, 1) == 0 );
  assert( gamma_move(board, 1, 2, 4) == 0 );
  assert( gamma_move(board, 1, 2, 2) == 0 );
  assert( gamma_move(board, 1, 1, 1) == 0 );
  assert( gamma_free_fields(board, 1) == 5 );
  assert( gamma_move(board, 1, 3, 3) == 0 );
  assert( gamma_move(board, 1, 2, 2) == 0 );
  assert( gamma_move(board, 1, 2, 0) == 0 );
  
  
  char* board300962994 = gamma_board(board);
  assert( board300962994 != NULL );
  assert( strcmp(board300962994, 
  ".....\n"
  ".....\n"
  ".....\n"
  ".....\n"
  ".....\n"
  ".1...\n"
  ".11..\n") == 0);
  free(board300962994);
  board300962994 = NULL;
  assert( gamma_move(board, 1, 0, 3) == 0 );
  assert( gamma_move(board, 1, 0, 2) == 0 );
  assert( gamma_move(board, 1, 2, 1) == 1 );
  assert( gamma_move(board, 1, 1, 6) == 0 );
  assert( gamma_free_fields(board, 1) == 6 );
  
  
  char* board977700375 = gamma_board(board);
  assert( board977700375 != NULL );
  assert( strcmp(board977700375, 
  ".....\n"
  ".....\n"
  ".....\n"
  ".....\n"
  ".....\n"
  ".11..\n"
  ".11..\n") == 0);
  free(board977700375);
  board977700375 = NULL;
  assert( gamma_move(board, 1, 2, 4) == 0 );
  assert( gamma_move(board, 1, 0, 0) == 1 );
  assert( gamma_move(board, 1, 2, 4) == 0 );
  assert( gamma_move(board, 1, 4, 6) == 0 );
  assert( gamma_move(board, 1, 0, 6) == 0 );
  assert( gamma_golden_possible(board, 1) == 0 );
  assert( gamma_move(board, 1, 4, 0) == 0 );
  assert( gamma_move(board, 1, 0, 3) == 0 );
  assert( gamma_move(board, 1, 2, 3) == 0 );
  assert( gamma_golden_possible(board, 1) == 0 );
  assert( gamma_move(board, 1, 3, 0) == 1 );
  assert( gamma_move(board, 1, 0, 3) == 0 );
  assert( gamma_golden_move(board, 1, 0, 3) == 0 );
  assert( gamma_free_fields(board, 1) == 5 );
  assert( gamma_move(board, 1, 0, 4) == 0 );
  assert( gamma_golden_move(board, 1, 0, 2) == 0 );
  assert( gamma_move(board, 1, 5, 1) == 0 );
  assert( gamma_move(board, 1, 4, 0) == 1 );
  assert( gamma_move(board, 1, 2, 2) == 1 );
  assert( gamma_move(board, 1, 2, 3) == 1 );
  assert( gamma_free_fields(board, 1) == 8 );
  assert( gamma_move(board, 1, 3, 3) == 1 );
  assert( gamma_move(board, 1, 0, 2) == 0 );
  assert( gamma_move(board, 1, 4, 3) == 1 );
  assert( gamma_move(board, 1, 5, 4) == 0 );
  assert( gamma_move(board, 1, 4, 1) == 1 );
  assert( gamma_move(board, 1, 3, 1) == 1 );
  assert( gamma_move(board, 1, 2, 2) == 0 );
  
  
  char* board398944113 = gamma_board(board);
  assert( board398944113 != NULL );
  assert( strcmp(board398944113, 
  ".....\n"
  ".....\n"
  ".....\n"
  "..111\n"
  "..1..\n"
  ".1111\n"
  "11111\n") == 0);
  free(board398944113);
  board398944113 = NULL;
  assert( gamma_move(board, 1, 4, 0) == 0 );
  assert( gamma_move(board, 1, 4, 2) == 1 );
  assert( gamma_move(board, 1, 5, 3) == 0 );
  assert( gamma_move(board, 1, 2, 1) == 0 );
  assert( gamma_move(board, 1, 3, 0) == 0 );
  assert( gamma_move(board, 1, 4, 0) == 0 );
  
  
  char* board785003857 = gamma_board(board);
  assert( board785003857 != NULL );
  assert( strcmp(board785003857, 
  ".....\n"
  ".....\n"
  ".....\n"
  "..111\n"
  "..1.1\n"
  ".1111\n"
  "11111\n") == 0);
  free(board785003857);
  board785003857 = NULL;
  
  
  gamma_delete(board);
  
      return 0;
  }
  