extensions [matrix] breed [blackFigures blackFigure] breed [whiteFigures whiteFigure] globals [pressed oldXcor oldYcor plays jump! scoreBlack scoreWhite winner offensiveBlack-list offensiveWhite-list defensiveBlack-list defensiveWhite-list nonStrategy-list whiteDeadPieces blackDeadPieces whiteVictories blackVictories ] patches-own [originalColor] blackFigures-own [leftJump rightJump xcord ycord oldPosition newPosition leftMove rightMove multiJumps] whiteFigures-own [leftJump rightJump xcord ycord oldPosition newPosition leftMove rightMove multiJumps] ;procedure prepares the model to run to setup clear-all paint-patches setup-blackFigures setup-whiteFigures set plays "white" setup-lists reset-ticks end ;procedure to run the model to go checkWinner if winner = 1 [stop] choosePlayer addPoints reset end ;procedure determines who is on the move to choosePlayer ifelse plays = "white" [whitePlaysAI] [blackPlaysAI] end ;procedure to set up matrices with values of the positional bonus to setup-lists set offensiveBlack-list matrix:from-row-list [ [45 0 45 0 45 0 45 0] [0 15 0 15 0 15 0 17] [12 0 10 0 10 0 10 0] [0 6 0 6 0 6 0 8] [5 0 3 0 3 0 3 0] [0 1 0 1 0 1 0 3] [2 0 0 0 0 0 0 0] [0 5 0 5 0 5 0 5] ] set offensiveWhite-list matrix:from-row-list [ [5 0 5 0 5 0 5 0] [0 0 0 0 0 0 0 2] [3 0 1 0 1 0 1 0] [0 3 0 3 0 3 0 5] [8 0 6 0 6 0 6 0] [0 10 0 10 0 10 0 12] [17 0 15 0 15 0 15 0] [0 45 0 45 0 45 0 45] ] set defensiveBlack-list matrix:from-row-list [ [13 0 13 0 13 0 13 0] [0 4 0 4 0 4 0 7] [6 0 3 0 3 0 3 0] [0 2 0 2 0 2 0 5] [4 0 1 0 1 0 1 0] [0 0 0 0 0 0 0 2] [5 0 2 0 2 0 2 0] [0 13 0 13 0 13 0 13] ] set defensiveWhite-list matrix:from-row-list [ [13 0 13 0 13 0 13 0] [0 2 0 2 0 2 0 5] [2 0 0 0 0 0 0 0] [0 1 0 1 0 1 0 4] [5 0 2 0 2 0 2 0] [0 3 0 3 0 3 0 6] [7 0 4 0 4 0 4 0] [0 13 0 13 0 13 0 13] ] set nonStrategy-list matrix:from-row-list [ [3 0 3 0 3 0 3 0] [0 0 0 0 0 0 0 2] [2 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 2] [2 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 2] [2 0 0 0 0 0 0 0] [0 3 0 3 0 3 0 3] ] end ;procedure checks if the player has to jump to checkJump[xc yc] ;BLACK's turn ifelse plays = "black"[ ;jump down left if xc - 1 > min-pxcor and yc - 1 > min-pycor [ if any? whiteFigures with [pxcor = (xc - 1) and pycor = (yc - 1)] and not any? turtles with [pxcor = (xc - 2) and pycor = (yc - 2)][ set leftJump 1 set jump! 1 ] ] ;jump down right if xc + 1 < max-pxcor and yc - 1 > min-pycor [ if any? whiteFigures with [pxcor = (xc + 1) and pycor = (yc - 1)] and not any? turtles with [pxcor = (xc + 2) and pycor = (yc - 2)][ set rightJump 1 set jump! 1 ] ] ] ;WHITE's turn [ ;jump top left if xc - 1 > min-pxcor and yc + 1 < max-pycor [ if any? blackFigures with [pxcor = (xc - 1) and pycor = (yc + 1)] and not any? turtles with [pxcor = (xc - 2) and pycor = (yc + 2)][ set leftJump 1 set jump! 1 ] ] ;jump top right if xc + 1 < max-pxcor and yc + 1 < max-pycor [ if any? blackFigures with [pxcor = (xc + 1) and pycor = (yc + 1)] and not any? turtles with [pxcor = (xc + 2) and pycor = (yc + 2)][ set rightJump 1 set jump! 1 ] ] ] end ;procedure restores everything to its original state and changes the player's turn to reset ifelse plays = "white" [ if show-jumps? [ ask patches with [pcolor = blue + 2 or pcolor = red][ set pcolor originalColor display ] ] set plays "black" set jump! 0 ] [ if show-jumps? [ ask patches with [pcolor = blue + 2 or pcolor = red][ set pcolor originalColor display ] ] set plays "white" set jump! 0 ] end ;procedure adds points after reaching the last row of the chessboard to addPoints ifelse plays = "black" [ if any? blackFigures with [pycor = 0] [ ask blackFigures with [pycor = 0] [ set scoreBlack scoreBlack + 3 die ] display ] ] [if any? whiteFigures with [pycor = 7] [ ask whiteFigures with [pycor = 7] [ set scoreWhite scoreWhite + 3 die ] display ] ] end ;procedure draws the chessboard to paint-patches ask patches [set pcolor black + 1] ask patches with[pxcor mod 2 = 1 and pycor mod 2 = 0] [set pcolor white - 1] ask patches with[pxcor mod 2 = 0 and pycor mod 2 = 1] [set pcolor white - 1] ask patches [set originalColor pcolor] end ;procedure places black pieces to setup-blackFigures set-default-shape blackFigures "pawn" ask patches with[pcolor = (black + 1) and pycor > 4] [ sprout-blackFigures 1 [ set color black] ] end ;procedure places white pieces to setup-whiteFigures set-default-shape whiteFigures "pawn" ask patches with[pcolor = (black + 1) and pycor < 3] [ sprout-whiteFigures 1 [ set color white] ] end ;procedure checks if if both players have some pieces, otherwise it will announce the winner to checkWinner if not any? blackFigures or not any? whiteFigures [ display if scoreBlack = scoreWhite [ if user-messages? [ user-message ("It's a draw!!!") ] set winner 1 ] if scoreBlack > scoreWhite [ set blackVictories blackVictories + 1 if user-messages? [ user-message ("BLACK wins the game!!!") ] set winner 1 ] if scoreBlack < scoreWhite [ set whiteVictories whiteVictories + 1 if user-messages? [ user-message ("WHITE wins the game!!!") ] set winner 1 ] ] end ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AI implementation - Black;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;procedure sets up all the important variables and calls procedures AIjumps or AImoves depending on the variable jump! to blackPlaysAI set jump! 0 ask blackFigures[ set multiJumps 0 set xcord pxcor set ycord pycor set oldPosition 100 set newPosition 100 set leftMove 96 set rightMove 96 set leftJump 0 set rightJump 0 checkJump xcord ycord] ;if player has to jump ifelse jump! = 1 [ AIjumps ] ;if player can't jump, only make an ordinary move [ AImoves ] end ;procedure looks for the best move and makes the best one (after evaluation of moves) to AImoves ask blackFigures [ set oldPosition oldPosition + evaluateDanger xcord ycord + evaluateNeighbors xcord ycord + evaluatePosition xcord ycord + evaluateCover xcord ycord + evaluateBadMove xcord ycord ifelse xcord > min-pxcor and not any? turtles with [pxcor = ([xcord] of myself - 1) and pycor = ([ycord] of myself - 1)] [ move-to patch (xcord - 1) (ycord - 1) checkJump (xcord - 1) (ycord - 1) if jump! = 1 [ ifelse strategyBlack = "offensive" [ set leftMove leftMove + 20 ] [ set leftMove leftMove + 10 ] ] set leftMove leftMove + evaluateDanger (xcord - 1) (ycord - 1) + evaluateNeighbors (xcord - 1) (ycord - 1) + evaluatePosition (xcord - 1) (ycord - 1) + evaluateCover (xcord - 1) (ycord - 1) + evaluateBadMove (xcord - 1) (ycord - 1) set jump! 0 move-to patch xcord ycord ] [set leftMove 0] ifelse xcord < max-pxcor and not any? turtles with [pxcor = ([xcord] of myself + 1) and pycor = ([ycord] of myself - 1)] [ move-to patch (xcord + 1) (ycord - 1) checkJump (xcord + 1) (ycord - 1) if jump! = 1 [ ifelse strategyBlack = "offensive" [ set rightMove rightMove + 20 ] [ set rightMove rightMove + 10 ] ] set rightMove rightMove + evaluateDanger (xcord + 1) (ycord - 1) + evaluateNeighbors (xcord + 1) (ycord - 1) + evaluatePosition (xcord + 1) (ycord - 1) + evaluateCover (xcord + 1) (ycord - 1) + evaluateBadMove (xcord + 1) (ycord - 1) set jump! 0 move-to patch xcord ycord ] [set rightMove 0] ifelse (leftMove - oldPosition) >= (rightMove - oldPosition) [set newPosition leftMove - oldPosition] [set newPosition rightMove - oldPosition] ] checkMove if winner = 1 [stop] ;the turtle with the biggest value of variable newPosition is the piece to make the best move let whoMax [who] of max-one-of blackFigures [newPosition] ask turtle whoMax [ ifelse leftMove > rightMove [ move-to patch ([xcord] of turtle whoMax - 1) ([ycord] of turtle whoMax - 1) ] [ move-to patch ([xcord] of turtle whoMax + 1) ([ycord] of turtle whoMax - 1) ] ] tick display end ;procedure performs jumps or multijumps dependind on variable multijumps to AIjumps ask blackFigures with [leftJump = 1 or rightJump = 1] [ set oldPosition oldPosition + evaluateDanger xcord ycord + evaluateNeighbors xcord ycord + evaluatePosition xcord ycord + evaluateCover xcord ycord + evaluateBadMove xcord ycord multiJump xcord ycord ] set jump! 0 if [multiJumps] of max-one-of blackFigures [multiJumps] = 0 [ jumpOnce ] if [multiJumps] of max-one-of blackFigures [multiJumps] = 1 [ jumpTwice ] if [multiJumps] of max-one-of blackFigures [multiJumps] = 2 [ jump3times ] tick end ;procedure evaluates situation when the piece is in danger, i.e. opponent would remove (using the jump) that piece in the next turn to-report evaluateDanger [xc yc] let danger false if (xc != min-pxcor and xc != max-pxcor and yc != min-pycor and yc != max-pycor) [ if any? whiteFigures with [pxcor = xc - 1 and pycor = yc - 1] and not any? turtles with [pxcor = xc + 1 and pycor = yc + 1] [ set danger true] if any? whiteFigures with [color = white and pxcor = xc + 1 and pycor = yc - 1] and not any? turtles with [pxcor = xc - 1 and pycor = yc + 1] [ set danger true] ] ifelse danger = true [ ifelse strategyBlack = "defensive" [ report -35 ] [ report -25 ] ] [ report 0 ] end ;procedure evalutes piece's position depending on pieces with the same color (pieces of the same player) around it ;(in radius of 1 patch), these pieces provide some kind of cover to-report evaluateNeighbors [xc yc] let numberOfNeighbors 0 ask turtles with [pxcor = xc and pycor = yc] [ set numberOfNeighbors sum [count turtles-here with [color = black]] of neighbors ] report numberOfNeighbors end ;procedure evaluates position depending on evaluation bonuses in evaluation matrices to-report evaluatePosition [xc yc] let pointsForPosition 0 if strategyBlack = "offensive" [ set pointsForPosition matrix:get offensiveBlack-list yc xc ] if strategyBlack = "defensive" [ set pointsForPosition matrix:get defensiveBlack-list yc xc ] if strategyBlack = "nonStrategy" [ set pointsForPosition matrix:get nonStrategy-list yc xc ] report pointsForPosition end ;procedure evaluates situation where the piece covers another piece of the same color before the opponent's jump to-report evaluateCover [xc yc] let cover false if any? blackFigures with [pxcor = xc - 1 and pycor = yc - 1] and any? whiteFigures with [pxcor = xc - 2 and pycor = yc - 2] [ set cover true ] if any? blackFigures with [pxcor = xc + 1 and pycor = yc - 1] and any? whiteFigures with [pxcor = xc + 2 and pycor = yc - 2] [ set cover true ] ifelse cover = true [ ifelse strategyBlack = "defensive" [ report 34 ] [ report 24 ] ] [ report 0 ] end ;procedure evaluate bad moves after which the piece would offer the multijump to his opponent to-report evaluateBadMove [xc yc] let rightJ rightJump let leftJ leftJump let jump2 jump! set plays "white" set jump! 0 if not any? turtles with [pxcor = (xc - 1) and pycor = (yc + 1)] and xc > min-pxcor and yc < max-pycor [ checkJump (xc - 1) (yc + 1) ] if not any? turtles with [pxcor = (xc + 1) and pycor = (yc + 1)] and xc < max-pxcor and yc < max-pycor [ checkJump (xc + 1) (yc + 1) ] set rightJump rightJ set leftJump leftJ let jump3 jump! set plays "black" set jump! jump2 ifelse jump3 = 1 [ ifelse strategyBlack = "defensive" [ report -35 ] [ report -25 ] ] [ report 0 ] end ;procedure finds out, how many jumps can make this piece to multiJump [xc yc] set jump! 0 set multiJumps 0 let rightJ rightJump let leftJ leftJump if leftJump = 1 [ set leftJump 0 set rightJump 0 checkJump (xc - 2) (yc - 2) let leftJ2 leftJump let rightJ2 rightJump if jump! = 1 [ set multiJumps 1 if leftJ2 = 1 [ set jump! 0 checkJump (xc - 4) (yc - 4) if jump! = 1 [ set multiJumps 2 ] ] if rightJ2 = 1 [ set jump! 0 checkJump (xc) (yc - 4) if jump! = 1 [ set multiJumps 2 ] ] ] ] if rightJ = 1 [ set leftJump 0 set rightJump 0 checkJump (xc + 2) (yc - 2) let leftJ2 leftJump let rightJ2 rightJump if jump! = 1 [ set multiJumps 1 if leftJ2 = 1 [ set jump! 0 checkJump (xc) (yc - 4) if jump! = 1 [ set multiJumps 2 ] ] if rightJ2 = 1 [ set jump! 0 checkJump (xc + 4) (yc - 4) if jump! = 1 [ set multiJumps 2 ] ] ] ] set leftJump leftJ set rightJump rightJ end ;procedure performs jump left to jumpLeft [xc yc] if show-jumps? [ set pcolor blue + 2 ] move-to patch (xc - 2) (yc - 2) if show-jumps? [ set pcolor blue + 2 ] set xcord (xc - 2) set ycord (yc - 2) ask turtles with [pxcor = xc - 1 and pycor = yc - 1] [ if show-jumps? [ set pcolor red ] display wait delay set whiteDeadPieces whiteDeadPieces + 1 die display ] set scoreBlack scoreBlack + 1 end ;procedure performs jump right to jumpRight [xc yc] if show-jumps? [ set pcolor blue + 2 ] move-to patch (xc + 2) (yc - 2) if show-jumps? [ set pcolor blue + 2 ] set xcord (xc + 2) set ycord (yc - 2) ask turtles with [pxcor = xc + 1 and pycor = yc - 1] [ if show-jumps? [ set pcolor red ] display wait delay set whiteDeadPieces whiteDeadPieces + 1 die display ] set scoreBlack scoreBlack + 1 end ;procedure checks if the player has any option to move, otherwise this player lose the game to checkMove if not any? blackFigures with [(oldPosition * (-1)) != newPosition] [ set whiteVictories whiteVictories + 1 if user-messages? [ user-message ("BLACK can't move, WHITE wins the game!!!") ] set winner 1 ] end ;procedure performs a single jump (after finding the best move) to jumpOnce ask blackFigures with [leftJump = 1 or rightJump = 1] [ let leftJ leftJump let rightJ rightJump ifelse leftJump = 1 [ checkJump (xcord - 2) (ycord - 2) if jump! = 1 [ ifelse strategyBlack = "offensive" [ set leftMove leftMove + 20 ] [ set leftMove leftMove + 10 ] ] set leftMove leftMove + evaluateDanger (xcord - 2) (ycord - 2) + evaluateNeighbors (xcord - 2) (ycord - 2) + evaluatePosition (xcord - 2) (ycord - 2) + evaluateCover (xcord - 2) (ycord - 2) + evaluateBadMove (xcord - 2) (ycord - 2) set jump! 0 ] [set leftMove 0] ifelse rightJ = 1 [ checkJump (xcord + 2) (ycord - 2) if jump! = 1 [ ifelse strategyBlack = "offensive" [ set rightMove rightMove + 20 ] [ set rightMove rightMove + 10 ] ] set rightMove rightMove + evaluateDanger (xcord + 2) (ycord - 2) + evaluateNeighbors (xcord + 2) (ycord - 2) + evaluatePosition (xcord + 2) (ycord - 2) + evaluateCover (xcord + 2) (ycord - 2) + evaluateBadMove (xcord + 2) (ycord - 2) set jump! 0 ] [set rightMove 0] ifelse (leftMove - oldPosition) >= (rightMove - oldPosition) [set newPosition leftMove - oldPosition] [set newPosition rightMove - oldPosition] set leftJump leftJ set rightJump rightJ ] let whoMax [who] of max-one-of blackFigures with [leftJump = 1 or rightJump = 1] [newPosition] ask turtle whoMax [ ifelse leftMove > rightMove [ jumpLeft xcord ycord ] [ jumpRight xcord ycord ] ] display end ;procedure performs double jump (after finding the best move) to jumpTwice let maxWho 0 let path 0 let maxEvaluation -200 ask blackFigures with [(leftJump = 1 or rightJump = 1) and multiJumps = 1] [ let rightJ rightJump let leftJ leftJump if leftJ = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord - 2) (ycord - 2) if leftJump = 1 [ let evaluation evaluateDanger (xcord - 4) (ycord - 4) + evaluateNeighbors (xcord - 4) (ycord - 4) + evaluatePosition (xcord - 4) (ycord - 4) + evaluateCover (xcord - 4) (ycord - 4) + evaluateBadMove (xcord - 4) (ycord - 4) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "LL" set maxEvaluation evaluation ] ] if rightJump = 1 [ let evaluation evaluateDanger (xcord) (ycord - 4) + evaluateNeighbors (xcord) (ycord - 4) + evaluatePosition (xcord) (ycord - 4) + evaluateCover (xcord) (ycord - 4) + evaluateBadMove (xcord) (ycord - 4) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "LR" set maxEvaluation evaluation ] ] ] if rightJ = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord + 2) (ycord - 2) if leftJump = 1 [ let evaluation evaluateDanger (xcord) (ycord - 4) + evaluateNeighbors (xcord) (ycord - 4) + evaluatePosition (xcord) (ycord - 4) + evaluateCover (xcord) (ycord - 4) + evaluateBadMove (xcord) (ycord - 4) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "RL" set maxEvaluation evaluation ] ] if rightJump = 1 [ let evaluation evaluateDanger (xcord + 4) (ycord - 4) + evaluateNeighbors (xcord + 4) (ycord - 4) + evaluatePosition (xcord + 4) (ycord - 4) + evaluateCover (xcord + 4) (ycord - 4) + evaluateBadMove (xcord + 4) (ycord - 4) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "RR" set maxEvaluation evaluation ] ] ] set leftJump leftJ set rightJump rightJ ] ask turtle maxWho [ if path = "LL" [ jumpLeft xcord ycord jumpLeft xcord ycord ] if path = "LR" [ jumpLeft xcord ycord jumpRight xcord ycord ] if path = "RL" [ jumpRight xcord ycord jumpLeft xcord ycord ] if path = "RR" [ jumpRight xcord ycord jumpRight xcord ycord ] display ] end ;procedure performs triple jump (after finding the best move) to jump3times let maxWho 0 let path 0 let maxEvaluation -200 ask blackFigures with [(leftJump = 1 or rightJump = 1) and multiJumps = 2] [ let leftJ leftJump let rightJ rightJump if leftJ = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord - 2) (ycord - 2) let rightJ2 rightJump let leftJ2 leftJump if leftJ2 = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord - 4) (ycord - 4) if leftJump = 1 [ let evaluation evaluateDanger (xcord - 6) (ycord - 6) + evaluateNeighbors (xcord - 6) (ycord - 6) + evaluatePosition (xcord - 6) (ycord - 6) + evaluateCover (xcord - 6) (ycord - 6) + evaluateBadMove (xcord - 6) (ycord - 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "LLL" set maxEvaluation evaluation ] ] if rightJump = 1 [ let evaluation evaluateDanger (xcord - 2) (ycord - 6) + evaluateNeighbors (xcord - 2) (ycord - 6) + evaluatePosition (xcord - 2) (ycord - 6) + evaluateCover (xcord - 2) (ycord - 6) + evaluateBadMove (xcord - 2) (ycord - 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "LLR" set maxEvaluation evaluation ] ] ] if rightJ2 = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord) (ycord - 4) if leftJump = 1 [ let evaluation evaluateDanger (xcord - 2) (ycord - 6) + evaluateNeighbors (xcord - 2) (ycord - 6) + evaluatePosition (xcord - 2) (ycord - 6) + evaluateCover (xcord - 2) (ycord - 6) + evaluateBadMove (xcord - 2) (ycord - 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "LRL" set maxEvaluation evaluation ] ] if rightJump = 1 [ let evaluation evaluateDanger (xcord + 2) (ycord - 6) + evaluateNeighbors (xcord + 2) (ycord - 6) + evaluatePosition (xcord + 2) (ycord - 6) + evaluateCover (xcord + 2) (ycord - 6) + evaluateBadMove (xcord + 2) (ycord - 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "LRR" set maxEvaluation evaluation ] ] ] ] if rightJ = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord + 2) (ycord - 2) let rightJ3 rightJump if leftJump = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord) (ycord - 4) if leftJump = 1 [ let evaluation evaluateDanger (xcord - 2) (ycord - 6) + evaluateNeighbors (xcord - 2) (ycord - 6) + evaluatePosition (xcord - 2) (ycord - 6) + evaluateCover (xcord - 2) (ycord - 6) + evaluateBadMove (xcord - 2) (ycord - 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "RLL" set maxEvaluation evaluation ] ] if rightJump = 1 [ let evaluation evaluateDanger (xcord + 2) (ycord - 6) + evaluateNeighbors (xcord + 2) (ycord - 6) + evaluatePosition (xcord + 2) (ycord - 6) + evaluateCover (xcord + 2) (ycord - 6) + evaluateBadMove (xcord + 2) (ycord - 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "RLR" set maxEvaluation evaluation ] ] ] if rightJ3 = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord + 4) (ycord - 4) if leftJump = 1 [ let evaluation evaluateDanger (xcord + 2) (ycord - 6) + evaluateNeighbors (xcord + 2) (ycord - 6) + evaluatePosition (xcord + 2) (ycord - 6) + evaluateCover (xcord + 2) (ycord - 6) + evaluateBadMove (xcord + 2) (ycord - 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "RRL" set maxEvaluation evaluation ] ] if rightJump = 1 [ let evaluation evaluateDanger (xcord + 6) (ycord - 6) + evaluateNeighbors (xcord + 6) (ycord - 6) + evaluatePosition (xcord + 6) (ycord - 6) + evaluateCover (xcord + 6) (ycord - 6) + evaluateBadMove (xcord + 6) (ycord - 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "RRR" set maxEvaluation evaluation ] ] ] ] set leftJump leftJ set rightJump rightJ ] ask turtle maxWho [ if path = "LLL" [ jumpLeft xcord ycord jumpLeft xcord ycord jumpLeft xcord ycord ] if path = "LLR" [ jumpLeft xcord ycord jumpLeft xcord ycord jumpRight xcord ycord ] if path = "LRL" [ jumpLeft xcord ycord jumpRight xcord ycord jumpLeft xcord ycord ] if path = "LRR" [ jumpLeft xcord ycord jumpRight xcord ycord jumpRight xcord ycord ] if path = "RLL" [ jumpRight xcord ycord jumpLeft xcord ycord jumpLeft xcord ycord ] if path = "RLR" [ jumpRight xcord ycord jumpLeft xcord ycord jumpRight xcord ycord ] if path = "RRL" [ jumpRight xcord ycord jumpRight xcord ycord jumpLeft xcord ycord ] if path = "RRR" [ jumpRight xcord ycord jumpRight xcord ycord jumpRight xcord ycord ] display ] end ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AI implementation - White;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;procedure sets up all the important variables and calls procedures AIjumpsWhite or AImovesWhite depending on the variable jump! to whitePlaysAI set jump! 0 ask whiteFigures [ set multijumps 0 set xcord pxcor set ycord pycor set oldPosition 100 set newPosition 100 set leftMove 96 set rightMove 96 set leftJump 0 set rightJump 0 checkJump xcord ycord] ;if player has to jump ifelse jump! = 1 [ AIjumpsWhite ] ;if player can't jump, only make an ordinary move [ AImovesWhite ] end ;procedure looks for the best move and makes the best one (after evaluation of moves) to AImovesWhite ask whiteFigures [ set oldPosition oldPosition + evaluateDangerWhite xcord ycord + evaluateNeighborsWhite xcord ycord + evaluatePositionWhite xcord ycord + evaluateCoverWhite xcord ycord + evaluateBadMoveWhite xcord ycord ifelse xcord > min-pxcor and not any? turtles with [pxcor = ([xcord] of myself - 1) and pycor = ([ycord] of myself + 1)] [ move-to patch (xcord - 1) (ycord + 1) checkJump (xcord - 1) (ycord + 1) if jump! = 1 [ ifelse strategyWhite = "offensive" [ set leftMove leftMove + 20 ] [ set leftMove leftMove + 10 ] ] set leftMove leftMove + evaluateDangerWhite (xcord - 1) (ycord + 1) + evaluateNeighborsWhite (xcord - 1) (ycord + 1) + evaluatePositionWhite (xcord - 1) (ycord + 1) + evaluateCoverWhite (xcord - 1) (ycord + 1) + evaluateBadMoveWhite (xcord - 1) (ycord + 1) set jump! 0 move-to patch xcord ycord ] [set leftMove 0] ifelse xcord < max-pxcor and not any? turtles with [pxcor = ([xcord] of myself + 1) and pycor = ([ycord] of myself + 1)] [ move-to patch (xcord + 1) (ycord + 1) checkJump (xcord + 1) (ycord + 1) if jump! = 1 [ ifelse strategyWhite = "offensive" [ set rightMove rightMove + 20 ] [ set rightMove rightMove + 10 ] ] set rightMove rightMove + evaluateDangerWhite (xcord + 1) (ycord + 1) + evaluateNeighborsWhite (xcord + 1) (ycord + 1) + evaluatePositionWhite (xcord + 1) (ycord + 1) + evaluateCoverWhite (xcord + 1) (ycord + 1) + evaluateBadMoveWhite (xcord + 1) (ycord + 1) set jump! 0 move-to patch xcord ycord ] [set rightMove 0] ifelse (leftMove - oldPosition) >= (rightMove - oldPosition) [set newPosition leftMove - oldPosition] [set newPosition rightMove - oldPosition] ] checkMoveWhite if winner = 1 [stop] ;the turtle with the biggest value of variable newPosition is the piece to make the best move let whoMax [who] of max-one-of whiteFigures [newPosition] ask turtle whoMax [ ifelse leftMove > rightMove [ move-to patch ([xcord] of turtle whoMax - 1) ([ycord] of turtle whoMax + 1) ] [ move-to patch ([xcord] of turtle whoMax + 1) ([ycord] of turtle whoMax + 1) ] ] tick display end ;procedures performs jumps or multijumps dependind on variable multijumps to AIjumpsWhite ask whiteFigures with [leftJump = 1 or rightJump = 1] [ set oldPosition oldPosition + evaluateDangerWhite xcord ycord + evaluateNeighborsWhite xcord ycord + evaluatePositionWhite xcord ycord + evaluateCoverWhite xcord ycord + evaluateBadMoveWhite xcord ycord multiJumpWhite xcord ycord ] set jump! 0 if [multiJumps] of max-one-of whiteFigures [multiJumps] = 0 [ jumpOnceWhtie ] if [multiJumps] of max-one-of whiteFigures [multiJumps] = 1 [ jumpTwiceWhite ] if [multiJumps] of max-one-of whiteFigures [multiJumps] = 2 [ jump3timesWhite ] tick end ;procedure evaluates situation when the piece is in danger, i.e. opponent would remove (using the jump) that piece in the next turn to-report evaluateDangerWhite [xc yc] let danger false if (xc != min-pxcor and xc != max-pxcor and yc != min-pycor and yc != max-pycor) [ if any? blackFigures with [pxcor = xc - 1 and pycor = yc + 1] and not any? turtles with [pxcor = xc + 1 and pycor = yc - 1] [ set danger true] if any? blackFigures with [pxcor = xc + 1 and pycor = yc + 1] and not any? turtles with [pxcor = xc - 1 and pycor = yc - 1] [ set danger true] ] ifelse danger = true [ ifelse strategyWhite = "defensive" [ report -35 ] [ report -25 ] ] [ report 0 ] end ;procedure evalutes piece's position depending on pieces with the same color (pieces of the same player) around it ;(in radius of 1 patch), these pieces provide some kind of cover to-report evaluateNeighborsWhite [xc yc] let numberOfNeighbors 0 ask turtles with [pxcor = xc and pycor = yc] [ set numberOfNeighbors sum [count turtles-here with [color = white]] of neighbors ] report numberOfNeighbors end ;procedure evaluates position depending on evaluation bonuses in evaluation matrices to-report evaluatePositionWhite [xc yc] let pointsForPosition 0 if strategyWhite = "offensive" [ set pointsForPosition matrix:get offensiveWhite-list yc xc ] if strategyWhite = "defensive" [ set pointsForPosition matrix:get defensiveWhite-list yc xc ] if strategyWhite = "nonStrategy" [ set pointsForPosition matrix:get nonStrategy-list yc xc ] report pointsForPosition end ;procedure evaluates situation where the piece covers another piece of the same color before the opponent's jump to-report evaluateCoverWhite [xc yc] let cover false if any? whiteFigures with [pxcor = xc - 1 and pycor = yc + 1] and any? blackFigures with [pxcor = xc - 2 and pycor = yc + 2] [ set cover true ] if any? whiteFigures with [pxcor = xc + 1 and pycor = yc + 1] and any? blackFigures with [pxcor = xc + 2 and pycor = yc + 2] [ set cover true ] ifelse cover = true [ ifelse strategyWhite = "defensive" [ report 34 ] [ report 24 ] ] [ report 0 ] end ;procedure evaluate bad moves after which the piece would offer the multijump to his opponent to-report evaluateBadMoveWhite [xc yc] let leftJ leftJump let rightJ rightJump let jump2 jump! set plays "black" set jump! 0 if not any? turtles with [pxcor = (xc - 1) and pycor = (yc - 1)] and xc > min-pxcor and yc > min-pycor[ checkJump (xc - 1) (yc - 1) ] if not any? turtles with [pxcor = (xc + 1) and pycor = (yc - 1)] and xc < max-pxcor and yc > min-pycor [ checkJump (xc + 1) (yc - 1) ] set leftJump leftJ set rightJump rightJ let jump3 jump! set plays "white" set jump! jump2 ifelse jump3 = 1 [ ifelse strategyWhite = "defensive" [ report -35 ] [ report -25 ] ] [ report 0 ] end ;procedure finds out, how many jumps can make this piece to multiJumpWhite [xc yc] set jump! 0 set multiJumps 0 let rightJ rightJump let leftJ leftJump if leftJump = 1 [ set leftJump 0 set rightJump 0 checkJump (xc - 2) (yc + 2) let rightJ2 rightJump let leftJ2 leftJump if jump! = 1 [ set multiJumps 1 if leftJ2 = 1 [ set jump! 0 checkJump (xc - 4) (yc + 4) if jump! = 1 [ set multiJumps 2 ] ] if rightJ2 = 1 [ set jump! 0 checkJump (xc) (yc + 4) if jump! = 1 [ set multiJumps 2 ] ] ] ] if rightJ = 1 [ set leftJump 0 set rightJump 0 checkJump (xc + 2) (yc + 2) let leftJ2 leftJump let rightJ2 rightJump if jump! = 1 [ set multiJumps 1 if leftJ2 = 1 [ set jump! 0 checkJump (xc) (yc + 4) if jump! = 1 [ set multiJumps 2 ] ] if rightJ2 = 1 [ set jump! 0 checkJump (xc + 4) (yc + 4) if jump! = 1 [ set multiJumps 2 ] ] ] ] set leftJump leftJ set rightJump rightJ end ;procedure performs jump left to jumpLeftWhite [xc yc] if show-jumps? [ set pcolor blue + 2 ] move-to patch (xc - 2) (yc + 2) if show-jumps? [ set pcolor blue + 2 ] set xcord (xc - 2) set ycord (yc + 2) ask turtles with [pxcor = xc - 1 and pycor = yc + 1] [ if show-jumps? [ set pcolor red ] display wait delay set blackDeadPieces blackDeadPieces + 1 die display ] set scoreWhite scoreWhite + 1 end ;procedure performs jump right to jumpRightWhite [xc yc] if show-jumps? [ set pcolor blue + 2 ] move-to patch (xc + 2) (yc + 2) if show-jumps? [ set pcolor blue + 2 ] set xcord (xc + 2) set ycord (yc + 2) ask turtles with [pxcor = xc + 1 and pycor = yc + 1] [ if show-jumps? [ set pcolor red ] display wait delay set blackDeadPieces blackDeadPieces + 1 die display ] set scoreWhite scoreWhite + 1 end ;procedure checks if the player has any option to move, otherwise this player lose the game to checkMoveWhite if not any? whiteFigures with [(oldPosition * (-1)) != newPosition] [ set blackVictories blackVictories + 1 if user-messages? [ user-message ("WHITE can't move, BLACK wins the game!!!") ] set winner 1 ] end ;procedure performs a single jump (after finding the best move) to jumpOnceWhtie ask whiteFigures with [leftJump = 1 or rightJump = 1] [ let leftJ leftJump let rightJ rightJump ifelse leftJump = 1 [ checkJump (xcord - 2) (ycord + 2) if jump! = 1 [ ifelse strategyWhite = "offensive" [ set leftMove leftMove + 20 ] [ set leftMove leftMove + 10 ] ] set leftMove leftMove + evaluateDangerWhite (xcord - 2) (ycord + 2) + evaluateNeighborsWhite (xcord - 2) (ycord + 2) + evaluatePositionWhite (xcord - 2) (ycord + 2) + evaluateCoverWhite (xcord - 2) (ycord + 2) + evaluateBadMoveWhite (xcord - 2) (ycord + 2) set jump! 0 ] [set leftMove 0] ifelse rightJ = 1 [ checkJump (xcord + 2) (ycord + 2) if jump! = 1 [ ifelse strategyWhite = "offensive" [ set rightMove rightMove + 20 ] [ set rightMove rightMove + 10 ] ] set rightMove rightMove + evaluateDangerWhite (xcord + 2) (ycord + 2) + evaluateNeighborsWhite (xcord + 2) (ycord + 2) + evaluatePositionWhite (xcord + 2) (ycord + 2) + evaluateCoverWhite (xcord + 2) (ycord + 2) + evaluateBadMoveWhite (xcord + 2) (ycord + 2) set jump! 0 ] [set rightMove 0] ifelse (leftMove - oldPosition) >= (rightMove - oldPosition) [set newPosition leftMove - oldPosition] [set newPosition rightMove - oldPosition] set leftJump leftJ set rightJump rightJ ] let whoMax [who] of max-one-of whiteFigures with [(leftJump = 1 or rightJump = 1)] [newPosition] ask turtle whoMax [ ifelse leftMove > rightMove [ jumpLeftWhite xcord ycord ] [ jumpRightWhite xcord ycord ] ] display end ;procedure performs a double jump (after finding the best move) to jumpTwiceWhite let maxWho 0 let path 0 let maxEvaluation -200 ask whiteFigures with [(leftJump = 1 or rightJump = 1) and multiJumps = 1] [ let rightJ rightJump let leftJ leftJump if leftJ = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord - 2) (ycord + 2) if leftJump = 1 [ let evaluation evaluateDangerWhite (xcord - 4) (ycord + 4) + evaluateNeighborsWhite (xcord - 4) (ycord + 4) + evaluatePositionWhite (xcord - 4) (ycord + 4) + evaluateCoverWhite (xcord - 4) (ycord + 4) + evaluateBadMoveWhite (xcord - 4) (ycord + 4) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "LL" set maxEvaluation evaluation ] ] if rightJump = 1 [ let evaluation evaluateDangerWhite (xcord) (ycord + 4) + evaluateNeighborsWhite (xcord) (ycord + 4) + evaluatePositionWhite (xcord) (ycord + 4) + evaluateCoverWhite (xcord) (ycord + 4) + evaluateBadMoveWhite (xcord) (ycord + 4) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "LR" set maxEvaluation evaluation ] ] ] if rightJ = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord + 2) (ycord + 2) if leftJump = 1 [ let evaluation evaluateDangerWhite (xcord) (ycord + 4) + evaluateNeighborsWhite (xcord) (ycord + 4) + evaluatePositionWhite (xcord) (ycord + 4) + evaluateCoverWhite (xcord) (ycord + 4) + evaluateBadMoveWhite (xcord) (ycord + 4) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "RL" set maxEvaluation evaluation ] ] if rightJump = 1 [ let evaluation evaluateDangerWhite (xcord + 4) (ycord + 4) + evaluateNeighborsWhite (xcord + 4) (ycord + 4) + evaluatePositionWhite (xcord + 4) (ycord + 4) + evaluateCoverWhite (xcord + 4) (ycord + 4) + evaluateBadMoveWhite (xcord + 4) (ycord + 4) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "RR" set maxEvaluation evaluation ] ] ] set leftJump leftJ set rightJump rightJ ] ask turtle maxWho [ if path = "LL" [ jumpLeftWhite xcord ycord jumpLeftWhite xcord ycord ] if path = "LR" [ jumpLeftWhite xcord ycord jumpRightWhite xcord ycord ] if path = "RL" [ jumpRightWhite xcord ycord jumpLeftWhite xcord ycord ] if path = "RR" [ jumpRightWhite xcord ycord jumpRightWhite xcord ycord ] display ] end ;procedure performs a triple jump (after finding the best move) to jump3timesWhite let maxWho 0 let path 0 let maxEvaluation -200 ask whiteFigures with [(leftJump = 1 or rightJump = 1) and multiJumps = 2] [ let leftJ leftJump let rightJ rightJump if leftJump = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord - 2) (ycord + 2) let rightJ2 rightJump let leftJ2 leftJump if leftJ2 = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord - 4) (ycord + 4) if leftJump = 1 [ let evaluation evaluateDangerWhite (xcord - 6) (ycord + 6) + evaluateNeighborsWhite (xcord - 6) (ycord + 6) + evaluatePositionWhite (xcord - 6) (ycord + 6) + evaluateCoverWhite (xcord - 6) (ycord + 6) + evaluateBadMoveWhite (xcord - 6) (ycord + 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "LLL" set maxEvaluation evaluation ] ] if rightJump = 1 [ let evaluation evaluateDangerWhite (xcord - 2) (ycord + 6) + evaluateNeighborsWhite (xcord - 2) (ycord + 6) + evaluatePositionWhite (xcord - 2) (ycord + 6) + evaluateCoverWhite (xcord - 2) (ycord + 6) + evaluateBadMoveWhite (xcord - 2) (ycord + 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "LLR" set maxEvaluation evaluation ] ] ] if rightJ2 = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord) (ycord + 4) if leftJump = 1 [ let evaluation evaluateDangerWhite (xcord - 2) (ycord + 6) + evaluateNeighborsWhite (xcord - 2) (ycord + 6) + evaluatePositionWhite (xcord - 2) (ycord + 6) + evaluateCoverWhite (xcord - 2) (ycord + 6) + evaluateBadMoveWhite (xcord - 2) (ycord + 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "LRL" set maxEvaluation evaluation ] ] if rightJump = 1 [ let evaluation evaluateDangerWhite (xcord + 2) (ycord + 6) + evaluateNeighborsWhite (xcord + 2) (ycord + 6) + evaluatePositionWhite (xcord + 2) (ycord + 6) + evaluateCoverWhite (xcord + 2) (ycord + 6) + evaluateBadMoveWhite (xcord + 2) (ycord + 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "LRR" set maxEvaluation evaluation ] ] ] ] if rightJ = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord + 2) (ycord + 2) let rightJ3 rightJump if leftJump = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord) (ycord + 4) if leftJump = 1 [ let evaluation evaluateDangerWhite (xcord - 2) (ycord + 6) + evaluateNeighborsWhite (xcord - 2) (ycord + 6) + evaluatePositionWhite (xcord - 2) (ycord + 6) + evaluateCoverWhite (xcord - 2) (ycord + 6) + evaluateBadMoveWhite (xcord - 2) (ycord + 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "RLL" set maxEvaluation evaluation ] ] if rightJump = 1 [ let evaluation evaluateDangerWhite (xcord + 2) (ycord + 6) + evaluateNeighborsWhite (xcord + 2) (ycord + 6) + evaluatePositionWhite (xcord + 2) (ycord + 6) + evaluateCoverWhite (xcord + 2) (ycord + 6) + evaluateBadMoveWhite (xcord + 2) (ycord + 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "RLR" set maxEvaluation evaluation ] ] ] if rightJ3 = 1 [ set leftJump 0 set rightJump 0 checkJump (xcord + 4) (ycord + 4) if leftJump = 1 [ let evaluation evaluateDangerWhite (xcord + 2) (ycord + 6) + evaluateNeighborsWhite (xcord + 2) (ycord + 6) + evaluatePositionWhite (xcord + 2) (ycord + 6) + evaluateCoverWhite (xcord + 2) (ycord + 6) + evaluateBadMoveWhite (xcord + 2) (ycord + 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "RRL" set maxEvaluation evaluation ] ] if rightJump = 1 [ let evaluation evaluateDangerWhite (xcord + 6) (ycord + 6) + evaluateNeighborsWhite (xcord + 6) (ycord + 6) + evaluatePositionWhite (xcord + 6) (ycord + 6) + evaluateCoverWhite (xcord + 6) (ycord + 6) + evaluateBadMoveWhite (xcord + 6) (ycord + 6) if (evaluation - oldPosition) > maxEvaluation [ set maxWho who set path "RRR" set maxEvaluation evaluation ] ] ] ] set leftJump leftJ set rightJump rightJ ] ask turtle maxWho [ if path = "LLL" [ jumpLeftWhite xcord ycord jumpLeftWhite xcord ycord jumpLeftWhite xcord ycord ] if path = "LLR" [ jumpLeftWhite xcord ycord jumpLeftWhite xcord ycord jumpRightWhite xcord ycord ] if path = "LRL" [ jumpLeftWhite xcord ycord jumpRightWhite xcord ycord jumpLeftWhite xcord ycord ] if path = "LRR" [ jumpLeftWhite xcord ycord jumpRightWhite xcord ycord jumpRightWhite xcord ycord ] if path = "RLL" [ jumpRightWhite xcord ycord jumpLeftWhite xcord ycord jumpLeftWhite xcord ycord ] if path = "RLR" [ jumpRightWhite xcord ycord jumpLeftWhite xcord ycord jumpRightWhite xcord ycord ] if path = "RRL" [ jumpRightWhite xcord ycord jumpRightWhite xcord ycord jumpLeftWhite xcord ycord ] if path = "RRR" [ jumpRightWhite xcord ycord jumpRightWhite xcord ycord jumpRightWhite xcord ycord ] display ] end @#$#@#$#@ GRAPHICS-WINDOW 209 35 619 466 -1 -1 50.0 1 10 1 1 1 0 0 0 1 0 7 0 7 1 1 1 Moves 30.0 BUTTON 12 34 107 69 Setup setup NIL 1 T OBSERVER NIL S NIL NIL 1 BUTTON 115 34 198 69 Run go T 1 T OBSERVER NIL R NIL NIL 1 MONITOR 15 362 92 407 Who plays? plays 17 1 11 MONITOR 113 362 193 407 Round round ((ticks / 2) + 0.5) 17 1 11 MONITOR 15 437 94 482 White score scoreWhite 17 1 11 MONITOR 112 437 193 482 Black score scoreBlack 17 1 11 SLIDER 20 88 192 121 delay delay 0 1 0.6 0.1 1 NIL HORIZONTAL CHOOSER 37 137 175 182 strategyWhite strategyWhite "offensive" "defensive" "nonStrategy" 2 CHOOSER 38 198 176 243 strategyBlack strategyBlack "offensive" "defensive" "nonStrategy" 1 SWITCH 37 263 183 296 user-messages? user-messages? 1 1 -1000 SWITCH 37 311 164 344 show-jumps? show-jumps? 0 1 -1000 @#$#@#$#@ ## WHAT IS IT? This is checkers model where two AI's play against each other. Each player can choose from 3 different game strategies (no strategy, offensive strategy or defensive strategy). There is also preset an experiment in tool called BehaviorSpace. Note: This project was my bachelor thesis so I had some goals to satisfy and I'm planning to extend this model in the future (more in Extending the model) ## HOW IT WORKS There is implemented a basic algorithm for searching the best move. This algorithm uses the evaluation function that evaluate every single move. Checkers rules: 1) Size of chessboard is 8x8 squares. 2) Each player has 12 pieces. 3) White starts the game. 4) Moves are allowed only on the dark squares, so pieces always move diagonally. Single pieces are always limited to forward moves (toward the opponent). 5) A piece making a non-capturing move (not involving a jump) may move only one square. 6) A piece making a capturing move (a jump) leaps over one of the opponent's pieces, landing in a straight diagonal line on the other side. Only one piece may be captured in a single jump; however, multiple jumps are allowed on a single turn (max 3 jumps). 7) When a piece is captured, it is removed from the board and the player gets one point to his score 8) If a player is able to make a capture, there is no option -- the jump must be made. If more than one capture is available, the player is free to choose whichever he or she prefers. 9) When a piece reaches the furthest row from the player who controls that piece,it is removed and the player gets 3 points to his score (yeah, there is no King or Queen!!!) 10) The game is over when one player can't make a move. In most cases, this is because all of the opponent's pieces have been captured, but it could also be because all of his pieces are blocked in. The winner is the player with the highest score. ## HOW TO USE IT The Setup button with hotkey S will prepare the model to run. The Run button with hotkey R runs the model. StrategyWhite and strategyBlack is chooser to select player's game strategy. The switch user-messages? is used to switch on or off user messages ("Black wins the game" etc.) The another switch, show-jumps? is used to switch on or off colloring patches (squares) when the player jumps.It's just for a better overview. The slider delay is used to set up the waiting time during the jumping. It's also just for a better overview. ## THINGS TO TRY As I said before, there is preset an experiment in BehaviorSpace. You can run this experiment, export results into CSV file as table format or spreadsheet format. YThis is a plain-text data format that is readable by any text editor as well as by most popular spreadsheet and database programs.Use for example Excel and see what strategy is better then others. ## EXTENDING THE MODEL 1) King - Adding the king would certainly enrich the game. 2) AI - Improve the artifical intelligence. Try to implement minimax algorithm with alfa-beta pruning extension. You can also add some searching heuristic. (my plan to future) 3) 1vsAI - Create a new version where a human player could play against the computer. But for this you need to complete point 2. (my plan to future) 4) 1vs1 - Use HubNet and try to create a version where two human players could play against each other. ## NETLOGO FEATURES Model uses breeds, globals, locals, turtles and patches variables.There is also included an axtension Matrix - for more information see http://ccl.northwestern.edu/netlogo/5.0/docs/matrix.html. ## CREDITS AND REFERENCES To cite this model: author: Jiri Lukas year: 2014 place: the faculty of applied informatics, university of Hradec Kralove, Czech Republic name of model: Checkers model to simulate different game strategies @#$#@#$#@ default true 0 Polygon -7500403 true true 150 5 40 250 150 205 260 250 acorn false 0 Polygon -7500403 true true 146 297 120 285 105 270 75 225 60 180 60 150 75 105 225 105 240 150 240 180 225 225 195 270 180 285 155 297 Polygon -6459832 true false 121 15 136 58 94 53 68 65 46 90 46 105 75 115 234 117 256 105 256 90 239 68 209 57 157 59 136 8 Circle -16777216 false false 223 95 18 Circle -16777216 false false 219 77 18 Circle -16777216 false false 205 88 18 Line -16777216 false 214 68 223 71 Line -16777216 false 223 72 225 78 Line -16777216 false 212 88 207 82 Line -16777216 false 206 82 195 82 Line -16777216 false 197 114 201 107 Line -16777216 false 201 106 193 97 Line -16777216 false 198 66 189 60 Line -16777216 false 176 87 180 80 Line -16777216 false 157 105 161 98 Line -16777216 false 158 65 150 56 Line -16777216 false 180 79 172 70 Line -16777216 false 193 73 197 66 Line -16777216 false 237 82 252 84 Line -16777216 false 249 86 253 97 Line -16777216 false 240 104 252 96 airplane true 0 Polygon -7500403 true true 150 0 135 15 120 60 120 105 15 165 15 195 120 180 135 240 105 270 120 285 150 270 180 285 210 270 165 240 180 180 285 195 285 165 180 105 180 60 165 15 airplane 2 true 0 Polygon -7500403 true true 150 26 135 30 120 60 120 90 18 105 15 135 120 150 120 165 135 210 135 225 150 285 165 225 165 210 180 165 180 150 285 135 282 105 180 90 180 60 165 30 Line -7500403 false 120 30 180 30 Polygon -7500403 true true 105 255 120 240 180 240 195 255 180 270 120 270 ambulance false 0 Rectangle -7500403 true true 30 90 210 195 Polygon -7500403 true true 296 190 296 150 259 134 244 104 210 105 210 190 Rectangle -1 true false 195 60 195 105 Polygon -16777216 true false 238 112 252 141 219 141 218 112 Circle -16777216 true false 234 174 42 Circle -16777216 true false 69 174 42 Rectangle -1 true false 288 158 297 173 Rectangle -1184463 true false 289 180 298 172 Rectangle -2674135 true false 29 151 298 158 Line -16777216 false 210 90 210 195 Rectangle -16777216 true false 83 116 128 133 Rectangle -16777216 true false 153 111 176 134 Line -7500403 true 165 105 165 135 Rectangle -7500403 true true 14 186 33 195 Line -13345367 false 45 135 75 120 Line -13345367 false 75 135 45 120 Line -13345367 false 60 112 60 142 ant true 0 Polygon -7500403 true true 136 61 129 46 144 30 119 45 124 60 114 82 97 37 132 10 93 36 111 84 127 105 172 105 189 84 208 35 171 11 202 35 204 37 186 82 177 60 180 44 159 32 170 44 165 60 Polygon -7500403 true true 150 95 135 103 139 117 125 149 137 180 135 196 150 204 166 195 161 180 174 150 158 116 164 102 Polygon -7500403 true true 149 186 128 197 114 232 134 270 149 282 166 270 185 232 171 195 149 186 Polygon -7500403 true true 225 66 230 107 159 122 161 127 234 111 236 106 Polygon -7500403 true true 78 58 99 116 139 123 137 128 95 119 Polygon -7500403 true true 48 103 90 147 129 147 130 151 86 151 Polygon -7500403 true true 65 224 92 171 134 160 135 164 95 175 Polygon -7500403 true true 235 222 210 170 163 162 161 166 208 174 Polygon -7500403 true true 249 107 211 147 168 147 168 150 213 150 ant 2 true 0 Polygon -7500403 true true 150 19 120 30 120 45 130 66 144 81 127 96 129 113 144 134 136 185 121 195 114 217 120 255 135 270 165 270 180 255 188 218 181 195 165 184 157 134 170 115 173 95 156 81 171 66 181 42 180 30 Polygon -7500403 true true 150 167 159 185 190 182 225 212 255 257 240 212 200 170 154 172 Polygon -7500403 true true 161 167 201 150 237 149 281 182 245 140 202 137 158 154 Polygon -7500403 true true 155 135 185 120 230 105 275 75 233 115 201 124 155 150 Line -7500403 true 120 36 75 45 Line -7500403 true 75 45 90 15 Line -7500403 true 180 35 225 45 Line -7500403 true 225 45 210 15 Polygon -7500403 true true 145 135 115 120 70 105 25 75 67 115 99 124 145 150 Polygon -7500403 true true 139 167 99 150 63 149 19 182 55 140 98 137 142 154 Polygon -7500403 true true 150 167 141 185 110 182 75 212 45 257 60 212 100 170 146 172 apple false 0 Polygon -7500403 true true 33 58 0 150 30 240 105 285 135 285 150 270 165 285 195 285 255 255 300 150 268 62 226 43 194 36 148 32 105 35 Line -16777216 false 106 55 151 62 Line -16777216 false 157 62 209 57 Polygon -6459832 true false 152 62 158 62 160 46 156 30 147 18 132 26 142 35 148 46 Polygon -16777216 false false 132 25 144 38 147 48 151 62 158 63 159 47 155 30 147 18 arrow true 0 Polygon -7500403 true true 150 0 0 150 105 150 105 293 195 293 195 150 300 150 arrow 2 true 0 Polygon -7500403 true true 150 0 0 150 120 150 120 293 180 293 180 150 300 150 arrow 3 true 0 Polygon -7500403 true true 135 255 105 300 105 225 135 195 135 75 105 90 150 0 195 90 165 75 165 195 195 225 195 300 165 255 ball baseball false 0 Circle -7500403 true true 30 30 240 Polygon -2674135 true false 247 79 243 86 237 106 232 138 232 167 235 199 239 215 244 225 236 234 229 221 224 196 220 163 221 138 227 102 234 83 240 71 Polygon -2674135 true false 53 79 57 86 63 106 68 138 68 167 65 199 61 215 56 225 64 234 71 221 76 196 80 163 79 138 73 102 66 83 60 71 Line -2674135 false 241 149 210 149 Line -2674135 false 59 149 90 149 Line -2674135 false 241 171 212 176 Line -2674135 false 246 191 218 203 Line -2674135 false 251 207 227 226 Line -2674135 false 251 93 227 74 Line -2674135 false 246 109 218 97 Line -2674135 false 241 129 212 124 Line -2674135 false 59 171 88 176 Line -2674135 false 59 129 88 124 Line -2674135 false 54 109 82 97 Line -2674135 false 49 93 73 74 Line -2674135 false 54 191 82 203 Line -2674135 false 49 207 73 226 ball basketball false 0 Circle -7500403 true true 26 26 247 Polygon -16777216 false false 30 150 30 165 45 195 75 225 120 240 180 240 225 225 255 195 270 165 270 150 270 135 255 105 225 75 180 60 120 60 75 75 45 105 30 135 Line -16777216 false 30 150 270 150 Circle -16777216 false false 26 26 247 ball football false 0 Polygon -7500403 false true 301 133 301 164 275 192 229 224 167 236 137 236 74 224 30 194 3 162 2 138 30 104 76 74 134 62 168 62 228 74 274 105 Polygon -7500403 true true 300 150 300 165 270 195 225 225 163 236 134 236 75 225 30 195 2 162 2 140 30 105 75 75 136 63 165 63 225 75 270 105 300 135 Line -16777216 false 300 155 5 155 Polygon -1 true false 28 193 28 107 51 91 51 209 Rectangle -1 true false 90 150 210 160 Rectangle -1 true false 198 141 205 170 Rectangle -1 true false 183 141 190 170 Rectangle -1 true false 168 141 175 170 Rectangle -1 true false 153 141 160 170 Rectangle -1 true false 138 141 145 170 Rectangle -1 true false 123 141 130 170 Rectangle -1 true false 108 141 115 170 Rectangle -1 true false 93 141 100 170 Polygon -1 true false 272 193 272 107 249 91 249 209 ball tennis false 0 Circle -7500403 true true 30 30 240 Circle -7500403 false true 30 30 240 Polygon -16777216 true false 50 82 54 90 59 107 64 140 64 164 63 189 59 207 54 222 68 236 76 220 81 195 84 163 83 139 78 102 72 83 63 67 Polygon -16777216 true false 250 82 246 90 241 107 236 140 236 164 237 189 241 207 246 222 232 236 224 220 219 195 216 163 217 139 222 102 228 83 237 67 Polygon -1 true false 247 79 243 86 237 106 232 138 232 167 235 199 239 215 244 225 236 234 229 221 224 196 220 163 221 138 227 102 234 83 240 71 Polygon -1 true false 53 79 57 86 63 106 68 138 68 167 65 199 61 215 56 225 64 234 71 221 76 196 80 163 79 138 73 102 66 83 60 71 balloon false 0 Circle -7500403 true true 73 0 152 Polygon -7500403 true true 219 104 205 133 185 165 174 190 165 210 165 225 150 225 147 119 Polygon -7500403 true true 79 103 95 133 115 165 126 190 135 210 135 225 150 225 154 120 Rectangle -6459832 true false 129 241 173 273 Line -16777216 false 135 225 135 240 Line -16777216 false 165 225 165 240 Line -16777216 false 150 225 150 240 ballpin false 0 Polygon -1 true false 150 135 150 150 165 150 255 60 240 45 150 135 Circle -7500403 true true 181 31 86 banana false 0 Polygon -7500403 false true 25 78 29 86 30 95 27 103 17 122 12 151 18 181 39 211 61 234 96 247 155 259 203 257 243 245 275 229 288 205 284 192 260 188 249 187 214 187 188 188 181 189 144 189 122 183 107 175 89 158 69 126 56 95 50 83 38 68 Polygon -7500403 true true 39 69 26 77 30 88 29 103 17 124 12 152 18 179 34 205 60 233 99 249 155 260 196 259 237 248 272 230 289 205 284 194 264 190 244 188 221 188 185 191 170 191 145 190 123 186 108 178 87 157 68 126 59 103 52 88 Line -16777216 false 54 169 81 195 Line -16777216 false 75 193 82 199 Line -16777216 false 99 211 118 217 Line -16777216 false 241 211 254 210 Line -16777216 false 261 224 276 214 Polygon -16777216 true false 283 196 273 204 287 208 Polygon -16777216 true false 36 114 34 129 40 136 Polygon -16777216 true false 46 146 53 161 53 152 Line -16777216 false 65 132 82 162 Line -16777216 false 156 250 199 250 Polygon -16777216 true false 26 77 30 90 50 85 39 69 bee true 0 Polygon -1184463 true false 152 149 77 163 67 195 67 211 74 234 85 252 100 264 116 276 134 286 151 300 167 285 182 278 206 260 220 242 226 218 226 195 222 166 Polygon -16777216 true false 150 149 128 151 114 151 98 145 80 122 80 103 81 83 95 67 117 58 141 54 151 53 177 55 195 66 207 82 211 94 211 116 204 139 189 149 171 152 Polygon -7500403 true true 151 54 119 59 96 60 81 50 78 39 87 25 103 18 115 23 121 13 150 1 180 14 189 23 197 17 210 19 222 30 222 44 212 57 192 58 Polygon -16777216 true false 70 185 74 171 223 172 224 186 Polygon -16777216 true false 67 211 71 226 224 226 225 211 67 211 Polygon -16777216 true false 91 257 106 269 195 269 211 255 Line -1 false 144 100 70 87 Line -1 false 70 87 45 87 Line -1 false 45 86 26 97 Line -1 false 26 96 22 115 Line -1 false 22 115 25 130 Line -1 false 26 131 37 141 Line -1 false 37 141 55 144 Line -1 false 55 143 143 101 Line -1 false 141 100 227 138 Line -1 false 227 138 241 137 Line -1 false 241 137 249 129 Line -1 false 249 129 254 110 Line -1 false 253 108 248 97 Line -1 false 249 95 235 82 Line -1 false 235 82 144 100 bee 2 true 0 Polygon -1184463 true false 195 150 105 150 90 165 90 225 105 270 135 300 165 300 195 270 210 225 210 165 195 150 Rectangle -16777216 true false 90 165 212 185 Polygon -16777216 true false 90 207 90 226 210 226 210 207 Polygon -16777216 true false 103 266 198 266 203 246 96 246 Polygon -6459832 true false 120 150 105 135 105 75 120 60 180 60 195 75 195 135 180 150 Polygon -6459832 true false 150 15 120 30 120 60 180 60 180 30 Circle -16777216 true false 105 30 30 Circle -16777216 true false 165 30 30 Polygon -7500403 true true 120 90 75 105 15 90 30 75 120 75 Polygon -16777216 false false 120 75 30 75 15 90 75 105 120 90 Polygon -7500403 true true 180 75 180 90 225 105 285 90 270 75 Polygon -16777216 false false 180 75 270 75 285 90 225 105 180 90 Polygon -7500403 true true 180 75 180 90 195 105 240 195 270 210 285 210 285 150 255 105 Polygon -16777216 false false 180 75 255 105 285 150 285 210 270 210 240 195 195 105 180 90 Polygon -7500403 true true 120 75 45 105 15 150 15 210 30 210 60 195 105 105 120 90 Polygon -16777216 false false 120 75 45 105 15 150 15 210 30 210 60 195 105 105 120 90 Polygon -16777216 true false 135 300 165 300 180 285 120 285 bike false 1 Line -7500403 false 163 183 228 184 Circle -7500403 false false 213 184 22 Circle -7500403 false false 156 187 16 Circle -16777216 false false 28 148 95 Circle -16777216 false false 24 144 102 Circle -16777216 false false 174 144 102 Circle -16777216 false false 177 148 95 Polygon -2674135 true true 75 195 90 90 98 92 97 107 192 122 207 83 215 85 202 123 211 133 225 195 165 195 164 188 214 188 202 133 94 116 82 195 Polygon -2674135 true true 208 83 164 193 171 196 217 85 Polygon -2674135 true true 165 188 91 120 90 131 164 196 Line -7500403 false 159 173 170 219 Line -7500403 false 155 172 166 172 Line -7500403 false 166 219 177 219 Polygon -16777216 true false 187 92 198 92 208 97 217 100 231 93 231 84 216 82 201 83 184 85 Polygon -7500403 true true 71 86 98 93 101 85 74 81 Rectangle -16777216 true false 75 75 75 90 Polygon -16777216 true false 70 87 70 72 78 71 78 89 Circle -7500403 false false 153 184 22 Line -7500403 false 159 206 228 205 bird false 0 Polygon -7500403 true true 135 165 90 270 120 300 180 300 210 270 165 165 Rectangle -7500403 true true 120 105 180 237 Polygon -7500403 true true 135 105 120 75 105 45 121 6 167 8 207 25 257 46 180 75 165 105 Circle -16777216 true false 128 21 42 Polygon -7500403 true true 163 116 194 92 212 86 230 86 250 90 265 98 279 111 290 126 296 143 298 158 298 166 296 183 286 204 272 219 259 227 235 240 241 223 250 207 251 192 245 180 232 168 216 162 200 162 186 166 175 173 171 180 Polygon -7500403 true true 137 116 106 92 88 86 70 86 50 90 35 98 21 111 10 126 4 143 2 158 2 166 4 183 14 204 28 219 41 227 65 240 59 223 50 207 49 192 55 180 68 168 84 162 100 162 114 166 125 173 129 180 bird 2 false 0 Polygon -7500403 true true 2 6 2 39 270 298 297 298 299 271 187 160 279 75 276 22 100 67 31 0 bird 3 false 0 Polygon -7500403 true true 2 4 33 4 298 270 298 298 272 298 155 184 117 289 61 295 61 105 0 43 bird side false 0 Polygon -7500403 true true 0 120 45 90 75 90 105 120 150 120 240 135 285 120 285 135 300 150 240 150 195 165 255 195 210 195 150 210 90 195 60 180 45 135 Circle -16777216 true false 38 98 14 boat false 0 Polygon -1 true false 63 162 90 207 223 207 290 162 Rectangle -6459832 true false 150 32 157 162 Polygon -13345367 true false 150 34 131 49 145 47 147 48 149 49 Polygon -7500403 true true 158 33 230 157 182 150 169 151 157 156 Polygon -7500403 true true 149 55 88 143 103 139 111 136 117 139 126 145 130 147 139 147 146 146 149 55 boat 2 false 0 Polygon -1 true false 63 162 90 207 223 207 290 162 Rectangle -6459832 true false 150 32 157 162 Polygon -13345367 true false 150 34 131 49 145 47 147 48 149 49 Polygon -7500403 true true 157 54 175 79 174 96 185 102 178 112 194 124 196 131 190 139 192 146 211 151 216 154 157 154 Polygon -7500403 true true 150 74 146 91 139 99 143 114 141 123 137 126 131 129 132 139 142 136 126 142 119 147 148 147 boat 3 false 0 Polygon -1 true false 63 162 90 207 223 207 290 162 Rectangle -6459832 true false 150 32 157 162 Polygon -13345367 true false 150 34 131 49 145 47 147 48 149 49 Polygon -7500403 true true 158 37 172 45 188 59 202 79 217 109 220 130 218 147 204 156 158 156 161 142 170 123 170 102 169 88 165 62 Polygon -7500403 true true 149 66 142 78 139 96 141 111 146 139 148 147 110 147 113 131 118 106 126 71 boat top true 0 Polygon -7500403 true true 150 1 137 18 123 46 110 87 102 150 106 208 114 258 123 286 175 287 183 258 193 209 198 150 191 87 178 46 163 17 Rectangle -16777216 false false 129 92 170 178 Rectangle -16777216 false false 120 63 180 93 Rectangle -7500403 true true 133 89 165 165 Polygon -11221820 true false 150 60 105 105 150 90 195 105 Polygon -16777216 false false 150 60 105 105 150 90 195 105 Rectangle -16777216 false false 135 178 165 262 Polygon -16777216 false false 134 262 144 286 158 286 166 262 Line -16777216 false 129 149 171 149 Line -16777216 false 166 262 188 252 Line -16777216 false 134 262 112 252 Line -16777216 false 150 2 149 62 book false 0 Polygon -7500403 true true 30 195 150 255 270 135 150 75 Polygon -7500403 true true 30 135 150 195 270 75 150 15 Polygon -7500403 true true 30 135 30 195 90 150 Polygon -1 true false 39 139 39 184 151 239 156 199 Polygon -1 true false 151 239 254 135 254 90 151 197 Line -7500403 true 150 196 150 247 Line -7500403 true 43 159 138 207 Line -7500403 true 43 174 138 222 Line -7500403 true 153 206 248 113 Line -7500403 true 153 221 248 128 Polygon -1 true false 159 52 144 67 204 97 219 82 bottle false 0 Circle -7500403 true true 90 240 60 Rectangle -1 true false 135 8 165 31 Line -7500403 true 123 30 175 30 Circle -7500403 true true 150 240 60 Rectangle -7500403 true true 90 105 210 270 Rectangle -7500403 true true 120 270 180 300 Circle -7500403 true true 90 45 120 Rectangle -7500403 true true 135 27 165 51 bowling pin false 0 Polygon -7500403 true true 132 285 117 256 105 210 105 165 121 135 136 90 136 75 126 32 125 14 134 5 151 0 168 4 177 12 176 32 166 75 166 90 181 135 195 165 195 210 184 256 170 285 Polygon -2674135 true false 134 68 132 59 170 59 168 68 Polygon -2674135 true false 136 84 135 94 167 94 166 84 box false 0 Polygon -7500403 true true 150 285 285 225 285 75 150 135 Polygon -7500403 true true 150 135 15 75 150 15 285 75 Polygon -7500403 true true 15 75 15 225 150 285 150 135 Line -16777216 false 150 285 150 135 Line -16777216 false 150 135 15 75 Line -16777216 false 150 135 285 75 box 2 false 0 Polygon -7500403 true true 150 285 270 225 270 90 150 150 Polygon -13791810 true false 150 150 30 90 150 30 270 90 Polygon -13345367 true false 30 90 30 225 150 285 150 150 bread false 0 Polygon -16777216 true false 140 145 170 250 245 190 234 122 247 107 260 79 260 55 245 40 215 32 185 40 155 31 122 41 108 53 28 118 110 115 140 130 Polygon -7500403 true true 135 151 165 256 240 196 225 121 241 105 255 76 255 61 240 46 210 38 180 46 150 37 120 46 105 61 47 108 105 121 135 136 Polygon -1 true false 60 181 45 256 165 256 150 181 165 166 180 136 180 121 165 106 135 98 105 106 75 97 46 107 29 118 30 136 45 166 60 181 Polygon -16777216 false false 45 255 165 255 150 180 165 165 180 135 180 120 165 105 135 97 105 105 76 96 46 106 29 118 30 135 45 165 60 180 Line -16777216 false 165 255 239 195 bug true 0 Circle -7500403 true true 96 182 108 Circle -7500403 true true 110 127 80 Circle -7500403 true true 110 75 80 Line -7500403 true 150 100 80 30 Line -7500403 true 150 100 220 30 building institution false 0 Rectangle -7500403 true true 0 60 300 270 Rectangle -16777216 true false 130 196 168 256 Rectangle -16777216 false false 0 255 300 270 Polygon -7500403 true true 0 60 150 15 300 60 Polygon -16777216 false false 0 60 150 15 300 60 Circle -1 true false 135 26 30 Circle -16777216 false false 135 25 30 Rectangle -16777216 false false 0 60 300 75 Rectangle -16777216 false false 218 75 255 90 Rectangle -16777216 false false 218 240 255 255 Rectangle -16777216 false false 224 90 249 240 Rectangle -16777216 false false 45 75 82 90 Rectangle -16777216 false false 45 240 82 255 Rectangle -16777216 false false 51 90 76 240 Rectangle -16777216 false false 90 240 127 255 Rectangle -16777216 false false 90 75 127 90 Rectangle -16777216 false false 96 90 121 240 Rectangle -16777216 false false 179 90 204 240 Rectangle -16777216 false false 173 75 210 90 Rectangle -16777216 false false 173 240 210 255 Rectangle -16777216 false false 269 90 294 240 Rectangle -16777216 false false 263 75 300 90 Rectangle -16777216 false false 263 240 300 255 Rectangle -16777216 false false 0 240 37 255 Rectangle -16777216 false false 6 90 31 240 Rectangle -16777216 false false 0 75 37 90 Line -16777216 false 112 260 184 260 Line -16777216 false 105 265 196 265 building store false 0 Rectangle -7500403 true true 30 45 45 240 Rectangle -16777216 false false 30 45 45 165 Rectangle -7500403 true true 15 165 285 255 Rectangle -16777216 true false 120 195 180 255 Line -7500403 true 150 195 150 255 Rectangle -16777216 true false 30 180 105 240 Rectangle -16777216 true false 195 180 270 240 Line -16777216 false 0 165 300 165 Polygon -7500403 true true 0 165 45 135 60 90 240 90 255 135 300 165 Rectangle -7500403 true true 0 0 75 45 Rectangle -16777216 false false 0 0 75 45 bulldozer top true 0 Rectangle -7500403 true true 195 60 255 255 Rectangle -16777216 false false 195 60 255 255 Rectangle -7500403 true true 45 60 105 255 Rectangle -16777216 false false 45 60 105 255 Line -16777216 false 45 75 255 75 Line -16777216 false 45 105 255 105 Line -16777216 false 45 60 255 60 Line -16777216 false 45 240 255 240 Line -16777216 false 45 225 255 225 Line -16777216 false 45 195 255 195 Line -16777216 false 45 150 255 150 Polygon -1184463 true true 90 60 75 90 75 240 120 255 180 255 225 240 225 90 210 60 Polygon -16777216 false false 225 90 210 60 211 246 225 240 Polygon -16777216 false false 75 90 90 60 89 246 75 240 Polygon -16777216 false false 89 247 116 254 183 255 211 246 211 211 90 210 Rectangle -16777216 false false 90 60 210 90 Rectangle -1184463 true true 180 30 195 90 Rectangle -16777216 false false 105 30 120 90 Rectangle -1184463 true true 105 45 120 90 Rectangle -16777216 false false 180 45 195 90 Polygon -16777216 true false 195 105 180 120 120 120 105 105 Polygon -16777216 true false 105 199 120 188 180 188 195 199 Polygon -16777216 true false 195 120 180 135 180 180 195 195 Polygon -16777216 true false 105 120 120 135 120 180 105 195 Line -1184463 true 105 165 195 165 Circle -16777216 true false 113 226 14 Polygon -1184463 true true 105 15 60 30 60 45 240 45 240 30 195 15 Polygon -16777216 false false 105 15 60 30 60 45 240 45 240 30 195 15 bus false 0 Polygon -7500403 true true 15 206 15 150 15 120 30 105 270 105 285 120 285 135 285 206 270 210 30 210 Rectangle -16777216 true false 36 126 231 159 Line -7500403 false 60 135 60 165 Line -7500403 false 60 120 60 165 Line -7500403 false 90 120 90 165 Line -7500403 false 120 120 120 165 Line -7500403 false 150 120 150 165 Line -7500403 false 180 120 180 165 Line -7500403 false 210 120 210 165 Line -7500403 false 240 135 240 165 Rectangle -16777216 true false 15 174 285 182 Circle -16777216 true false 48 187 42 Rectangle -16777216 true false 240 127 276 205 Circle -16777216 true false 195 187 42 Line -7500403 false 257 120 257 207 butterfly true 0 Polygon -7500403 true true 150 165 209 199 225 225 225 255 195 270 165 255 150 240 Polygon -7500403 true true 150 165 89 198 75 225 75 255 105 270 135 255 150 240 Polygon -7500403 true true 139 148 100 105 55 90 25 90 10 105 10 135 25 180 40 195 85 194 139 163 Polygon -7500403 true true 162 150 200 105 245 90 275 90 290 105 290 135 275 180 260 195 215 195 162 165 Polygon -16777216 true false 150 255 135 225 120 150 135 120 150 105 165 120 180 150 165 225 Circle -16777216 true false 135 90 30 Line -16777216 false 150 105 195 60 Line -16777216 false 150 105 105 60 butterfly 2 true 0 Polygon -16777216 true false 151 76 138 91 138 284 150 296 162 286 162 91 Polygon -7500403 true true 164 106 184 79 205 61 236 48 259 53 279 86 287 119 289 158 278 177 256 182 164 181 Polygon -7500403 true true 136 110 119 82 110 71 85 61 59 48 36 56 17 88 6 115 2 147 15 178 134 178 Polygon -7500403 true true 46 181 28 227 50 255 77 273 112 283 135 274 135 180 Polygon -7500403 true true 165 185 254 184 272 224 255 251 236 267 191 283 164 276 Line -7500403 true 167 47 159 82 Line -7500403 true 136 47 145 81 Circle -7500403 true true 165 45 8 Circle -7500403 true true 134 45 6 Circle -7500403 true true 133 44 7 Circle -7500403 true true 133 43 8 cactus false 0 Polygon -7500403 true true 130 300 124 206 110 207 94 201 81 183 75 171 74 95 79 79 88 74 97 79 100 95 101 151 104 169 115 180 126 169 129 31 132 19 145 16 153 20 158 32 162 142 166 149 177 149 185 137 185 119 189 108 199 103 212 108 215 121 215 144 210 165 196 177 176 181 164 182 159 302 Line -16777216 false 142 32 146 143 Line -16777216 false 148 179 143 300 Line -16777216 false 123 191 114 197 Line -16777216 false 113 199 96 188 Line -16777216 false 95 188 84 168 Line -16777216 false 83 168 82 103 Line -16777216 false 201 147 202 123 Line -16777216 false 190 162 199 148 Line -16777216 false 174 164 189 163 campsite false 0 Polygon -7500403 true true 150 11 30 221 270 221 Polygon -16777216 true false 151 90 92 221 212 221 Line -7500403 true 150 30 150 225 cannon true 0 Polygon -7500403 true true 165 0 165 15 180 150 195 165 195 180 180 195 165 225 135 225 120 195 105 180 105 165 120 150 135 15 135 0 Line -16777216 false 120 150 180 150 Line -16777216 false 120 195 180 195 Line -16777216 false 165 15 135 15 Polygon -16777216 false false 165 0 135 0 135 15 120 150 105 165 105 180 120 195 135 225 165 225 180 195 195 180 195 165 180 150 165 15 cannon carriage false 0 Circle -7500403 false true 105 105 90 Circle -7500403 false true 90 90 120 Line -7500403 true 180 120 120 180 Line -7500403 true 120 120 180 180 Line -7500403 true 150 105 150 195 Line -7500403 true 105 150 195 150 Polygon -7500403 false true 0 195 0 210 180 150 180 135 car false 0 Polygon -7500403 true true 300 180 279 164 261 144 240 135 226 132 213 106 203 84 185 63 159 50 135 50 75 60 0 150 0 165 0 225 300 225 300 180 Circle -16777216 true false 180 180 90 Circle -16777216 true false 30 180 90 Polygon -16777216 true false 162 80 132 78 134 135 209 135 194 105 189 96 180 89 Circle -7500403 true true 47 195 58 Circle -7500403 true true 195 195 58 car side false 0 Polygon -7500403 true true 19 147 11 125 16 105 63 105 99 79 155 79 180 105 243 111 266 129 253 149 Circle -16777216 true false 43 123 42 Circle -16777216 true false 194 124 42 Polygon -16777216 true false 101 87 73 108 171 108 151 87 Line -8630108 false 121 82 120 108 Polygon -1 true false 242 121 248 128 266 129 247 115 Rectangle -16777216 true false 12 131 28 143 car top true 0 Polygon -7500403 true true 151 8 119 10 98 25 86 48 82 225 90 270 105 289 150 294 195 291 210 270 219 225 214 47 201 24 181 11 Polygon -16777216 true false 210 195 195 210 195 135 210 105 Polygon -16777216 true false 105 255 120 270 180 270 195 255 195 225 105 225 Polygon -16777216 true false 90 195 105 210 105 135 90 105 Polygon -1 true false 205 29 180 30 181 11 Line -7500403 false 210 165 195 165 Line -7500403 false 90 165 105 165 Polygon -16777216 true false 121 135 180 134 204 97 182 89 153 85 120 89 98 97 Line -16777216 false 210 90 195 30 Line -16777216 false 90 90 105 30 Polygon -1 true false 95 29 120 30 119 11 cat false 0 Line -7500403 true 285 240 210 240 Line -7500403 true 195 300 165 255 Line -7500403 true 15 240 90 240 Line -7500403 true 285 285 195 240 Line -7500403 true 105 300 135 255 Line -16777216 false 150 270 150 285 Line -16777216 false 15 75 15 120 Polygon -7500403 true true 300 15 285 30 255 30 225 75 195 60 255 15 Polygon -7500403 true true 285 135 210 135 180 150 180 45 285 90 Polygon -7500403 true true 120 45 120 210 180 210 180 45 Polygon -7500403 true true 180 195 165 300 240 285 255 225 285 195 Polygon -7500403 true true 180 225 195 285 165 300 150 300 150 255 165 225 Polygon -7500403 true true 195 195 195 165 225 150 255 135 285 135 285 195 Polygon -7500403 true true 15 135 90 135 120 150 120 45 15 90 Polygon -7500403 true true 120 195 135 300 60 285 45 225 15 195 Polygon -7500403 true true 120 225 105 285 135 300 150 300 150 255 135 225 Polygon -7500403 true true 105 195 105 165 75 150 45 135 15 135 15 195 Polygon -7500403 true true 285 120 270 90 285 15 300 15 Line -7500403 true 15 285 105 240 Polygon -7500403 true true 15 120 30 90 15 15 0 15 Polygon -7500403 true true 0 15 15 30 45 30 75 75 105 60 45 15 Line -16777216 false 164 262 209 262 Line -16777216 false 223 231 208 261 Line -16777216 false 136 262 91 262 Line -16777216 false 77 231 92 261 caterpillar true 0 Polygon -7500403 true true 165 210 165 225 135 255 105 270 90 270 75 255 75 240 90 210 120 195 135 165 165 135 165 105 150 75 150 60 135 60 120 45 120 30 135 15 150 15 180 30 180 45 195 45 210 60 225 105 225 135 210 150 210 165 195 195 180 210 Line -16777216 false 135 255 90 210 Line -16777216 false 165 225 120 195 Line -16777216 false 135 165 180 210 Line -16777216 false 150 150 201 186 Line -16777216 false 165 135 210 150 Line -16777216 false 165 120 225 120 Line -16777216 false 165 106 221 90 Line -16777216 false 157 91 210 60 Line -16777216 false 150 60 180 45 Line -16777216 false 120 30 96 26 Line -16777216 false 124 0 135 15 check false 0 Polygon -7500403 true true 55 138 22 155 53 196 72 232 91 288 111 272 136 258 147 220 167 174 208 113 280 24 257 7 192 78 151 138 106 213 87 182 checker piece false 0 Circle -7500403 true true 60 60 180 Circle -16777216 false false 60 60 180 Circle -7500403 true true 75 45 180 Circle -16777216 false false 75 45 180 checker piece 2 false 0 Circle -7500403 true true 60 60 180 Circle -16777216 false false 60 60 180 Circle -7500403 true true 75 45 180 Circle -16777216 false false 83 36 180 Circle -7500403 true true 105 15 180 Circle -16777216 false false 105 15 180 chess bishop false 0 Circle -7500403 true true 135 35 30 Circle -16777216 false false 135 35 30 Rectangle -7500403 true true 90 255 210 300 Line -16777216 false 75 255 225 255 Rectangle -16777216 false false 90 255 210 300 Polygon -7500403 true true 105 255 120 165 180 165 195 255 Polygon -16777216 false false 105 255 120 165 180 165 195 255 Rectangle -7500403 true true 105 165 195 150 Rectangle -16777216 false false 105 150 195 165 Line -16777216 false 137 59 162 59 Polygon -7500403 true true 135 60 120 75 120 105 120 120 105 120 105 90 90 105 90 120 90 135 105 150 195 150 210 135 210 120 210 105 195 90 165 60 Polygon -16777216 false false 135 60 120 75 120 120 105 120 105 90 90 105 90 135 105 150 195 150 210 135 210 105 165 60 chess king false 0 Polygon -7500403 true true 105 255 120 90 180 90 195 255 Polygon -16777216 false false 105 255 120 90 180 90 195 255 Polygon -7500403 true true 120 85 105 40 195 40 180 85 Polygon -16777216 false false 119 85 104 40 194 40 179 85 Rectangle -7500403 true true 105 105 195 75 Rectangle -16777216 false false 105 75 195 105 Rectangle -7500403 true true 90 255 210 300 Line -16777216 false 75 255 225 255 Rectangle -16777216 false false 90 255 210 300 Rectangle -7500403 true true 165 23 134 13 Rectangle -7500403 true true 144 0 154 44 Polygon -16777216 false false 153 0 144 0 144 13 133 13 133 22 144 22 144 41 154 41 154 22 165 22 165 12 153 12 chess knight false 0 Line -16777216 false 75 255 225 255 Polygon -7500403 true true 90 255 60 255 60 225 75 180 75 165 60 135 45 90 60 75 60 45 90 30 120 30 135 45 240 60 255 75 255 90 255 105 240 120 225 105 180 120 210 150 225 195 225 210 210 255 Polygon -16777216 false false 210 255 60 255 60 225 75 180 75 165 60 135 45 90 60 75 60 45 90 30 120 30 135 45 240 60 255 75 255 90 255 105 240 120 225 105 180 120 210 150 225 195 225 210 Line -16777216 false 255 90 240 90 Circle -16777216 true false 134 63 24 Line -16777216 false 103 34 108 45 Line -16777216 false 80 41 88 49 Line -16777216 false 61 53 70 58 Line -16777216 false 64 75 79 75 Line -16777216 false 53 100 67 98 Line -16777216 false 63 126 69 123 Line -16777216 false 71 148 77 145 Rectangle -7500403 true true 90 255 210 300 Rectangle -16777216 false false 90 255 210 300 chess pawn false 0 Circle -7500403 true true 105 65 90 Circle -16777216 false false 105 65 90 Rectangle -7500403 true true 90 255 210 300 Line -16777216 false 75 255 225 255 Rectangle -16777216 false false 90 255 210 300 Polygon -7500403 true true 105 255 120 165 180 165 195 255 Polygon -16777216 false false 105 255 120 165 180 165 195 255 Rectangle -7500403 true true 105 165 195 150 Rectangle -16777216 false false 105 150 195 165 chess queen false 0 Circle -7500403 true true 140 11 20 Circle -16777216 false false 139 11 20 Circle -7500403 true true 120 22 60 Circle -16777216 false false 119 20 60 Rectangle -7500403 true true 90 255 210 300 Line -16777216 false 75 255 225 255 Rectangle -16777216 false false 90 255 210 300 Polygon -7500403 true true 105 255 120 90 180 90 195 255 Polygon -16777216 false false 105 255 120 90 180 90 195 255 Rectangle -7500403 true true 105 105 195 75 Rectangle -16777216 false false 105 75 195 105 Polygon -7500403 true true 120 75 105 45 195 45 180 75 Polygon -16777216 false false 120 75 105 45 195 45 180 75 Circle -7500403 true true 180 35 20 Circle -16777216 false false 180 35 20 Circle -7500403 true true 140 35 20 Circle -16777216 false false 140 35 20 Circle -7500403 true true 100 35 20 Circle -16777216 false false 99 35 20 Line -16777216 false 105 90 195 90 chess rook false 0 Rectangle -7500403 true true 90 255 210 300 Line -16777216 false 75 255 225 255 Rectangle -16777216 false false 90 255 210 300 Polygon -7500403 true true 90 255 105 105 195 105 210 255 Polygon -16777216 false false 90 255 105 105 195 105 210 255 Rectangle -7500403 true true 75 90 120 60 Rectangle -7500403 true true 75 84 225 105 Rectangle -7500403 true true 135 90 165 60 Rectangle -7500403 true true 180 90 225 60 Polygon -16777216 false false 90 105 75 105 75 60 120 60 120 84 135 84 135 60 165 60 165 84 179 84 180 60 225 60 225 105 circle false 0 Circle -7500403 true true 0 0 300 circle 2 false 0 Circle -7500403 true true 0 0 300 Circle -16777216 true false 30 30 240 clock true 0 Circle -7500403 true true 30 30 240 Polygon -16777216 true false 150 31 128 75 143 75 143 150 158 150 158 75 173 75 Circle -16777216 true false 135 135 30 cloud false 0 Circle -7500403 true true 13 118 94 Circle -7500403 true true 86 101 127 Circle -7500403 true true 51 51 108 Circle -7500403 true true 118 43 95 Circle -7500403 true true 158 68 134 coin heads false 0 Circle -7500403 true true 15 15 270 Circle -16777216 false false 22 21 256 Line -16777216 false 165 180 192 196 Line -16777216 false 42 140 83 140 Line -16777216 false 37 151 91 151 Line -16777216 false 218 167 265 167 Polygon -16777216 false false 148 265 75 229 86 207 113 191 120 175 109 162 109 136 86 124 137 96 176 93 210 108 222 125 203 157 204 174 190 191 232 230 Polygon -16777216 false false 212 142 182 128 154 132 140 152 149 162 144 182 167 204 187 206 193 193 190 189 202 174 193 158 202 175 204 158 Line -16777216 false 164 154 182 152 Line -16777216 false 193 152 202 153 Polygon -16777216 false false 60 75 75 90 90 75 105 75 90 45 105 45 120 60 135 60 135 45 120 45 105 45 135 30 165 30 195 45 210 60 225 75 240 75 225 75 210 90 225 75 225 60 210 60 195 75 210 60 195 45 180 45 180 60 180 45 165 60 150 60 150 45 165 45 150 45 150 30 135 30 120 60 105 75 coin tails false 0 Circle -7500403 true true 15 15 270 Circle -16777216 false false 20 17 260 Line -16777216 false 130 92 171 92 Line -16777216 false 123 79 177 79 Rectangle -7500403 true true 57 101 242 133 Rectangle -16777216 false false 45 180 255 195 Rectangle -16777216 false false 75 120 225 135 Polygon -16777216 false false 81 226 70 241 86 248 93 235 89 232 108 243 97 256 118 247 118 265 123 248 142 247 129 253 130 271 145 269 131 259 162 245 153 262 168 268 197 259 177 255 187 245 174 243 193 235 209 251 193 234 225 244 208 227 240 240 222 218 Rectangle -7500403 true true 91 210 222 226 Polygon -16777216 false false 65 70 91 50 136 35 181 35 226 65 246 86 241 65 196 50 166 35 121 50 91 50 61 95 54 80 61 65 Polygon -16777216 false false 90 135 60 135 60 180 90 180 90 135 120 135 120 180 150 180 150 135 180 135 180 180 210 180 210 135 240 135 240 180 210 180 210 135 computer server false 0 Rectangle -7500403 true true 75 30 225 270 Line -16777216 false 210 30 210 195 Line -16777216 false 90 30 90 195 Line -16777216 false 90 195 210 195 Rectangle -10899396 true false 184 34 200 40 Rectangle -10899396 true false 184 47 200 53 Rectangle -10899396 true false 184 63 200 69 Line -16777216 false 90 210 90 255 Line -16777216 false 105 210 105 255 Line -16777216 false 120 210 120 255 Line -16777216 false 135 210 135 255 Line -16777216 false 165 210 165 255 Line -16777216 false 180 210 180 255 Line -16777216 false 195 210 195 255 Line -16777216 false 210 210 210 255 Rectangle -7500403 true true 84 232 219 236 Rectangle -16777216 false false 101 172 112 184 computer workstation false 0 Rectangle -7500403 true true 60 45 240 180 Polygon -7500403 true true 90 180 105 195 135 195 135 210 165 210 165 195 195 195 210 180 Rectangle -16777216 true false 75 60 225 165 Rectangle -7500403 true true 45 210 255 255 Rectangle -10899396 true false 249 223 237 217 Line -16777216 false 60 225 120 225 container false 0 Rectangle -7500403 false false 0 75 300 225 Rectangle -7500403 true true 0 75 300 225 Line -16777216 false 0 210 300 210 Line -16777216 false 0 90 300 90 Line -16777216 false 150 90 150 210 Line -16777216 false 120 90 120 210 Line -16777216 false 90 90 90 210 Line -16777216 false 240 90 240 210 Line -16777216 false 270 90 270 210 Line -16777216 false 30 90 30 210 Line -16777216 false 60 90 60 210 Line -16777216 false 210 90 210 210 Line -16777216 false 180 90 180 210 cow false 0 Polygon -7500403 true true 200 193 197 249 179 249 177 196 166 187 140 189 93 191 78 179 72 211 49 209 48 181 37 149 25 120 25 89 45 72 103 84 179 75 198 76 252 64 272 81 293 103 285 121 255 121 242 118 224 167 Polygon -7500403 true true 73 210 86 251 62 249 48 208 Polygon -7500403 true true 25 114 16 195 9 204 23 213 25 200 39 123 cow skull false 0 Polygon -7500403 true true 150 90 75 105 60 150 75 210 105 285 195 285 225 210 240 150 225 105 Polygon -16777216 true false 150 150 90 195 90 150 Polygon -16777216 true false 150 150 210 195 210 150 Polygon -16777216 true false 105 285 135 270 150 285 165 270 195 285 Polygon -7500403 true true 240 150 263 143 278 126 287 102 287 79 280 53 273 38 261 25 246 15 227 8 241 26 253 46 258 68 257 96 246 116 229 126 Polygon -7500403 true true 60 150 37 143 22 126 13 102 13 79 20 53 27 38 39 25 54 15 73 8 59 26 47 46 42 68 43 96 54 116 71 126 crate false 0 Rectangle -7500403 true true 45 45 255 255 Rectangle -16777216 false false 45 45 255 255 Rectangle -16777216 false false 60 60 240 240 Line -16777216 false 180 60 180 240 Line -16777216 false 150 60 150 240 Line -16777216 false 120 60 120 240 Line -16777216 false 210 60 210 240 Line -16777216 false 90 60 90 240 Polygon -7500403 true true 75 240 240 75 240 60 225 60 60 225 60 240 Polygon -16777216 false false 60 225 60 240 75 240 240 75 240 60 225 60 crown false 0 Rectangle -7500403 true true 45 165 255 240 Polygon -7500403 true true 45 165 30 60 90 165 90 60 132 166 150 60 169 166 210 60 210 165 270 60 255 165 Circle -16777216 true false 222 192 22 Circle -16777216 true false 56 192 22 Circle -16777216 true false 99 192 22 Circle -16777216 true false 180 192 22 Circle -16777216 true false 139 192 22 cylinder false 0 Circle -7500403 true true 0 0 300 dart true 0 Polygon -7500403 true true 135 90 150 285 165 90 Polygon -7500403 true true 135 285 105 255 105 240 120 210 135 180 150 165 165 180 180 210 195 240 195 255 165 285 Rectangle -1184463 true false 135 45 165 90 Line -16777216 false 150 285 150 180 Polygon -16777216 true false 150 45 135 45 146 35 150 0 155 35 165 45 Line -16777216 false 135 75 165 75 Line -16777216 false 135 60 165 60 deafult2 true 0 Polygon -7500403 true true 150 5 40 250 150 205 260 250 die 1 false 0 Rectangle -7500403 true true 45 45 255 255 Circle -16777216 true false 129 129 42 die 2 false 0 Rectangle -7500403 true true 45 45 255 255 Circle -16777216 true false 69 69 42 Circle -16777216 true false 189 189 42 die 3 false 0 Rectangle -7500403 true true 45 45 255 255 Circle -16777216 true false 69 69 42 Circle -16777216 true false 129 129 42 Circle -16777216 true false 189 189 42 die 4 false 0 Rectangle -7500403 true true 45 45 255 255 Circle -16777216 true false 69 69 42 Circle -16777216 true false 69 189 42 Circle -16777216 true false 189 69 42 Circle -16777216 true false 189 189 42 die 5 false 0 Rectangle -7500403 true true 45 45 255 255 Circle -16777216 true false 69 69 42 Circle -16777216 true false 129 129 42 Circle -16777216 true false 69 189 42 Circle -16777216 true false 189 69 42 Circle -16777216 true false 189 189 42 die 6 false 0 Rectangle -7500403 true true 45 45 255 255 Circle -16777216 true false 84 69 42 Circle -16777216 true false 84 129 42 Circle -16777216 true false 84 189 42 Circle -16777216 true false 174 69 42 Circle -16777216 true false 174 129 42 Circle -16777216 true false 174 189 42 dog false 0 Polygon -7500403 true true 300 165 300 195 270 210 183 204 180 240 165 270 165 300 120 300 0 240 45 165 75 90 75 45 105 15 135 45 165 45 180 15 225 15 255 30 225 30 210 60 225 90 225 105 Polygon -16777216 true false 0 240 120 300 165 300 165 285 120 285 10 221 Line -16777216 false 210 60 180 45 Line -16777216 false 90 45 90 90 Line -16777216 false 90 90 105 105 Line -16777216 false 105 105 135 60 Line -16777216 false 90 45 135 60 Line -16777216 false 135 60 135 45 Line -16777216 false 181 203 151 203 Line -16777216 false 150 201 105 171 Circle -16777216 true false 171 88 34 Circle -16777216 false false 261 162 30 dollar bill false 0 Rectangle -7500403 true true 15 90 285 210 Rectangle -1 true false 30 105 270 195 Circle -7500403 true true 120 120 60 Circle -7500403 true true 120 135 60 Circle -7500403 true true 254 178 26 Circle -7500403 true true 248 98 26 Circle -7500403 true true 18 97 36 Circle -7500403 true true 21 178 26 Circle -7500403 true true 66 135 28 Circle -1 true false 72 141 16 Circle -7500403 true true 201 138 32 Circle -1 true false 209 146 16 Rectangle -16777216 true false 64 112 86 118 Rectangle -16777216 true false 90 112 124 118 Rectangle -16777216 true false 128 112 188 118 Rectangle -16777216 true false 191 112 237 118 Rectangle -1 true false 106 199 128 205 Rectangle -1 true false 90 96 209 98 Rectangle -7500403 true true 60 168 103 176 Rectangle -7500403 true true 199 127 230 133 Line -7500403 true 59 184 104 184 Line -7500403 true 241 189 196 189 Line -7500403 true 59 189 104 189 Line -16777216 false 116 124 71 124 Polygon -1 true false 127 179 142 167 142 160 130 150 126 148 142 132 158 132 173 152 167 156 164 167 174 176 161 193 135 192 Rectangle -1 true false 134 199 184 205 dot false 0 Circle -7500403 true true 90 90 120 drop false 0 Circle -7500403 true true 73 133 152 Polygon -7500403 true true 219 181 205 152 185 120 174 95 163 64 156 37 149 7 147 166 Polygon -7500403 true true 79 182 95 152 115 120 126 95 137 64 144 37 150 6 154 165 egg false 0 Circle -7500403 true true 96 76 108 Circle -7500403 true true 72 104 156 Polygon -7500403 true true 221 149 195 101 106 99 80 148 electric outlet false 0 Rectangle -7500403 true true 45 0 255 297 Polygon -16777216 false false 120 270 90 240 90 195 120 165 180 165 210 195 210 240 180 270 Rectangle -16777216 true false 169 199 177 236 Rectangle -16777216 true false 169 64 177 101 Polygon -16777216 false false 120 30 90 60 90 105 120 135 180 135 210 105 210 60 180 30 Rectangle -16777216 true false 123 64 131 101 Rectangle -16777216 true false 123 199 131 236 Rectangle -16777216 false false 45 0 255 296 emblem false 0 Polygon -7500403 true true 0 90 15 120 285 120 300 90 Polygon -7500403 true true 30 135 45 165 255 165 270 135 Polygon -7500403 true true 60 180 75 210 225 210 240 180 Polygon -7500403 true true 150 285 15 45 285 45 Polygon -16777216 true false 75 75 150 210 225 75 exclamation false 0 Circle -7500403 true true 103 198 95 Polygon -7500403 true true 135 180 165 180 210 30 180 0 120 0 90 30 eyeball false 0 Circle -1 true false 22 20 248 Circle -7500403 true true 83 81 122 Circle -16777216 true false 122 120 44 face happy false 0 Circle -7500403 true true 8 8 285 Circle -16777216 true false 60 75 60 Circle -16777216 true false 180 75 60 Polygon -16777216 true false 150 255 90 239 62 213 47 191 67 179 90 203 109 218 150 225 192 218 210 203 227 181 251 194 236 217 212 240 face neutral false 0 Circle -7500403 true true 8 7 285 Circle -16777216 true false 60 75 60 Circle -16777216 true false 180 75 60 Rectangle -16777216 true false 60 195 240 225 face sad false 0 Circle -7500403 true true 8 8 285 Circle -16777216 true false 60 75 60 Circle -16777216 true false 180 75 60 Polygon -16777216 true false 150 168 90 184 62 210 47 232 67 244 90 220 109 205 150 198 192 205 210 220 227 242 251 229 236 206 212 183 factory false 0 Rectangle -7500403 true true 76 194 285 270 Rectangle -7500403 true true 36 95 59 231 Rectangle -16777216 true false 90 210 270 240 Line -7500403 true 90 195 90 255 Line -7500403 true 120 195 120 255 Line -7500403 true 150 195 150 240 Line -7500403 true 180 195 180 255 Line -7500403 true 210 210 210 240 Line -7500403 true 240 210 240 240 Line -7500403 true 90 225 270 225 Circle -1 true false 37 73 32 Circle -1 true false 55 38 54 Circle -1 true false 96 21 42 Circle -1 true false 105 40 32 Circle -1 true false 129 19 42 Rectangle -7500403 true true 14 228 78 270 fire false 0 Polygon -7500403 true true 151 286 134 282 103 282 59 248 40 210 32 157 37 108 68 146 71 109 83 72 111 27 127 55 148 11 167 41 180 112 195 57 217 91 226 126 227 203 256 156 256 201 238 263 213 278 183 281 Polygon -955883 true false 126 284 91 251 85 212 91 168 103 132 118 153 125 181 135 141 151 96 185 161 195 203 193 253 164 286 Polygon -2674135 true false 155 284 172 268 172 243 162 224 148 201 130 233 131 260 135 282 fire department false 0 Polygon -7500403 true true 150 55 180 60 210 75 240 45 210 45 195 30 165 15 135 15 105 30 90 45 60 45 90 75 120 60 Polygon -7500403 true true 55 150 60 120 75 90 45 60 45 90 30 105 15 135 15 165 30 195 45 210 45 240 75 210 60 180 Polygon -7500403 true true 245 150 240 120 225 90 255 60 255 90 270 105 285 135 285 165 270 195 255 210 255 240 225 210 240 180 Polygon -7500403 true true 150 245 180 240 210 225 240 255 210 255 195 270 165 285 135 285 105 270 90 255 60 255 90 225 120 240 Circle -7500403 true true 60 60 180 Circle -16777216 false false 75 75 150 fish false 0 Polygon -1 true false 44 131 21 87 15 86 0 120 15 150 0 180 13 214 20 212 45 166 Polygon -1 true false 135 195 119 235 95 218 76 210 46 204 60 165 Polygon -1 true false 75 45 83 77 71 103 86 114 166 78 135 60 Polygon -7500403 true true 30 136 151 77 226 81 280 119 292 146 292 160 287 170 270 195 195 210 151 212 30 166 Circle -16777216 true false 215 106 30 fish 2 false 0 Polygon -1 true false 56 133 34 127 12 105 21 126 23 146 16 163 10 194 32 177 55 173 Polygon -7500403 true true 156 229 118 242 67 248 37 248 51 222 49 168 Polygon -7500403 true true 30 60 45 75 60 105 50 136 150 53 89 56 Polygon -7500403 true true 50 132 146 52 241 72 268 119 291 147 271 156 291 164 264 208 211 239 148 231 48 177 Circle -1 true false 237 116 30 Circle -16777216 true false 241 127 12 Polygon -1 true false 159 228 160 294 182 281 206 236 Polygon -7500403 true true 102 189 109 203 Polygon -1 true false 215 182 181 192 171 177 169 164 152 142 154 123 170 119 223 163 Line -16777216 false 240 77 162 71 Line -16777216 false 164 71 98 78 Line -16777216 false 96 79 62 105 Line -16777216 false 50 179 88 217 Line -16777216 false 88 217 149 230 fish 3 false 0 Polygon -7500403 true true 137 105 124 83 103 76 77 75 53 104 47 136 Polygon -7500403 true true 226 194 223 229 207 243 178 237 169 203 167 175 Polygon -7500403 true true 137 195 124 217 103 224 77 225 53 196 47 164 Polygon -7500403 true true 40 123 32 109 16 108 0 130 0 151 7 182 23 190 40 179 47 145 Polygon -7500403 true true 45 120 90 105 195 90 275 120 294 152 285 165 293 171 270 195 210 210 150 210 45 180 Circle -1184463 true false 244 128 26 Circle -16777216 true false 248 135 14 Line -16777216 false 48 121 133 96 Line -16777216 false 48 179 133 204 Polygon -7500403 true true 241 106 241 77 217 71 190 75 167 99 182 125 Line -16777216 false 226 102 158 95 Line -16777216 false 171 208 225 205 Polygon -1 true false 252 111 232 103 213 132 210 165 223 193 229 204 247 201 237 170 236 137 Polygon -1 true false 135 98 140 137 135 204 154 210 167 209 170 176 160 156 163 126 171 117 156 96 Polygon -16777216 true false 192 117 171 118 162 126 158 148 160 165 168 175 188 183 211 186 217 185 206 181 172 171 164 156 166 133 174 121 Polygon -1 true false 40 121 46 147 42 163 37 179 56 178 65 159 67 128 59 116 flag false 0 Rectangle -7500403 true true 60 15 75 300 Polygon -7500403 true true 90 150 270 90 90 30 Line -7500403 true 75 135 90 135 Line -7500403 true 75 45 90 45 flower false 0 Polygon -10899396 true false 135 120 165 165 180 210 180 240 150 300 165 300 195 240 195 195 165 135 Circle -7500403 true true 85 132 38 Circle -7500403 true true 130 147 38 Circle -7500403 true true 192 85 38 Circle -7500403 true true 85 40 38 Circle -7500403 true true 177 40 38 Circle -7500403 true true 177 132 38 Circle -7500403 true true 70 85 38 Circle -7500403 true true 130 25 38 Circle -7500403 true true 96 51 108 Circle -16777216 true false 113 68 74 Polygon -10899396 true false 189 233 219 188 249 173 279 188 234 218 Polygon -10899396 true false 180 255 150 210 105 210 75 240 135 240 flower budding false 0 Polygon -7500403 true true 135 120 165 165 180 210 180 240 150 300 165 300 195 240 195 195 165 135 Polygon -7500403 true true 189 233 219 188 249 173 279 188 234 218 Polygon -7500403 true true 180 255 150 210 105 210 75 240 135 240 Polygon -7500403 true true 180 150 180 120 165 97 135 84 128 121 147 148 165 165 Polygon -7500403 true true 170 155 131 163 175 167 196 136 food false 0 Polygon -7500403 true true 30 105 45 255 105 255 120 105 Rectangle -7500403 true true 15 90 135 105 Polygon -7500403 true true 75 90 105 15 120 15 90 90 Polygon -7500403 true true 135 225 150 240 195 255 225 255 270 240 285 225 150 225 Polygon -7500403 true true 135 180 150 165 195 150 225 150 270 165 285 180 150 180 Rectangle -7500403 true true 135 195 285 210 footprint human true 0 Polygon -7500403 true true 111 244 115 272 130 286 151 288 168 277 176 257 177 234 175 195 174 172 170 135 177 104 188 79 188 55 179 45 181 32 185 17 176 1 159 2 154 17 161 32 158 44 146 47 144 35 145 21 135 7 124 9 120 23 129 36 133 49 121 47 100 56 89 73 73 94 74 121 86 140 99 163 110 191 Polygon -7500403 true true 97 37 101 44 111 43 118 35 111 23 100 20 95 25 Polygon -7500403 true true 77 52 81 59 91 58 96 50 88 39 82 37 76 42 Polygon -7500403 true true 63 72 67 79 77 78 79 70 73 63 68 60 63 65 footprint other true 0 Polygon -7500403 true true 75 195 90 240 135 270 165 270 195 255 225 195 225 180 195 165 177 154 167 139 150 135 132 138 124 151 105 165 76 172 Polygon -7500403 true true 250 136 225 165 210 135 210 120 227 100 241 99 Polygon -7500403 true true 75 135 90 135 105 120 105 75 90 75 60 105 Polygon -7500403 true true 120 122 155 121 161 62 148 40 136 40 118 70 Polygon -7500403 true true 176 126 200 121 206 89 198 61 186 57 166 106 Polygon -7500403 true true 93 69 103 68 102 50 Polygon -7500403 true true 146 34 136 33 137 15 Polygon -7500403 true true 198 55 188 52 189 34 Polygon -7500403 true true 238 92 228 94 229 76 frog top true 0 Polygon -7500403 true true 146 18 135 30 119 42 105 90 90 150 105 195 135 225 165 225 195 195 210 150 195 90 180 41 165 30 155 18 Polygon -7500403 true true 91 176 67 148 70 121 66 119 61 133 59 111 53 111 52 131 47 115 42 120 46 146 55 187 80 237 106 269 116 268 114 214 131 222 Polygon -7500403 true true 185 62 234 84 223 51 226 48 234 61 235 38 240 38 243 60 252 46 255 49 244 95 188 92 Polygon -7500403 true true 115 62 66 84 77 51 74 48 66 61 65 38 60 38 57 60 48 46 45 49 56 95 112 92 Polygon -7500403 true true 200 186 233 148 230 121 234 119 239 133 241 111 247 111 248 131 253 115 258 120 254 146 245 187 220 237 194 269 184 268 186 214 169 222 Circle -16777216 true false 157 38 18 Circle -16777216 true false 125 38 18 garbage can false 0 Polygon -16777216 false false 60 240 66 257 90 285 134 299 164 299 209 284 234 259 240 240 Rectangle -7500403 true true 60 75 240 240 Polygon -7500403 true true 60 238 66 256 90 283 135 298 165 298 210 283 235 256 240 238 Polygon -7500403 true true 60 75 66 57 90 30 135 15 165 15 210 30 235 57 240 75 Polygon -7500403 true true 60 75 66 93 90 120 135 135 165 135 210 120 235 93 240 75 Polygon -16777216 false false 59 75 66 57 89 30 134 15 164 15 209 30 234 56 239 75 235 91 209 120 164 135 134 135 89 120 64 90 Line -16777216 false 210 120 210 285 Line -16777216 false 90 120 90 285 Line -16777216 false 125 131 125 296 Line -16777216 false 65 93 65 258 Line -16777216 false 175 131 175 296 Line -16777216 false 235 93 235 258 Polygon -16777216 false false 112 52 112 66 127 51 162 64 170 87 185 85 192 71 180 54 155 39 127 36 ghost false 0 Polygon -7500403 true true 30 165 13 164 -2 149 0 135 -2 119 0 105 15 75 30 75 58 104 43 119 43 134 58 134 73 134 88 104 73 44 78 14 103 -1 193 -1 223 29 208 89 208 119 238 134 253 119 240 105 238 89 240 75 255 60 270 60 283 74 300 90 298 104 298 119 300 135 285 135 285 150 268 164 238 179 208 164 208 194 238 209 253 224 268 239 268 269 238 299 178 299 148 284 103 269 58 284 43 299 58 269 103 254 148 254 193 254 163 239 118 209 88 179 73 179 58 164 Line -16777216 false 189 253 215 253 Circle -16777216 true false 102 30 30 Polygon -16777216 true false 165 105 135 105 120 120 105 105 135 75 165 75 195 105 180 120 Circle -16777216 true false 160 30 30 hawk true 0 Polygon -7500403 true true 151 170 136 170 123 229 143 244 156 244 179 229 166 170 Polygon -16777216 true false 152 154 137 154 125 213 140 229 159 229 179 214 167 154 Polygon -7500403 true true 151 140 136 140 126 202 139 214 159 214 176 200 166 140 Polygon -16777216 true false 151 125 134 124 128 188 140 198 161 197 174 188 166 125 Polygon -7500403 true true 152 86 227 72 286 97 272 101 294 117 276 118 287 131 270 131 278 141 264 138 267 145 228 150 153 147 Polygon -7500403 true true 160 74 159 61 149 54 130 53 139 62 133 81 127 113 129 149 134 177 150 206 168 179 172 147 169 111 Circle -16777216 true false 144 55 7 Polygon -16777216 true false 129 53 135 58 139 54 Polygon -7500403 true true 148 86 73 72 14 97 28 101 6 117 24 118 13 131 30 131 22 141 36 138 33 145 72 150 147 147 hex false 0 Polygon -7500403 true true 0 150 75 30 225 30 300 150 225 270 75 270 hexagonal prism false 0 Rectangle -7500403 true true 90 90 210 270 Polygon -1 true false 210 270 255 240 255 60 210 90 Polygon -13345367 true false 90 90 45 60 45 240 90 270 Polygon -11221820 true false 45 60 90 30 210 30 255 60 210 90 90 90 house false 0 Rectangle -7500403 true true 45 120 255 285 Rectangle -16777216 true false 120 210 180 285 Polygon -7500403 true true 15 120 150 15 285 120 Line -16777216 false 30 120 270 120 house bungalow false 0 Rectangle -7500403 true true 210 75 225 255 Rectangle -7500403 true true 90 135 210 255 Rectangle -16777216 true false 165 195 195 255 Line -16777216 false 210 135 210 255 Rectangle -16777216 true false 105 202 135 240 Polygon -7500403 true true 225 150 75 150 150 75 Line -16777216 false 75 150 225 150 Line -16777216 false 195 120 225 150 Polygon -16777216 false false 165 195 150 195 180 165 210 195 Rectangle -16777216 true false 135 105 165 135 house colonial false 0 Rectangle -7500403 true true 270 75 285 255 Rectangle -7500403 true true 45 135 270 255 Rectangle -16777216 true false 124 195 187 256 Rectangle -16777216 true false 60 195 105 240 Rectangle -16777216 true false 60 150 105 180 Rectangle -16777216 true false 210 150 255 180 Line -16777216 false 270 135 270 255 Polygon -7500403 true true 30 135 285 135 240 90 75 90 Line -16777216 false 30 135 285 135 Line -16777216 false 255 105 285 135 Line -7500403 true 154 195 154 255 Rectangle -16777216 true false 210 195 255 240 Rectangle -16777216 true false 135 150 180 180 house efficiency false 0 Rectangle -7500403 true true 180 90 195 195 Rectangle -7500403 true true 90 165 210 255 Rectangle -16777216 true false 165 195 195 255 Rectangle -16777216 true false 105 202 135 240 Polygon -7500403 true true 225 165 75 165 150 90 Line -16777216 false 75 165 225 165 house ranch false 0 Rectangle -7500403 true true 270 120 285 255 Rectangle -7500403 true true 15 180 270 255 Polygon -7500403 true true 0 180 300 180 240 135 60 135 0 180 Rectangle -16777216 true false 120 195 180 255 Line -7500403 true 150 195 150 255 Rectangle -16777216 true false 45 195 105 240 Rectangle -16777216 true false 195 195 255 240 Line -7500403 true 75 195 75 240 Line -7500403 true 225 195 225 240 Line -16777216 false 270 180 270 255 Line -16777216 false 0 180 300 180 house two story false 0 Polygon -7500403 true true 2 180 227 180 152 150 32 150 Rectangle -7500403 true true 270 75 285 255 Rectangle -7500403 true true 75 135 270 255 Rectangle -16777216 true false 124 195 187 256 Rectangle -16777216 true false 210 195 255 240 Rectangle -16777216 true false 90 150 135 180 Rectangle -16777216 true false 210 150 255 180 Line -16777216 false 270 135 270 255 Rectangle -7500403 true true 15 180 75 255 Polygon -7500403 true true 60 135 285 135 240 90 105 90 Line -16777216 false 75 135 75 180 Rectangle -16777216 true false 30 195 93 240 Line -16777216 false 60 135 285 135 Line -16777216 false 255 105 285 135 Line -16777216 false 0 180 75 180 Line -7500403 true 60 195 60 240 Line -7500403 true 154 195 154 255 i beam false 0 Polygon -7500403 true true 165 15 240 15 240 45 195 75 195 240 240 255 240 285 165 285 Polygon -7500403 true true 135 15 60 15 60 45 105 75 105 240 60 255 60 285 135 285 key false 0 Rectangle -7500403 true true 90 120 285 150 Rectangle -7500403 true true 255 135 285 195 Rectangle -7500403 true true 180 135 210 195 Circle -7500403 true true 0 60 150 Circle -16777216 true false 30 90 90 lander true 0 Polygon -7500403 true true 45 75 150 30 255 75 285 225 240 225 240 195 210 195 210 225 165 225 165 195 135 195 135 225 90 225 90 195 60 195 60 225 15 225 45 75 lander 2 true 0 Polygon -7500403 true true 135 205 120 235 180 235 165 205 Polygon -16777216 false false 135 205 120 235 180 235 165 205 Line -7500403 true 75 30 195 30 Polygon -7500403 true true 195 150 210 165 225 165 240 150 240 135 225 120 210 120 195 135 Polygon -16777216 false false 195 150 210 165 225 165 240 150 240 135 225 120 210 120 195 135 Polygon -7500403 true true 75 75 105 45 195 45 225 75 225 135 195 165 105 165 75 135 Polygon -16777216 false false 75 75 105 45 195 45 225 75 225 120 225 135 195 165 105 165 75 135 Polygon -16777216 true false 217 90 210 75 180 60 180 90 Polygon -16777216 true false 83 90 90 75 120 60 120 90 Polygon -16777216 false false 135 165 120 135 135 75 150 60 165 75 180 135 165 165 Circle -7500403 true true 120 15 30 Circle -16777216 false false 120 15 30 Line -7500403 true 150 0 150 45 Polygon -1184463 true false 90 165 105 210 195 210 210 165 Line -1184463 false 210 165 245 239 Line -1184463 false 237 221 194 207 Rectangle -1184463 true false 221 245 261 238 Line -1184463 false 90 165 55 239 Line -1184463 false 63 221 106 207 Rectangle -1184463 true false 39 245 79 238 Polygon -16777216 false false 90 165 105 210 195 210 210 165 Rectangle -16777216 false false 221 237 262 245 Rectangle -16777216 false false 38 237 79 245 leaf false 0 Polygon -7500403 true true 150 210 135 195 120 210 60 210 30 195 60 180 60 165 15 135 30 120 15 105 40 104 45 90 60 90 90 105 105 120 120 120 105 60 120 60 135 30 150 15 165 30 180 60 195 60 180 120 195 120 210 105 240 90 255 90 263 104 285 105 270 120 285 135 240 165 240 180 270 195 240 210 180 210 165 195 Polygon -7500403 true true 135 195 135 240 120 255 105 255 105 285 135 285 165 240 165 195 leaf 2 false 0 Rectangle -7500403 true true 144 218 156 298 Polygon -7500403 true true 150 263 133 276 102 276 58 242 35 176 33 139 43 114 54 123 62 87 75 53 94 30 104 39 120 9 155 31 180 68 191 56 216 85 235 125 240 173 250 165 248 205 225 247 200 271 176 275 letter opened false 0 Rectangle -7500403 true true 30 90 270 225 Rectangle -16777216 false false 30 90 270 225 Line -16777216 false 150 30 270 105 Line -16777216 false 30 105 150 30 Line -16777216 false 270 225 181 161 Line -16777216 false 30 225 119 161 Polygon -6459832 true false 30 105 150 30 270 105 150 180 Line -16777216 false 30 105 270 105 Line -16777216 false 270 105 150 180 Line -16777216 false 30 105 150 180 letter sealed false 0 Rectangle -7500403 true true 30 90 270 225 Rectangle -16777216 false false 30 90 270 225 Line -16777216 false 270 105 150 180 Line -16777216 false 30 105 150 180 Line -16777216 false 270 225 181 161 Line -16777216 false 30 225 119 161 lightning false 0 Polygon -7500403 true true 120 135 90 195 135 195 105 300 225 165 180 165 210 105 165 105 195 0 75 135 lily pad false 0 Polygon -7500403 true true 148 151 137 37 119 25 111 36 78 54 40 99 30 137 32 175 56 223 87 251 137 275 157 275 213 250 239 221 257 178 262 137 244 91 210 53 172 37 160 22 154 36 Line -13840069 false 154 151 207 97 Circle -13840069 false false 133 148 26 Line -13840069 false 52 122 134 157 Line -13840069 false 133 171 89 196 Line -13840069 false 147 193 147 254 Line -13840069 false 157 171 205 233 Line -13840069 false 161 161 204 163 Line -13840069 false 141 149 111 72 line true 0 Line -7500403 true 150 0 150 300 line half true 0 Line -7500403 true 150 0 150 150 link true 0 Line -7500403 true 150 0 150 300 logs false 0 Polygon -7500403 true true 15 241 75 271 89 245 135 271 150 246 195 271 285 121 235 96 255 61 195 31 181 55 135 31 45 181 49 183 Circle -1 true false 132 222 66 Circle -16777216 false false 132 222 66 Circle -1 true false 72 222 66 Circle -1 true false 102 162 66 Circle -7500403 true true 222 72 66 Circle -7500403 true true 192 12 66 Circle -7500403 true true 132 12 66 Circle -16777216 false false 102 162 66 Circle -16777216 false false 72 222 66 Circle -1 true false 12 222 66 Circle -16777216 false false 30 240 30 Circle -1 true false 42 162 66 Circle -16777216 false false 42 162 66 Line -16777216 false 195 30 105 180 Line -16777216 false 255 60 165 210 Circle -16777216 false false 12 222 66 Circle -16777216 false false 90 240 30 Circle -16777216 false false 150 240 30 Circle -16777216 false false 120 180 30 Circle -16777216 false false 60 180 30 Line -16777216 false 195 270 285 120 Line -16777216 false 15 240 45 180 Line -16777216 false 45 180 135 30 magnet true 0 Polygon -7500403 true true 120 270 75 270 60 105 60 60 75 30 106 10 150 3 195 10 225 30 240 60 240 105 225 270 180 270 195 105 196 74 184 55 165 45 135 45 115 55 104 75 105 105 Polygon -16777216 true false 219 264 188 264 193 214 224 215 Polygon -16777216 true false 81 264 112 264 107 214 76 215 molecule hydrogen true 0 Circle -1 true false 138 108 84 Circle -16777216 false false 138 108 84 Circle -1 true false 78 108 84 Circle -16777216 false false 78 108 84 molecule oxygen true 0 Circle -7500403 true true 90 90 150 Circle -16777216 false false 90 90 150 Circle -7500403 true true 60 75 150 Circle -16777216 false false 60 75 150 Line -7500403 true 150 75 210 120 molecule water true 0 Circle -1 true false 183 63 84 Circle -16777216 false false 183 63 84 Circle -7500403 true true 75 75 150 Circle -16777216 false false 75 75 150 Circle -1 true false 33 63 84 Circle -16777216 false false 33 63 84 monster false 0 Polygon -7500403 true true 75 150 90 195 210 195 225 150 255 120 255 45 180 0 120 0 45 45 45 120 Circle -16777216 true false 165 60 60 Circle -16777216 true false 75 60 60 Polygon -7500403 true true 225 150 285 195 285 285 255 300 255 210 180 165 Polygon -7500403 true true 75 150 15 195 15 285 45 300 45 210 120 165 Polygon -7500403 true true 210 210 225 285 195 285 165 165 Polygon -7500403 true true 90 210 75 285 105 285 135 165 Rectangle -7500403 true true 135 165 165 270 moon false 0 Polygon -7500403 true true 175 7 83 36 25 108 27 186 79 250 134 271 205 274 281 239 207 233 152 216 113 185 104 132 110 77 132 51 mortar pestle false 0 Polygon -7500403 true true 60 150 30 150 30 165 45 165 45 195 60 225 90 255 150 270 210 255 240 225 255 195 255 165 270 165 270 150 Polygon -6459832 true false 75 150 30 105 15 105 15 90 45 60 60 60 60 75 150 150 Line -16777216 false 45 120 75 90 Line -16777216 false 105 150 125 128 mouse side false 0 Polygon -7500403 true true 38 162 24 165 19 174 22 192 47 213 90 225 135 230 161 240 178 262 150 246 117 238 73 232 36 220 11 196 7 171 15 153 37 146 46 145 Polygon -7500403 true true 289 142 271 165 237 164 217 185 235 192 254 192 259 199 245 200 248 203 226 199 200 194 155 195 122 185 84 187 91 195 82 192 83 201 72 190 67 199 62 185 46 183 36 165 40 134 57 115 74 106 60 109 90 97 112 94 92 93 130 86 154 88 134 81 183 90 197 94 183 86 212 95 211 88 224 83 235 88 248 97 246 90 257 107 255 97 270 120 Polygon -16777216 true false 234 100 220 96 210 100 214 111 228 116 239 115 Circle -16777216 true false 246 117 20 Line -7500403 true 270 153 282 174 Line -7500403 true 272 153 255 173 Line -7500403 true 269 156 268 177 mouse top true 0 Polygon -7500403 true true 144 238 153 255 168 260 196 257 214 241 237 234 248 243 237 260 199 278 154 282 133 276 109 270 90 273 83 283 98 279 120 282 156 293 200 287 235 273 256 254 261 238 252 226 232 221 211 228 194 238 183 246 168 246 163 232 Polygon -7500403 true true 120 78 116 62 127 35 139 16 150 4 160 16 173 33 183 60 180 80 Polygon -7500403 true true 119 75 179 75 195 105 190 166 193 215 165 240 135 240 106 213 110 165 105 105 Polygon -7500403 true true 167 69 184 68 193 64 199 65 202 74 194 82 185 79 171 80 Polygon -7500403 true true 133 69 116 68 107 64 101 65 98 74 106 82 115 79 129 80 Polygon -16777216 true false 163 28 171 32 173 40 169 45 166 47 Polygon -16777216 true false 137 28 129 32 127 40 131 45 134 47 Polygon -16777216 true false 150 6 143 14 156 14 Line -7500403 true 161 17 195 10 Line -7500403 true 160 22 187 20 Line -7500403 true 160 22 201 31 Line -7500403 true 140 22 99 31 Line -7500403 true 140 22 113 20 Line -7500403 true 139 17 105 10 music notes 1 false 0 Polygon -7500403 true true 75 210 96 212 118 218 131 229 135 238 135 243 131 251 118 261 96 268 75 270 55 268 33 262 19 251 15 242 15 238 19 229 33 218 54 212 Rectangle -7500403 true true 120 90 135 255 Polygon -7500403 true true 225 165 246 167 268 173 281 184 285 193 285 198 281 206 268 216 246 223 225 225 205 223 183 217 169 206 165 197 165 193 169 184 183 173 204 167 Polygon -7500403 true true 120 60 120 105 285 45 285 0 Rectangle -7500403 true true 270 15 285 195 music notes 2 false 0 Polygon -7500403 true true 135 195 156 197 178 203 191 214 195 223 195 228 191 236 178 246 156 253 135 255 115 253 93 247 79 236 75 227 75 223 79 214 93 203 114 197 Rectangle -7500403 true true 180 30 195 225 music notes 3 false 0 Polygon -7500403 true true 135 195 156 197 178 203 191 214 195 223 195 228 191 236 178 246 156 253 135 255 115 253 93 247 79 236 75 227 75 223 79 214 93 203 114 197 Rectangle -7500403 true true 180 30 195 225 Polygon -7500403 true true 194 66 210 80 242 93 271 94 293 84 301 68 269 69 238 60 213 46 197 34 193 30 orbit 1 true 0 Circle -7500403 true true 116 11 67 Circle -7500403 false true 41 41 218 orbit 2 true 0 Circle -7500403 true true 116 221 67 Circle -7500403 true true 116 11 67 Circle -7500403 false true 44 44 212 orbit 3 true 0 Circle -7500403 true true 116 11 67 Circle -7500403 true true 26 176 67 Circle -7500403 true true 206 176 67 Circle -7500403 false true 45 45 210 orbit 4 true 0 Circle -7500403 true true 116 11 67 Circle -7500403 true true 116 221 67 Circle -7500403 true true 221 116 67 Circle -7500403 false true 45 45 210 Circle -7500403 true true 11 116 67 orbit 5 true 0 Circle -7500403 true true 116 11 67 Circle -7500403 true true 13 89 67 Circle -7500403 true true 178 206 67 Circle -7500403 true true 53 204 67 Circle -7500403 true true 220 91 67 Circle -7500403 false true 45 45 210 orbit 6 true 0 Circle -7500403 true true 116 11 67 Circle -7500403 true true 26 176 67 Circle -7500403 true true 206 176 67 Circle -7500403 false true 45 45 210 Circle -7500403 true true 26 58 67 Circle -7500403 true true 206 58 67 Circle -7500403 true true 116 221 67 paintbrush false 0 Polygon -1 true false 87 191 103 218 238 53 223 38 Polygon -13345367 true false 104 204 104 218 239 53 235 47 Polygon -7500403 true true 99 173 83 175 71 186 64 207 52 235 45 251 77 238 108 227 124 205 118 185 pawn false 10 Circle -13345367 true true 15 15 270 Circle -16777216 false false 15 15 270 Circle -7500403 true false 75 75 150 Circle -16777216 false false 75 75 150 pencil false 0 Polygon -7500403 true true 255 60 255 90 105 240 90 225 Polygon -7500403 true true 60 195 75 210 240 45 210 45 Polygon -7500403 true true 90 195 105 210 255 60 240 45 Polygon -6459832 true false 90 195 60 195 45 255 105 240 105 210 Polygon -16777216 true false 45 255 74 248 75 240 60 225 51 225 pentagon false 0 Polygon -7500403 true true 150 15 15 120 60 285 240 285 285 120 person false 0 Circle -7500403 true true 110 5 80 Polygon -7500403 true true 105 90 120 195 90 285 105 300 135 300 150 225 165 300 195 300 210 285 180 195 195 90 Rectangle -7500403 true true 127 79 172 94 Polygon -7500403 true true 195 90 240 150 225 180 165 105 Polygon -7500403 true true 105 90 60 150 75 180 135 105 person business false 0 Rectangle -1 true false 120 90 180 180 Polygon -13345367 true false 135 90 150 105 135 180 150 195 165 180 150 105 165 90 Polygon -7500403 true true 120 90 105 90 60 195 90 210 116 154 120 195 90 285 105 300 135 300 150 225 165 300 195 300 210 285 180 195 183 153 210 210 240 195 195 90 180 90 150 165 Circle -7500403 true true 110 5 80 Rectangle -7500403 true true 127 76 172 91 Line -16777216 false 172 90 161 94 Line -16777216 false 128 90 139 94 Polygon -13345367 true false 195 225 195 300 270 270 270 195 Rectangle -13791810 true false 180 225 195 300 Polygon -14835848 true false 180 226 195 226 270 196 255 196 Polygon -13345367 true false 209 202 209 216 244 202 243 188 Line -16777216 false 180 90 150 165 Line -16777216 false 120 90 150 165 person construction false 0 Rectangle -7500403 true true 123 76 176 95 Polygon -1 true false 105 90 60 195 90 210 115 162 184 163 210 210 240 195 195 90 Polygon -13345367 true false 180 195 120 195 90 285 105 300 135 300 150 225 165 300 195 300 210 285 Circle -7500403 true true 110 5 80 Line -16777216 false 148 143 150 196 Rectangle -16777216 true false 116 186 182 198 Circle -1 true false 152 143 9 Circle -1 true false 152 166 9 Rectangle -16777216 true false 179 164 183 186 Polygon -955883 true false 180 90 195 90 195 165 195 195 150 195 150 120 180 90 Polygon -955883 true false 120 90 105 90 105 165 105 195 150 195 150 120 120 90 Rectangle -16777216 true false 135 114 150 120 Rectangle -16777216 true false 135 144 150 150 Rectangle -16777216 true false 135 174 150 180 Polygon -955883 true false 105 42 111 16 128 2 149 0 178 6 190 18 192 28 220 29 216 34 201 39 167 35 Polygon -6459832 true false 54 253 54 238 219 73 227 78 Polygon -16777216 true false 15 285 15 255 30 225 45 225 75 255 75 270 45 285 person doctor false 0 Polygon -7500403 true true 105 90 120 195 90 285 105 300 135 300 150 225 165 300 195 300 210 285 180 195 195 90 Polygon -13345367 true false 135 90 150 105 135 135 150 150 165 135 150 105 165 90 Polygon -7500403 true true 105 90 60 195 90 210 135 105 Polygon -7500403 true true 195 90 240 195 210 210 165 105 Circle -7500403 true true 110 5 80 Rectangle -7500403 true true 127 79 172 94 Polygon -1 true false 105 90 60 195 90 210 114 156 120 195 90 270 210 270 180 195 186 155 210 210 240 195 195 90 165 90 150 150 135 90 Line -16777216 false 150 148 150 270 Line -16777216 false 196 90 151 149 Line -16777216 false 104 90 149 149 Circle -1 true false 180 0 30 Line -16777216 false 180 15 120 15 Line -16777216 false 150 195 165 195 Line -16777216 false 150 240 165 240 Line -16777216 false 150 150 165 150 person farmer false 0 Polygon -7500403 true true 105 90 120 195 90 285 105 300 135 300 150 225 165 300 195 300 210 285 180 195 195 90 Polygon -1 true false 60 195 90 210 114 154 120 195 180 195 187 157 210 210 240 195 195 90 165 90 150 105 150 150 135 90 105 90 Circle -7500403 true true 110 5 80 Rectangle -7500403 true true 127 79 172 94 Polygon -13345367 true false 120 90 120 180 120 195 90 285 105 300 135 300 150 225 165 300 195 300 210 285 180 195 180 90 172 89 165 135 135 135 127 90 Polygon -6459832 true false 116 4 113 21 71 33 71 40 109 48 117 34 144 27 180 26 188 36 224 23 222 14 178 16 167 0 Line -16777216 false 225 90 270 90 Line -16777216 false 225 15 225 90 Line -16777216 false 270 15 270 90 Line -16777216 false 247 15 247 90 Rectangle -6459832 true false 240 90 255 300 person graduate false 0 Circle -16777216 false false 39 183 20 Polygon -1 true false 50 203 85 213 118 227 119 207 89 204 52 185 Circle -7500403 true true 110 5 80 Rectangle -7500403 true true 127 79 172 94 Polygon -8630108 true false 90 19 150 37 210 19 195 4 105 4 Polygon -8630108 true false 120 90 105 90 60 195 90 210 120 165 90 285 105 300 195 300 210 285 180 165 210 210 240 195 195 90 Polygon -1184463 true false 135 90 120 90 150 135 180 90 165 90 150 105 Line -2674135 false 195 90 150 135 Line -2674135 false 105 90 150 135 Polygon -1 true false 135 90 150 105 165 90 Circle -1 true false 104 205 20 Circle -1 true false 41 184 20 Circle -16777216 false false 106 206 18 Line -2674135 false 208 22 208 57 person lumberjack false 0 Polygon -7500403 true true 105 90 120 195 90 285 105 300 135 300 150 225 165 300 195 300 210 285 180 195 195 90 Polygon -2674135 true false 60 196 90 211 114 155 120 196 180 196 187 158 210 211 240 196 195 91 165 91 150 106 150 135 135 91 105 91 Circle -7500403 true true 110 5 80 Rectangle -7500403 true true 127 79 172 94 Polygon -6459832 true false 174 90 181 90 180 195 165 195 Polygon -13345367 true false 180 195 120 195 90 285 105 300 135 300 150 225 165 300 195 300 210 285 Polygon -6459832 true false 126 90 119 90 120 195 135 195 Rectangle -6459832 true false 45 180 255 195 Polygon -16777216 true false 255 165 255 195 240 225 255 240 285 240 300 225 285 195 285 165 Line -16777216 false 135 165 165 165 Line -16777216 false 135 135 165 135 Line -16777216 false 90 135 120 135 Line -16777216 false 105 120 120 120 Line -16777216 false 180 120 195 120 Line -16777216 false 180 135 210 135 Line -16777216 false 90 150 105 165 Line -16777216 false 225 165 210 180 Line -16777216 false 75 165 90 180 Line -16777216 false 210 150 195 165 Line -16777216 false 180 105 210 180 Line -16777216 false 120 105 90 180 Line -16777216 false 150 135 150 165 Polygon -2674135 true false 100 30 104 44 189 24 185 10 173 10 166 1 138 -1 111 3 109 28 person police false 0 Polygon -1 true false 124 91 150 165 178 91 Polygon -13345367 true false 134 91 149 106 134 181 149 196 164 181 149 106 164 91 Polygon -13345367 true false 180 195 120 195 90 285 105 300 135 300 150 225 165 300 195 300 210 285 Polygon -13345367 true false 120 90 105 90 60 195 90 210 116 158 120 195 180 195 184 158 210 210 240 195 195 90 180 90 165 105 150 165 135 105 120 90 Rectangle -7500403 true true 123 76 176 92 Circle -7500403 true true 110 5 80 Polygon -13345367 true false 150 26 110 41 97 29 137 -1 158 6 185 0 201 6 196 23 204 34 180 33 Line -13345367 false 121 90 194 90 Line -16777216 false 148 143 150 196 Rectangle -16777216 true false 116 186 182 198 Rectangle -16777216 true false 109 183 124 227 Rectangle -16777216 true false 176 183 195 205 Circle -1 true false 152 143 9 Circle -1 true false 152 166 9 Polygon -1184463 true false 172 112 191 112 185 133 179 133 Polygon -1184463 true false 175 6 194 6 189 21 180 21 Line -1184463 false 149 24 197 24 Rectangle -16777216 true false 101 177 122 187 Rectangle -16777216 true false 179 164 183 186 person service false 0 Polygon -7500403 true true 180 195 120 195 90 285 105 300 135 300 150 225 165 300 195 300 210 285 Polygon -1 true false 120 90 105 90 60 195 90 210 120 150 120 195 180 195 180 150 210 210 240 195 195 90 180 90 165 105 150 165 135 105 120 90 Polygon -1 true false 123 90 149 141 177 90 Rectangle -7500403 true true 123 76 176 92 Circle -7500403 true true 110 5 80 Line -13345367 false 121 90 194 90 Line -16777216 false 148 143 150 196 Rectangle -16777216 true false 116 186 182 198 Circle -1 true false 152 143 9 Circle -1 true false 152 166 9 Rectangle -16777216 true false 179 164 183 186 Polygon -2674135 true false 180 90 195 90 183 160 180 195 150 195 150 135 180 90 Polygon -2674135 true false 120 90 105 90 114 161 120 195 150 195 150 135 120 90 Polygon -2674135 true false 155 91 128 77 128 101 Rectangle -16777216 true false 118 129 141 140 Polygon -2674135 true false 145 91 172 77 172 101 person soldier false 0 Rectangle -7500403 true true 127 79 172 94 Polygon -10899396 true false 105 90 60 195 90 210 135 105 Polygon -10899396 true false 195 90 240 195 210 210 165 105 Circle -7500403 true true 110 5 80 Polygon -10899396 true false 105 90 120 195 90 285 105 300 135 300 150 225 165 300 195 300 210 285 180 195 195 90 Polygon -6459832 true false 120 90 105 90 180 195 180 165 Line -6459832 false 109 105 139 105 Line -6459832 false 122 125 151 117 Line -6459832 false 137 143 159 134 Line -6459832 false 158 179 181 158 Line -6459832 false 146 160 169 146 Rectangle -6459832 true false 120 193 180 201 Polygon -6459832 true false 122 4 107 16 102 39 105 53 148 34 192 27 189 17 172 2 145 0 Polygon -16777216 true false 183 90 240 15 247 22 193 90 Rectangle -6459832 true false 114 187 128 208 Rectangle -6459832 true false 177 187 191 208 person student false 0 Polygon -13791810 true false 135 90 150 105 135 165 150 180 165 165 150 105 165 90 Polygon -7500403 true true 195 90 240 195 210 210 165 105 Circle -7500403 true true 110 5 80 Rectangle -7500403 true true 127 79 172 94 Polygon -7500403 true true 105 90 120 195 90 285 105 300 135 300 150 225 165 300 195 300 210 285 180 195 195 90 Polygon -1 true false 100 210 130 225 145 165 85 135 63 189 Polygon -13791810 true false 90 210 120 225 135 165 67 130 53 189 Polygon -1 true false 120 224 131 225 124 210 Line -16777216 false 139 168 126 225 Line -16777216 false 140 167 76 136 Polygon -7500403 true true 105 90 60 195 90 210 135 105 petals false 0 Circle -7500403 true true 117 12 66 Circle -7500403 true true 116 221 67 Circle -7500403 true true 41 41 67 Circle -7500403 true true 11 116 67 Circle -7500403 true true 41 191 67 Circle -7500403 true true 191 191 67 Circle -7500403 true true 221 116 67 Circle -7500403 true true 191 41 67 Circle -7500403 true true 60 60 180 plant false 0 Rectangle -7500403 true true 135 90 165 300 Polygon -7500403 true true 135 255 90 210 45 195 75 255 135 285 Polygon -7500403 true true 165 255 210 210 255 195 225 255 165 285 Polygon -7500403 true true 135 180 90 135 45 120 75 180 135 210 Polygon -7500403 true true 165 180 165 210 225 180 255 120 210 135 Polygon -7500403 true true 135 105 90 60 45 45 75 105 135 135 Polygon -7500403 true true 165 105 165 135 225 105 255 45 210 60 Polygon -7500403 true true 135 90 120 45 150 15 180 45 165 90 plant medium false 0 Rectangle -7500403 true true 135 165 165 300 Polygon -7500403 true true 135 255 90 210 45 195 75 255 135 285 Polygon -7500403 true true 165 255 210 210 255 195 225 255 165 285 Polygon -7500403 true true 135 180 90 135 45 120 75 180 135 210 Polygon -7500403 true true 165 180 165 210 225 180 255 120 210 135 Polygon -7500403 true true 135 165 120 120 150 90 180 120 165 165 plant small false 0 Rectangle -7500403 true true 135 240 165 300 Polygon -7500403 true true 135 255 90 210 45 195 75 255 135 285 Polygon -7500403 true true 165 255 210 210 255 195 225 255 165 285 Polygon -7500403 true true 135 240 120 195 150 165 180 195 165 240 police false 0 Circle -7500403 false true 45 45 210 Polygon -7500403 true true 96 225 150 60 206 224 63 120 236 120 Polygon -7500403 true true 120 120 195 120 180 180 180 185 113 183 Polygon -7500403 false true 30 15 0 45 15 60 30 90 30 105 15 165 3 209 3 225 15 255 60 270 75 270 99 256 105 270 120 285 150 300 180 285 195 270 203 256 240 270 255 270 285 255 294 225 294 210 285 165 270 105 270 90 285 60 300 45 270 15 225 30 210 30 150 15 90 30 75 30 pumpkin false 0 Polygon -7500403 false true 148 30 107 33 74 44 33 58 15 105 0 150 30 240 105 285 135 285 150 270 165 285 195 285 255 255 300 150 268 62 225 43 196 36 Polygon -7500403 true true 33 58 0 150 30 240 105 285 135 285 150 270 165 285 195 285 255 255 300 150 268 62 226 43 194 36 148 32 105 35 Polygon -16777216 false false 108 40 75 57 42 101 32 177 79 253 124 285 133 285 147 268 122 222 103 176 107 131 122 86 140 52 154 42 193 66 204 101 216 158 212 209 188 256 164 278 163 283 196 285 234 255 257 199 268 137 251 84 229 52 191 41 163 38 151 41 Polygon -6459832 true false 133 50 171 50 167 32 155 15 146 2 117 10 126 23 130 33 Polygon -16777216 false false 117 10 127 26 129 35 132 49 170 49 168 32 154 14 145 1 pushpin false 0 Polygon -7500403 true true 130 158 105 180 93 205 119 196 142 173 Polygon -16777216 true false 121 112 111 128 109 143 112 158 123 175 138 184 156 189 169 188 186 177 199 158 139 98 Circle -7500403 true true 126 86 90 Polygon -16777216 true false 159 103 152 114 151 125 152 135 158 144 169 150 182 151 194 149 207 142 238 111 191 72 Polygon -16777216 true false 187 56 177 72 175 87 178 102 189 119 204 128 222 133 235 132 252 121 265 102 205 42 Circle -7500403 true true 190 30 90 rabbit false 0 Polygon -7500403 true true 61 150 76 180 91 195 103 214 91 240 76 255 61 270 76 270 106 255 132 209 151 210 181 210 211 240 196 255 181 255 166 247 151 255 166 270 211 270 241 255 240 210 270 225 285 165 256 135 226 105 166 90 91 105 Polygon -7500403 true true 75 164 94 104 70 82 45 89 19 104 4 149 19 164 37 162 59 153 Polygon -7500403 true true 64 98 96 87 138 26 130 15 97 36 54 86 Polygon -7500403 true true 49 89 57 47 78 4 89 20 70 88 Circle -16777216 true false 37 103 16 Line -16777216 false 44 150 104 150 Line -16777216 false 39 158 84 175 Line -16777216 false 29 159 57 195 Polygon -5825686 true false 0 150 15 165 15 150 Polygon -5825686 true false 76 90 97 47 130 32 Line -16777216 false 180 210 165 180 Line -16777216 false 165 180 180 165 Line -16777216 false 180 165 225 165 Line -16777216 false 180 210 210 240 rocket true 0 Polygon -7500403 true true 120 165 75 285 135 255 165 255 225 285 180 165 Polygon -1 true false 135 285 105 135 105 105 120 45 135 15 150 0 165 15 180 45 195 105 195 135 165 285 Rectangle -7500403 true true 147 176 153 288 Polygon -7500403 true true 120 45 180 45 165 15 150 0 135 15 Line -7500403 true 105 105 135 120 Line -7500403 true 135 120 165 120 Line -7500403 true 165 120 195 105 Line -7500403 true 105 135 135 150 Line -7500403 true 135 150 165 150 Line -7500403 true 165 150 195 135 sailboat side false 0 Line -16777216 false 0 240 120 210 Polygon -7500403 true true 0 239 270 254 270 269 240 284 225 299 60 299 15 254 Polygon -1 true false 15 240 30 195 75 120 105 90 105 225 Polygon -1 true false 135 75 165 180 150 240 255 240 285 225 255 150 210 105 Line -16777216 false 105 90 120 60 Line -16777216 false 120 45 120 240 Line -16777216 false 150 240 120 240 Line -16777216 false 135 75 120 60 Polygon -7500403 true true 120 60 75 45 120 30 Polygon -16777216 false false 105 90 75 120 30 195 15 240 105 225 Polygon -16777216 false false 135 75 165 180 150 240 255 240 285 225 255 150 210 105 Polygon -16777216 false false 0 239 60 299 225 299 240 284 270 269 270 254 shark false 0 Polygon -7500403 true true 283 153 288 149 271 146 301 145 300 138 247 119 190 107 104 117 54 133 39 134 10 99 9 112 19 142 9 175 10 185 40 158 69 154 64 164 80 161 86 156 132 160 209 164 Polygon -7500403 true true 199 161 152 166 137 164 169 154 Polygon -7500403 true true 188 108 172 83 160 74 156 76 159 97 153 112 Circle -16777216 true false 256 129 12 Line -16777216 false 222 134 222 150 Line -16777216 false 217 134 217 150 Line -16777216 false 212 134 212 150 Polygon -7500403 true true 78 125 62 118 63 130 Polygon -7500403 true true 121 157 105 161 101 156 106 152 sheep false 15 Circle -1 true true 203 65 88 Circle -1 true true 70 65 162 Circle -1 true true 150 105 120 Polygon -7500403 true false 218 120 240 165 255 165 278 120 Circle -7500403 true false 214 72 67 Rectangle -1 true true 164 223 179 298 Polygon -1 true true 45 285 30 285 30 240 15 195 45 210 Circle -1 true true 3 83 150 Rectangle -1 true true 65 221 80 296 Polygon -1 true true 195 285 210 285 210 240 240 210 195 210 Polygon -7500403 true false 276 85 285 105 302 99 294 83 Polygon -7500403 true false 219 85 210 105 193 99 201 83 sheep 2 false 0 Polygon -7500403 true true 209 183 194 198 179 198 164 183 164 174 149 183 89 183 74 168 59 198 44 198 29 185 43 151 28 121 44 91 59 80 89 80 164 95 194 80 254 65 269 80 284 125 269 140 239 125 224 153 209 168 Rectangle -7500403 true true 180 195 195 225 Rectangle -7500403 true true 45 195 60 225 Rectangle -16777216 true false 180 225 195 240 Rectangle -16777216 true false 45 225 60 240 Polygon -7500403 true true 245 60 250 72 240 78 225 63 230 51 Polygon -7500403 true true 25 72 40 80 42 98 22 91 Line -16777216 false 270 137 251 122 Line -16777216 false 266 90 254 90 spider true 0 Polygon -7500403 true true 134 255 104 240 96 210 98 196 114 171 134 150 119 135 119 120 134 105 164 105 179 120 179 135 164 150 185 173 199 195 203 210 194 240 164 255 Line -7500403 true 167 109 170 90 Line -7500403 true 170 91 156 88 Line -7500403 true 130 91 144 88 Line -7500403 true 133 109 130 90 Polygon -7500403 true true 167 117 207 102 216 71 227 27 227 72 212 117 167 132 Polygon -7500403 true true 164 210 158 194 195 195 225 210 195 285 240 210 210 180 164 180 Polygon -7500403 true true 136 210 142 194 105 195 75 210 105 285 60 210 90 180 136 180 Polygon -7500403 true true 133 117 93 102 84 71 73 27 73 72 88 117 133 132 Polygon -7500403 true true 163 140 214 129 234 114 255 74 242 126 216 143 164 152 Polygon -7500403 true true 161 183 203 167 239 180 268 239 249 171 202 153 163 162 Polygon -7500403 true true 137 140 86 129 66 114 45 74 58 126 84 143 136 152 Polygon -7500403 true true 139 183 97 167 61 180 32 239 51 171 98 153 137 162 spinner true 0 Polygon -7500403 true true 150 0 105 75 195 75 Polygon -7500403 true true 135 74 135 150 139 159 147 164 154 164 161 159 165 151 165 74 square false 0 Rectangle -7500403 true true 30 30 270 270 square 2 false 0 Rectangle -7500403 true true 30 30 270 270 Rectangle -16777216 true false 60 60 240 240 squirrel false 0 Polygon -7500403 true true 87 267 106 290 145 292 157 288 175 292 209 292 207 281 190 276 174 277 156 271 154 261 157 245 151 230 156 221 171 209 214 165 231 171 239 171 263 154 281 137 294 136 297 126 295 119 279 117 241 145 242 128 262 132 282 124 288 108 269 88 247 73 226 72 213 76 208 88 190 112 151 107 119 117 84 139 61 175 57 210 65 231 79 253 65 243 46 187 49 157 82 109 115 93 146 83 202 49 231 13 181 12 142 6 95 30 50 39 12 96 0 162 23 250 68 275 Polygon -16777216 true false 237 85 249 84 255 92 246 95 Line -16777216 false 221 82 213 93 Line -16777216 false 253 119 266 124 Line -16777216 false 278 110 278 116 Line -16777216 false 149 229 135 211 Line -16777216 false 134 211 115 207 Line -16777216 false 117 207 106 211 Line -16777216 false 91 268 131 290 Line -16777216 false 220 82 213 79 Line -16777216 false 286 126 294 128 Line -16777216 false 193 284 206 285 star false 0 Polygon -7500403 true true 151 1 185 108 298 108 207 175 242 282 151 216 59 282 94 175 3 108 116 108 strawberry false 0 Polygon -7500403 false true 149 47 103 36 72 45 58 62 37 88 35 114 34 141 84 243 122 290 151 280 162 288 194 287 239 227 284 122 267 64 224 45 194 38 Polygon -7500403 true true 72 47 38 88 34 139 85 245 122 289 150 281 164 288 194 288 239 228 284 123 267 65 225 46 193 39 149 48 104 38 Polygon -10899396 true false 136 62 91 62 136 77 136 92 151 122 166 107 166 77 196 92 241 92 226 77 196 62 226 62 241 47 166 57 136 32 Polygon -16777216 false false 135 62 90 62 135 75 135 90 150 120 166 107 165 75 196 92 240 92 225 75 195 61 226 62 239 47 165 56 135 30 Line -16777216 false 105 120 90 135 Line -16777216 false 75 120 90 135 Line -16777216 false 75 150 60 165 Line -16777216 false 45 150 60 165 Line -16777216 false 90 180 105 195 Line -16777216 false 120 180 105 195 Line -16777216 false 120 225 105 240 Line -16777216 false 90 225 105 240 Line -16777216 false 120 255 135 270 Line -16777216 false 120 135 135 150 Line -16777216 false 135 210 150 225 Line -16777216 false 165 180 180 195 suit club false 0 Circle -7500403 true true 148 119 122 Circle -7500403 true true 30 119 122 Polygon -7500403 true true 134 137 135 253 121 273 105 284 195 284 180 273 165 253 159 138 Circle -7500403 true true 88 39 122 suit diamond false 0 Polygon -7500403 true true 150 15 45 150 150 285 255 150 suit heart false 0 Circle -7500403 true true 135 43 122 Circle -7500403 true true 43 43 122 Polygon -7500403 true true 255 120 240 150 210 180 180 210 150 240 146 135 Line -7500403 true 150 209 151 80 Polygon -7500403 true true 45 120 60 150 90 180 120 210 150 240 154 135 suit spade false 0 Circle -7500403 true true 135 120 122 Polygon -7500403 true true 255 165 240 135 210 105 183 80 167 61 158 47 150 30 146 150 Circle -7500403 true true 43 120 122 Polygon -7500403 true true 45 165 60 135 90 105 117 80 133 61 142 47 150 30 154 150 Polygon -7500403 true true 135 210 135 253 121 273 105 284 195 284 180 273 165 253 165 210 sun false 0 Circle -7500403 true true 75 75 150 Polygon -7500403 true true 300 150 240 120 240 180 Polygon -7500403 true true 150 0 120 60 180 60 Polygon -7500403 true true 150 300 120 240 180 240 Polygon -7500403 true true 0 150 60 120 60 180 Polygon -7500403 true true 60 195 105 240 45 255 Polygon -7500403 true true 60 105 105 60 45 45 Polygon -7500403 true true 195 60 240 105 255 45 Polygon -7500403 true true 240 195 195 240 255 255 tank true 0 Rectangle -7500403 true true 144 0 159 105 Rectangle -6459832 true false 195 45 255 255 Rectangle -16777216 false false 195 45 255 255 Rectangle -6459832 true false 45 45 105 255 Rectangle -16777216 false false 45 45 105 255 Line -16777216 false 45 75 255 75 Line -16777216 false 45 105 255 105 Line -16777216 false 45 60 255 60 Line -16777216 false 45 240 255 240 Line -16777216 false 45 225 255 225 Line -16777216 false 45 195 255 195 Line -16777216 false 45 150 255 150 Polygon -7500403 true true 90 60 60 90 60 240 120 255 180 255 240 240 240 90 210 60 Rectangle -16777216 false false 135 105 165 120 Polygon -16777216 false false 135 120 105 135 101 181 120 225 149 234 180 225 199 182 195 135 165 120 Polygon -16777216 false false 240 90 210 60 211 246 240 240 Polygon -16777216 false false 60 90 90 60 89 246 60 240 Polygon -16777216 false false 89 247 116 254 183 255 211 246 211 237 89 236 Rectangle -16777216 false false 90 60 210 90 Rectangle -16777216 false false 143 0 158 105 target false 0 Circle -7500403 true true 0 0 300 Circle -16777216 true false 30 30 240 Circle -7500403 true true 60 60 180 Circle -16777216 true false 90 90 120 Circle -7500403 true true 120 120 60 telephone false 0 Polygon -7500403 true true 75 273 60 255 60 195 84 165 75 165 45 150 45 120 60 90 105 75 195 75 240 90 255 120 255 150 223 165 215 165 240 195 240 255 226 274 Polygon -16777216 false false 75 273 60 255 60 195 105 135 105 120 105 105 120 105 120 120 180 120 180 105 195 105 195 135 240 195 240 255 225 273 Polygon -16777216 false false 81 165 74 165 44 150 44 120 59 90 104 75 194 75 239 90 254 120 254 150 218 167 194 135 194 105 179 105 179 120 119 120 119 105 104 105 104 135 81 166 78 165 Rectangle -16777216 false false 120 165 135 180 Rectangle -16777216 false false 165 165 180 180 Rectangle -16777216 false false 142 165 157 180 Rectangle -16777216 false false 165 188 180 203 Rectangle -16777216 false false 142 188 157 203 Rectangle -16777216 false false 120 188 135 203 Rectangle -16777216 false false 120 210 135 225 Rectangle -16777216 false false 142 210 157 225 Rectangle -16777216 false false 165 210 180 225 Rectangle -16777216 false false 120 233 135 248 Rectangle -16777216 false false 142 233 157 248 Rectangle -16777216 false false 165 233 180 248 tile brick false 0 Rectangle -1 true false 0 0 300 300 Rectangle -7500403 true true 15 225 150 285 Rectangle -7500403 true true 165 225 300 285 Rectangle -7500403 true true 75 150 210 210 Rectangle -7500403 true true 0 150 60 210 Rectangle -7500403 true true 225 150 300 210 Rectangle -7500403 true true 165 75 300 135 Rectangle -7500403 true true 15 75 150 135 Rectangle -7500403 true true 0 0 60 60 Rectangle -7500403 true true 225 0 300 60 Rectangle -7500403 true true 75 0 210 60 tile log false 0 Rectangle -7500403 true true 0 0 300 300 Line -16777216 false 0 30 45 15 Line -16777216 false 45 15 120 30 Line -16777216 false 120 30 180 45 Line -16777216 false 180 45 225 45 Line -16777216 false 225 45 165 60 Line -16777216 false 165 60 120 75 Line -16777216 false 120 75 30 60 Line -16777216 false 30 60 0 60 Line -16777216 false 300 30 270 45 Line -16777216 false 270 45 255 60 Line -16777216 false 255 60 300 60 Polygon -16777216 false false 15 120 90 90 136 95 210 75 270 90 300 120 270 150 195 165 150 150 60 150 30 135 Polygon -16777216 false false 63 134 166 135 230 142 270 120 210 105 116 120 88 122 Polygon -16777216 false false 22 45 84 53 144 49 50 31 Line -16777216 false 0 180 15 180 Line -16777216 false 15 180 105 195 Line -16777216 false 105 195 180 195 Line -16777216 false 225 210 165 225 Line -16777216 false 165 225 60 225 Line -16777216 false 60 225 0 210 Line -16777216 false 300 180 264 191 Line -16777216 false 255 225 300 210 Line -16777216 false 16 196 116 211 Line -16777216 false 180 300 105 285 Line -16777216 false 135 255 240 240 Line -16777216 false 240 240 300 255 Line -16777216 false 135 255 105 285 Line -16777216 false 180 0 240 15 Line -16777216 false 240 15 300 0 Line -16777216 false 0 300 45 285 Line -16777216 false 45 285 45 270 Line -16777216 false 45 270 0 255 Polygon -16777216 false false 150 270 225 300 300 285 228 264 Line -16777216 false 223 209 255 225 Line -16777216 false 179 196 227 183 Line -16777216 false 228 183 266 192 tile stones false 0 Polygon -7500403 true true 0 240 45 195 75 180 90 165 90 135 45 120 0 135 Polygon -7500403 true true 300 240 285 210 270 180 270 150 300 135 300 225 Polygon -7500403 true true 225 300 240 270 270 255 285 255 300 285 300 300 Polygon -7500403 true true 0 285 30 300 0 300 Polygon -7500403 true true 225 0 210 15 210 30 255 60 285 45 300 30 300 0 Polygon -7500403 true true 0 30 30 0 0 0 Polygon -7500403 true true 15 30 75 0 180 0 195 30 225 60 210 90 135 60 45 60 Polygon -7500403 true true 0 105 30 105 75 120 105 105 90 75 45 75 0 60 Polygon -7500403 true true 300 60 240 75 255 105 285 120 300 105 Polygon -7500403 true true 120 75 120 105 105 135 105 165 165 150 240 150 255 135 240 105 210 105 180 90 150 75 Polygon -7500403 true true 75 300 135 285 195 300 Polygon -7500403 true true 30 285 75 285 120 270 150 270 150 210 90 195 60 210 15 255 Polygon -7500403 true true 180 285 240 255 255 225 255 195 240 165 195 165 150 165 135 195 165 210 165 255 tile water false 0 Rectangle -7500403 true true -1 0 299 300 Polygon -1 true false 105 259 180 290 212 299 168 271 103 255 32 221 1 216 35 234 Polygon -1 true false 300 161 248 127 195 107 245 141 300 167 Polygon -1 true false 0 157 45 181 79 194 45 166 0 151 Polygon -1 true false 179 42 105 12 60 0 120 30 180 45 254 77 299 93 254 63 Polygon -1 true false 99 91 50 71 0 57 51 81 165 135 Polygon -1 true false 194 224 258 254 295 261 211 221 144 199 tooth false 0 Polygon -7500403 true true 75 30 60 45 45 75 45 90 60 135 73 156 75 170 60 240 60 270 75 285 90 285 105 255 135 180 150 165 165 165 180 185 195 270 210 285 240 270 245 209 244 179 237 154 237 143 255 90 255 60 225 30 210 30 180 45 135 45 90 30 Polygon -7500403 false true 75 30 60 45 45 75 45 90 60 135 73 158 74 170 60 240 60 270 75 285 90 285 105 255 135 180 150 165 165 165 177 183 195 270 210 285 240 270 245 210 244 179 236 153 236 144 255 90 255 60 225 30 210 30 180 45 135 45 90 30 75 30 train false 0 Rectangle -7500403 true true 30 105 240 150 Polygon -7500403 true true 240 105 270 30 180 30 210 105 Polygon -7500403 true true 195 180 270 180 300 210 195 210 Circle -7500403 true true 0 165 90 Circle -7500403 true true 240 225 30 Circle -7500403 true true 90 165 90 Circle -7500403 true true 195 225 30 Rectangle -7500403 true true 0 30 105 150 Rectangle -16777216 true false 30 60 75 105 Polygon -7500403 true true 195 180 165 150 240 150 240 180 Rectangle -7500403 true true 135 75 165 105 Rectangle -7500403 true true 225 120 255 150 Rectangle -16777216 true false 30 203 150 218 train freight boxcar false 0 Rectangle -7500403 true true 10 100 290 195 Rectangle -16777216 false false 9 99 289 195 Circle -16777216 true false 253 195 30 Circle -16777216 true false 220 195 30 Circle -16777216 true false 50 195 30 Circle -16777216 true false 17 195 30 Rectangle -16777216 true false 290 180 299 195 Rectangle -16777216 true false 105 90 135 90 Rectangle -16777216 true false 1 180 10 195 Rectangle -16777216 false false 105 105 195 180 Line -16777216 false 150 105 150 180 train freight engine false 0 Rectangle -7500403 true true 0 180 300 195 Polygon -7500403 true true 281 194 282 134 278 126 165 120 165 105 15 105 15 150 15 195 15 210 285 210 Polygon -955883 true false 281 179 263 150 225 150 15 150 15 135 270 135 282 148 Circle -16777216 true false 17 195 30 Circle -16777216 true false 50 195 30 Circle -16777216 true false 205 195 30 Circle -16777216 true false 238 195 30 Rectangle -7500403 true true 164 90 224 195 Rectangle -16777216 true false 176 98 214 120 Line -7500403 true 196 90 196 150 Rectangle -16777216 false false 165 90 225 180 Rectangle -16777216 false false 0 195 300 180 Rectangle -1 true false 11 111 18 118 Rectangle -1 true false 280 131 287 138 Rectangle -16777216 true false 91 195 201 212 Rectangle -16777216 true false 1 180 10 195 Line -16777216 false 290 150 291 182 Rectangle -7500403 true true 88 97 119 106 Rectangle -7500403 true true 42 96 73 105 Line -16777216 false 165 105 15 105 Rectangle -16777216 true false 165 90 195 90 Line -16777216 false 252 116 237 116 Rectangle -1184463 true false 199 85 208 92 Rectangle -16777216 true false 290 180 299 195 Line -16777216 false 224 98 165 98 train freight hopper empty false 0 Circle -16777216 true false 253 195 30 Circle -16777216 true false 220 195 30 Circle -16777216 true false 50 195 30 Circle -16777216 true false 17 195 30 Rectangle -16777216 true false 105 90 135 90 Rectangle -16777216 true false 285 180 294 195 Polygon -7500403 true true 15 105 15 120 45 180 45 195 255 195 255 180 285 120 285 105 Rectangle -7500403 false true 15 105 285 195 Rectangle -16777216 true false 6 180 15 195 Polygon -7500403 true true 90 195 105 210 120 195 Polygon -7500403 true true 135 195 150 210 165 195 Polygon -7500403 true true 180 195 195 210 210 195 Polygon -16777216 false false 15 105 15 120 45 180 45 195 255 195 255 180 285 120 285 105 Line -16777216 false 60 105 60 195 Line -16777216 false 240 105 240 195 Line -16777216 false 180 105 180 195 Line -16777216 false 120 105 120 195 train freight hopper full false 0 Circle -16777216 true false 253 195 30 Circle -16777216 true false 220 195 30 Circle -16777216 true false 50 195 30 Circle -16777216 true false 17 195 30 Rectangle -16777216 true false 105 90 135 90 Rectangle -16777216 true false 285 180 294 195 Polygon -7500403 true true 15 105 15 120 45 180 45 195 255 195 255 180 285 120 285 105 Rectangle -7500403 false true 15 105 285 195 Rectangle -16777216 true false 6 180 15 195 Polygon -7500403 true true 90 195 105 210 120 195 Polygon -7500403 true true 135 195 150 210 165 195 Polygon -7500403 true true 180 195 195 210 210 195 Polygon -16777216 false false 15 105 15 120 45 180 45 195 255 195 255 180 285 120 285 105 Line -16777216 false 60 105 60 195 Line -16777216 false 240 105 240 195 Line -16777216 false 180 105 180 195 Line -16777216 false 120 105 120 195 Polygon -6459832 true false 15 106 60 83 97 75 133 66 186 76 235 79 285 106 train passenger car false 0 Polygon -7500403 true true 15 206 15 150 15 135 30 120 270 120 285 135 285 150 285 206 270 210 30 210 Circle -16777216 true false 240 195 30 Circle -16777216 true false 210 195 30 Circle -16777216 true false 60 195 30 Circle -16777216 true false 30 195 30 Rectangle -16777216 true false 30 140 268 165 Line -7500403 true 60 135 60 165 Line -7500403 true 60 135 60 165 Line -7500403 true 90 135 90 165 Line -7500403 true 120 135 120 165 Line -7500403 true 150 135 150 165 Line -7500403 true 180 135 180 165 Line -7500403 true 210 135 210 165 Line -7500403 true 240 135 240 165 Rectangle -16777216 true false 5 195 19 207 Rectangle -16777216 true false 281 195 295 207 Rectangle -13345367 true false 15 165 285 173 Rectangle -2674135 true false 15 180 285 188 train passenger engine false 0 Rectangle -7500403 true true 0 180 300 195 Polygon -7500403 true true 283 161 274 128 255 114 231 105 165 105 15 105 15 150 15 195 15 210 285 210 Circle -16777216 true false 17 195 30 Circle -16777216 true false 50 195 30 Circle -16777216 true false 220 195 30 Circle -16777216 true false 253 195 30 Rectangle -16777216 false false 0 195 300 180 Rectangle -1 true false 11 111 18 118 Rectangle -1 true false 270 129 277 136 Rectangle -16777216 true false 91 195 210 210 Rectangle -16777216 true false 1 180 10 195 Line -16777216 false 290 150 291 182 Rectangle -16777216 true false 165 90 195 90 Rectangle -16777216 true false 290 180 299 195 Polygon -13345367 true false 285 180 267 158 239 135 180 120 15 120 16 113 180 113 240 120 270 135 282 154 Polygon -2674135 true false 284 179 267 160 239 139 180 127 15 127 16 120 180 120 240 127 270 142 282 161 Rectangle -16777216 true false 210 115 254 135 Line -7500403 true 225 105 225 150 Line -7500403 true 240 105 240 150 train switcher engine false 0 Polygon -7500403 true true 45 210 45 180 45 150 53 130 151 123 248 131 255 150 255 195 255 210 60 210 Circle -16777216 true false 225 195 30 Circle -16777216 true false 195 195 30 Circle -16777216 true false 75 195 30 Circle -16777216 true false 45 195 30 Line -7500403 true 150 135 150 165 Rectangle -7500403 true true 120 90 180 195 Rectangle -16777216 true false 132 98 170 120 Line -7500403 true 150 90 150 150 Rectangle -16777216 false false 120 90 180 180 Rectangle -7500403 true true 30 180 270 195 Rectangle -16777216 false false 30 180 270 195 Line -16777216 false 270 150 270 180 Rectangle -1 true false 245 131 252 138 Rectangle -1 true false 48 131 55 138 Polygon -16777216 true false 255 179 227 169 227 158 255 168 Polygon -16777216 true false 255 162 227 152 227 141 255 151 Polygon -16777216 true false 45 162 73 152 73 141 45 151 Polygon -16777216 true false 45 179 73 169 73 158 45 168 Rectangle -16777216 true false 112 195 187 210 Rectangle -16777216 true false 264 180 279 195 Rectangle -16777216 true false 21 180 36 195 Line -16777216 false 30 150 30 180 Line -16777216 false 120 98 180 98 tree false 0 Circle -7500403 true true 118 3 94 Rectangle -6459832 true false 120 195 180 300 Circle -7500403 true true 65 21 108 Circle -7500403 true true 116 41 127 Circle -7500403 true true 45 90 120 Circle -7500403 true true 104 74 152 tree pine false 0 Rectangle -6459832 true false 120 225 180 300 Polygon -7500403 true true 150 240 240 270 150 135 60 270 Polygon -7500403 true true 150 75 75 210 150 195 225 210 Polygon -7500403 true true 150 7 90 157 150 142 210 157 150 7 triangle false 0 Polygon -7500403 true true 150 30 15 255 285 255 triangle 2 false 0 Polygon -7500403 true true 150 30 15 255 285 255 Polygon -16777216 true false 151 99 225 223 75 224 truck false 0 Rectangle -7500403 true true 4 45 195 187 Polygon -7500403 true true 296 193 296 150 259 134 244 104 208 104 207 194 Rectangle -1 true false 195 60 195 105 Polygon -16777216 true false 238 112 252 141 219 141 218 112 Circle -16777216 true false 234 174 42 Rectangle -7500403 true true 181 185 214 194 Circle -16777216 true false 144 174 42 Circle -16777216 true false 24 174 42 Circle -7500403 false true 24 174 42 Circle -7500403 false true 144 174 42 Circle -7500403 false true 234 174 42 truck cab only false 0 Polygon -7500403 true true 296 193 296 150 259 134 244 104 208 104 207 194 Rectangle -1 true false 195 60 195 105 Polygon -16777216 true false 238 112 252 141 219 141 218 112 Circle -16777216 true false 234 174 42 Rectangle -7500403 true true 181 185 214 194 Circle -16777216 true false 144 174 42 Rectangle -1 true false 291 158 300 173 truck cab top true 0 Rectangle -7500403 true true 70 45 227 120 Polygon -7500403 true true 150 8 118 10 96 17 90 30 75 135 75 195 90 210 150 210 210 210 225 195 225 135 209 30 201 17 179 10 Polygon -16777216 true false 94 135 118 119 184 119 204 134 193 141 110 141 Line -16777216 false 130 14 168 14 Line -16777216 false 130 18 168 18 Line -16777216 false 130 11 168 11 Line -16777216 false 185 29 194 112 Line -16777216 false 115 29 106 112 Line -16777216 false 195 225 210 240 Line -16777216 false 105 225 90 240 Polygon -16777216 true false 210 195 195 195 195 150 210 143 Polygon -16777216 false false 90 143 90 195 105 195 105 150 90 143 Polygon -16777216 true false 90 195 105 195 105 150 90 143 Line -7500403 true 210 180 195 180 Line -7500403 true 90 180 105 180 Line -16777216 false 212 44 213 124 Line -16777216 false 88 44 87 124 Line -16777216 false 223 130 193 112 Rectangle -7500403 true true 225 133 244 139 Rectangle -7500403 true true 56 133 75 139 Rectangle -7500403 true true 120 210 180 240 Rectangle -7500403 true true 93 238 210 270 Rectangle -16777216 true false 200 217 224 278 Rectangle -16777216 true false 76 217 100 278 Circle -16777216 false false 135 240 30 Line -16777216 false 77 130 107 112 Rectangle -16777216 false false 107 149 192 210 Rectangle -1 true false 180 9 203 17 Rectangle -1 true false 97 9 120 17 turtle true 0 Polygon -10899396 true false 215 204 240 233 246 254 228 266 215 252 193 210 Polygon -10899396 true false 195 90 225 75 245 75 260 89 269 108 261 124 240 105 225 105 210 105 Polygon -10899396 true false 105 90 75 75 55 75 40 89 31 108 39 124 60 105 75 105 90 105 Polygon -10899396 true false 132 85 134 64 107 51 108 17 150 2 192 18 192 52 169 65 172 87 Polygon -10899396 true false 85 204 60 233 54 254 72 266 85 252 107 210 Polygon -7500403 true true 119 75 179 75 209 101 224 135 220 225 175 261 128 261 81 224 74 135 88 99 turtle 2 true 0 Polygon -10899396 true false 132 85 134 64 130 57 132 32 151 22 171 33 173 57 169 65 172 87 Polygon -10899396 true false 165 210 195 210 240 240 240 255 210 285 195 255 Polygon -10899396 true false 90 210 60 240 60 255 90 285 105 255 120 210 Polygon -7500403 true true 119 75 179 75 209 101 224 135 209 225 155 275 143 275 89 225 74 135 88 99 Polygon -16777216 true false 151 21 142 26 159 26 Line -16777216 false 160 35 164 51 Polygon -16777216 true false 161 38 162 46 167 45 Line -16777216 false 169 63 156 69 Line -16777216 false 134 64 144 69 Line -16777216 false 143 69 156 69 Polygon -16777216 true false 139 38 138 46 133 45 Line -16777216 false 140 35 136 51 Polygon -10899396 true false 195 90 225 75 255 75 270 90 285 120 285 150 240 105 225 105 210 105 Polygon -10899396 true false 105 90 75 75 45 75 30 90 15 120 15 150 60 105 75 105 90 105 ufo side false 0 Polygon -1 true false 0 150 15 180 60 210 120 225 180 225 240 210 285 180 300 150 300 135 285 120 240 105 195 105 150 105 105 105 60 105 15 120 0 135 Polygon -16777216 false false 105 105 60 105 15 120 0 135 0 150 15 180 60 210 120 225 180 225 240 210 285 180 300 150 300 135 285 120 240 105 210 105 Polygon -7500403 true true 60 131 90 161 135 176 165 176 210 161 240 131 225 101 195 71 150 60 105 71 75 101 Circle -16777216 false false 255 135 30 Circle -16777216 false false 180 180 30 Circle -16777216 false false 90 180 30 Circle -16777216 false false 15 135 30 Circle -7500403 true true 15 135 30 Circle -7500403 true true 90 180 30 Circle -7500403 true true 180 180 30 Circle -7500403 true true 255 135 30 Polygon -16777216 false false 150 59 105 70 75 100 60 130 90 160 135 175 165 175 210 160 240 130 225 100 195 70 ufo top false 0 Circle -13791810 true false 15 15 270 Circle -16777216 false false 15 15 270 Circle -7500403 true true 75 75 150 Circle -16777216 false false 75 75 150 Circle -7500403 true true 60 60 30 Circle -7500403 true true 135 30 30 Circle -7500403 true true 210 60 30 Circle -7500403 true true 240 135 30 Circle -7500403 true true 210 210 30 Circle -7500403 true true 135 240 30 Circle -7500403 true true 60 210 30 Circle -7500403 true true 30 135 30 Circle -16777216 false false 30 135 30 Circle -16777216 false false 60 210 30 Circle -16777216 false false 135 240 30 Circle -16777216 false false 210 210 30 Circle -16777216 false false 240 135 30 Circle -16777216 false false 210 60 30 Circle -16777216 false false 135 30 30 Circle -16777216 false false 60 60 30 van side false 0 Polygon -7500403 true true 26 147 18 125 36 61 161 61 177 67 195 90 242 97 262 110 273 129 260 149 Circle -16777216 true false 43 123 42 Circle -16777216 true false 194 124 42 Polygon -16777216 true false 45 68 37 95 183 96 169 69 Line -7500403 true 62 65 62 103 Line -7500403 true 115 68 120 100 Polygon -1 true false 271 127 258 126 257 114 261 109 Rectangle -16777216 true false 19 131 27 142 van top true 0 Polygon -7500403 true true 90 117 71 134 228 133 210 117 Polygon -7500403 true true 150 8 118 10 96 17 85 30 84 264 89 282 105 293 149 294 192 293 209 282 215 265 214 31 201 17 179 10 Polygon -16777216 true false 94 129 105 120 195 120 204 128 180 150 120 150 Polygon -16777216 true false 90 270 105 255 105 150 90 135 Polygon -16777216 true false 101 279 120 286 180 286 198 281 195 270 105 270 Polygon -16777216 true false 210 270 195 255 195 150 210 135 Polygon -1 true false 201 16 201 26 179 20 179 10 Polygon -1 true false 99 16 99 26 121 20 121 10 Line -16777216 false 130 14 168 14 Line -16777216 false 130 18 168 18 Line -16777216 false 130 11 168 11 Line -16777216 false 185 29 194 112 Line -16777216 false 115 29 106 112 Line -7500403 false 210 180 195 180 Line -7500403 false 195 225 210 240 Line -7500403 false 105 225 90 240 Line -7500403 false 90 180 105 180 warning false 0 Polygon -7500403 true true 0 240 15 270 285 270 300 240 165 15 135 15 Polygon -16777216 true false 180 75 120 75 135 180 165 180 Circle -16777216 true false 129 204 42 wheel false 0 Circle -7500403 true true 3 3 294 Circle -16777216 true false 30 30 240 Line -7500403 true 150 285 150 15 Line -7500403 true 15 150 285 150 Circle -7500403 true true 120 120 60 Line -7500403 true 216 40 79 269 Line -7500403 true 40 84 269 221 Line -7500403 true 40 216 269 79 Line -7500403 true 84 40 221 269 wolf false 0 Polygon -7500403 true true 75 225 97 249 112 252 122 252 114 242 102 241 89 224 94 181 64 113 46 119 31 150 32 164 61 204 57 242 85 266 91 271 101 271 96 257 89 257 70 242 Polygon -7500403 true true 216 73 219 56 229 42 237 66 226 71 Polygon -7500403 true true 181 106 213 69 226 62 257 70 260 89 285 110 272 124 234 116 218 134 209 150 204 163 192 178 169 185 154 189 129 189 89 180 69 166 63 113 124 110 160 111 170 104 Polygon -6459832 true true 252 143 242 141 Polygon -6459832 true true 254 136 232 137 Line -16777216 false 75 224 89 179 Line -16777216 false 80 159 89 179 Polygon -6459832 true true 262 138 234 149 Polygon -7500403 true true 50 121 36 119 24 123 14 128 6 143 8 165 8 181 7 197 4 233 23 201 28 184 30 169 28 153 48 145 Polygon -7500403 true true 171 181 178 263 187 277 197 273 202 267 187 260 186 236 194 167 Polygon -7500403 true true 187 163 195 240 214 260 222 256 222 248 212 245 205 230 205 155 Polygon -7500403 true true 223 75 226 58 245 44 244 68 233 73 Line -16777216 false 89 181 112 185 Line -16777216 false 31 150 47 118 Polygon -16777216 true false 235 90 250 91 255 99 248 98 244 92 Line -16777216 false 236 112 246 119 Polygon -16777216 true false 278 119 282 116 274 113 Line -16777216 false 189 201 203 161 Line -16777216 false 90 262 94 272 Line -16777216 false 110 246 119 252 Line -16777216 false 190 266 194 274 Line -16777216 false 218 251 219 257 Polygon -16777216 true false 230 67 228 54 222 62 224 72 Line -16777216 false 246 67 234 64 Line -16777216 false 229 45 235 68 Line -16777216 false 30 150 30 165 wolf 2 false 0 Rectangle -7500403 true true 195 106 285 150 Rectangle -7500403 true true 195 90 255 105 Polygon -7500403 true true 240 90 217 44 196 90 Polygon -16777216 true false 234 89 218 59 203 89 Rectangle -1 true false 240 93 252 105 Rectangle -16777216 true false 242 96 249 104 Rectangle -16777216 true false 241 125 285 139 Polygon -1 true false 285 125 277 138 269 125 Polygon -1 true false 269 140 262 125 256 140 Rectangle -7500403 true true 45 120 195 195 Rectangle -7500403 true true 45 114 185 120 Rectangle -7500403 true true 165 195 180 270 Rectangle -7500403 true true 60 195 75 270 Polygon -7500403 true true 45 105 15 30 15 75 45 150 60 120 wolf 3 false 0 Polygon -7500403 true true 105 180 75 180 45 75 45 0 105 45 195 45 255 0 255 75 225 180 195 180 165 300 135 300 105 180 75 180 Polygon -16777216 true false 225 90 210 135 150 90 Polygon -16777216 true false 75 90 90 135 150 90 wolf 4 false 0 Polygon -7500403 true true 105 75 105 45 45 0 30 45 45 60 60 90 Polygon -7500403 true true 45 165 30 135 45 120 15 105 60 75 105 60 180 60 240 75 285 105 255 120 270 135 255 165 270 180 255 195 255 210 240 195 195 225 210 255 180 300 120 300 90 255 105 225 60 195 45 210 45 195 30 180 Polygon -16777216 true false 120 300 135 285 120 270 120 255 180 255 180 270 165 285 180 300 Polygon -16777216 true false 240 135 180 165 180 135 Polygon -16777216 true false 60 135 120 165 120 135 Polygon -7500403 true true 195 75 195 45 255 0 270 45 255 60 240 90 Polygon -16777216 true false 225 75 210 60 210 45 255 15 255 45 225 60 Polygon -16777216 true false 75 75 90 60 90 45 45 15 45 45 75 60 wolf 5 false 0 Polygon -7500403 true true 135 285 165 285 270 90 30 90 135 285 Polygon -7500403 true true 270 90 225 15 180 90 Polygon -7500403 true true 30 90 75 15 120 90 Polygon -1 true false 225 150 180 195 165 165 Polygon -1 true false 75 150 120 195 135 165 Polygon -1 true false 135 285 135 255 150 240 165 255 165 285 wolf 6 false 0 Polygon -7500403 true true 105 75 105 45 45 0 30 45 45 60 60 90 Polygon -7500403 true true 45 165 30 135 45 120 15 105 60 75 105 60 180 60 240 75 285 105 255 120 270 135 255 165 270 180 255 195 255 210 240 195 195 225 210 255 180 300 120 300 90 255 105 225 60 195 45 210 45 195 30 180 Polygon -16777216 true false 120 300 135 285 120 270 120 255 180 255 180 270 165 285 180 300 Polygon -7500403 true true 195 75 195 45 255 0 270 45 255 60 240 90 Polygon -16777216 true false 225 75 210 60 210 45 255 15 255 45 225 60 Polygon -16777216 true false 75 75 90 60 90 45 45 15 45 45 75 60 Circle -16777216 true false 88 118 32 Circle -16777216 true false 178 118 32 wolf 7 false 0 Circle -16777216 true false 183 138 24 Circle -16777216 true false 93 138 24 Polygon -7500403 true true 30 105 30 150 90 195 120 270 120 300 180 300 180 270 210 195 270 150 270 105 210 75 90 75 Polygon -7500403 true true 255 105 285 60 255 0 210 45 195 75 Polygon -7500403 true true 45 105 15 60 45 0 90 45 105 75 Circle -16777216 true false 90 135 30 Circle -16777216 true false 180 135 30 Polygon -16777216 true false 120 300 150 255 180 300 x false 0 Polygon -7500403 true true 270 75 225 30 30 225 75 270 Polygon -7500403 true true 30 75 75 30 270 225 225 270 @#$#@#$#@ NetLogo 5.0.3 @#$#@#$#@ @#$#@#$#@ @#$#@#$#@ setup go scoreWhite scoreBlack whiteVictories blackVictories whiteDeadPieces blackDeadPieces @#$#@#$#@ @#$#@#$#@ default 0.0 -0.2 0 1.0 0.0 0.0 1 1.0 0.0 0.2 0 1.0 0.0 link direction true 0 Line -7500403 true 150 150 90 180 Line -7500403 true 150 150 210 180 @#$#@#$#@ 0 @#$#@#$#@