³ò ý{Gc@s ddkTddkZdaetƒadZetadZda d„Z d„Z d„Z d „Z d „Zd „Zd „Zd „Zd„ZeƒdS(iÿÿÿÿ(t*Nii–icCs~xwtdtƒD]f}ttd|tƒtt|tƒƒitƒtt|tdƒt|ttƒƒitƒqWdS(Nii(tranget BOARDSIZEtLinetPointtPPSt WINDOWSIZEtdrawtwin(ti((sDD:\rep\120python\CatapultMaterials\Exercises\TicTacToe\TicTacToe2.pytdrawGrids0cCs%tt|tdt|tdƒS(scoordinates of center of squarei(RR(trowtcol((sDD:\rep\120python\CatapultMaterials\Exercises\TicTacToe\TicTacToe2.pyt rectCenterscCstt|tt|tƒS(s'coordinates of top left of inset X or O(RRtINSET(R R ((sDD:\rep\120python\CatapultMaterials\Exercises\TicTacToe\TicTacToe2.pyt rectUpperLeftscCs%tt|dtt|dtƒS(s+coordinates of bottom right of inset X or Oi(RRR(R R ((sDD:\rep\120python\CatapultMaterials\Exercises\TicTacToe\TicTacToe2.pytrectLowerRightscCs!tt|dtt|tƒS(s(coordinates of top right of inset X or Oi(RRR(R R ((sDD:\rep\120python\CatapultMaterials\Exercises\TicTacToe\TicTacToe2.pytrectUpperRight!scCs!tt|tt|dtƒS(s*coordinates of bottom left of inset X or Oi(RRR(R R ((sDD:\rep\120python\CatapultMaterials\Exercises\TicTacToe\TicTacToe2.pyt rectLowerLeft%scCsTtt||ƒt||ƒƒitƒtt||ƒt||ƒƒitƒdS(sDraw an X in the given squareN(RRRRRRR(R R ((sDD:\rep\120python\CatapultMaterials\Exercises\TicTacToe\TicTacToe2.pytdrawX+s(cCs+tt||ƒtdtƒitƒdS(sDraw an O in the given squareiN(tCircleR RRRR(R R ((sDD:\rep\120python\CatapultMaterials\Exercises\TicTacToe\TicTacToe2.pytdrawO0scCstdƒ}|djo&t|ƒattƒattantdttƒat ƒt ddƒt ddƒt i dƒtiƒdS(Ns&Enter board size (Press Enter for 3): tsTicTacToe version 2iiii(t raw_inputtevalRRt BOARDRANGERRtGraphWinRR RRttimetsleeptclose(tuserSize((sDD:\rep\120python\CatapultMaterials\Exercises\TicTacToe\TicTacToe2.pytmain4s       (t zellegraphicsRRRRRRRtNoneRR R RRRRRRR(((sDD:\rep\120python\CatapultMaterials\Exercises\TicTacToe\TicTacToe2.pyss"